吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 6428|回复: 33

[原创逆向图文] X64系统安全分析:寻找浏览器主页劫持的幕后黑手

  [复制链接]
OSVince 发表于 2018-2-5 19:40 | 显示全部楼层 |阅读模式


事件说明:
某天上班,突然发现浏览器主页被修改了,改为了某123导航页面,常见的方式都没有发现劫持的链接。

系统环境说明:
这里要说明下,此次事件里的主角使用的是win10 x64 专业版,用途主是用来看恒大的VIP2视频教程。
除了QQ输入法、winrar、Chrome、火绒安全软件、iTunes、TIM、还有某R搭梯子软件外,没有安装任何软件。
我想不明白为什么浏览器会被修改。上面我也说了,系统主要是用来看视频教程的,找到“幕后黑手”后我也就不想在用之前的系统分析了,免得出意外。
我写这篇教程所用到的系统是VMware WIN7 X64系统。文章中所使用到的截图均出自于此系统,后面就不在重复说明了:


系统信息截图.png


具体搜索过程,以及相关页面我就不在这里说了,其实是我看了太多忘记链接了,我想大家应该都能搜索的到……


浏览器打开主页.png



打开浏览器第一反应是浏览器主页肯定被什么程序修改了。
常规的检查了浏览器快捷方式、注册表、IE/Chrome设置,但是没有发现有用东西。
难道网页劫持又出新技术了?没办法网上搜索一下,还真发现了有用的。
在Chrome浏览器地址栏中输入“chrome://version/”打开,看到了有用的东西。


正常的界面截图如下:


chrome正常状态.png


被劫持后:


chrome主页劫持后的系统截图.png


不只是chrome,IE也被劫持了:


IE劫持效果.png


按照网上搜索的我怀疑DLL注入攻击。要知道DLL一旦注入成功,可是可以做许多事情的。
我要找出幕后黑手,不然岂不是我用电脑干的一切都被黑暗中的眼睛看得一清二楚?
万一我看教程的时候被远程录下来了?想想都怕……然后就有了下文。
按照文中说明的。我先尝试将浏览器原文件名修改,在打开,果然正常了:


文件名修改后.png


然后我又按照网上搜索到的方法测试,打开任务管理器,使用任务管理器运行程序:


任务管理器创建进程.png


结果运行的程序正常:


任务管理器创建进程运行截图.png


基本可以确定系统被DLL注入了。攻击原理是使用DLL文件,注入到系统explorer.exe中,监视常用浏览器的文件名,劫持系统CreateProcess函数,只要检测到浏览器的名字,就在启动中过程中劫持浏览器的主页地址。这也是为什么鼠标双击或者右键打开,都会被劫持,但是使用任务管理器、修改浏览器文件名后回复正常的原因。找到问题就好办了,找到可以看到程序加载那些DLL的工具查看,如Process Explorer,然后找到对应的dll文件反注册后,安全模式删除就行了。

当然上面的这个方法只适合大牛,或者对系统文件了如指掌的系统工程师,如果你不了解千万别乱删,后果很严重的哦。
很遗憾我属于后者,我没办法判断哪些文件是有用的,哪些是没有用或者是木马的。
我本来是想利用工具监视程序创建过程会利用到哪些DLL文件,然后一个一个排除。问了一圈,好像没有人知道有类似的软件,问了恒大,恒大也说这只有调试器可以办到,这应该属于动态调试范围。


好吧打开OD,来试试,结果:


OD载入64位程序.png

OD载入报错.png


然后我才想起,我是64位系统,系统应用应该是纯64位系统。
不兼容32位,我不知道有什么工具可以调试64位程序。


然后只好: “恒在吗恒”………………


然后得到X64dbg:

X64dbg界面截图.png


到了这里,准备工作算是完成了。这里简单说下,要调试explorer.exe程序,一定要用任务管理器把系统中的explorer.exe先结束掉,也不能用附加的方式调试,否则是拦截不到CreateProcess这个函数的。
在打开文件后,先不要点击运行,在系统关键函数CreateProcesW处下断。

如图:
载入后下断.png


这里有个题外话,应为之前没有用过这个调试器,想右键点击查找----当前模块中的名称(标签)结果发现并不存在。后来发现用快捷键Ctrl+G可以快速定位地址和函数。然后就有了上图。我不知道这样的方式是不是对的,反正目的达到了,也就没有纠结了。有会用这个调试器的大神可以说说……。
至于上图中为什么断点下在了CreateProcessW位置,而不是CreateProcess,这是因为64位系统使用的是宽字符集,创建程序用到的也就是CreateProcessW,CreateProcessA只能用在窄字符集,两个函数的功能是完全一样的。

地址正确或函数有效如下图:

定位正确.png


点击确定后CPU窗口会显示跳转到这个函数的窗口,然后F2下断,


如图:
函数跳转.png


确定断点设置好后,即可点击桌面或快捷菜单里的浏览器的快捷方式,正常情况,调试器CPU窗口会断在刚刚下断的地方:


断点拦截成功.png


这里简单说下64位寄存器,因为太多的我也不知道。32位系统有8个寄存器,这个大家都知道了,分别是:EAX、ECX、EDX、EBX、ESP、EBP、ESI、EDI。64位系统则有16个寄存器,分别是:RAX、RCX、RDX、RBX、RSP、RBP、RSI、RDI、R8、R9、R10、R11、R12、R13、R14、R15。R开头的8个寄存器是用于计(兼容?)32位程序的,同时在64位系统中,RBP是作为通用寄存器使用的,32位系统中则是堆栈指针。剩下的R8---R15则是64位计算,同时是用d、w、b、指定其长度的,

如下图:
64寄存器.jpg


以上图片引用源为:http://blog.csdn.net/qq_29343201/article/details/51278798,文章也介绍了64位系统新增的汇编指令,有兴趣的同学可以去看下。

接上文,CPU断下后直接F7,运行到此处,发现调用了一个第三方的动态库:dtrampo.dll


调用dtrampo.png


进程名称对比.png


运行到这里基本可以确定是dtrampo.dll在捣鬼了,劫持的程序包括360、谷歌、百度、遨游、2345、QQ、火狐、搜狗、UC。其他几个不认识。

继续下去,基本确定了是这个程序在搞鬼了:


劫持网址.png


到此分析也就基本结束了,剩下的就是反注册这个动态库,我在网上搜索了下这个文件,竟然发现这个动态库是火绒安全的一个框架。我不相信安全软件竟然搞这个事情。就和恒大咨询了下。了解到“没有文件自效验功能的程序文件,是有可能被第三方修改的”。然后我就怀疑是不是这个动态库被第三方文件修改了,然后自己又折腾了大半天(具体过程就忽略了吧),结果没有发现。没办法就和火绒安全官方反馈这个事情。


结果:
QQ聊天记录1.png
QQ聊天记录2.png
QQ聊天记录3.png
QQ聊天记录4.png


好吧,到这里也就结束了。也就在写这篇文件,准备调试环境的时候试了一下,打开浏览器保护的时候确实是有个提示框的:


火绒浏览器防护开启提示.png


提示界面并没有说明要绑定的网址,很有可能有提示,我没有仔细看直接继续了,从而有个这个乌龙事件。

总体说来,收获还是很大的,虽然程序分析的过程中我并不是每条指令都能看懂,但还是实现了自己的目标,最主要的在学习中得到了快乐、满足。我现在把这个不算教程的文章发出来,希望对大家有帮助。多多练习,我们也能成为别人口中的大牛。


评分

参与人数 28威望 +1 HB +132 THX +14 收起 理由
longge188 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
一路走来不容易 + 1
虚心学习 + 1
消逝的过去 + 2
yexing + 1
行行行行行行 + 1
冷亦飞 + 1
凌夏随缘 + 1
慕枫二二 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
三月十六 + 1
狐狸精 + 1
哈逍 + 1
kalove + 1
淡灬看夏丶恋雨 + 1
云中作画 + 1
nypht1228 + 1
bnjzzheng + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
lies + 1
海伦泽 + 1 [快捷评语]--积极评分,从我做起。感谢分享!
轻轻不语 + 3 + 1 [快捷评语]--积极评分,从我做起。感谢分享!
海东 + 1 [快捷评语] - 吃水不忘打井人,给个评分懂感恩!
海天一色001 + 2 + 1 [快捷评语] - 吃水不忘打井人,给个评分懂感恩!
absolutex + 1 [快捷评语] - 2018,狗年发发发,狗年旺旺旺!
我乐逍遥 + 1 + 1 是啊学习快乐满足 也是我们的初衷。学破解论坛这是一个很棒的环境!
夏洛魂 + 5 + 1 [快捷评语] - 评分=感恩!简单却充满爱!感谢您的作品!
小白鼠 + 1 + 1 [快捷评语] - 评分=感恩!简单却充满爱!感谢您的作品!
梦寻百度 + 5 + 1 [快捷评语] - 吃水不忘打井人,给个评分懂感恩!
Shark恒 + 1 + 100 + 1 感谢分享,分析过程可以让很多人学习到知识!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Shark恒 发表于 2018-2-5 23:14 | 显示全部楼层

        感谢分享,分析过程可以让很多人学习到知识!

加油!!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
梦寻百度 发表于 2018-2-5 23:36 | 显示全部楼层

这一波分享值得收藏,谢谢师兄
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| OSVince 发表于 2018-2-6 08:42 | 显示全部楼层

Shark恒 发表于 2018-2-5 23:14
感谢分享,分析过程可以让很多人学习到知识!

加油!!

其实我最要感谢的是你,是你愿意在你的空闲时间帮我解答课程外的问题,是你不厌其烦的回复我“恒在吗,恒”。是你愿意把你宝贵的经验毫不保留的传授我们。谢谢您,恒老师。

点评

Shark恒”点评说:
这一切都起源于你们对我的信任,所以这是我应该做的  详情 回复 发表于 2018-2-6 10:25
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Shark恒 发表于 2018-2-6 10:25 | 显示全部楼层

OSVince 发表于 2018-2-6 08:42
其实我最要感谢的是你,是你愿意在你的空闲时间帮我解答课程外的问题,是你不厌其烦的回复我“恒在吗,恒 ...

这一切都起源于你们对我的信任,所以这是我应该做的
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
我乐逍遥 发表于 2018-2-10 15:37 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
yangfan1983 发表于 2018-2-11 13:37 | 显示全部楼层

这个可以学习下 不错 收藏下
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
yindashi 发表于 2018-3-1 18:42 | 显示全部楼层

收益匪浅,感谢楼主分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
anotheraimer 发表于 2018-3-5 20:24 | 显示全部楼层

这个可以学习下 不错 收藏下
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
gxcz123 发表于 2018-3-5 23:00 | 显示全部楼层

X64很少见,很多教程都是32位的
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表