• Unleaded8163@fedia.io
    link
    fedilink
    arrow-up
    38
    arrow-down
    2
    ·
    5 days ago

    If you trust the site, curl | sh is no worse than any other install method. If you don’t trust the site, it’s also no worse.

      • FishFace@piefed.social
        link
        fedilink
        English
        arrow-up
        12
        ·
        5 days ago

        Do you mean curl | cat or do you really want to create a file called cat?

        Also piping to cat seems redundant but malicious hosts can detect whether the request is getting redirected, using some clever trick, so it’s not.

        Also, your chance of spotting something bad in a malicious script is probably quite small.

        • Dumhuvud@programming.dev
          link
          fedilink
          English
          arrow-up
          2
          ·
          3 days ago

          Also piping to cat seems redundant but malicious hosts can detect whether the request is getting redirected, using some clever trick, so it’s not.

          Just so you know, servers cannot detect piping to any arbitrary process. The trick you’re talking about is detecting piping to an interpreter, for the lack of a better term. Piping sleep N to bash is observable behaviour, for example. Piping anything to cat is not.

          https://web.archive.org/web/20250622061208/https://www.idontplaydarts.com/2016/04/detecting-curl-pipe-bash-server-side/

          • FishFace@piefed.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            3 days ago

            Oh, I had totally forgotten how it worked! I thought it was exactly that. Thanks for the correction

        • xthexder@l.sw0.com
          link
          fedilink
          arrow-up
          6
          ·
          edit-2
          4 days ago

          Saving it to a file is actually a decent method, since you can be sure the script you’re reviewing is the same one you’re running.

          Personally I often will just manually run the install steps in order if the script is simple enough. Half the time it’s just a bunch of OS version checks followed by a tar -xf

        • cenzorrll@piefed.ca
          link
          fedilink
          English
          arrow-up
          8
          ·
          5 days ago

          This is my opinion on curl | sh/bash type directions. If the maintainers don’t provide a hash so I can confirm that is what they intended, there ain’t much I can do unless someone slapped in a function named “totallyNotMalware” into the script. I’ve looked through scripts, seen what they do, but I’m not good enough to recognize anything funky.

        • Ghoelian@piefed.social
          link
          fedilink
          English
          arrow-up
          3
          ·
          4 days ago

          If you just run the file you just created, it doesn’t matter that they detected a redirect. I mean it would be a bit silly to download a script, check it, and then re-download it to pipe into bash.

          • FishFace@piefed.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            4 days ago

            Downloading a two kilobyte script a second time is probably less effort than remembering to rm the script after running it, so if you don’t want to keep it, it could be better :)

    • not_IO@lemmy.blahaj.zoneOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      4 days ago

      that’s why you install from repos managed by people you trust, it’s like an app store without all the evil