Live data from Hacker News

Yeoman: Modern workflows for modern webapps

yeoman.io

21–30 of 77 posts

Re: Yeoman: Modern workflows for modern webapps

#21
post #20
post #15

Earlier quoted context omitted.

You are asking developers to download a shell script from $random_site and run it immediately without any thoughts whatsoever as to what effects it might have. Getting people used to that is a bad idea.

Is it so different from running a make install or a install.sh script?

The biggest problem is validating the download prior to installing it. The use make install or install.sh or other similar script, the following should be done:

Download package

md5 package

verify md5 == published md5 of packge

extract

make install / install.sh / etc

With "curl package.github.com" | bash" the validation is missing. I don't mind the curl x | bash for my dev machine or testing/dev vms, but that is not happening on production. And if I need said software on production, I have to find a different way to install.

Re: Yeoman: Modern workflows for modern webapps

#24
post #11

Stop doing `curl get.whatever.com|bash` ! Seriously. I have nothing against your install script, but getting devs use to that is a terrible idea ! I spent weeks explaining to junior devs to not do that on production servers. I thought it was obvious, but apparently it isn't...

I absolutely hate that this is modus operandi for the homebrew and ruby communities. Who though that this is a good idea?

Re: Yeoman: Modern workflows for modern webapps

#26
post #21
post #20

Earlier quoted context omitted.

Is it so different from running a make install or a install.sh script?

The biggest problem is validating the download prior to installing it. The use make install or install.sh or other similar script, the following should be done: Download package md5 package verify md5 == published md5 of packge extract make install / install.sh / etc With "curl package.github.com" | bash" the validation is missing. I don't mind the curl x | bash for my dev machine or testing/dev vms, but that is not…

If the bad guy has intercepted the DNS, they can just provide the md5 of the bad script, no?

Maybe the solution here, assuming you trust the third party, is for them to get a signed SSL cert and provide `curl https://get.whatever.com|bash`

Re: Yeoman: Modern workflows for modern webapps

#27
post #13
post #11

Stop doing `curl get.whatever.com|bash` ! Seriously. I have nothing against your install script, but getting devs use to that is a terrible idea ! I spent weeks explaining to junior devs to not do that on production servers. I thought it was obvious, but apparently it isn't...

Excuse the naivety but what's the issue?

Remote code execution Suppose in the install scripts there happened to be a line like "rm -rf /" then you'll feed that to bash...

Re: Yeoman: Modern workflows for modern webapps

#30
post #20
post #15

Earlier quoted context omitted.

You are asking developers to download a shell script from $random_site and run it immediately without any thoughts whatsoever as to what effects it might have. Getting people used to that is a bad idea.

Is it so different from running a make install or a install.sh script?

No. Don't use "curl" to download install scripts from HTTP URLs, or, for that matter, from HTTPS sites you don't trust.
Post reply on HN