社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 985阅读
  • 2回复

[分享]net分析--Pony邮件窃密木马

楼层直达
z3960 
级别: 茶馆馆主
发帖
770867
飞翔币
207694
威望
215657
飞扬币
2511641
信誉值
8



0x0 前言


Pony Fareit木马.net分析--通过STMP协议的.net样本挺多的,写下来当样本记录下

0x1 样本信息(截图自Virus total)





0x2 分析过程


1.第一段解密:对资源字符串进行异或解密,解密方式为每个双字减去0x58D1(22737)然后与0x8E异或


2.第二段解密:将异或获得的XorCode进行Base64解码,得到一个PE文件(dump1,也是.net)




3.dump1内有检测虚拟机的函数IsVM(但是并未执行这一函数体,我们待会进去仔细分析一下)


4.异或解密资源,并加载其运行(异或Key为:CnajNowpjKsL)。由此可以发现dump1依旧是一个外壳程序,解密出真正的病毒本体(dump2,也是.net)




5.dump2开始干活,先是常规三连:拷贝,隐藏,自启动






6.进入木马的特色部分:窃取各个浏览器Cookie,以及mail的内容等等




7.将获取的Cookie打包成zip,绑定STMP邮箱后发送(zip在发送成功后会删除,从而清理痕迹)



0x3 总结


1..net调试一般选择从入口点开始调试,在调试之前最好在静态分析,找到关键处代码(不然跟不进去)
2.dump2是一个常见的通过STMP窃密的邮件木马,这里我参考了前辈的分析:https://blog.csdn.net/chr8230401/article/details/100664775
3.dump1其实有反虚拟机检测,但是作者并未开启,我们又想进去一探究竟,怎么办呢,只能强改跳转看了(dnSpy的使用感不太好):
先尝试右键改下逻辑跳转,发现只能改到当前的那一行(改了也无效,想直接改到函数内部也不行,不知道啥原理)


然后只能强行改内存了,这种方法也不太友好(只对当前调试程序一次有效,重新F5都要重新改):
先右键->查看到反汇编,然后通过汇编定位(Crtl+F搜索函数名快速定位)到关键跳转,内存窗口中crtl+G跳转至该地址,查找对应OPCode修改即可(比如这里是0x74 je->0x75 jne).


反虚拟机的操作基本上是查询注册表来比对返回值有无vmware之类的关键字符串
附:第一次发帖,找不到预览按钮;md格式上传的图都挂了要重新贴,有没有铁子教一教小伙
我不喜欢说话却每天说最多的话,我不喜欢笑却总笑个不停,身边的每个人都说我的生活好快乐,于是我也就认为自己真的快乐。可是为什么我会在一大群朋友中突然地就沉默,为什么在人群中看到个相似的背影就难过,看见秋天树木疯狂地掉叶子我就忘记了说话,看见天色渐晚路上暖黄色的灯火就忘记了自己原来的方向。
级别: 超级版主
发帖
830685
飞翔币
224558
威望
224618
飞扬币
2423840
信誉值
0

只看该作者 1 发表于: 2019-12-05
来看一下
级别: 超级版主
发帖
830685
飞翔币
224558
威望
224618
飞扬币
2423840
信誉值
0

只看该作者 2 发表于: 2019-12-05
不错,了解了