267

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?

you are viewing a single comment's thread
view the rest of the comments
[-] lemmeBe@sh.itjust.works 24 points 1 day 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
[-] moonpiedumplings@programming.dev 1 points 7 hours ago

If steam accidentally deleted someone's home directory in a bash script via a single error, I doubt I would catch that one myself.

[-] easily3667@lemmus.org 1 points 11 hours ago* (last edited 11 hours ago)

Ah yes for all of the bash experts who understand what they are reading.

[-] jagged_circle@feddit.nl 3 points 23 hours 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

[-] stevedice@sh.itjust.works 14 points 1 day 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.

[-] isaaclw@lemmy.world 1 points 1 day 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.

[-] stevedice@sh.itjust.works 3 points 1 day 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.

[-] lemmeBe@sh.itjust.works 1 points 23 hours ago

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

[-] stevedice@sh.itjust.works 2 points 14 hours ago

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

[-] possiblylinux127@lemmy.zip 5 points 1 day ago

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

[-] drmoose@lemmy.world 0 points 1 day ago

But then they'd have to lay some guy 15$ to package it and thats like, spending money

[-] possiblylinux127@lemmy.zip -2 points 1 day ago

Distros do the packaging. Devs can not be trusted

[-] Aux@feddit.uk 2 points 20 hours ago

That's how you end up without software.

[-] possiblylinux127@lemmy.zip -1 points 15 hours ago

That's how you end up with a secure well tested system. Having the distro do software reviews adds another level of validation. Devs are bad about shipping software with vulnerable dependencies and stuff like that.

[-] Aux@feddit.uk 2 points 14 hours ago

And then you install wordpress, lol.

[-] drmoose@lemmy.world 1 points 23 hours ago

Loads of distros have user packing like arch and nixos... also many distors accept donations to package your software either way so my point stands even then.

[-] Shareni@programming.dev 2 points 21 hours ago

Meanwhile nix install instructions start of with a curl

[-] drmoose@lemmy.world 1 points 21 hours ago
[-] brian@programming.dev 1 points 6 hours ago* (last edited 6 hours ago)

the instructions for installing on not nixos https://nixos.org/download/

[-] Shareni@programming.dev -1 points 21 hours ago

What part is confusing you?

this post was submitted on 13 Mar 2025
267 points (96.5% liked)

Linux

6450 readers
566 users here now

A community for everything relating to the GNU/Linux operating system

Also check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS