沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散!
什么是空指针异常?
如不雅一个未初始化或零编号(zero-ed out)的指针被撤消引用时,将会导致法度榜样计数器/指令指针(PC/IP)指向0,大年夜而导致内核崩溃!
当碰到上述情况,起首需检查是否启用了任何保护法度榜样,如不雅启用了就将其全部封闭,包含治理员保护模式、数据履行保护模式(DEP / NX)以及mmap_min_addr保护机制。
ring0层与ring3层有所差别(Intel的CPU将特权级别分为4个级别:RING0、RING1、RING2、RING3。Windows只应用个中的两个级别RING0和RING3,RING0只给操作体系用,RING3谁都能用)。因为计算机应用二进制,是以在ring3层操作过程中,我们仅须要存眷若何追加一个shell敕令,我们须要这个时光来修改权限。光荣的是,今朝仍存在一些内核构造,持有当前的过程权限。我们将测验测验应用权限来进行root,并在处理完这些后再追加一个shell敕令。
若何晋升权限?
在进行晋升权限操作前,我们须要知道我们须要做哪些工作:
每个过程信息都存储为一个过程描述符(task_struct)
- struct task_struct {
- /* ... */
- /* Process credentials: */
- /* Tracer's credentials at attach: */
- const struct cred __rcu *ptracer_cred;
- /* Objective and real subjective task credentials (COW): */
- const struct cred __rcu *real_cred;
- /* Effective (overridable) subjective task credentials (COW): */
- const struct cred __rcu *cred;
- /* ... */
- }
- 下列是cred.h文件:
- struct cred {
- /* ... */
- kuid_tuid;/* real UID of the task */
- kgid_tgid;/* real GID of the task */
- kuid_tsuid;/* saved UID of the task */
- kgid_tsgid;/* saved GID of the task */
- kuid_teuid;/* effective UID of the task */
- kgid_tegid;/* effective GID of the task */
- /* ... */
- }
下列是sched.h文件:
下面我们将重要存眷有效的用户身份证实(UID)义务。如不雅我们成功将其值设置为0,则当前义务将具有root权限!
我们应当若何找到他们?
可以应用一些内核符号。
一些功能可用于晋升当前的过程权限,它们的地址是静态的,可以根据我们处理的内核从新生成:
- /proc/kallsyms, /proc/ksyms, /dev/ksyms..
上述这些函数在cred.c.中。
- extern int commit_creds(struct cred *);
- /* ... */
- extern struct cred *prepare_kernel_cred(struct task_struct *);
我们可以看到,prepare_kernel_cred()函数的返回值类型为struct cred *,之后再以此作为参数传递给commit_creds(),如许就可以将我们新获得的权限分派给当前的过程!
结论:可以经由过程“commit_creds(prepare_kernel_cred(0))”敕令来晋升权限;
懂得马脚并学会触发这些马脚
在进行内核开辟前,我们须要知道若何触发马脚,还须要知道在什么情况下指针会被撤消。
解决内核威逼问题
我们起首须要检查保护法度榜样
如上图所示,所有的保护办法都出于封闭状况。
在“tostring_write()”函数里,我们可以看到这些敕令应当始终以10'*'开首。
在完成后,开端运行
当这个内核模块被加载时,它会在每次运行时启动构造,每次运行都邑启动一次。
如上图所示,我们不难发明这会启动“tostring_create()”。当在“tostring_s struct!”下设置函数指针时,该功能就会响应
推荐阅读
沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散! 大年夜数据这个词,几乎天天都邑听到。不过谈到这个词典,要么是科技公司介绍新技巧、要么是专家学者介绍将>>>详细阅读
地址:http://www.17bianji.com/lsqh/38226.html
1/2 1