xucom 发表于 2023-7-10 20:54:56

请教Jongan DLL劫持模块的实现

    该模块和常规DLL劫持有区别:Jongan DLL劫持模块 似乎是通过ntdll或者其他方式,使劫持模块能以最高优先级加载。比如待破软件启动后,最先加载Jongan DLL的劫持模块,之后再加载其他DLL。
    请教如何实现?思路是什么?

飘云 发表于 2023-7-10 20:54:57

xucom 发表于 2023-7-14 16:43
拷贝补丁到bdcut.exe目录后。将bdcut.exe拖拽到调试器,为什么dbg的标题栏会显示模块“ntdll.dll”?

这不重要,你自己写个version.dll进去也一样,没什么神乎其神操作,中断在ntdll设置一下调试器就行了

飘云 发表于 2023-7-12 14:54:46

比如哪个补丁?

xucom 发表于 2023-7-12 15:38:27

飘云 发表于 2023-7-12 14:54
比如哪个补丁?

软件已私发您。

虽然补丁加了验证,可以按照坛内的帖子用调试器通过验证,核心问题不在于过验证。

但想请教的核心问题而是在于,这个补丁的加载顺序的实现方法?如何通过代码实现这种强制优先加载效果?

我们常规的劫持补丁,以version.dll为例。
比如,在待破解的软件下,放入version.dll。之后将软件拖拽到调试器,正常情况下,需要在调试器内手动点击“运行(Run)”,可以通过“模块”功能,观察到软件启动后会按照相应的顺序加载DLL,其中肯定会加载到我们自己编译的version.dll完成破解。

但是我想向您请教的这个Jongan DLL模块补丁有点特殊,使用方法也是将DLL补丁拷贝到待破解的软件(需要安装软件后,再拷贝补丁)目录。

奇怪的是,将Jongan DLL模块补丁拷贝到软件目录后,此时打开调试器,将待破解的主程序EXE拖拽到调试内的时候(我并没有手动点击“运行(Run)”),却会直接弹出补丁的验证框,直接强制加载这个补丁,还可以在调试器内看到程序是运行的,并且此时入口点是ntdll模块,而不是程序的主入口点。

一般情况下,即使我们给version.dll加上壳注册验证后,也需要在调试器内手动点击“运行(Run)”,才会弹出补丁的验证框。但是Jongan补丁是个例外,也是我急切想了解的原因。
而且我想通过Baymax劫持破解这个Jongan补丁,但是经过试验,Jongan补丁总是优先强制加载,先于大白补丁的劫持模块加载,无法通过大白完成破解。

真心希望您能指点。

QQ541500223 发表于 2023-7-13 09:41:48

比如广联达CAD看图软件,全网也就他破过

hahacker 发表于 2023-7-14 07:52:11

说得这么神乎其技,发出来,让大佬们看看,论坛高手如云,肯定有人知道是怎么回事,因为从来没有一项技术就只有一个人会。

飘云 发表于 2023-7-14 15:37:16

并没有发生你说的“”神乎其神“”的事情,自己写个version.dll 和 你提供的 version.dll效果一致:





xucom 发表于 2023-7-14 16:43:26

飘云 发表于 2023-7-14 15:37
并没有发生你说的“”神乎其神“”的事情,自己写个version.dll 和 你提供的 version.dll效果一致:




拷贝补丁到bdcut.exe目录后。将bdcut.exe拖拽到调试器,为什么dbg的标题栏会显示模块“ntdll.dll”?
页: [1]
查看完整版本: 请教Jongan DLL劫持模块的实现