逆向分析笔记171103 - 修改函数头屏蔽调用

本文记录了一次逆向分析的过程,作者通过分析CPU Speed Pro的导入表,发现并定位到ShellExecuteA函数,使用API钩子和修改EXE文件中的汇编指令来阻止程序调用浏览器。在IDA的帮助下,成功地Hook了ShellExecuteA,避免了烦人的网页弹出。
摘要由CSDN通过智能技术生成

[Icy_Ybk 的逆向分析笔记,转载请注明出处,谢谢]

今天发现 CPU Speed Pro 在最后总是烦人地跳出一个网页来,觉得这个实在是太烦人,干脆就把它给破掉吧!

于是我就查看了它的导入表。运行浏览器也是属于运行程序的一种,那么逃脱不开创建进程 CreateProcess 或是 ShellExecute。

eXeScope 查看导入表关于 kernel.dll 的部分,发现并没有 CreateProcess,那么应该就是 ShellExecute,再一看 shell32.dll 部分,果然是,如下:

导入, shell32.dll
顺序 (示意) 名字
00000000    ShellExecuteA
00000000    SHGetFileInfoA

第二个直接忽略,那个肯定跟今天这个无关。目标锁定 ShellExecuteA(这是 ShellExecute 的 Ascii 版本)。

既然找到了目标,那么就开始 coding 吧!

第一次破解测试,原理:利用 API 钩子,钩取到 ShellExecuteA 的函数调用,然后直接拦截。错误码暂不考虑,先看看这个能否拦截打开浏览器这一操作。

直接上手洋洋洒洒地写了一个 API 钩子 DLL,并插入到程序中,哪成想程序不认账,一打开就报错:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值