Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Oct 2007 21:04:02 +0300
From:      Kostik Belousov <kostikbel@gmail.com>
To:        "Zane C.B." <v.velox@vvelox.net>
Cc:        freebsd-security@freebsd.org, Jan M?nther <jan.muenther@nruns.com>
Subject:   Re: issetugid() for other procs
Message-ID:  <20071007180402.GI2180@deviant.kiev.zoral.com.ua>
In-Reply-To: <20071007122805.3853bffe@vixen42>
References:  <20071007105258.2d4c2e37@vixen42> <47090895.9050202@nruns.com> <20071007122805.3853bffe@vixen42>

next in thread | previous in thread | raw e-mail | index | archive | help

--wIc/V6YLA2QdyfT4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Oct 07, 2007 at 12:28:05PM -0500, Zane C.B. wrote:
> On Sun, 07 Oct 2007 18:25:57 +0200
> Jan M?nther <jan.muenther@nruns.com> wrote:
>=20
> > man getuid, man geteuid.
>=20
> This does work for other procs, only the one that is calling it.
>=20
> Like I said initially I am looking to check if another proc has run
> setuid, seteuid, or been executed or forked by one that has.

Note that what you trying to do is racy by definition.

To get the value of issetugid() for some other process, as it _could_
be returned at some moment in a time, you shall check the P_SUGID bit
of the p_flag from the corresponding struct proc. This is available by
the kvm_getprocs(3) interface in the ki_flag field of the kinfo_proc
structure, see corresponding man page.

--wIc/V6YLA2QdyfT4
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (FreeBSD)

iD8DBQFHCR+RC3+MBN1Mb4gRAu8yAKDXBQ2KBIDxA7ocXQ4ARCE/mI3E+ACdHKo7
Wz6mPiqcvH1dgd1tRg2WNKw=
=9a+s
-----END PGP SIGNATURE-----

--wIc/V6YLA2QdyfT4--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071007180402.GI2180>