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.
  • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

    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

    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
    #2

    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 j3rn@fosstodon.orgJ 2 Replies Last reply
    0
    • sanityinc@hachyderm.ioS sanityinc@hachyderm.io

      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

      tzz@infosec.exchangeT This user is from outside of this forum
      tzz@infosec.exchangeT This user is from outside of this forum
      tzz@infosec.exchange
      wrote last edited by
      #3

      @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 1 Reply Last reply
      0
      • 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