51、漏洞分析与IDA工具的运用

漏洞分析与IDA工具的运用

1. 漏洞初步分析与栈缓冲区检测

在进行漏洞分析时,栈缓冲区的情况是一个重要的分析点。例如,存在这样的栈布局, var_418 被合并成一个数组,而 var_818 似乎只是一个单字节(在 var_818 var_418 之间有 1023 个未定义字节)。对于这种栈布局, GetMemberSize 会报告 var_818 为 1 字节, var_418 为 1036 字节,这可能不是我们期望的结果。调用 findStackBuffers(0x08048B38, 16) 的输出如下,无论 var_818 被定义为单字节还是 1024 字节的数组:

sub_8048B38: possible buffer var_818: 1024 bytes
sub_8048B38: possible buffer var_418: 1036 bytes

我们可以创建一个主函数,遍历数据库中的所有函数,并为每个函数调用 findStackBuffers ,这样可以快速找出程序中栈缓冲区的使用情况。不过,要确定这些缓冲区是否会溢出,还需要对每个函数进行额外(通常是手动)的研究。静态分析的繁琐正是模糊测试如此流行的原因。

2. 漏洞发现后的处理流程
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值