kali缓冲区溢出笔记

缓冲区溢出
当缓冲区边界限制不严格时,由于变量传入畸形数据或程序运行错误,导致缓冲区被”撑爆”,从而覆盖了相邻内存区域的数据;
成功修改内存数据,可造成进程劫持,执行恶意代码,获取服务器控制权等后果
如何发现漏洞
源码审计
逆向工程
模糊测试
向程序堆找半随机的数据,根据内存变化判断溢出
数据生成器:生成随机,半随机数据
测试工具:识别溢出漏洞

windows缓冲区溢出
FUZZER
使用到的软件:SLMail 5.5.0 Mail Server、ImmunityDebugger_1_85_setup.exe、mona.py
两种防止缓冲区溢出防护机制:DEP:阻止代码从数据页被执、ASLR:随机内存地址加载执行程序和DLL,每次重启地址变化
SLMail的POP3服务的PASS指令参数有缓冲区溢出漏洞
EIP 寄存器存放下一条指令的地址
2700个字符实现EIP寄存器溢出
找到精确溢出的4 个字节
• 唯一字串法
• usr/share/metasploit-framework/tools/pattern_create.rb 2700
思路:
• 将 EIP 修改为shellcode代码的内存地址,将Shellcode写入到该地址空间,程序读取EIP 寄存器数值,将跳转到 shellcode 代码段并执行;
不同类型的程序、协议、漏洞,会将某些字符认为是坏字符,这些字符有固定用途
• 返回地址、Shellcode、buffer中都不能出现坏字符
• null byte (0x00) 空字符,用于终止字符串的拷贝操作
• retur

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值