|
本帖最后由 Alps 于 2020-2-25 12:51 编辑
定场诗:
道德三皇五帝,功名夏后商周。五霸七雄闹春秋,顷刻兴亡过手。
青史几行名姓,北邙无数荒丘。前人播种后人收,说甚龙争虎斗。
各位看官猜猜看礼物是什么呢?....
3......
2.....
1...
书归正传
Alps_SuperHook(后文简称ASHook)是一个易语言的hook类模块
ASHook(Alps)与Hook4E(BaZzi)、超级Hook(某鬼作坊)的比较:
阿尔卑斯 ASHook HooK4E 超级Hook
读写寄存器 稳定高效 不支持 BUG多不稳定
Hook JCC 不支持 支持 不支持
Call原函数 支持 支持 不支持
读写方式 汇编 API API
接口hook 支持 支持 不支持
插入汇编代码 支持 不支持 支持
怎么样~ 心动了叭 各位看官请留步,且听我娓娓道来...
ASHook由6个部分组成:第一部分是Start(开始hook)
Hook_Addr:提供被hook的地址
例如:
0040101A 8945 FC mov dword ptr ss:[ebp-0x4],eax0040101A是十六进制 把它转换成十进制 等于 4198426 所以地址这里填写 4198426
CallBack:提供子程序指针,当程序走到被hook的地址后,会调用这个你用来打补丁的子程序。
例如:
0040101A 8945 FC mov dword ptr ss:[ebp-0x4],eax
当程序运行到0040101A的时候,想让他调用自己的子程序来执行补丁代码,这里就写你打补丁对应的子程序
Hook_Len:被占用的汇编代码的字节长度,这一点跟超级hook是一样的。
例如:
004C4B35 8915 D84B5600 mov dword ptr ds:[0x564BD8],edx
89 15 D8 4B 56 00
1 2 3 4 5 6
在004C4B35这个地址hook, 此时长度应该填写6 因为mov dword ptr ds:[0x564BD8],edx有6个字节
0040101A 8945 FC mov dword ptr ss:[ebp-0x4],eax
0040101D BB 06000000 mov ebx,0x6
89 45 FC BB 06 00 00 00
1 2 3 4 5 6 7 8
在0040101A这个地址hook, 此时长度应该填写8
因为0040101A 8945 FC mov dword ptr ss:[ebp-0x4],eax 不足5个字节
一个长的jmp占用5个字节 所以要占用两行代码 这两行代码有8个字节
Hook_Index:这个序号对应的是寄存器的数组序号,用来读写对应的寄存器。
例如:
第一个hook 这里填1,第二个填2...后面读写寄存器 会用到这个序号 AsHook.ReadValue (1)
HookData [1].Reg.EAX = 1
AsHook.WriteValue (1)
Mode:ASHook提供两种模式的hook, 0是插入式,1是转接式。
区别:
0插入式:JMP进入中转站,中转站保存寄存器值,中转站Call CallBack,执行完CallBack恢复寄存器,执行被占用的汇编代码,JMP出中转站.
1转接式:JMP进入中转站,中转站保存寄存器值,中转站JMP CallBack.
补丁写法为:
InjectCode:模式0:在调用完Call Back后 被hook占用的代码之前,插入一段可以自定义的汇编代码。
例如:
当程序走到被hook的地址时,给EAX赋值为1
AsHook.Start (4198785, &修改登录结果2_模式0, 6, 2, 0, { 184, 1, 0, 0, 0 }) ' { 184, 1, 0, 0, 0 } = mov eax,1
模式1:Call原函数的时候,会先执行InjectCode,然后再执行原函数。
第二部分是Stop(停止hook)
恢复被hook占用的字节,不再继续hook。AsHook.Stop (1) 这里的1 是Hook_Index 也就是前面Start设置的序号。
第三部分是Continue(继续hook)
之前Stop停止的hook 可以调用Continue 直接继续hook。AsHook.Continue (1) 这里的1 是Hook_Index 也就是前面Start设置的序号。
第四部分是ReadValue(读寄存器值)
不论是要读或者写 寄存器 都要先调用该函数。
AsHook.ReadValue (1)
然后可以用HookData [1].Reg.XXX 来获取对应寄存器的值
这里的1 同样是Hook_Index
第五部分是WriteValue(写寄存器值)
需要先调用AsHook.ReadValue (1)
HookData [1].Reg.XXX = XXX // 对寄存器赋值
然后调用AsHook.WriteValue (1)
第六部分是Call原函数
用处在很多地方都能体现,例如抓某某验证的返回数据,找到他函数头,用模式1hook,然后调用它原函数,你就可以获取到他的参数和返回值了。
.子程序 接管登录子程序2_模式1, 逻辑型
.参数 登录密码, 文本型
.局部变量 ret, 整数型
ret = Alps_Call (HookData [4].FuncAddr, 取变量地址 (登录密码))
信息框 (“原函数执行结果:” + 到文本 (ret) + “获取到登录密码:” + 登录密码, 0, , )
返回 (真)
下载地址:https://www.lanzouw.com/i9njz5g
Alps_Superhook.zip
(820.61 KB, 下载次数: 584)
|
评分
-
参与人数 102 | 威望 +1 |
HB +145 |
THX +57 |
收起
理由
|
lies
| |
|
+ 1 |
|
马保国
| |
+ 2 |
+ 1 |
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
xiaoxixpj
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
DDK4282
| |
+ 1 |
+ 1 |
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
虚心学习
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
459121520
| |
+ 1 |
|
|
WolfKing
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
124713549
| |
+ 1 |
|
|
风动鸣
| |
|
+ 1 |
|
VipDongle
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
行行行行行行
| |
|
+ 1 |
|
sjtkxy
| |
+ 1 |
+ 1 |
|
大表哥学技术
| |
+ 1 |
|
|
天下一般
| |
+ 1 |
|
|
agan8888
| |
+ 1 |
|
|
伊瑟拉
| |
+ 1 |
|
|
卖火柴的小红帽
| |
|
+ 1 |
|
zxjzzh
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
飞刀梦想
| |
+ 1 |
|
|
pygicx
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
独裁者
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
掣正伏虚
| |
+ 1 |
|
|
风里去
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
男同在身边
| |
+ 1 |
|
|
微熊猫
| |
|
+ 1 |
|
车太震
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩! |
kkk1l
| |
+ 1 |
|
|
akk1898
| |
+ 1 |
|
|
hbyaojing
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
l278785481
| |
+ 1 |
|
|
yjczawyl
| |
+ 1 |
|
|
慕枫二二
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩! |
xgbnapsua
| |
|
+ 1 |
|
平安
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
小菜虫
| |
|
+ 1 |
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
weiran324
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩! |
三月十六
| |
+ 1 |
|
|
fengyuan0128
| |
+ 1 |
|
|
侠客行
| |
+ 1 |
|
|
落雪玉
| |
+ 1 |
|
|
carbe
| |
+ 1 |
|
|
a122783999
| |
+ 1 |
|
|
temp
| |
+ 1 |
+ 1 |
|
楠居
| |
+ 2 |
+ 1 |
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
4957465
| |
|
+ 1 |
|
zyyujq
| |
+ 1 |
|
|
dDack
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意! |
我是好人
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
XiaoWeiSec
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
playboy
| |
|
+ 1 |
|
查看全部评分
|