找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
楼主: Tesla.Angela

[经验]一种可能引发KERNEL_SECURITY_CHECK_FAILURE蓝屏的编码方式

 火.. [复制链接]

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2017-10-31 20:14:18 | 显示全部楼层 |阅读模式
早在XP时代,写驱动代码没什么限制,一些人在调用PsSetCreateProcessNotify之类的函数的时,喜欢把回调函数指向一片可以执行的BUFFER。
但是到了WIN10时代,就没这出戏唱啦。当系统检查到系统回调(类似CreateProcessNotify、CreateThreadNotify)的地址不在代码地址分段的时候,就会引发这个蓝屏
测试:在任意WIN64系统上,你把『驱动里任意一个函数的地址』、『任意NonPagedPool类型地址』『任意PagedPool类型地址』分别打印一下,你会发现地址的区别是非常明显的,它们不在同一个4GB里。
由于这个变化,导致我教程里一个做法就需要修改了:
游客,如果您要查看本帖隐藏内容请回复
补充知识:AMD64地址划分(来自MIAMD.H)。
  1. /*++

  2.     Virtual Memory Layout on the AMD64 is:

  3.                  +------------------------------------+
  4. 0000000000000000 | User mode addresses - 8tb minus 64k|
  5.                  |                                    |
  6.                  |                                    |
  7. 000007FFFFFEFFFF |                                    | MM_HIGHEST_USER_ADDRESS
  8.                  +------------------------------------+
  9. 000007FFFFFF0000 | 64k No Access Region               | MM_USER_PROBE_ADDRESS
  10. 000007FFFFFFFFFF |                                    |
  11.                  +------------------------------------+

  12.                                    .
  13.                  +------------------------------------+
  14. FFFF080000000000 | Start of System space              | MM_SYSTEM_RANGE_START
  15.                  +------------------------------------+
  16. FFFFF68000000000 | 512gb four level page table map.   | PTE_BASE
  17.                  +------------------------------------+
  18. FFFFF70000000000 | HyperSpace - working set lists     | HYPER_SPACE
  19.                  | and per process memory management  |
  20.                  | structures mapped in this 512gb    |
  21.                  | region.                            | HYPER_SPACE_END
  22.                  +------------------------------------+     MM_WORKING_SET_END
  23. FFFFF78000000000 | Shared system page                 | KI_USER_SHARED_DATA
  24.                  +------------------------------------+
  25. FFFFF78000001000 | The system cache working set       | MM_SYSTEM_CACHE_WORKING_SET
  26.                  | information resides in this        |
  27.                  | 512gb-4k region.                   |
  28.                  |                                    |
  29.                  +------------------------------------+
  30.                                    .
  31.                                    .
  32. Note the ranges below are sign extended for > 43 bits and therefore
  33. can be used with interlocked slists.  The system address space above is NOT.
  34.                                    .
  35.                                    .
  36.                  +------------------------------------+
  37. FFFFF80000000000 |                                    | MM_KSEG0_BASE
  38.                  | Mappings initialized by the loader.| MM_KSEG2_BASE
  39.                  +------------------------------------+
  40. FFFFF90000000000 | win32k.sys                         |
  41.                  |                                    |
  42.                  | Hydra configurations have session  |
  43.                  | data structures here.              |
  44.                  |                                    |
  45.                  | This is a 512gb region.            |
  46.                  +------------------------------------+
  47.                  |                                    | MM_SYSTEM_SPACE_START
  48. FFFFF98000000000 | System cache resides here.         | MM_SYSTEM_CACHE_START
  49.                  |  Kernel mode access only.          |
  50.                  |  1tb.                              |
  51.                  |                                    | MM_SYSTEM_CACHE_END
  52.                  +------------------------------------+
  53. FFFFFA8000000000 | Start of paged system area.        | MM_PAGED_POOL_START
  54.                  |  Kernel mode access only.          |
  55.                  |  128gb.                            |
  56.                  +------------------------------------+
  57.                  | System mapped views start just     |
  58.                  | after paged pool.  Default is      |
  59.                  | 104MB, can be registry-overridden. |
  60.                  | 8GB maximum.                       |
  61.                  |                                    |
  62.                  +------------------------------------+
  63. FFFFFAA000000000 | System PTE pool.                   | MM_LOWEST_NONPAGED_SYSTEM_START
  64.                  |  Kernel mode access only.          |
  65.                  |  128gb.                            |
  66.                  +------------------------------------+
  67. FFFFFAC000000000 | NonPaged pool.                     | MM_NON_PAGED_POOL_START
  68.                  |  Kernel mode access only.          |
  69.                  |  128gb.                            |
  70.                  |                                    |
  71. FFFFFADFFFFFFFFF |  NonPaged System area              | MM_NONPAGED_POOL_END
  72.                  +------------------------------------+
  73.                                    .
  74.                                    .
  75.                                    .
  76.                                    .
  77.                  +------------------------------------+
  78. FFFFFFFF80000000 |                                    |
  79.                  | Reserved for the HAL. 2gb.         |
  80. FFFFFFFFFFFFFFFF |                                    | MM_SYSTEM_SPACE_END
  81.                  +------------------------------------+

  82. --*/
复制代码

0

主题

111

回帖

0

精华

银牌会员

积分
340
发表于 2017-10-31 20:19:35 | 显示全部楼层
沙发~谢谢分享~~

1

主题

80

回帖

1

精华

铂金会员

积分
1818
发表于 2017-10-31 20:19:48 | 显示全部楼层
学习一下.

1

主题

56

回帖

1

精华

贵宾会员

积分
2075
发表于 2017-10-31 20:21:08 | 显示全部楼层
WIN10屁事越来越多

0

主题

16

回帖

0

精华

铜牌会员

积分
58
发表于 2017-10-31 20:29:31 | 显示全部楼层
顶一顶

1

主题

17

回帖

0

精华

铜牌会员

积分
80
发表于 2017-10-31 20:32:14 | 显示全部楼层
最近刚好遇到这个蓝屏代码,我来看看是不是这个原因

3

主题

75

回帖

0

精华

银牌会员

积分
440
发表于 2017-10-31 21:42:41 来自手机 | 显示全部楼层
感谢分享,学习新知识

0

主题

46

回帖

0

精华

铜牌会员

积分
195
发表于 2017-10-31 22:19:54 | 显示全部楼层
还是看看了=-=

2

主题

62

回帖

0

精华

金牌会员

积分
831
发表于 2017-10-31 23:45:03 | 显示全部楼层
看看

0

主题

49

回帖

0

精华

铜牌会员

积分
76
发表于 2017-11-1 10:53:24 | 显示全部楼层
学习了

0

主题

12

回帖

0

精华

铜牌会员

积分
36
发表于 2017-11-1 14:50:37 | 显示全部楼层
WIN10越来越难搞

2

主题

29

回帖

1

精华

金牌会员

积分
1244
发表于 2017-11-1 19:42:16 | 显示全部楼层
找个空隙插jmp做中转就好了

4

主题

145

回帖

0

精华

金牌会员

积分
1189
发表于 2017-11-2 09:23:20 | 显示全部楼层
哇~这让我想起了beep~

0

主题

49

回帖

0

精华

铜牌会员

积分
61
发表于 2017-12-2 02:38:01 | 显示全部楼层
回复看看..

0

主题

103

回帖

0

精华

初来乍到

积分
3
发表于 2018-1-1 20:53:59 | 显示全部楼层
谢谢楼主分享!

2

主题

11

回帖

0

精华

铜牌会员

积分
45
发表于 2018-1-24 11:50:58 | 显示全部楼层
谢谢楼主

0

主题

41

回帖

0

精华

铜牌会员

积分
82
发表于 2018-1-26 12:30:07 | 显示全部楼层
学习一下

0

主题

10

回帖

0

精华

初来乍到

积分
12
发表于 2018-6-30 00:46:44 | 显示全部楼层
学习~~~~~~~~~~~~~~~~

2

主题

80

回帖

0

精华

铜牌会员

积分
92
发表于 2018-10-12 15:45:38 | 显示全部楼层
学习一下.补充能量

0

主题

6

回帖

0

精华

铜牌会员

积分
46
发表于 2019-5-15 20:10:44 | 显示全部楼层
win10 怎么能替换系统文件.

3

主题

122

回帖

0

精华

铜牌会员

积分
291
发表于 2020-7-27 15:52:21 | 显示全部楼层
学习一下

0

主题

7

回帖

0

精华

初来乍到

积分
17
发表于 2022-1-24 11:43:45 | 显示全部楼层
看看是啥黑科技

0

主题

7

回帖

0

精华

初来乍到

积分
17
发表于 2022-2-25 19:30:36 | 显示全部楼层
啥东东

0

主题

74

回帖

0

精华

铜牌会员

积分
105
发表于 2022-10-18 20:36:56 | 显示全部楼层
学习

0

主题

36

回帖

0

精华

铜牌会员

积分
36
发表于 2022-10-18 21:27:59 | 显示全部楼层
来看看那        

0

主题

32

回帖

0

精华

铜牌会员

积分
41
发表于 2023-5-11 09:52:08 | 显示全部楼层
谢谢楼主

0

主题

39

回帖

0

精华

铜牌会员

积分
49
发表于 2024-2-16 14:01:04 | 显示全部楼层
学习一下补充内容
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表