吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1248|回复: 9
收起左侧

[已解决] 第一次尝试HOOK,求教从系统dll跳转自己的dll再跳回系统Dll出错的原因

  [复制链接]
plazy 发表于 2022-11-27 11:26
本帖最后由 plazy 于 2022-11-27 11:28 编辑

通过一段时间的学习,终于开始动手尝试HOOK系统Dll的相关函数,几经磨难,终于完成代码逻辑,却卡在了还原代码上,请大佬们帮忙指教下。
代码逻辑如下:
51_1.jpg
这是原kernelbase.dll中的函数指令

这是修改后的跳转指令

这是我自己DLL中的函数

什么也不做,直接执行原kernelbase.dll中的指令后跳回,应该没改变任何寄存器吧,能跳回去,但是直接报错,卡在 MOV RDI,QWORD PTR SS:[RSP+0x50] 这句指令上了。

实在想不到是哪里出的错,请大佬们帮忙指出,感激不尽~
51_3.jpg
51_2.jpg

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wchj2 发表于 2022-11-27 11:56
因为你hook的字节长度,破坏了下一条指令,面你hook之后又没有修复被破坏的那条指令,且又回到了那条被你破坏的指令上。所以就错了
DEATHTOUCH 发表于 2022-11-27 12:02
楼上说的很有可能,最好能发一下代码好让大家找找问题
 楼主| plazy 发表于 2022-11-27 12:23
wchj2 发表于 2022-11-27 12:28
plazy 发表于 2022-11-27 12:23
没有破坏下一条啊,都是6字节长度

明眼人一眼就看到已经被破坏了,告诉你原因。你又不接受。那你慢慢想吧

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
plazy + 1 + 1 谢谢@Thanks!

查看全部评分

 楼主| plazy 发表于 2022-11-27 12:37
的确是破坏了,谢谢指教5字节改成6字节了
gchq2005 发表于 2022-11-27 17:26
分两步跳,先跳到一个空的地方,再转跳
 楼主| plazy 发表于 2022-11-28 10:36
本人是纯业余爱好者,刚接触这一块,容易犯低级错误
ssjjtt 发表于 2022-11-28 20:41
代码尽量要还原,hook的时候尽量先把原来的代码写回去,然后再写自己的代码,再跳回去,达到的效果是一样的。有些人就急,认为原来的代码对自己想要实现目的有阻碍就直接不还原回去这是错误的。
 楼主| plazy 发表于 2022-11-29 11:03
ssjjtt 发表于 2022-11-28 20:41
代码尽量要还原,hook的时候尽量先把原来的代码写回去,然后再写自己的代码,再跳回去,达到的效果是一样的 ...

嗯,多谢指教
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 03:28

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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