飘云阁安全论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 43587|回复: 143

[分享] 关于什么是“和谐补丁”及“和谐补丁”如何使用

    [复制链接]

该用户从未签到

发表于 2014-11-2 23:19:12 | 显示全部楼层 |阅读模式
什么是和谐补丁,程序为何会加载和谐文件?

    我们所知的应用程序大多是 xxx.exe 文件,双击运行的时候程序会加载一些功能模块如 XXX.dll 文件。这些dll文件有些是系统文件(如user32.dll),有些是软件自己的文件。程序加载这些 DLL 文件有两个方法,其一是通过EXE的导入表,比如程序用到了某个DLL的导出函数(API),这样程序启动的时候就会自动加载该DLL。第二个方法是程序运行的过程中动态的加载DLL,给定DLL文件名或DLL的全路径通过LoadLibrary来加载。

    对于第一种方案,由于PE导入表只提供了DLL的文件名,而非DLL的全路径,这样系统就需要提供一种查找该DLL的全路径的一种方案,系统加载DLL的方案是:先从程序自身目录下查找加载,然后才是从系统目录(如windows、system32)中查找加载。

    那这样的方案就会导致一个问题,如果 XXX.EXE 启动的时候会默认加载系统目录下的 lpk.dll,而该exe目录下也有一个lpk.dll,这时程序应该如何加载。根据我们上文提到的方案,程序会加载本目录下的 lpk.dll。这样不需要修改程序就会运行我们所希望的文件,我们称该方法叫做劫持,把劫持技术利用到破解上我们姑且叫做和谐补丁。一旦程序默认加载了我们的文件,破解方就无需考虑程序是否有壳,不用担心修改文件造成的程序效检等问题。比如 Themida 2.2.9.0 P.Y.G特别版 就是程序默认加载了我们的 winmm.dll 搞定的。


为何我的系统不加载和谐文件?应如何解决?

    在XP系统下,绝大多数程序运行时都会默认加载 lpk.dll ,所以 lpk.dll 也成了各大安全厂商的众矢之的,见则杀之。同时微软为了系统安全,在WIN7之后的系统中,已默认不从程序路径下加载 lpk.dll 文件,有些系统中的安全工具也实现了该技术,所以有些坛友就会发现自己的系统不加载该和谐补丁。如果还不加载?把杀软关闭试一下。

想要系统自动加载 lpk.dll 的话,将以下内容保存为 lpk.reg,双击导入注册表即可:

  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
  3. "ExcludeFromKnownDlls"=hex(7):6c,00,70,00,6b,00,2e,00,64,00,6c,00,6c,00,00,00,00,00
复制代码

想要系统自动加载 winmm.dll 的话,将以下内容保存为 winmm.reg,双击导入注册表即可:(感谢论坛会员 yjd 提供)

  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
  3. "ExcludeFromKnownDlls"=hex(7):77,00,69,00,6e,00,6d,00,6d,00,2e,00,64,00,6c,00,6c,00,00,00,00,00
复制代码


程序启动时会加载什么DLL ?如何查看?
可以先用OD加载该EXE,然后用 Process Explorer 中查看该EXE加载的模块:

OD.jpg

程序默认加载的DLL不单只有 lpk.dll,所有加载的DLL几乎都可以作为劫持的目标。飘大为大家提供了一款便利的DLL劫持制作工具,大家可以利用该工具制作和谐补丁。
PYG官方DLL优雅破解补丁制作工具 10周年特别版(https://www.chinapyg.com/thread-72354-1-1.html)。


劫持DLL如何编写 ?

lpk.dll 和谐补丁源码:https://www.chinapyg.com/thread-74878-1-1.html
version.dll  和谐补丁源码:https://www.chinapyg.com/thread-74879-1-1.html
winmm.dll 和谐补丁源码:https://www.chinapyg.com/thread-74880-1-1.html

附件为 lpk.dll 、version.dll 、winmm.dll 的劫持文件,该 DLL 会打印一行字符串 [PYG] XXX.DLL Attach (调试信息在工程源码中,运行时可在DbgView中查看),并自动加载同目录的 PYG.DLL 。

DLL劫持模块.rar (68.96 KB, 下载次数: 239)

查看调试信息 DbgView      下载:http://technet.microsoft.com/en-us/sysinternals/bb896647
查看进程信息 Process Explorer :http://technet.microsoft.com/en-us/sysinternals/bb896653

DbgView.jpg


BTW: 最后友情提示大家,和谐补丁一定要从靠谱的地方下载,不要随便使用陌生人的补丁。

最后偷偷告诉各位:和谐补丁哪家强,网络论坛飘云阁








评分

参与人数 18威望 +90 飘云币 +58 收起 理由
ufuk + 1 + 1 赞一个,这个帖子很给力!
yanwc + 1 + 1 PYG有你更精彩!
Michishio + 4 感谢发布原创作品,PYG有你更精彩!
610100 + 4 赞一个!
wjzzhtgp + 4 赞一个!
ygxlx + 4 赞一个!
scmy0816 + 4 + 4 PYG有你更精彩!
ttcctt + 4 很给力!
wj449656356 + 4 赞一个!
zjid520 + 1 赞一个!

查看全部评分

该用户从未签到

发表于 2014-11-4 00:18:15 | 显示全部楼层
和谐补丁的思路真好。不知道是否可以绕过一些暗装

点评

和谐补丁最大的优势就是让暗桩失效的,这就是为什么搞和谐补丁的原因。普通破解版容易陷入暗桩且难以做到通杀  详情 回复 发表于 2014-11-18 21:22
回复 支持 1 反对 0

使用道具 举报

  • TA的每日心情
    开心
    2019-3-20 07:57
  • 签到天数: 437 天

    [LV.9]以坛为家II

    发表于 2014-11-3 08:30:18 | 显示全部楼层
    威力强大的一套源码。
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    奋斗
    2020-7-31 08:47
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    发表于 2014-11-2 23:24:28 | 显示全部楼层
    学习了,很好的解析。

    该用户从未签到

    发表于 2014-11-3 00:32:49 | 显示全部楼层
    原来是这么一回事.,...
  • TA的每日心情
    开心
    2016-1-1 12:12
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2014-11-3 00:52:43 | 显示全部楼层
    和谐补丁哪家强,网络论坛飘云阁 不够6呀 不押韵{:soso_e143:}
  • TA的每日心情
    无聊
    2018-2-25 00:54
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2014-11-3 04:37:30 | 显示全部楼层
    论坛出的易语言winmm.dll和谐补丁,win764位不能使用,应该就是没加载的吧?是不是也是把这段 弄成注册表?Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
    "ExcludeFromKnownDlls"=hex(7):6c,00,70,00,6b,00,2e,00,64,00,6c,00,6c,00,00,00,00,00
  • TA的每日心情
    擦汗
    2021-11-20 08:29
  • 签到天数: 1724 天

    [LV.Master]伴坛终老

    发表于 2014-11-3 08:22:02 | 显示全部楼层
    {:soso_e113:}太谢谢了。。。。。又学到一些知识呀。。。
  • TA的每日心情
    奋斗
    2019-3-24 09:56
  • 签到天数: 767 天

    [LV.10]以坛为家III

    发表于 2014-11-3 08:23:51 | 显示全部楼层
    飘云阁和谐威武!{:soso_e113:}
    您需要登录后才可以回帖 登录 | 快速注册

    本版积分规则

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