首页
社区
课程
招聘
[讨论]PUBG 2018.3.9更新的代码页防止更改
发表于: 2018-3-10 16:00 19515

[讨论]PUBG 2018.3.9更新的代码页防止更改

2018-3-10 16:00
19515

首先感谢hzqst大表哥 么么哒




结合图片可以看见手法类似
实现的效果 此时该页面的内存属性已经无法更改了。



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 7
支持
分享
最新回复 (14)
雪    币: 665
活跃值: (1051)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
沙发个..
2018-3-10 16:13
0
雪    币: 223
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
大佬能不能解释下什么原理,一块新的section映射之后可以使得原来的section无法更改内存属性吗
2018-3-10 19:06
0
雪    币: 433
活跃值: (1910)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
防君子不防小人咯
2018-3-10 19:13
0
雪    币: 12848
活跃值: (9142)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
5
泪落晨曦 大佬能不能解释下什么原理,一块新的section映射之后可以使得原来的section无法更改内存属性吗
使用ZwCreateSection   NULL  FileHandle映射的内存无法被修改保护属性。
ps:是我先的!明明是我先来的....MDL也好,重映射也好,还是物理内存也好!为什么你会这么熟练啊!
最后于 2018-3-12 09:22 被hzqst编辑 ,原因:
2018-3-10 19:59
0
雪    币: 223
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
hzqst 泪落晨曦 大佬能不能解释下什么原理,一块新的section映射之后可以使得原来的section无法更改内存属性吗 使用ZwCreateSection&a ...
感谢大牛解释,学习一个
2018-3-10 21:22
0
雪    币: 698
活跃值: (4564)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
谢谢  原来如此~
2018-3-11 09:09
0
雪    币: 683
活跃值: (622)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
这种方式可以防止内核态程序进行kiAttachProcess吗?
2018-3-14 09:51
0
雪    币: 20
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
hzqst 泪落晨曦 大佬能不能解释下什么原理,一块新的section映射之后可以使得原来的section无法更改内存属性吗 使用ZwCreateSection&a ...
不调用任何api,直接R0修改不行吗?
2018-3-15 16:13
1
雪    币: 3110
活跃值: (143)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
你这博客  需要改一下啊  太单纯了 
2018-3-15 17:32
0
雪    币: 189
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
~~~~~~~~~~~~~点赞@
2019-4-3 16:41
0
雪    币: 132
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
这个是用的什么工具,老哥在吗
2019-10-1 21:10
0
雪    币: 2325
活跃值: (4883)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
···根据你的代码测试不行啊 返回-1073741800

	PVOID copybuf = VirtualAlloc(NULL, 0x1000, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
	*(int*)copybuf = 123;
	PVOID addr = (PVOID)&m_val;
	SIZE_T outlen = 0;
	HANDLE hSection;
	LARGE_INTEGER FileSize, a = {};
	FileSize.QuadPart = 0x1000;
	SIZE_T size = FileSize.LowPart;

	HANDLE hProcess = ::OpenProcess(PROCESS_ALL_ACCESS, FALSE, GetCurrentProcessId());
	long status = NtCreateSection(&hSection, SECTION_ALL_ACCESS, NULL,
		&FileSize,
		PAGE_EXECUTE_READWRITE,
		SEC_COMMIT,
		NULL);

	if (status != STATUS_SUCCESS)
		return 0;
	status = NtMapViewOfSection(hSection,
		hProcess,
		(PVOID *)&copybuf,
		0,
		NULL,
		&a,
		&outlen,
		ViewShare,
		0,
		PAGE_EXECUTE_READWRITE);

2019-10-1 23:19
0
雪    币: 1510
活跃值: (3407)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
hzqst 泪落晨曦 大佬能不能解释下什么原理,一块新的section映射之后可以使得原来的section无法更改内存属性吗 使用ZwCreateSection&a ...
大表哥求科普下,已经映射完成的代码也,使用这招是不是就无效不能锁定内存页了
2021-12-26 22:36
0
雪    币: 3300
活跃值: (3893)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
人家直接内核态去修改pte属性了
2022-10-2 11:17
0
游客
登录 | 注册 方可回帖
返回
//