Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. First example we at MELPA have seen of an #emacs package getting hacked (upstream of us, in GitHub): https://github.com/kubernetes-el/kubernetes-el/issues/383

First example we at MELPA have seen of an #emacs package getting hacked (upstream of us, in GitHub): https://github.com/kubernetes-el/kubernetes-el/issues/383

Scheduled Pinned Locked Moved Uncategorized
emacs
16 Posts 8 Posters 17 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • tzz@infosec.exchangeT tzz@infosec.exchange

    @sanityinc good thread on
    this when it was just theoretical https://www.reddit.com/r/emacs/comments/1i1u0rj/how_does_the_emacs_community_protects_itself/?rdt=45984

    sanityinc@hachyderm.ioS This user is from outside of this forum
    sanityinc@hachyderm.ioS This user is from outside of this forum
    sanityinc@hachyderm.io
    wrote last edited by
    #4

    @tzz Yeah, many such discussions in the past. IIRC Emacs 31 will have built-in support for diffing package updates before full installation. In this case, the modified file would not have got past the MELPA build step, so we won't have distributed it, but there's no particular barrier to crafting a malicious package that *would* get built.

    sanityinc@hachyderm.ioS 1 Reply Last reply
    0
    • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

      @tzz Yeah, many such discussions in the past. IIRC Emacs 31 will have built-in support for diffing package updates before full installation. In this case, the modified file would not have got past the MELPA build step, so we won't have distributed it, but there's no particular barrier to crafting a malicious package that *would* get built.

      sanityinc@hachyderm.ioS This user is from outside of this forum
      sanityinc@hachyderm.ioS This user is from outside of this forum
      sanityinc@hachyderm.io
      wrote last edited by
      #5

      @tzz "Maintainer gets compromised" is a very difficult thing to mitigate centrally.

      loke@functional.cafeL 1 Reply Last reply
      0
      • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

        If installed, loading this compromised #emacs library would trigger the embedded shell command. Not very subtle, but this should be a reminder to the dev community that plugins for even niche dev tools can be an attack vector.

        paniash@mstdn.socialP This user is from outside of this forum
        paniash@mstdn.socialP This user is from outside of this forum
        paniash@mstdn.social
        wrote last edited by
        #6

        @sanityinc Strange that the PR was merged without maintainer approval.

        sanityinc@hachyderm.ioS 1 Reply Last reply
        0
        • paniash@mstdn.socialP paniash@mstdn.social

          @sanityinc Strange that the PR was merged without maintainer approval.

          sanityinc@hachyderm.ioS This user is from outside of this forum
          sanityinc@hachyderm.ioS This user is from outside of this forum
          sanityinc@hachyderm.io
          wrote last edited by
          #7

          @paniash I commented on the issue — I think the attacker stole a github token via a privileged Actions run that was made without needing the maintainer's approval.

          1 Reply Last reply
          0
          • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

            @tzz "Maintainer gets compromised" is a very difficult thing to mitigate centrally.

            loke@functional.cafeL This user is from outside of this forum
            loke@functional.cafeL This user is from outside of this forum
            loke@functional.cafe
            wrote last edited by
            #8

            @sanityinc @tzz And Emacs is by necessity a tool that have wide-ranging access to the system where it's run.

            I have been worried about this very thing for a while, in fact every time I install a MELPA package.

            alex@social.alexschroeder.chA 1 Reply Last reply
            0
            • loke@functional.cafeL loke@functional.cafe

              @sanityinc @tzz And Emacs is by necessity a tool that have wide-ranging access to the system where it's run.

              I have been worried about this very thing for a while, in fact every time I install a MELPA package.

              alex@social.alexschroeder.chA This user is from outside of this forum
              alex@social.alexschroeder.chA This user is from outside of this forum
              alex@social.alexschroeder.ch
              wrote last edited by
              #9

              @loke @sanityinc @tzz Same. And what if I'm root? Do I even install packages? I guess I shouldn't. 😬

              otfrom@functional.cafeO schaueho@functional.cafeS 2 Replies Last reply
              0
              • alex@social.alexschroeder.chA alex@social.alexschroeder.ch

                @loke @sanityinc @tzz Same. And what if I'm root? Do I even install packages? I guess I shouldn't. 😬

                otfrom@functional.cafeO This user is from outside of this forum
                otfrom@functional.cafeO This user is from outside of this forum
                otfrom@functional.cafe
                wrote last edited by
                #10

                @alex @loke @sanityinc @tzz time for Emacs solo?

                1 Reply Last reply
                0
                • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

                  If installed, loading this compromised #emacs library would trigger the embedded shell command. Not very subtle, but this should be a reminder to the dev community that plugins for even niche dev tools can be an attack vector.

                  j3rn@fosstodon.orgJ This user is from outside of this forum
                  j3rn@fosstodon.orgJ This user is from outside of this forum
                  j3rn@fosstodon.org
                  wrote last edited by
                  #11

                  @sanityinc It's events like this that make me want to just write all my own Emacs packages

                  sanityinc@hachyderm.ioS 1 Reply Last reply
                  0
                  • alex@social.alexschroeder.chA alex@social.alexschroeder.ch

                    @loke @sanityinc @tzz Same. And what if I'm root? Do I even install packages? I guess I shouldn't. 😬

                    schaueho@functional.cafeS This user is from outside of this forum
                    schaueho@functional.cafeS This user is from outside of this forum
                    schaueho@functional.cafe
                    wrote last edited by
                    #12

                    @alex I mostly use jed as root, that's usually good enough for the minor editing needs I have as root. Everything that requires more comfort and capabilities will be done with my normal account and then run as root.
                    @loke @sanityinc @tzz

                    loke@functional.cafeL 1 Reply Last reply
                    0
                    • schaueho@functional.cafeS schaueho@functional.cafe

                      @alex I mostly use jed as root, that's usually good enough for the minor editing needs I have as root. Everything that requires more comfort and capabilities will be done with my normal account and then run as root.
                      @loke @sanityinc @tzz

                      loke@functional.cafeL This user is from outside of this forum
                      loke@functional.cafeL This user is from outside of this forum
                      loke@functional.cafe
                      wrote last edited by
                      #13

                      @schaueho @alex @sanityinc @tzz I'm not worried about anyone getting access to root. All the sensitive data and actions are available to my regular user, ao that's what I want to protect.

                      The only approach that works reasonably well today is that of Qubes OS, but it still suffers from the limitation of not exposing any GPU functionality, which is a blocker for many usecases.

                      sanityinc@hachyderm.ioS 1 Reply Last reply
                      0
                      • loke@functional.cafeL loke@functional.cafe

                        @schaueho @alex @sanityinc @tzz I'm not worried about anyone getting access to root. All the sensitive data and actions are available to my regular user, ao that's what I want to protect.

                        The only approach that works reasonably well today is that of Qubes OS, but it still suffers from the limitation of not exposing any GPU functionality, which is a blocker for many usecases.

                        sanityinc@hachyderm.ioS This user is from outside of this forum
                        sanityinc@hachyderm.ioS This user is from outside of this forum
                        sanityinc@hachyderm.io
                        wrote last edited by
                        #14

                        @loke @schaueho @alex @tzz exactly this — my homedir is where the interesting stuff us

                        schaueho@functional.cafeS 1 Reply Last reply
                        0
                        • j3rn@fosstodon.orgJ j3rn@fosstodon.org

                          @sanityinc It's events like this that make me want to just write all my own Emacs packages

                          sanityinc@hachyderm.ioS This user is from outside of this forum
                          sanityinc@hachyderm.ioS This user is from outside of this forum
                          sanityinc@hachyderm.io
                          wrote last edited by
                          #15

                          @j3rn it's not impossible: https://www.rahuljuliato.com/posts/emacs-solo-two-years

                          1 Reply Last reply
                          0
                          • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

                            @loke @schaueho @alex @tzz exactly this — my homedir is where the interesting stuff us

                            schaueho@functional.cafeS This user is from outside of this forum
                            schaueho@functional.cafeS This user is from outside of this forum
                            schaueho@functional.cafe
                            wrote last edited by
                            #16

                            @sanityinc Then the risk of this is not increased (at least not too much) when considering root.

                            However, given that there are still files that only root can access and things that only root can change on a system, I actually think that usually the risk would be higher for root. But it's not a big point, agreed.
                            @loke @alex @tzz

                            1 Reply Last reply
                            0
                            • R relay@relay.an.exchange shared this topic
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups