curl https://some-url | sh

I see this all over the place nowadays, even in communities that, I would think, should be security conscious. How is that safe? What’s stopping the downloaded script from wiping my home directory? If you use this, how can you feel comfortable?

I understand that we have the same problems with the installed application, even if it was downloaded and installed manually. But I feel the bar for making a mistake in a shell script is much lower than in whatever language the main application is written. Don’t we have something better than “sh” for this? Something with less power to do harm?

  • @[email protected]
    link
    fedilink
    2326 days ago

    I think safer approach is to:

    1. Download the script first, review its contents, and then execute.
    2. Ensure the URL uses HTTPS to reduce the risk of man-in-the-middle attacks
    • Steve Dice
      link
      fedilink
      English
      1426 days ago

      If you’ve downloaded and audited the script, there’s no reason to pipe it from curl to sh, just run it. No https necessary.

      • @[email protected]
        link
        fedilink
        125 days ago

        The https is to cover the factthat you might have missed something.

        I guess I download and skim out of principle, but they might have hidden something in there.

        • Steve Dice
          link
          fedilink
          English
          325 days ago

          Wat. All https does is encrypt the connection when downloading. If you’ve already downloaded the file to audit it, then it’s in your drive, no need to use curl to download it again and then pipe it to sh. Just click the thing.

          • @[email protected]
            link
            fedilink
            025 days ago

            Yeah, https was for downloading it in the first place. My bad, I didn’t get my thoughts out in the right order.

            • Steve Dice
              link
              fedilink
              English
              225 days ago

              That makes sense. I probably should have gotten it from context.

    • Possibly linux
      link
      fedilink
      English
      625 days ago

      Install scripts are bad in general. ideally use officially packaged software.

    • @[email protected]
      link
      fedilink
      English
      325 days ago

      Key being reduce. Https doesn’t protect from loads of attacks. Best to verify the sig.

      If its not signed, open a bug report