使用Ptrace去拦截和仿真Linux系统调用
|
接下来是它的另一个
这个简单程序的输出也是非常粗糙的。这里的系统调用都没有符号名,并且所有的参数都是以数字形式输出,甚至是一个指向缓冲区的指针也是如此。更完整的 strace 输出将能知道哪个参数是指针,并使用 然而,这些仅仅是系统调用拦截的基础工作。 系统调用拦截假设我们想使用 Ptrace 去实现如 OpenBSD 的 在进入主循环之前,一个进程可以限制它自己只能运行所需要的几个操作。如果 程序有缺陷,能够通过恶意的输入去利用该缺陷,这个承诺可以有效地限制漏洞利用的实现。 使用与 strace 相同的模型,但不是输出所有的系统调用,我们既能够阻塞某些系统调用,也可以在它的行为异常时简单地终止被跟踪进程。终止它很容易:只需要在跟踪器中调用 最棘手的部分是当系统调用启动后没有办法去中断它。当跟踪器在入口从 然而,我们不仅可以“搞乱”系统调用的参数,也可以改变系统调用号本身,将它修改为一个不存在的系统调用。返回时,在
这个简单的示例只是检查了系统调用是否违反白名单或黑名单。而它们在这里并没有差别,比如,允许文件以只读而不是读写方式打开( 跟踪器与被跟踪进程如何沟通?使用人为的系统调用! 创建一个人为的系统调用对于我的这个类似于 pledge 的系统调用 —— 我可以通过调用
(编辑:海西站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- win10进入安全模式的实例教程步骤
- 电脑连接共享打印机提示Windows无法连接到打印机该怎么办
- Win10系统安装KB3124200补丁Office 2016设定丢失怎么办
- windows-server-2008 – Windows Server 2008 R2上的IIS 8
- 我可以使用Office365或Azure AD作为Active Directory的主记
- windows – 什么可以导致DNS查找忽略主机文件条目?
- 好消息!Ubuntu LTS用户不需要PPA也可以获得最新的Nvidia驱
- Deepin 20,外媒称它是最漂亮的操作系统
- 100个很受欢迎的Ubuntu应用(中)
- 消息称 Chrome 正开发新功能:将 tab 拖到另一个浏览器




