pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg_comp runs everything as root
Christian Hattemer wrote:
dunno if tech-pkg would be more appropriate, but for starters here it is.
I've finally looked into pkg_comp and it looks indeed nice for experimenting
with pkgsrc or building binary pkgs.
However I feel a bit uncomfortable about running everything as root. I
remember distfiles that got a malicious configure inserted. There's still
the distfile checksum, but the modification might get overlooked by the
developer doing the update.
The best thing to do here is to use systrace to restrict the system
calls that are available to root during the build and install of a
package. The work to integrate this into pkgsrc is not hard, but nobody
has stepped forward to implement this yet. Ideally, you should be able
to define PKGSRC_USE_SYSTRACE in /etc/mk.conf and a systrace policy
would be applied when running "make".
However an even more effective place for such tampering should be an
install script which runs as root anyway. Then the unprivileged build
wouldn't help.
The INSTALL/DEINSTALL scripts are not provided by a 3rd party, but by
pkgsrc itself, though they may occasionally call utilities installed by
the package. Even here, using systrace would help, though I believe
that in the end, you'll just have to audit the INSTALL scripts in pkgsrc
to verify that they are not doing anything destructive or deceptive.
Please take a look at pkgsrc/mk/install, which is the home of the
pkginstall framework used by most of the packages, and which provides a
common implementation of a small set of actions that may occur during
installation or deinstallation.
Well, it's inside a chroot, so there shouldn't be much permanent damage, but
backdoor daemons could still run until a reboot.
Backdoor daemons can largely be prevented by, again, the proper use of
systrace to deny the socket() system call.
Cheers,
-- Johnny Lam <jlam%pkgsrc.org@localhost>
Home |
Main Index |
Thread Index |
Old Index