• IDA 反汇编 explorer


    之前写过一篇关于 IDA 在无 dmp 文件下如何定位到崩溃点的文章,由于其中涉及到公司项目,就仅限自己看了

    正好今天看到一篇关于火绒软件误杀 explorer 的文章,并且有相关的复现过程

    文章已经概述的很清楚,不过缺少软件的调试步骤,借此机会补充一下

    该调试过程一共使用两个软件,IDA010 Editor,以及调试文件,explorer.exe 和 pdb 文件,这两个文件可以从上面链接中的高赞回答中获取

    010 Editor 是个调试器,里面有块功能是 EXE 的 PE 信息查看,需要另外安装 EXE.bt

    那么开始吧,

    打开 IDA,加载 exe 文件

     选择 Portable executable for AMD64,会提示加载一些 dll,跳过就行

    IDA 比较智能会提示是否连接微软官方 symbol server 并下载符号文件,并且也会提示输入 explorer.exe 的 pdb 文件路径,按照指示加载已下载的 pdb 文件就行

    点击 Jump->Jump to function,弹出对话框,再点击 Search

    输入要寻找的 api,即 IsHijackingProcessRunning

     双击找到的 IsHijackingProcessRunning,会以 Graph View 显示汇编代码

    在汇编代码的空白处鼠标右键选择 Text View,即可切换到文件阅读,方便查看

    接着我们需要 IDA 给我们生成伪代码,鼠标在汇编代码处,按快捷键 F5 即可生成伪代码

    里面有很多变量是 v 开头的,因为这些看似正确的代码其实并不准确,只是方便我们看清楚逻辑,v 开头的变量也是 IDA 自动生成的变量名,仅供参考

    对于其他 api 也可以使用该方法去查看

    顺便摘录下引用文章的小结=》explorer.exe 中 IsHijackingProcessRunning 的行为就是检测某些程序是否在运行,如果在运行则关闭 ShellFeedsCampaign 功能。

    那么如何查看 exe 的 PE 时间戳,无论是 exe 还是 dll,两者的 PE 结构其实是类似的

    安装好 010 Editor 后,打开它并加载 explorer.exe,软件会弹出提示框安装 exe.bt,安装就行,然后我们就可以看到 exe 的 PE 二进制数据

    PE 时间戳可以在地址上直接查看,或者在下面的显示框中

     

    好了,完毕,有问题在评论区中交流,谢谢观看

     

     

     

     
  • 相关阅读:
    Word文档怎样翻译?Word文档翻译方法大分享
    实施MES管理系统前,这三个问题要考虑好
    c语言 char* 和char[]的返回值
    map-reduce执行过程
    视频汇聚/视频云存储/视频监控管理平台EasyCVR安全检查的相关问题及解决方法2.0
    IOS 证书更新
    分布式架构搭建
    爱因斯坦:我的世界观(中英文对照)
    重邮803计网概述
    五、Java基本数据类型
  • 原文地址:https://www.cnblogs.com/strive-sun/p/18029243