今天看啥  ›  专栏  ›  看雪学苑

PWN入门-SROP拜师

看雪学苑  · 公众号  · 互联网安全  · 2024-10-29 17:58
    

主要观点总结

该文章介绍了进程与内核通信的一种方式——信号。文章首先解释了信号的发送和接收过程,然后详细描述了信号与进程组的关系,以及信号在Linux中的实现机制。接着,文章通过驱动验证和信号处理函数的介绍,展示了信号的发送和接收在内核层面的处理过程。最后,文章通过一个简单的示例,说明了如何利用信号返回机制进行ROP(Return-Oriented Programming)攻击。

关键观点总结

关键观点1: 信号是用户态进程与内核进行通信的一种方式,是陷阱(软中断)的一种。

信号抵达进程需要经过两个步骤,一是发送信号,二是接收信号。

关键观点2: 信号与进程组的关系。

在Linux中,进程的待处理信号由 task_struct 结构体中的 signal 成员和 pending 成员进行记录。 signal 成员对整个进程组生效,而 pending 成员只对指定的线程有效。

关键观点3: 信号的发送和接收。

信号的发送原因可以分为三种,一是内核检测到错误发送,二是主动发送信号,三是外部事件触发的信号。信号到达进程后,会根据信号的类型执行默认行为或按照指定的处理方式执行。

关键观点4: 信号在Linux中的实现机制。

Linux中的信号处理涉及到内核中的多个结构体和函数,如signal_struct、sigpending、task_struct等,以及do_signal等函数。

关键观点5: ROP攻击示例。

文章通过ROP攻击的例子,展示了如何利用信号返回机制来执行攻击。


免责声明

免责声明:本文内容摘要由平台算法生成,仅为信息导航参考,不代表原文立场或观点。 原文内容版权归原作者所有,如您为原作者并希望删除该摘要或链接,请通过 【版权申诉通道】联系我们处理。

原文地址:访问原文地址
总结与预览地址:访问总结与预览
推荐产品:   推荐产品
文章地址: 访问文章快照