内容纲要

YouTube

Slides

Injectors

My Injector "Syren" is available here.
You can also use "Xenos", available here.

If you are looking for PoCs:

Memory Hacking Libraries

CS:GO & Source Engine Stuff

Cheat Bases:

Valve’s Stuff:

If you are on Linux:

Curated Lists (Awesome)

PowerLoader

Process Hollowing

Manual Mapping

Atom Bombing

Kernel Injection

Other

Hooking

IAT Hooking

  • 使用导入表来获取我们感兴趣的函数地址
  • 一旦有了这些功能,将执行我们的代码,然后执行原始代码
  • 优点是它相对容易实现
  • 缺点是它也很容易检测

VMT/VFT (Virtual Method/Function Table) Hooking

  • 虚拟方法表是 C++ (和许多其他语言)处理多态性的方法
  • 否则,它类似于 IAT Hooking,但是使用 VT 而不是 IAT
  • 我们通常要进行渲染的 Hooking 或游戏更新功能
  • 重要的是要知道,对我们而言重要的是开发人员使用的(通常是引擎的,例如Unreal,Unity或Source),而不是所使用的特定库(例如DirectX),因为 大多数AntiCheats都能轻松检测到这些钩子
  • Virtual Method Table (VMT) Hooking

Vectored Forced Exception Hooking

  • 它包含引起我们可以捕获的异常
  • 此异常通常是由于将“内存”中的页面的权限更改为 PAGE_NOACCESS 导致无法访问而保存其先前状态而引起的。
  • 捕获后,我们会将返回地址与我们拥有的 Vector/List/etc 进行比较。
  • 我们将页面的权限更改为原来的权限。
  • 如果在列表中,我们将执行我们认为方便的代码,然后返回所需的地址。
  • Vectored Exception Handling Hook Class

其他

  • Hooking 的类型很多。 一些比其他的更可检测,而其他的则较慢。
  • 确实有很多类型的钩子很难检测,但是通常它们没有用,因为它们通常非常缓慢且效率低下。 在恶意软件中比在GameHacking中更多地使用它。

一些类型是:

  • Pageguard挂钩
  • HWBP(硬件断点挂钩)。
  • 这些是我所知道的,当然还有更多。

这里,您有更详细的列表。

检测在函数之前或之后运行的挂钩比在它们之间运行的挂钩要容易得多。

调用约定

发表评论

电子邮件地址不会被公开。 必填项已用*标注