Date: Sat, 14 May 2016 12:17:48 -0700 From: Tim Kientzle <tim@kientzle.com> To: Martin Matuska <mm@freebsd.org> Cc: Michael Butler <imb@protected-networks.net>, FreeBSD current <freebsd-current@freebsd.org> Subject: Re: libarchive update SVN r299529 breaks "ezjail update" Message-ID: <E9B21A7F-AD3A-4182-AACC-3B92BBEF1216@kientzle.com> In-Reply-To: <20160512175418.Horde.JvYoOSRwfU_l2TIXv697u2B@mail.vx.sk> References: <2c059cf5-2c8a-3b89-16c3-eedf02a01ec5@protected-networks.net> <20160512173440.Horde.5l1s9ijXRgAeMNgmT0MmCPa@mail.vx.sk> <20160512175418.Horde.JvYoOSRwfU_l2TIXv697u2B@mail.vx.sk>
next in thread | previous in thread | raw e-mail | index | archive | help
Many people consider the traditional behavior to be a security risk, which is why this was changed. FreeBSD is welcome to make --insecure the default on FreeBSD, but I'm reluctant to do that in the upstream libarchive project. Tim > On May 12, 2016, at 8:54 AM, Martin Matuska <mm@freebsd.org> wrote: > > Looks like we have to remove line #174 from cpio/cpio.c: > cpio->extract_flags |= ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS; > > This breaks traditional cpio behavior. > > Quoting Martin Matuska <mm@freebsd.org>: > >> Hi Michael, I have looked at the source and this is an intended change in 3.2.0. >> >> An absolute path security check was added, cpio refuses to extract or copy over absolute paths. To do this anyway the "--insecure" flag must be used. >> >> Here is the commit: >> https://github.com/libarchive/libarchive/commit/59357157706d47c365b2227739e17daba3607526 >> >> Quoting Michael Butler <imb@protected-networks.net>: >> >>> It seems that today's libarchive update breaks cpio's behaviour: >>> >>> sudo ezjail-admin update -i -s /usr/src >>> >>> [ .. ] >>> >>> cd /usr/src/etc/..; install -o root -g wheel -m 444 COPYRIGHT >>> /usr/local/jails/fulljail/ >>> install -o root -g wheel -m 444 >>> /usr/src/etc/../sys/i386/conf/GENERIC.hints >>> /usr/local/jails/fulljail/boot/device.hints >>> /usr/local/jails/basejail/bincpio: bin: Path is absolute: Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/catcpio: bin/cat: Path is absolute: >>> Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/chflagscpio: bin/chflags: Path is >>> absolute: Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/chiocpio: bin/chio: Path is absolute: >>> Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/chmodcpio: bin/chmod: Path is absolute: >>> Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/cpcpio: bin/cp: Path is absolute: Unknown >>> error: -1 >>> >>> /usr/local/jails/basejail/bin/datecpio: bin/date: Path is absolute: >>> Unknown error: -1 >>> >>> /usr/local/jails/basejail/bin/ddcpio: bin/dd: Path is absolute: Unknown >>> error: -1 >>> >>> /usr/local/jails/basejail/bin/dfcpio: bin/df: Path is absolute: Unknown >>> error: -1 >>> >>> /usr/local/jails/basejail/bin/domainnamecpio: bin/domainname: Path is >>> absolute: Unknown error: -1 >>> [ .. etc. .. ] >> >> >> >> Martin Matuska >> FreeBSD committer >> http://blog.vx.sk > > > > Martin Matuska > FreeBSD committer > http://blog.vx.sk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E9B21A7F-AD3A-4182-AACC-3B92BBEF1216>
