Loading...
很简单的hijack GOT,我们只要将puts的GOT表值换位win函数的起始地址就行了
写这篇wp纯粹是证明一下我这两天有做题,这道题是ret2csu和DynELF的使用,而且也没什么特殊的地方,就直接上exp了。不过还是有一点很奇怪,在连接服务器的时候,如果不把context的log_level的属性设为'debug'的话,就会在DynELF后的等待"Input:\n"的输入时卡住,收不到输入,而设置了就可以了。这个我不太理解,一直以为log_level只时输出记录而已。而且...
其实这道题之前还做了一道srop,但是其实我还没有完全理解,所以那个的wp就得先搁一下,先写这个的。这道题很简单这个if是一定会执行的,我们只要让v10=1就可以拿flag了。这里的read_n函数做的基本上就是读v5个字节到s1中,而这里我们可以看出s1和v10都在栈上,那么我们只要溢出s1覆盖v10为1就可以了。但是v5有限制,这里限制了v5要小于64,且不为零,而覆盖需要64+4个字节...
这道题考的其实不是pwn,应该说是Linux系统编程的知识。我啥都不会,看了别人的wp之后才知道一点。这个函数close了标准输出(close(1))和标准错误(close(2)),所以虽然我们有了shell,但是我们获得不了输出。然鹅我们可以通过exec 1>&0来把标准输出重定向到文件描述符0(标准输入),这个文件默认是开启的。这样我们就可以看到输出了。那么exec 1>&...
今天是快乐的pwn水题的一天,xctf上已经没有我会做的题了,做起了BUU的题。test_your_nc用nc连上,cat flag就行了..pwn1_sctf_2016说实话这道题我没怎么看懂反编译之后都是这种东西。replace做到事是把input里面的'I'换成"you",为什么能做到我还真没看出来,这里可能要学习一下C++STL。反正我们会发现限制输入了32个字节,但是要溢出的话要6...