恶意代码分析实战 Lab15

lab15-01

在每一个跳转地址前面都有一个E8,把他标识为数据,程序就出来了


第一个比较,要求命令行参数是两个,其中一个是程序名


接着是取出第二个参数的第一个字节作比较,可以知道参数是pdq




lab15-02

修正过程中就两个地方注意一下,其他的都跟第一题一个手法

第一个是如下图,原来是个jmp语句跳到FF开始执行,也就是另一种翻译做inc和dec,所以这一段其实没有意义,选择翻译成第二个图就好,只要知道之前语句执行后,相当于直接执行dec之后的call语句



第二个地方像正常执行到jz,跳转到下一个图,你会发现,变样了,直接到loc_4012EF执行shellExecute函数,所以这一段代码,你可以认为他只是调用了shellExecute函数而已




你会看到程序gethostname得到主机名字

然后对这个名字操作得到user-agent

对于字符串里面的Z转化为A z变为a 9变为0,其他全部只加1来得到user-agent

url由函数sub_401386得到,进入程序就职到url是啥呢http://www.practicalmalwareanalysis.com/bamboo.html


然后读取html,查找Bamboo::xxxxx::字符串之间的字符串被保留下来作为新的url


sub_40130F得到AccountSummary.xls.exe字符串

然后新的url是原先读取的偏移8字节开始的字符串,重新InternetOpenUrl并且读取数据到ebp-102AC

然后打开AccountSummary.xls.exe文件,将读取的信息写入,接着shellexecute运行这个exe文件

多说一句,将所以多余的代码变为0x90,然后按c汇编为nop之后选中main函数全部代码按p就可以得到局部变量等东西了,换句话说,之前的mian并没有被标识为函数,这样操作之后main才是一个函数.


lab15-03

程序输出如下格式看似是再遍历每个进程的模块,然后输出相应的信息


然而在开头,main函数的返回地址已经被修改为40148c


到40148c查看,发现函数没作什么,只是注册一个seh函数,然后造成一个div 0错误,导致seh函数4014c0被调用


程序到这里调用下一个指令


函数sub_401534是将参数的每个字节的比特位取反


这个函数调用其实啥也没做,因为403040h处的字节还是0,本来应该是要得到一个文件名的,如右图实际字符串再403041开始地方


接着下载文件,用上面的url,下载到403040h处


最后调用winexec运行这个403040处的文件名


分析结束

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值