jimmy肖明 发表于 2024-3-6 09:23:55

如何注入DLL 以DNF举列

如何注入DLL 这个方法 很多 很多多到 乱七八糟 千变万化 ......(以下省略上千字)
         
今天 要分享的就是 HOOK CreateProcessA 获取进程ID 注入   
         
以DNF 举列 (特别说明 只是研究)
         
DNF 直接HOOK CreateProcessA是无效的 我们通过调式发现 他通过加载DLL 自己实现了 CreateProcessA

这个API 的代码 并且有处 地方 (年前的数据)
         
那么 这个样子下 基本是 HOOK 不到的 他自己的实现代码的(动态模块+随即调用 当然水品好的人不算 请直接无视它)

         
      解决方案如下         

调式发现 APIntdll.memmove 没有被模拟 那结果出来了 HOOK ntdll.memmove
         
      流程如下 HOOK ntdll.memmove 判断是否 CreateProcessA 调用 如果是直接计算便宜 HOOK Creat
         
      eProcessARET 位置如果不是放行   
         
      RET 处理 读取偏移可以获取 创建的PID 远线程注入重复HOOK(完)

页: [1]
查看完整版本: 如何注入DLL 以DNF举列