aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorLibravatar netblue30 <netblue30@protonmail.com>2023-02-28 10:07:35 -0500
committerLibravatar netblue30 <netblue30@protonmail.com>2023-02-28 10:07:35 -0500
commit55fb69f4f500e8a6cbd3ce2cdc95c03d46b078e0 (patch)
tree1a3401e24c0efa8d1ceb0d535386eed9725eea38 /test
parentMerge branch 'master' of ssh://github.com/netblue30/firejail (diff)
downloadfirejail-55fb69f4f500e8a6cbd3ce2cdc95c03d46b078e0.tar.gz
firejail-55fb69f4f500e8a6cbd3ce2cdc95c03d46b078e0.tar.zst
firejail-55fb69f4f500e8a6cbd3ce2cdc95c03d46b078e0.zip
chroot testing
Diffstat (limited to 'test')
-rwxr-xr-xtest/chroot/chroot.sh4
-rwxr-xr-xtest/chroot/configure10
2 files changed, 9 insertions, 5 deletions
diff --git a/test/chroot/chroot.sh b/test/chroot/chroot.sh
index a1fb3ee38..3b10cbc59 100755
--- a/test/chroot/chroot.sh
+++ b/test/chroot/chroot.sh
@@ -11,12 +11,14 @@ rm -f unchroot
11gcc -o unchroot unchroot.c 11gcc -o unchroot unchroot.c
12sudo ./configure 12sudo ./configure
13 13
14
14echo "TESTING: chroot disabled (test/chroot/fs_chroot_disabled.exp)" 15echo "TESTING: chroot disabled (test/chroot/fs_chroot_disabled.exp)"
16sudo sed -i s/"chroot yes"/"# chroot no"/g /etc/firejail/firejail.config
15./fs_chroot_disabled.exp 17./fs_chroot_disabled.exp
16 18
17sudo sed -i s/"# chroot no"/"chroot yes"/g /etc/firejail/firejail.config
18 19
19echo "TESTING: chroot (test/chroot/fs_chroot.exp)" 20echo "TESTING: chroot (test/chroot/fs_chroot.exp)"
21sudo sed -i s/"# chroot no"/"chroot yes"/g /etc/firejail/firejail.config
20./fs_chroot.exp 22./fs_chroot.exp
21 23
22echo "TESTING: unchroot as root (test/chroot/unchroot-as-root.exp)" 24echo "TESTING: unchroot as root (test/chroot/unchroot-as-root.exp)"
diff --git a/test/chroot/configure b/test/chroot/configure
index af511f9c7..f7bfedf10 100755
--- a/test/chroot/configure
+++ b/test/chroot/configure
@@ -8,7 +8,7 @@ ROOTDIR="/tmp/chroot" # default chroot directory
8DEFAULT_FILES="/bin/bash /bin/sh " # basic chroot files 8DEFAULT_FILES="/bin/bash /bin/sh " # basic chroot files
9DEFAULT_FILES+="/etc/passwd /etc/nsswitch.conf /etc/group " 9DEFAULT_FILES+="/etc/passwd /etc/nsswitch.conf /etc/group "
10DEFAULT_FILES+=`find /lib -name libnss*` # files required by glibc 10DEFAULT_FILES+=`find /lib -name libnss*` # files required by glibc
11DEFAULT_FILES+=" /bin/cp /bin/ls /bin/cat /bin/ps /bin/netstat /bin/ping /usr/bin/touch /bin/grep" 11DEFAULT_FILES+=" /bin/cp /bin/ls /bin/cat /bin/ps /bin/ping /usr/bin/touch /bin/grep"
12 12
13rm -fr $ROOTDIR 13rm -fr $ROOTDIR
14mkdir -p $ROOTDIR/{root,bin,lib,lib64,usr,home,etc,dev/shm,tmp,var/run,var/tmp,var/lock,var/log,proc,sys} 14mkdir -p $ROOTDIR/{root,bin,lib,lib64,usr,home,etc,dev/shm,tmp,var/run,var/tmp,var/lock,var/log,proc,sys}
@@ -18,6 +18,10 @@ mkdir -p $ROOTDIR/home/netblue/.config/firejail
18chown netblue:netblue $ROOTDIR/home/netblue 18chown netblue:netblue $ROOTDIR/home/netblue
19chown netblue:netblue $ROOTDIR/home/netblue/.config 19chown netblue:netblue $ROOTDIR/home/netblue/.config
20cp /home/netblue/.Xauthority $ROOTDIR/home/netblue/. 20cp /home/netblue/.Xauthority $ROOTDIR/home/netblue/.
21mkdir -p $ROOTDIR/home/runner/.config/firejail
22chown runner:runner $ROOTDIR/home/runner
23chown runner:runner $ROOTDIR/home/runner/.config
24
21cp -a /etc/skel $ROOTDIR/etc/. 25cp -a /etc/skel $ROOTDIR/etc/.
22mkdir $ROOTDIR/home/someotheruser 26mkdir $ROOTDIR/home/someotheruser
23mkdir $ROOTDIR/boot 27mkdir $ROOTDIR/boot
@@ -27,8 +31,6 @@ cp /etc/group $ROOTDIR/etc/.
27cp /etc/hosts $ROOTDIR/etc/. 31cp /etc/hosts $ROOTDIR/etc/.
28cp /etc/hostname $ROOTDIR/etc/. 32cp /etc/hostname $ROOTDIR/etc/.
29mkdir -p $ROOTDIR/usr/lib/x86_64-linux-gnu 33mkdir -p $ROOTDIR/usr/lib/x86_64-linux-gnu
30cp -a /usr/lib/x86_64-linux-gnu/openssl-1.0.0 $ROOTDIR/usr/lib/x86_64-linux-gnu/.
31cp -a /usr/lib/ssl $ROOTDIR/usr/lib/.
32touch $ROOTDIR/var/log/syslog 34touch $ROOTDIR/var/log/syslog
33touch $ROOTDIR/var/tmp/somefile 35touch $ROOTDIR/var/tmp/somefile
34SORTED=`for FILE in $* $DEFAULT_FILES; do echo " $FILE "; ldd $FILE | grep -v dynamic | cut -d " " -f 3; done | sort -u` 36SORTED=`for FILE in $* $DEFAULT_FILES; do echo " $FILE "; ldd $FILE | grep -v dynamic | cut -d " " -f 3; done | sort -u`
@@ -41,7 +43,7 @@ cp --parents /lib/ld-linux.so.2 $ROOTDIR
41cp unchroot $ROOTDIR/. 43cp unchroot $ROOTDIR/.
42touch $ROOTDIR/this-is-my-chroot 44touch $ROOTDIR/this-is-my-chroot
43 45
44cd $ROOTDIR; find . 46cd $ROOTDIR;
45mkdir -p usr/lib/firejail/ 47mkdir -p usr/lib/firejail/
46cp /usr/lib/firejail/libtrace.so usr/lib/firejail/. 48cp /usr/lib/firejail/libtrace.so usr/lib/firejail/.
47 49