Tesla.Angela 发表于 2017-6-29 21:53:17

[科普]简单总结“内核重载”和BufferDriverLoader的联系与区别

PS:本文不是什么新技术,纯粹是对一些老知识的总结。
标题里的BufferDriverLoader,就是“无需把【驱动文件】输出到磁盘,而是直接把【映像】映射到内存并执行”的意思。
共同点:
1、“内核重载”与BufferDriverLoader都是本质上都是通过“PE加载器”,把PE文件映射到内存里。都需要经过读取文件、展开对齐、修复导入表、重定位的过程。
2、都不支持SEH,如果发生异常,即使在try...catch里,也会导致直接蓝屏。

不同点:**** Hidden Message *****
还有大家最关心的一点,能否在WIN64系统上实现“内核重载”?**** Hidden Message *****

kz丶cn 发表于 2017-6-29 21:55:24

沙发?

zf0815zj 发表于 2017-6-29 21:56:05

支持下。。。

zjr230506 发表于 2017-6-29 21:57:27

寂寞长夜学习学习

hzqst 发表于 2017-6-29 22:04:48

本帖最后由 hzqst 于 2017-6-29 22:11 编辑

每次都要回帖好麻烦啊

补充一下:
1、x64是可以实现memload SEH的,只不过要调用某个非导出函数把需要seh的代码块加入内核维护的一个链表,非常不可靠所以一般不会有人用于正规项目,只能自己玩玩,具体见https://github.com/DarthTon/Blackbone/blob/master/src/BlackBoneDrv/Loader.c:BBMapWorker
2、x64下有pg,重载内核可行但没任何实际意义,只能做着玩儿。
3、如果只是为了躲过函数头的hook,完全可以复制函数头N个字节然后jmp回去原始内核,一般也没人会去函数内部下钩子吧。

46785131 发表于 2017-6-29 22:11:16

最后的才是重点呀..呵呵!~~~

brucep555 发表于 2017-6-29 22:33:33

顶一顶.学习下哈

tangptr@126.com 发表于 2017-6-30 00:06:38

路过

n36437517 发表于 2017-6-30 06:56:44

学习学习

wtxpwh 发表于 2017-6-30 09:14:18

围观

flac 发表于 2017-6-30 09:26:46

谢谢分享

yimingqpa 发表于 2017-6-30 10:07:51

看一看,学习一下.

惊雷 发表于 2017-6-30 13:12:51

撒娇啊回答说

3207145141 发表于 2017-6-30 14:52:54

学习大佬的总结.谢谢.

落笔飞花 发表于 2017-6-30 15:18:54

来顶帖了。。。。。。。。。。

CleanLove 发表于 2017-6-30 18:48:31

make 支持下 谢谢~~~

yyss258147 发表于 2017-7-1 16:51:41

拜读下

软绵绵 发表于 2017-7-1 17:45:32

学习学习,感谢分享

linkerrors 发表于 2017-7-1 21:27:44

感谢ta分享!

hamman 发表于 2017-7-2 16:49:17

看看涨姿势,谢谢!

岁月 发表于 2017-7-3 23:57:10

谢谢Ta大分享。

545821848 发表于 2017-7-9 16:12:09


x64应该可以实现的哈。

黄枫叶 发表于 2017-7-25 22:38:45

支持下。。。

sijin 发表于 2017-8-27 13:35:27

谢谢分享,学习下

zt8152070 发表于 2017-8-28 10:57:40

学习下

mq2752639 发表于 2017-10-6 11:20:07

很好、很强大,这个一定得支持!!!

aoskan888 发表于 2017-10-19 19:31:27

想学习下。比较感兴趣

YesBacker 发表于 2017-11-8 20:25:19

看看大神的帖子

dogbitesme 发表于 2017-11-30 09:17:48

非常强大的技术

chaos4 发表于 2017-12-2 02:35:15

BUFFER加载貌似也能在ARK里看到吧?

qq569582281 发表于 2017-12-5 10:47:59

谢谢楼主

你坏 发表于 2017-12-7 19:57:45

看看为什么64位系统不能重载内核
页: [1] 2 3 4
查看完整版本: [科普]简单总结“内核重载”和BufferDriverLoader的联系与区别