【Pwn 笔记】Linux 命令注入一览

骚操作总结,咕咕咕式更新

能够起 shell 的命令

setarch

1
2
3
4
5
6
7
8
9
10
# setarch --list
uname26
linux32
linux64
i386
i486
i586
i686
athlon
x86_64

用法一:

1
setarch athlon

用法二:

有些架构可以作为命令使用,终端直接输入架构名即可,可用列表如下:

1
2
3
4
linux32
linux64
i386
x86_64

exec

后面直接加 sh 来提权,可以用于只过滤第一个命令的时候

cautious-launcher

这个命令相当于 exec

用法:

1
cautious-launcher /bin/sh

读取文件的命令

cat

无需多说,用法:

1
cat flag

tac

用法:

1
tac flag

xxd

用法:

1
xxd flag

od

这里参数加个 -tc 更好,od 比 xxd 好在 od 的后面能加 * 来实现所有文件的输出

用法:

1
od flag

执行无执行权限的程序

这里说的是不能使用 chmod 的情况,即不在一个用户组的情况

1
2
3
4
64位:
/lib64/ld-linux-x86-64.so.2 /readflag
32位:
/lib/ld-linux.so.2 /readflag

获取当前目录的路径

pwd

这个是常规方法,没啥可说

ls

用法:

1
2
3
4
ls -ali
total 8
1968846 drwxr-xr-x 2 1000 1000 4096 Jan 27 12:50 .
1968682 drwxrwxrwx 152 0 0 4096 Jan 27 12:50 ..

比如我要找 inode 值为 1968846 的目录

1
2
ls -lai /tmp | grep 1968846
1968846 drwxr-xr-x 2 1000 1000 4096 Jan 27 12:50 0x8eb79f31

即可确定该目录路径为/tmp/0x8eb79f31

文章目录
  1. 1. 能够起 shell 的命令
    1. 1.1. setarch
    2. 1.2. exec
    3. 1.3. cautious-launcher
  2. 2. 读取文件的命令
    1. 2.1. cat
    2. 2.2. tac
    3. 2.3. xxd
    4. 2.4. od
  3. 3. 执行无执行权限的程序
  4. 4. 获取当前目录的路径
    1. 4.1. pwd
    2. 4.2. ls
|