X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type; q=dns; s=default; b=mdWVgL
	9hc+I4LtJsxiN27IJlSw3XegBT14DEQ7X3dHqFmQwfQsjd6SevyWfIVbxfdhmptZ
	mdRqFTOW3iKmri1blBwNGib6JatEQ8uy/FI6jsAUi5owmgbLWFQUB261+rdW/o7p
	Dgvx9ugvvrYpjaRiU4r2fu1MTacnAKO5k5ES4=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type; s=default; bh=f+uxhrzPR4oX
	l3BaKgivNJa6r8c=; b=Ard3GoWG4PAXjnPa3v4Te2EpoAtK/uauE0IgHWBC1OAh
	6rAKzB+D/aAUwoeip1S7ZC4iN0ri4zFH0HfLcgLlKwiA0cndm17LmM+/DSe2jM9D
	niYSXYv06IG9+UJhxh15cZdJsi/trlfEmw4kk+R/GmPrViD6sj0ZZHZ7sB9onnI=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2
X-HELO: mx1.redhat.com
Message-ID: <54137BDE.6040907@redhat.com>
Date: Fri, 12 Sep 2014 17:03:58 -0600
From: Eric Blake <eblake@redhat.com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.7.0
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: Cannot exec() program outside of /bin if PATH is unset
References: <5413271B.1010109@t-online.de> <54134A83.80107@redhat.com> <54135451.3060902@t-online.de> <601154762.20140913012935@yandex.ru> <541378C4.6030705@t-online.de>
In-Reply-To: <541378C4.6030705@t-online.de>
OpenPGP: url=http://people.redhat.com/eblake/eblake.gpg
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="49nAf5oXojHRDmfvgS6vVCk9xxgpFR9XS"
X-IsSubscribed: yes

--49nAf5oXojHRDmfvgS6vVCk9xxgpFR9XS
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On 09/12/2014 04:50 PM, Christian Franke wrote:
> Andrey Repin wrote:
>>> Hmm... is postfix actually broken?
>>> Unsetting PATH is IMO sane (from the POSIX POV) if all exec() calls use
>>> absolute path names.
>> If all exec() calls are made with full paths, unsetting $PATH does not
>> improve
>> security in any way,
>=20
> Of course. But postfix could be configured to run "unknown" external
> programs through its various daemons. In this case, a fixed (here:
> empty) PATH improves security. If not convinced, please discuss with the
> author of postfix :-)

An empty PATH leaves it up to the implementation what helpers get run
(if it doesn't fall over first), which is LESS secure than a guaranteed
safe PATH of confstr(_CS_PATH).

>=20
>=20
>> but leave underlying system in an inconsistent state.
>=20
> I don't see any added inconsistencies, please explain.

The moment you throw away the bare minimum POSIX-required PATH, you have
introduced inconsistency into the environment you are handing to your
child process.

--=20
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


--49nAf5oXojHRDmfvgS6vVCk9xxgpFR9XS
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Public key at http://people.redhat.com/eblake/eblake.gpg

iQEcBAEBCAAGBQJUE3veAAoJEKeha0olJ0NqxWkIAJwQgKSJE7sgHH5A7qlUhqu1
nZMt6Ypkv+9f11yqbLnOFTTX93vuiTngiabulvxiFBvZkz/yV7IhE1FSD11ZxI8T
EYrgvO6E+IqK96gj0rsH+tLWg0lVbT9y28LR7pIttpz7s9ozu9VK0AReWfrGcmzI
NNp8bInorjfrJwZvclFYfb514A7q/COkktEcCykeuyvOymaN0XfhiXDL58EmVQMI
8e3ozFJYMl2EqIMgvt95b9zHx0qSP/Agsps4oApXNsiXL1E36x4zzXT7Z0mb3iZ1
0QnHoSXecVFzngoNiRUYAfU25T7hmYoL3PXONtOjHw3On4QIZaYW7Fc5Uv7J5t8=
=r9i/
-----END PGP SIGNATURE-----

--49nAf5oXojHRDmfvgS6vVCk9xxgpFR9XS--
