【pwnable.kr】刷题笔记

最近学习了一圈i春秋的相关知识之后,感觉还是需要刷题。pwnable.kr还没有刷完,所以抽时间出来有功夫就刷刷题。

第一题 fd

首先ssh连接,查看程序。


可以发现程序比较简单,其中fd是可以指定的,当fd值为0时为输入。



第二题.collision

查看完代码发现是需要第二个参数输入的值经过计算==给的值。


可以看到将char类型强制转换为int类型。而int类型一个占四个字节。所以就变成了20个字符长度,分为五段求和。

用pyhon随便减一下:


然后输入既可:



第三题 bof

简单溢出,扔ida里查询


发现基地址有44字节 再加上4个字节的ebp 4个字节的返回地址也就是52个字节后面覆盖成cafebabe既可。

exp:


然后查看flag既可


但是这里我有一个疑问,为什么开了cannary但是却可以直接溢出成功呢?

再具体分析下:


第一个黄色的行表明

overflowme到ebp为2c 到cafebabe 又加8个字节。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值