赞
踩
在计算机中,基本所有的软件程序都可以通过hook方式进行行为拦截,hook方式就是改变原始的执行流。
1、修改函数指针。
2、用户态动态库拦截。
①利用环境变量LD_PRELOAD和预装载机制进行HOOK;
②利用函数ptrace,可实现对已运行的程序进行HOOK;
3、内核态系统调用拦截。
通过修改全局系统调用表sys_ call _table,对系统调用进行劫持;
4、堆栈式文件系统拦截。
5、LSM(Linux Security Modules)
Linux安全模块(Linux Secrity Module,简称LSM)是一种轻量级通用访问控制框架,适合于多种访问控制模型在它上面以内核可加载模块的形实现。用户可以根据自己的需求选择合适的安全模块加载到内核上实现。
6、Netfilter HOOK
Netfilter是Linux 2.4.x引入的一个子系统,它作为一个通用的、抽象的框架,提供一整套的hook函数的管理机制,使得诸如数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪成为了可能。
Netfilter的架构就是在整个网络流程的若干位置放置了一些检测点(HOOK),而在每个检测点上登记了一些处理函数进行处理。
Iptables是一个工具,可以用来在Netfilter中增加、修改、删除数据包处理规则,Netfilter 与 IP 协议栈是无缝契合的,是一种免费的软件防火墙。
Netfilter中有三个主要的概念:规则、表、链,等级依次递增。
iptables包括“四表五链”。
五个HOOK点(链)分别是:
下图更直观的体现了五条链
Hook技术--⑥Netfilter_netfilter hook-CSDN博客文章浏览阅读276次。Netfilter/IPTables是Linux2.4.x之后新一代的Linux防火墙机制,是一套融入到linux内核网络协议栈的框架,是linux内核的一个子系统。Netfilter采用模块化设计,具有良好的可扩充性。其重要工具模块IPTables从用户态的iptables连接到内核态的Netfilter的架构中,在报文流经的关键位置处,基于不同协议(ipv4/ipv6)的hook方式,使用hook列表中对应的钩子函数匹配处理,以实现过滤、修改报文、跟踪等功能;_netfilter hookhttps://blog.csdn.net/m0_53485135/article/details/134136255深入解析Linux内核中的Netfilter:保护你的网络安全
https://zhuanlan.zhihu.com/p/674127640
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。