这次教大家制作一个躲过NP的CE,简单的说就是个性化CE
准备工具
CheatEngine55src.rar 这官网有下载!CE的原代码!
Delphi7.rar 有中文版的!可是我看不懂中文。(其实我也看不懂英文!)编程的软件,类似于C++,VB等编程软件!
Actual Search and Replace.rar 批量修改和替换的程序
Kernel-Mode Driver Framework 简称(KMDF)找不到可以安装WDK! 这个微软官网有!
Microsoft.NETFramework2.0 这个呢在微软官网下的WDK就集成了!如果没你就另外装!
------------------华丽的分割线--------------------------
由于过程非常长和复杂,建议非无电脑基础的朋友不要浪费时间!
此教程提供思路和方法,不提供任何下载!如有遗漏请请高手补充!
思路:由于NP是通过检测进程和加载项目中一些程序代码来判定是否非法软件,
方法有两种,一种就是绕过NP,就是一下要写的,令一种就是做个虚拟NP的更新服务器!让NP保持最老版本!这不详细说了!开始教程吧!
第一步:
1.解压CE原码
2.打开CE源码的文件夹找到Driver.dat,右键打开方式,选择快记事本来打开
修改(下面的gzgame可以是什么都可以,这个就试你的个性化CE名称)
CEDRIVER54 改为gzgame1
DBKProcList54 改为gzgame2
DBKThreadList54 改为gzgame3
dbk32.sys 改为gzgame.sys
修改完,保存关闭!
3.打开文件夹DBKKernel
找到DBKDrvr.c文件,打开方法同上!
搜索"//hideme(DriverObject)"
将前面的"//去掉"保存关闭
找到sources.ce文件,打开方法同上!
将"TARGETNAME=DBK32"改为 "TARGETNAME=gzgame"(gzgame为你刚刚的个性名称)
修改完,保存关闭!
4.生成gzgame.sys
运行Windows XP Free Build Environme
进入,CE的目录, 再进入 目录 DBKKernel
然后输入CE运行一下!
如果提示错误的化,那么你的前面的操作有问题了!
如果提示一个建立成功!那么继续!
第二步:
1.用Delphi7打开dbk32文件夹下的dbk32.dpr
"VIEW" 然后 "roject Manager" 会看到"dbk32.dll"
中文版的朋友我翻译下吧。在下中文和英文水平都烂,翻译错了别碎碎念……碎碎念……!
"查看"然后"工程管理器",会看到"dbk32.dll"
点旁边的+号打开分目录看到"DBK32functions"打开它按下面修改
CEDRIVER54 >>> gzgame1
DBKProcList54 >>> gzgame2
DBKThreadList54 >>> gzgame3
修改完,保存关闭!
2.用Actual Search and Replace(以下步骤复杂容易出错!)
File> Settings > Editor
找到你的delphi7目录的delphi运行文件,也就是delphi32.exe,确定
点到options,"include subfolders"打勾
点到Search and Replace标签,
在 "Masks" 里面,键入newkernelhandler.pas;DBK32functions.pas;DBK32.dpr
在 "Path" 里面选取CE源码根目录
然后把whole words勾上
在"to search"里填要替换的字符,在"to Replace or insert"填上要替换成的字符。
被替换和替换成的字符如下:
VQE >> gzgame4
OP >> gzgame5
OT >> gzgame6
RPM>> gzgame7
WPM ……(依次递推)
VAE
CreateRemoteAPC
ReadPhysicalMemory
WritePhysicalMemory
GetPhysicalAddress
GetPEProcess
GetPEThread
ProtectMe
UnprotectMe
IsValidHandle
GetCR4
GetCR3
SetCR3
GetSDT
GetSDTShadow
setAlternateDebugMethod
getAlternateDebugMethod
DebugProcess
StopDebugging
StopRegisterChange
RetrieveDebugData
GetThreadsProcessOffset
GetThreadListEntryOffset
GetDebugportOffset
GetProcessnameOffset
StartProcessWatch
WaitForProcessListData
GetProcessNameFromID
GetProcessNameFromPEProcess
GetIDTCurrentThread
GetIDTs
MakeWritable
GetLoadedState
ChangeRegOnBP
DBKSuspendThread
DBKResumeThread
DBKSuspendProcess
DBKResumeProcess
KernelAlloc
GetKProcAddress
Protect2
test
useIOCTL
DBKGetDC
忘记告诉了,千万别先改短名字的.改长名字的先!如果你改到OT的时候.其他包含OT的代码也被改了!
3.下面接着是另存为文件,不只是修改文件名而已!
DBK32functions.pas 另存为gzgamefunctions.pas
NewKernelHandler.pas 另存为gzgameHandler.pas
注意再提示下表忘了修改下面
dbk32.sys另存为gzgame.sys
用Delphi打开 gzgame.dpr(之前修改过的DBK32.drp) 按Ctrl+F9. 生成上gzgame.DLL
如果出错,检查文件变量是不是全部修改了!
文件CEHook.dpr和hypermode.pas改成gzgame55.(只能改gzgame55)
现在用Delphi7打开gzgame55(CEHook.dpr)
Ctrl+F9生成文件
然后在用Delphi7另存下面的文件
newkernelhandler.pas另存为gzgamehandler
CeFuncProc.pas另存为gzgame56
CheatEngine另存为gzgameEngine (cheatengine.bpg不能修改,修改了你就前功尽弃)
cheat engine另存为gzgame Engine
修改完,保存关闭!
4.最后用Delphi7打开cheatengine.bpg 进行总的编译进入后按SHIT+F12选择CE主程序(MAIN)进行编译
左修改参数LEFT为228
改下标签的名字,就是CE上面的标题,你喜欢加中文也可以!看到就是你的个性化了!
最重要的修改:
"VIEW" -"roject Manager" 选中CHEATENGIN.EXE点OPTION
有个Versions Options
里面都是CE的东西,全部改掉,为了防止NP认出是CE!尽量改吧,不过改太多可能CE不能正常使用!切记!
CTRL+F9生成您的自己的gzgameEngine.exe(cheatengine.exe)
这样就完成了所有工作!不过不仔细认真的修改很容易出错!所以只供参考和学习!
我试过修改完后不能通过地下城的反外挂检测,但是某些游戏的NP还是能过的!