Git Product home page Git Product logo

cthackframework's Introduction

CTHackFramework 通用外挂框架

概述

 CTHackFramework是一个基于C++的通用外挂框架,可用于制作游戏外挂、修改器,软件破解机、注册机等程序。

 该框架下包含了大量用于游戏外挂制作的类,函数与工具包,以供支持游戏外挂的快速开发。同时包含了一套外挂的软件架构,使该框架下的外挂具有稳定,高效的特性,同时使得外挂的扩展性与兼容性得以保证。

目前仅为开发阶段,许多功能未形成稳定版本,所以并未加入该框架,例如Dll注入,封装好的D3D等,如果感兴趣,这些功能可以在示例工程中看到。目前框架非常简陋,所以需要将这些实验性功能逐步加入,使得框架更具有实际工程意义,而非目前的空架构。

框架结构

 框架的结构图如下。

Arch

Memory为内存模块,包含各类对目标进程的内存进行读取,写入,扫描等函数,负责对目标进程的内存进行操作。

Process为进程模块,包含对进程信息的获取与各类对进程的相关操作函数,如获取进程pid,句柄,查询进程加载的模块信息,进程的内存信息等等。并且包含一组封装好的进程内存数据读取函数,可以从目标进程中读取各种宽度的整形,浮点,布尔值等,同时也可以直接读取一段字节。反之,也可写入数据。如果多个外挂供能需要独立读写数据,则可以将Process改为Singleton,并将读取方法设计为static方法,并添加信号量保证互斥访问,从而多线程同时访问。

Game为游戏信息模块,主要包含两个部分GameStructGameData,其中GameStruct包含了关于游戏或者目标程序的相关结构体的定义,比如玩家类的结构,坐标结构,武器属性的结构等,而GameData包含了从游戏进程中获取到的各类数据以及外挂相关数据等。Manager通过Process将外挂所需的数据读取出来,并存储于GameData中以供各个功能子模块和GUI,Overlay等使用。

Function为功能子模块,即一种外挂功能,每个Function直接从GameData中直接获取相关数据,而数据的读取由Manager进行。同时,Manager也负责对于每个Function子功能模块进行管理,如启用停用等,并通过配置文件进行子功能模块的配置。功能子模块与整个程序的耦合程度较轻,方便模块的移植与修改。  其中,占用资源与时间较少,逻辑简单,实现软实时任务的子功能模块可以在Manager线程下运行,而相对重量级,执行硬实时任务,功能复杂的子模块,通常单独在一个新的线程中运行。这些线程也由Manager进行管理。

Manager是整个架构的核心,其负责整个架构的运转,其职能主要是:

  • 通过Process,实现对目标进程的信息读取,内存操作等。
  • 将读取到的数据等存储进GameData中。
  • 负责管理Function子功能模块。
  • 负责处理KeyBoardMouse等外设的输入。
  • 负责通过Config配置文件进行程序配置

GUI为用户界面。可以使用.NET框架,将一部分C++托管,使用WinForm,在CLR下运行,也可以使用Qt,ImGUI等其他框架。

Overlay为悬浮界面,覆盖于目标程序窗口之上,背景透明且不响应任何消息,窗口消息透传至下一层即目标程序。主要负责透视框,外挂信息,游戏信息等的显示。使用DirectX11,基于微软的DirectXTK库,见Microsoft DirectXTK

 另外关于GUIOverlay,可以通过api hooking,hook目标程序的D3D设备,从而将其绘制与游戏内,从而减少窗口模式对游戏性能的消耗。

特性

  • 支持x86/x64。
  • 包含AoB扫描,支持使用通配符进行模糊扫描。
  • DLL注入器,支持DLL注入。(详见示例工程)
  • DirectXTK,并进行了封装,便于Overlay设计。(详见示例工程)
  • 一个通用WinForm GUI,基于C++/CLR。(Winform版未发布,已经改用ImGui)

使用方法

 1. 基于目标程序,向GameStruct添加外挂所需要的结构定义。

 2. 根据各个功能子模块需求,编写逻辑并将需要的数据写入GameData,向相关配置参数写入Config。

 3. 根据功能编写Manager,进行进程的信息获取,内存数据读取,处理外设输入,管理功能子模块等。

 4. 编写用户UI,Overlay等。

示例工程

 Counter-Strike: Global Offensive 外部外挂: CSGO External Hack

 主要功能:ESP透视(DirectX Overlay),Glow透视,雷达显人,bHop,自动扳机,自瞄等。

 Counter-Strike: Global Offensive 内部外挂: CSGO Internal Hack

 主要功能:自动扳机,自喵,微自瞄,自动压枪,Glow透视,雷达显人,bHop,改枪皮,改刀等。

声明

  • 本程序仅为通用框架并非完整的具有功能的外挂,需要在该框架的基础上进行二次开发从而实现特定的功能。
  • 本程序作为外挂框架,并未将防检测纳入考量,请勿在受反外挂程序保护的服务器上使用。
  • 本程序作为游戏外挂使用时,仅限单机游戏使用,请勿在多人游戏中作弊。
  • 本程序作为其他用途时,请勿用于破坏网络安全,盗取个人信息,危害社会治安等用途,产生的一切后果与本程序无关。
  • 本程序仅限交流学习使用,请勿用于商业活动,转载或使用代码,请注明出处。

 欢迎对代码进行完善修改,增加新功能,本程序基于MIT开源许可证发行,更多请参阅许可证说明。

关于

Celestial Tech

更多详情请见天师苍邪科技官方网站: Celestial Tech

Copyright © 2019 Celestial Tech

cthackframework's People

Contributors

celestialpaler avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.