网站的文章参考文献怎么做,广东深圳网站设计室,深圳招聘网站前十排名,ui网页设计培训学校作者简介#xff1a;张博#xff0c;网易高级信息安全工程师。0x00 简介在入侵检测的过程中#xff0c;进程创建监控是必不可少的一点#xff0c;因为攻击者的绝大多数攻击行为都是以进程的方式呈现#xff0c;所以及时获取到新进程创建的信息能帮助我们快速地定位攻击行为…作者简介张博网易高级信息安全工程师。0x00 简介在入侵检测的过程中进程创建监控是必不可少的一点因为攻击者的绝大多数攻击行为都是以进程的方式呈现所以及时获取到新进程创建的信息能帮助我们快速地定位攻击行为。本文将介绍一些常见的监控进程创建的方式包括其原理、Demo、使用条件和优缺点。行文仓促如果有哪些错误和不足还望大家批评指正。0x01 常见方式目前来看常见的获取进程创建的信息的方式有以下四种So preloadNetlink ConnectorAuditSyscall hook下面我们就从原理、Demo、使用条件和优缺点来了解一下这四种方式。0x02 So preload原理首先跟大家介绍两点基础知识1.Linux 中大部分的可执行程序是动态链接的常用的有关进程执行的函数例如 execve均实现在 libc.so 这个动态链接库中。2.Linux 提供了一个 so preload 的机制它允许定义优先加载的动态链接库方便使用者有选择地载入不同动态链接库中的相同函数。结合上述两点不难得出我们可以通过 so preload 来覆盖 libc.so 中的 execve等函数来监控进程的创建。Demo下面我们就来实现一个简单的 demo 。1.创建文件 hook.c 内容如下#define _GNU_SOURCE#include #include #include typedef ssize_t (*execve_func_t)(const char* filename, char* const argv[], char* const envp[]);static execve_func_t old_execve NULL;int execve(const char* filename, char* const argv[], char* const envp[]) { printf(Running hook); printf(Program executed: %s