unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34125: Installation script needs to be secured with a gpg signature
@ 2019-01-18 15:23 Björn Höfling
  2019-01-22  7:18 ` Ricardo Wurmus
  0 siblings, 1 reply; 3+ messages in thread
From: Björn Höfling @ 2019-01-18 15:23 UTC (permalink / raw)
  To: 34125

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

I was looking at the installation video from Laura (not yet public) and
wondered about that:

We just download the installation script:

$ wget https://.../guix-install.sh

Then we go on directly executing that script.

Shouldn't that be save-garded by a PGP-signature too?

Because if it is not, the user could be tricked into a script that
downloads a "bad" Guix installation tarball. That's what we are always
criticising about others wget-scripts that install whatever to the user.

WDYT?

Björn

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#34125: Installation script needs to be secured with a gpg signature
  2019-01-18 15:23 bug#34125: Installation script needs to be secured with a gpg signature Björn Höfling
@ 2019-01-22  7:18 ` Ricardo Wurmus
  2019-01-25 21:25   ` Björn Höfling
  0 siblings, 1 reply; 3+ messages in thread
From: Ricardo Wurmus @ 2019-01-22  7:18 UTC (permalink / raw)
  To: Björn Höfling; +Cc: 34125


Hi Björn,

> I was looking at the installation video from Laura (not yet public) and
> wondered about that:
>
> We just download the installation script:
>
> $ wget https://.../guix-install.sh
>
> Then we go on directly executing that script.
>
> Shouldn't that be save-garded by a PGP-signature too?

I don’t know.

> Because if it is not, the user could be tricked into a script that
> downloads a "bad" Guix installation tarball.

To avoid having the user tricked we use HTTPS.  At least the users will
know that this file comes from the official project website.

A user who is tricked into downloading a script from a malicious site
could just as well download a matching signature from somewhere else, so
the script body itself should be signed.  We can’t sign the whole file
because the first line must be the shebang — unless we forgo the shebang
and the “chmod +x” instruction and ask people to execute it with “sudo
bash guix-install.sh”.  “gpg --clear-sign” adds a block of text before
and after the file, which would be a syntax error in a shell script.

We are probably stuck with having a separate signature file.  I don’t
know if it’s worth doing when HTTPS is used to fetch the script from an
authoritative source.

> That's what we are always
> criticising about others wget-scripts that install whatever to the user.

The criticism is aimed at “curl | sudo bash” instructions that execute
scripts off the Internet without prior inspection as root.

--
Ricardo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#34125: Installation script needs to be secured with a gpg signature
  2019-01-22  7:18 ` Ricardo Wurmus
@ 2019-01-25 21:25   ` Björn Höfling
  0 siblings, 0 replies; 3+ messages in thread
From: Björn Höfling @ 2019-01-25 21:25 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 34125-done, Laura Lazzati

[-- Attachment #1: Type: text/plain, Size: 1486 bytes --]

On Tue, 22 Jan 2019 08:18:09 +0100
Ricardo Wurmus <rekado@elephly.net> wrote:

> Hi Björn,
> 
> > I was looking at the installation video from Laura (not yet public)
> > and wondered about that:
> >
> > We just download the installation script:
> >
> > $ wget https://.../guix-install.sh
> >
> > Then we go on directly executing that script.
> >
> > Shouldn't that be save-garded by a PGP-signature too?  
> 
> I don’t know.
> 
> > Because if it is not, the user could be tricked into a script that
> > downloads a "bad" Guix installation tarball.  
> 
> To avoid having the user tricked we use HTTPS.  At least the users
> will know that this file comes from the official project website.
> 
> A user who is tricked into downloading a script from a malicious site
> could just as well download a matching signature from somewhere else,
> so the script body itself should be signed.  We can’t sign the whole
> file because the first line must be the shebang — unless we forgo the
> shebang and the “chmod +x” instruction and ask people to execute it
> with “sudo bash guix-install.sh”.  “gpg --clear-sign” adds a block of
> text before and after the file, which would be a syntax error in a
> shell script.
> 
> We are probably stuck with having a separate signature file.  I don’t
> know if it’s worth doing when HTTPS is used to fetch the script from
> an authoritative source.
> 

OK, agreed. Let's close this.

Björn

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-01-25 21:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-18 15:23 bug#34125: Installation script needs to be secured with a gpg signature Björn Höfling
2019-01-22  7:18 ` Ricardo Wurmus
2019-01-25 21:25   ` Björn Höfling

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).