资源爱好者上万精品资源供你下载。
CTRL+D收藏本站 - 找资源永不迷路。
【易首发】R3保护自己的代码段不被修改,直接废掉WriteMemory
作者:bruce0721日期:2023-02-11浏览:192分类:易语言源码
思路来源:代码页防止更改
核心就是用NtMapViewOfSection给代码页添加SEC_NO_CHANGE属性
利用NtCreateSection创建一块和欲保护的地址大小相同的Section,然后将数据拷贝到改Section中,最后用NtMapViewOfSection重新映射回去(此时便可添加SEC_NO_CHANGE属性)
添加映射出的内存页被添加SEC_NO_CHANGE属性后,R3下NtProtectVirtualMemory就不能修改这个内存区域的内存属性了,只读的代码段不能被修改为可写。
接着R3下的写入改内存页的命令基本就废了。
保护后CE修改代码段的效果:
由于NtMapViewOfSection要求映射内容64KB对齐,这里可能让少部分只读属性的内存页变成可读可写。
不能尝试去保护kernel32.dll(它的内存映射情况非常奇怪),程序不能去保护ntdll.dll(因为NtMapViewOfSection在ntdll中,除非重写NtMapViewOfSection,不过这也不难,我就不实现了)
保护exe代码区段需要一个Dll来完成(显然,运行中代码区段不能解除自己的映射,这会导致程序直接崩溃),且需要编译出来才有效
猜你还喜欢
- 02-16 【资源爱好者】永久发布页/更新页面
- 03-12 增加防火墙例外,可解决Windows Defender防火墙已经阻止此应...
- 03-11 【XEngine加密壳】易语言真正最专业、最完整的加密壳开源!
- 03-11 JD引擎源码 绝地求生引擎C源码 开源JD引擎C源码,编译可用
- 02-25 E盾网络验证自动破解工具源码
- 02-24 网络验证加密UI界面
- 02-24 易语言源码有道云笔记分享下载直链解析附成品
- 02-18 DLL永久注入EXE 易语言源码实现 无需工具
- 02-18 纯源码QQ群验证+线程注入器
- 02-18 AsProtect 开源加壳工具
- 02-11 【易首发】R3保护自己的代码段不被修改,直接废掉WriteMemory
- 02-11 Exui-暗黑适应布局
- 最近发表