• quick_snail@feddit.nl
    link
    fedilink
    English
    arrow-up
    60
    arrow-down
    13
    ·
    1 day ago

    Don’t. Use. Npm.

    That applies to pip and crate and all the other shitty lang package managers that totally fail at security

      • quick_snail@feddit.nl
        link
        fedilink
        English
        arrow-up
        9
        arrow-down
        1
        ·
        1 day ago

        A package manager that uses cryptographic signatures. Apt had this since 2005 iirc. Use apt.

          • quick_snail@feddit.nl
            link
            fedilink
            English
            arrow-up
            2
            ·
            22 hours ago

            Packages are reviewed by package maintainers.

            Humans are required to solve a malicious insider. But most supply chain vulns of these shitty software dependency managers were resolved decades ago by freely available cryptography

      • grandma@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        22
        ·
        1 day ago

        Easy, just vendor all your dependencies! Can’t have a supply chain attack if you are the supply chain.

      • Victor@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        17 hours ago

        We just recently switched from npm to pnpm, due to all the supply chain attacks. I did the PR for it, even.

        Our release schedule is like a year though so we don’t really have to worry much about releasing compromised dependencies. But still, better to be on the safer side.

      • quick_snail@feddit.nl
        link
        fedilink
        English
        arrow-up
        3
        ·
        22 hours ago

        Yep. And so many workplaces have had security vulnerabilities caused by dumb decisions that could have been easily avoided

    • rmrf@lemmy.ml
      link
      fedilink
      English
      arrow-up
      11
      arrow-down
      5
      ·
      1 day ago

      Honestly just fine use computers at all, completely eliminate the remote attack vector. And only drink rain water since city water can be compromised.

      Or, recognize this is a normal part of using software and have more than 1 thing between you and a breach

      • quack@lemmy.zip
        link
        fedilink
        English
        arrow-up
        32
        arrow-down
        1
        ·
        1 day ago

        The rules of cybersecurity:

        1. Under no circumstances should you own a computer.

        2. If you absolutely must own a computer, under no circumstances should you connect it to the internet.

        3. If you absolutely must connect it to the internet, it’s too late and they already have you

        • HubertManne@piefed.social
          link
          fedilink
          English
          arrow-up
          3
          ·
          23 hours ago

          I know this is a joke but im old enough we used to install the os and had it on the network and eventually update it but then it got to the point were like being connected to the internet for like a minute and the machines were compromised. Thats when we got off our duffs and started making custom installs that had updates and configurations and software pre installed before we even connected it to the net.

        • StarDreamer@lemmy.blahaj.zone
          link
          fedilink
          English
          arrow-up
          6
          ·
          edit-2
          23 hours ago

          And how would apt help in this particular case? A supply chain attack can happen with any particular package manager. In this case, the compromised package was detected and mitigated within 93 minutes, affecting a total of ~330 users. Which is a lot better than how a lot of distros handled the xz breach last year.

          All reasonably secure package managers (and https) operate on a chain of trust. There is little that can be done if that chain of trust is broken.

          Based on this the cause was a malicious VSCode extension that stole credentials that were later used to trigger a deployment CI/CD pipeline. If there’s anything to learn from this, it’s probably to not use VSCode.

            • StarDreamer@lemmy.blahaj.zone
              link
              fedilink
              English
              arrow-up
              3
              ·
              22 hours ago
              1. If your assumption is that X509 is trash, does that mean you hold the same amount of distrust to TLS?
              2. How do you propose the scaling of key management? Do you have a reasonable alternative to users blindly trusting every single key they come across?
              3. Back to my original question: what prevents a VSCode extension from stealing a private signing key (as opposed to an API key) and causing the same issues described here?
    • wizzim@infosec.pub
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 day ago

      Unfortunately I have to use node for home project (Jellyfin tizen)

      I was wondering: would it be possible to run node in a sandbox to lower the scope of the attack? (i.e. not compromise my home computer) Or is maybe a full VM a better solution?

        • dieTasse@feddit.org
          link
          fedilink
          English
          arrow-up
          1
          ·
          21 hours ago

          In case of NPM version pinning is a good practice. But also set it to ignore post install scripts. They are a bad practice and only about 2 % of all packages use it so it is unlikely it will bother you. They, the post install scripts, were used in recent supply chain attacks btw (the axios). You can either set it project wide in .npmrc file, add ignore-scripts=true, that is good for project where multiple people collaborate. And/Or system wide by running npm config set ignore-scripts true for your personal workspace. You can also achieve it by using --ignore-scripts flag during npm install, but that is way too impractical to always think about it. Also I would recommend checking npq, its a wrapper around npm cli that will give you some security summary before installing anything (and it is able to give you warning about post install scripts).

      • quick_snail@feddit.nl
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 day ago

        Full VM and network isolation. and dont put anything important there (nor a reused password for auth)