恶意软件分析实战19-shellcode调试逆向Lab19-2
把样本拖入VT内分析:可以看到爆红,查看一下细节, 发现了IE浏览器进程被创建了。查看一下导入函数,发现导入了提权相关API。还有远线程注入以及进程创建相关的API现在把程序拖入IDA中,一上来就获取了debug权限,后来就获取了IE的路径其打开了注册表的HKEY_LOCAL_MACHINE\\http\\shell\\open\\command项, 即IE的路径,这个命令行执行后会打开IE浏览器
把样本拖入VT内分析:

可以看到爆红,查看一下细节, 发现了IE浏览器进程被创建了。

查看一下导入函数,发现导入了提权相关API。

还有远线程注入以及进程创建相关的API


现在把程序拖入IDA中,一上来就获取了debug权限,后来就获取了IE的路径

其打开了注册表的HKEY_LOCAL_MACHINE\\http\\shell\\open\\command项, 即IE的路径,这个命令行执行后会打开IE浏览器

接着就以隐藏方式开启了IE浏览器,接着把shellcode注入到IE浏览器内部

创建IE进程的代码:
这里是创建远线程进行注入的代码:

shellcode的首地址以参数形式传递给了函数

获取shellcode的首地址:

接下来我们直接用Ollydbg来调试shellcode, 将EIP指针指向该shellcode的首地址

0xE7是秘钥, 利用这个来解密代码

注意这段代码, 它的首地址是0x407048

解密循环结束后,同样的位置代码已经改变,解密完成,现在开始分析shellcode

这段代码获取了kernel32.dll的基地址

这里解析kernel32.dll的PE结构的导出表,查找对应函数名的hash值:

接下去就是通过函数名的HASH值来搜索该函数地址然后保存起来

下面是获取ws2_32.dll里面的api函数

直接执行了网络行为,我们来观测一下这个connect函数。connect参数内会有服务器的IP地址以及端口号
重点关注这个地址:

现在分析出几个字段, 查看下IP是0x02C8A8C0

写一段小代码获取对应的IP地址, 发现是一个内网地址。现在把虚拟机内网地址设置成这个,然后开启nc监听0x3412端口

修改网卡的静态内网IP:

设置监听:

然后创建了一个cmd进程后就结束了这个进程。这感觉是个反向shell。

果然是个后门:

总结下来这个程序做的事情就是创建隐藏进程后远程注入shellcode执行后门
(完)
更多推荐



所有评论(0)