概述
由于上篇文章的分析只分析了一部分,有人说我分析的不全面。于是我看了一下剩下的部分。
先来看看这部分
上面可以看到它修改了get_user_pages函数的逻辑。
我们再看这里
替换了get_user_pages_remote函数,而这个位置是在process_vm_rw_single_vec里面。它是process_vm_readv系统调用下的一个函数。process_vm_readv是可以以root权限来读取其他进程内存的一个系统调用。
继续往下看就是关于上次说的notify的东西了。
总结:
这么来看的话就很清楚了,process_vm_readv读取内存不会管什么缺页内存。于是他想通过修改process_vm_readv下面的函数增加判断来躲避缺页内存。我粗略的看了一下他添加的汇编,是不具备完善的判断缺页的能力的。
所以接下来他可能就会发现这样还是无法完全躲避检测。于是去改了get_user_pages函数的逻辑。
至于对notify的修改,上次说是为了读/proc/pid/pagemap文件。现在看来可能是为了触摸。因为触摸需要读写驱动。亦或者劫持、注入之类的?业余研究,纯属兴趣爱好,如有错误,欢迎纠正。
最后
以上就是苗条咖啡为你收集整理的某蛇内核原理分析二的全部内容,希望文章能够帮你解决某蛇内核原理分析二所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复