Obsidian plugin was abused to deploy a remote access trojan

(cyber.netsecops.io)

71 points | by cmbailey 3 hours ago

7 comments

  • jjice 11 minutes ago
    I really like Obsidian. I use it every day and I don't use any community plugins because the permissions aren't up to snuff. I hope for a day where a plugin defines what it will need and that gets presented to me as a user.

    I have to imagine the Obsidian team is going to respond seriously to this and I look forward to seeing what they do. They have my full confidence. I'm surprised the system was initially designed as it is without those better permissions and sandboxing, though.

  • slowmover 3 hours ago
    > The victim is prompted to enable the "Installed community plugins" synchronization feature.

    Obsidian has the proper protections in place to prevent this type of attack, and the victims are being convinced to ignore them. This is just a successful social engineering event. I hate to see Obsidian dragged down by this headline, since this attack is not exploiting a vulnerability in it or its plugin system.

    • Groxx 2 hours ago
      Ehm. No? https://obsidian.md/help/plugin-security#Plugin+capabilities

      >Due to technical limitations, Obsidian cannot reliably restrict plugins to specific permissions or access levels. This means that plugins will inherit Obsidian's access levels. As a result, consider the following examples of what community plugins can do:

          Community plugins can access files on your computer.
          Community plugins can connect to internet.
          Community plugins can install additional programs.
      
      
      Obsidian has no protection at all. Installing a plugin gives it full access to your computer.

      This was only a matter of time, and honestly I think it's inexcusably negligent that they shipped a plugin system like this at all since about 2010 (or arguably much earlier).

      • pointlessone 2 hours ago
        It does give full access but Obsidian does tell you that. Community plugins are not enabled by default, you have to enable them manually. Same happens with a shared vault: once you get it you still have to manually enable plugins. So far no one managed to sneak in a plugin completely unnoticed.
        • kid64 1 hour ago
          That's horse hockey. Obsidian is not a usable system without community plugins.

          Folks will reply "but I use it every day without plugins".

          That position disregards software usability as a formal discipline, along with decades of UX research and standards.

          • Loocid 1 hour ago
            As one of those people that uses Obsidian without plugins, what plugins do you consider essential?
            • cpach 17 minutes ago
              Same here, zero plugins for me.
          • jjice 15 minutes ago
            But I use it every day without plugins.

            Seriously though, I agree with your sentiment that community plugin security can and needs to be improved, but how does someone saying they use it every day "disregard software usability as a formal discipline, along with decades of UX research and standards"

          • kid64 1 hour ago
            Yeah, but these attacks are possible without any of that complexity.
          • ImPostingOnHN 1 hour ago
            The attack here requires not just enabling community plugins, but also syncing the attacker's vault to your computer, and also separately enabling the synchronization of the attacker's plugins with yours.
            • guiambros 43 minutes ago
              Yes, in this specific case.

              Obsidian Plugins are still incredibly vulnerable. A compromised plugin will essentially take over your machine. There's no sandboxing of any kind. It's even more insecure than browser extensions (that could steal your auth tokens, but at least don't have unfettered access to your filesystem).

              This is really unfortunate. I love Obsidian and am a paid subscriber for many years, but the community plugins needs a security overhaul asap, before someone gets hurt.

          • AlienRobot 37 minutes ago
            The real problem is people believing "plugins" are not full software.

            If you install a dozen mini-apps from random developers you never heard about, you can't complain if one is malware.

            Krita also has a plugin system based on Python. Any "plugin" has the same level of access as running a python script.

            Personally I blame operating systems for not providing a way to isolate how programs interact with user files.

            • pdpi 17 minutes ago
              Software engineers at large would benefit from playing World of Warcraft, and seeing the ongoing fight between Blizzard and add-on authors.

              WoW's whole UI is built in the same Lua environment as add-ons, and Blizzard has implemented some interesting restrictions (like the taint system[0]) to prevent add-ons from completely automating gameplay.

              0. https://wowpedia.fandom.com/wiki/Secure_Execution_and_Tainti...

              • AlienRobot 6 minutes ago
                World of Warcraft is one of the most popular MMO's ever made.

                You simply can't expect every software that wants a plugin system to have the same security practices as the most used software in the world.

                In fact, there are many reasons why you might want a plugin to have full filesystem and internet access, such as batch processing or simply adding things directly from webpages. Sandboxing this will just make plugins less useful.

                In the end it's a problem of trust. You're installing software from untrustworthy developers because you trust the name of the application those plugins are associated with.

                You could fix the problem in Obsidian, but the same problem will happen in other software. Some of which simply can't justify bothering with sandboxing plugins. This is just the way plugins are.

          • Barrin92 1 hour ago
            I think that's especially important to point out because it reminded me of a blog post by Obsidian that also was discussed here[1], where they talked about reducing supply chain risk by not relying on dependencies, but people quickly pointed out that this is only possible because users depend so heavily on extensions. Just look at that top comment and here we are now.

            This combination of software relying on third parties without security seems to be untenable. Personally I've gotten rid of just about as many extensions as I can anywhere and switched to batteries included software.

            [1]https://news.ycombinator.com/item?id=45307242

        • Groxx 1 hour ago
          "Hey users: don't do insecure things. Here's a button to do cool insecure things!" is not a plugin security model.
      • Paul-E 1 hour ago
        Obsidian seems like a perfect candidate for a WASM/WASI based plugin system that would properly sandbox plugin code.
        • Groxx 34 minutes ago
          For at least the vast majority, yes definitely. I'm fine with full bypasses existing (say a webgl thing, or web previews, custom VCS integration, there are tons of legitimate reasons to escape a sandbox), but they should be an abnormality with heavy warnings and proportionate community attention to watch for issues, not the only option.

          I don't think they meant it this way, but I honestly consider unsafe official plugin systems to be negligent to the point of being actively malicious. By releasing one, if you ever become successful you have explicitly chosen to screw over an unknown number of your users to save yourself a relatively small amount of work in the short term. It might be single digit users, or it might be septuple digit users - is it really worth it?

          (Unsafe unofficial plugins, like most games? Mildly unfortunate but I think that's fine. Though a healthy modding community around your stuff should be a VERY STRONG sign that you should introduce a safe version to protect your users, if it won't cause you to implode (it definitely can)).

      • moron4hire 1 hour ago
        A program one runs on one's computer can and should be able to do computer things. The alternative road you're advocating for ends in hardware attestation https://news.ycombinator.com/item?id=48086190
    • cmbailey 2 hours ago
      Right, I'm a heavy Obsidian user myself, and love it.

      I think the value of this disclosure is more in spreading awareness about plugins, and demonstrating the vector. Where less sophisticated users may think, "Oh, this is just a collection of markdown files. I don't need to be too worried about malicious code."

  • vetchzero 15 minutes ago
    Obsidian does not have auto update for community plugins. The steps for updating them right now is checking for updates and then updating all or individually. A bad update to one of the popular plugins could compromise lot of systems.

    If one already gets the functionality they need from a plugin, does it make sense to update anymore?

  • zhivota 2 hours ago
    Even being social engineering, the design of the plugin system allowing this means the platform is completely unusable as a sharing tool. It's good to know but to me this is not "I need to remember to have these settings correct to use a shared Obsidian vault", this for is instead "never accept a shared Obsidian vault, demand a plaintext export".
  • hresvelgr 43 minutes ago
    Am I the only one who thinks Obsidian is perfect without plugins? Half the reason I switched to it from Anytype was that it was rather spartan in its offerings. If they announced tomorrow they would ban plugins, I would not care.
    • CGamesPlay 34 minutes ago
      I'm also switching back to Obsidian after a few-year stint on Anytype, and the Notebook Navigator plugin is the only one I have installed. This is (I assume) a UI-only plugin, which shouldn't need access to external network or processes, so a quite good candidate for sandboxed plugins.
  • ValveFan6666 2 hours ago
    [dead]
  • kid64 1 hour ago
    This is just the first detected and reported instance, in all likelyhood such attacks have been happening for some time. When will the fanatic userbsse finally admit that using Obsidian in any enterprise setting is just plain malpractice?

    It takes 5 minutes in their Discord channel to see the founders are D&D nerds, not competent engineers. It was never meant for serious work.

    • dspillett 1 hour ago
      > the founders are D&D nerds, not competent engineers

      The two are not mutually exclusive. What would you trust more than a nerd? A jock? A spod? An MBA?

      Any evidence of other examples if bad engineering you can point to, or are your thoughts on the pluggin system and throwing shade at random groups of people all you've got?

      [FYI: I know little of obsidian other than planning to look into it at some point as people I know use and like it. I stepped into this set of comments in case there was something useful I should be passing on to those people]

      • flashman 10 minutes ago
        well there was this previous issue in the crypto community where it turned out someone was not a competent engineer and should have stuck to their online exchange for magic: the gathering
      • chillfox 1 hour ago
        The attack relies on social engineering to get the victim to disable protections and could just as easily have happened with a plugin for any code editor.

        Anyway, What I like about obsidian is that it can handle a truly huge amount of notes without slowing down, and the notes are just markdown files on disk, so there's no lock in. I have used evernote, ms one note and zoho notebook before, and had issues with all of them.

        • dspillett 35 minutes ago
          That isn't a response to my post, it is a bit of information already present in the thread that isn't relevant to my question followed by a positive review. This suggests that a shill brigade has been attracted to these comments. I suggest you don't do that, it isn't a good look.
    • amazingamazing 1 hour ago
      What software do you use that would be immune to a scenario where you disable all protections to take some action?
    • TacticalCoder 1 hour ago
      > It takes 5 minutes in their Discord channel to see the founders are D&D nerds, not competent engineers.

      I know absolutely nothing about Obsidian but I'd expect quite a few competent engineers to also be D&D nerds no!?

      Are you saying the two are mutually exclusive?

      • kid64 1 hour ago
        No I'm not. But I'd encourage you to visit and see for yourself why these outcomes are completely predictable.