Easy_intPWN 未解决

分数: 20 金币: 3
题目作者: SillyRabbit
一  血: 关关
一血奖励: 4金币
解  决: 171
提  示:
描  述:
flag{}
其  他: pwn.zip
评论
八一卜kod 26天前

-2 不做

回复 0

Caerus 3月前

C语言中int类型最大值是2147483647,输入2147483648整数溢出(补码),然后0x20+0x8修改返回地址执行system("bin/sh");

回复 0

da111sy 4月前

https://zaoganmaqule.github.io/2024/08/21/bugku-ctf%E7%9A%84pwn%E9%A2%98%E8%A7%A3/#more

回复 0

老实人小烁 1年前

test指令和neg指令还有jnz指令,查明白以后,让int在二进制最高位为1,使它溢出,然后进入隐藏函数以后,发现read存在明显栈溢出,并且不存在canary保护,直接构造ROP链,再调用system函数就可以了

回复 0

罗老师yyds 2年前

整数溢出,然后栈溢出,有bin/sh,有system,但是远程的时候,需要多加一个ret平衡栈

回复 0

gnol33333333 2年前

少打了几个0意思到了就行

回复 0

gnol33333333 2年前

看汇编,搞清楚test+jns,然后搞清楚neg在干嘛,就搞清楚怎么绕过判断了,这题叫int,实际上是0x8000的补码就是自己从而两个判断就pass了(不存在有符号数的溢出,所以应该不能说是整形溢出吧,单纯的一个二进制数表示法的知识点),就能进vuln了,其次就是ret2text了,先这样再那样最后这样就解决了

回复 1

zxfzd 2年前

大神给个writeup学习一下

回复 0

Ass4ssin 2年前

很奇怪,我用万能gadget中的__libc_csu_init函数调用,死活不行,用r12传参/bin/sh字符串,r15指向got表,但是就是不行!换成puts函数/bin/sh输出的也是正常的,有大佬知道为什么嘛?

回复 0

大帅比 2年前

大佬求教程啊

回复 0
Asteri5m 2年前

出了,看看?(滑稽)

回复 0

WriteUp

image
Asteri5m

10 金币

评分(1)

解题动态

繁柯伊芙加登 攻破了该题 25分钟前
linyanxuan 攻破了该题 4天前
鬼医16 攻破了该题 7天前
XmN<=GzR 攻破了该题 8天前
Mzktop1 攻破了该题 8天前
nihaolmb 攻破了该题 11天前
EtHat 攻破了该题 14天前
ju5t1 攻破了该题 20天前
coldplay99999 攻破了该题 20天前
wuzhenglin 攻破了该题 23天前
秦越人prover 攻破了该题 23天前
yangyusheng 攻破了该题 26天前
Rounty 攻破了该题 27天前
51hh 攻破了该题 28天前
luckyxixi 攻破了该题 1月前
255a 攻破了该题 1月前
15346899030 攻破了该题 1月前
pbidle 攻破了该题 1月前
Eanck 攻破了该题 1月前
libo007 攻破了该题 1月前
问题反馈