恶意代码分析实战_05 IDA Pro_实验

0. 概述

在这个实验使用Lab05-01.dll,使用本章描述的工具和技术来获取关于这些文件的信息,实验使用的文件从GITHUB下载。

1. Lab 5-1

只用IDA Pro分析文件Lab05-01.dll中发现的恶意代码。这个实验的目标是给你一个用IDA Pro动手的经验。如果你已经用IDA Pro工作过,你可以忽略这些问题,而将精力集中在逆向工程恶意代码上。

Q1:DLLMain的地址是什么?

将Lab05-01.dll在IDA Pro中进行加载,在Function窗口中查找DLLMain函数并双击该函数。将IDA View-A转换为文本视图,由下图可知DLLMain的地址为0x1000D02E

Q2:使用Imports窗口浏览到gethostbyname,导入函数定位到什么位置?

在Imports窗口浏览gethostbyname,发现该函数的所在节为.data,地址为100163CC,序号为52,所属的库为WS2 32如下图所示。

Q3:有多少函数调用了gethostbyname?

在反汇编窗口选中gethostbyname函数,通过ctrl+X查看交叉引用列表,窗口最底下的“1/18”代表该函数存在9处交叉引用(一些版本的IDA Pro会计算两次交叉引用,类型p是被调用的引用,类型r是被读取的引用)。仔细检查交叉引用表,会发现实际上在5个不同的函数中调用了该函数。

Q4:将精力集中在位于0x10001757处的gethostbyname的调用,你能找到那个DNS请求将被触发?

gethostbyname方法用了一个参数,应该是一个包含域名的字符串。通过下图可以发现,EAX(通用寄存器)首先被off_100190

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值