netfilter: Linux 防火墙在内核中的实现(“钓鱼”)

Linux服务器安全加固实战:从账户权限到入侵检测的落地指南 在服务器运维中,安全加固是保障系统稳定和数据安全的核心实践。其基本原理遵循最小权限和纵深防御原则,旨在通过分层防护体系降低攻击风险。从技术价值看,有效的安全加固不仅能抵御外部攻击,还能规范内部操作,提升系统整体可靠性。常见的应用场景包括云服务器初始化配置、合规性检查以及安全事件应急响应。本文聚焦于Linux服务器安全,提供了一份可直接执行的落地清单,涵盖了SSH深度加固、Fail2ban部署等关键热词,帮助运维人员快速构建从外到内的防护体系。 阅读详情

linux学习 的防火墙技术经历了若干代的沿革,一步步的发展而来。最开始的 ipfwadm 是 Alan Cox 在 linux学习 kernel 发展的初期,从 FreeBSD 的内核代码中移植过来的。后来经历了 ipchains,再经由 Paul Russell 在 linux学习 kernel 2.3 系列的开发过程中发展了 netfilter 这个架构。而用户空间的防火墙管理工具,也相应的发展为 iptables。netfilter/iptables 这个组合目前相当的令人满意。在经历了 linux学习 kernel 2.4 和 2.5 的发展以后,的确可以说,netfilter/iptables 经受住了大量用户广泛使用的考验。

本文并不打算介绍 linux学习 防火墙在用户空间的管理程序 iptables 的使用。至于如何利用 netfilter/iptables 机制搭建一个可靠的 Internet 防火墙,这也不是本文感兴趣的话题。关于 iptables 的使用,读者朋友们可以参考 man iptables 的手册,也可以参考 netfilter 的核心开发者 Paul Russell 写的 Packet Filtering HOW-TO 和 NAT HOW-TO。相关的链接,请参见文后所列的参考资料目录。读者朋友们在阅读本文之前,最好能够对 iptables 的使用有一定的了解。

本 文介绍 netfilter 在 linux学习 kernel 中的实现。如果条件允许的话,我们可能在后续的文章中将要进一步说明如何编写自己的 kernel modules 并将其镶嵌在 netfilter 的架构中,以实现自己的定制防火墙功能。值得指出的是,在 netfilter 的网站上,可以看到 netfilter 的一个子项目 patch-o-matic,其中收录了大量的各种定制 kernel modules,这些 modules 给读者朋友们开发自己的 kernel modules,提供了非常多的、很好的例子。





回页首


IPv4 代码中 netfilter 的接口

netfilter 在 linux学习 kernel 中的 IPv4、IPv6 和 DECnet 等网络协议栈中都有相应的实现。本文限于篇幅,将只介绍其中最让大多数读者朋友们感兴趣的 IPv4 协议栈上的 netfilter 的实现。

我 们在编译 linux学习 kernel 的过程中一定会注意到,netfilter 是一个在编译过程中可选的部件。也就是说,用户在编译内核的过程中,可以按照自己的需要,决定是否要在自己的内核中编译进去 netfilter 的 kernel 支持。这就带给我们一个提示,实现 netfilter 的代码对于实现 IPv4 协议栈的代码的影响应该会是尽量的小,不那么引人注目才对。否则的话,IPv4 协议栈的代码维护工作就不得不和实现 netfilter 的代码的维护工作搅在一起,让人头疼了。

事实也的确如此,IPv4 协议栈为了实现对 netfilter 架构的支持,在 IP packet 在 IPv4 协议栈上的游历路线之中,仔细选择了五个参考点。在这五个参考点上,各引入了一行对 NF_HOOK() 宏函数的一个相应的调用。这五个参考点被分别命名为 PREROUTING,LOCAL-IN,FORWARD,LOCAL-OUT 和 POSTROUTING。关于这五个参考点的含义,在 iptables 的使用说明中有准确的叙述,相信读者朋友们都应该了解了。从如下的 grep 输出,我们可以看到 IPv4 协议栈实现代码对 NF_HOOK() 宏函数的调用:

zhaoway@qhq ~/linux-2.4.19/net/ipv4 $ grep -n NF_HOOK *.c
arp.c:591:NF_HOOK(NF_ARP, NF_ARP_OUT, skb, NULL, dev, dev_queue_xmit);
arp.c:871:return NF_HOOK(NF_ARP, NF_ARP_IN, skb, dev, NULL, arp_process);
igmp.c:187:/* Don't just hand NF_HOOK skb->dst->output, in case netfilter hook
igmp.c:252:return NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL, rt->u.dst.dev,
ip_forward.c:145:return NF_HOOK(PF_INET, NF_IP_FORWARD, skb, skb->dev, dev2,
ip_gre.c:668:/* Need this wrapper because NF_HOOK takes the function address */
ip_input.c:302:return NF_HOOK(PF_INET, NF_IP_LOCAL_IN, skb, skb->dev, NULL,
ip_input.c:437:return NF_HOOK(PF_INET, NF_IP_PRE_ROUTING, skb, dev, NULL,
ip_output.c:111:/* Don't just hand NF_HOOK skb->dst->output, in case netfilter hook
ip_output.c:156:return NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL, rt->u.dst.dev,
ip_output.c:191:return NF_HOOK(PF_INET, NF_IP_POST_ROUTING, skb, NULL, dev,
ip_output.c:233:NF_HOOK(PF_INET, NF_IP_POST_ROUTING, newskb, NULL,
ip_output.c:249:NF_HOOK(PF_INET, NF_IP_POST_ROUTING, newskb, NULL,
ip_output.c:400:return NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL, rt->u.dst.dev,
ip_output.c:603:err = NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL,
ip_output.c:714:err = NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL, rt->u.dst.dev,
ipip.c:516:/* Need this wrapper because NF_HOOK takes the function address */
ipmr.c:1211:NF_HOOK(PF_INET, NF_IP_FORWARD, skb2, skb->dev, dev,
zhaoway@qhq ~/linux-2.4.19/net/ipv4 $

NF_HOOK() 这个宏函数,定义在 linux学习-2.4.19/include/linux/netfilter.h 里面。当 #ifdef CONFIG_NETFILTER 被定义的时候,就转去调用 nf_hook_slow() 函数;如果 CONFIG_NETFILTER 没有被定义,则从 netfilter 模块转回到 IPv4 协议栈,继续往下处理。这样就给了用户在编译 kernel 的时候一个选项,可以通过定义 CONFIG_NETFILTER 与否来决定是否把 netfilter 支持代码编译进内核。从这个函数的名称,我们也可以猜到,可以把 IPv4 协议栈上的这五个参考点,形象的看成是五个钩子。IP packet 在 IPv4 协议栈上游历的时候,途经这五个钩子,就会被 netfilter 模块钓上来,审查一番,并据审查的结果,决定 packet 的下一步命运:是被原封不动的放回 IPv4 协议栈,继续游历;还是经过一些修改,再放回去;还是干脆丢弃掉算了?





回页首


netfilter 的核心模块

“鱼钩”和“垂钓点”

IP packet 被 NF_HOOK() 从 IPv4 协议栈上钓出来以后,就进入 linux学习-2.4.19/net/core/netfilter.c 中的 nf_hook_slow() 函数进行处理。这个函数干的主要事情,就是根据 nf_hooks[] 数组,开始处理 packet。准确地说来,上一段讲到的 IPv4 协议栈上的五个参考点,并不是“钓鱼的钩子”,而是“允许垂钓的地点”。换句话说,IPv4 协议栈上定义了五个“允许垂钓点”。在每一个“垂钓点”,都可以让 netfilter 放置一个“鱼钩”,把经过的 packet 钓上来。那么 netfiler 的“鱼钩”都放在什么地方?就放在 nf_hooks[][] 数组里面。这个“鱼钩”用 linux学习-2.4.19/include/linux/netfilter.h 中定义的如下 struct 予以描述:

struct nf_hook_ops
{
struct list_head list;
nf_hookfn *hook;
int pf;
int hooknum;
int priority;
};

我们看到,“鱼钩”的本质,是一个 nf_hookfn 函数。这个函数将对被钓上来的 IP packet 进行初步的处理。那么,这些“鱼钩”是由谁来放置到 nf_hooks[][] 数组里面的呢?答案是,各个 table。熟悉 iptables 管理工具的读者朋友们应该了解,一个 table 就是一组类似的防火墙 rules 的集合。iptables 里面默认定义了三个 table:filter,mangle,和 nat。举 filter table 为例,它是在 linux学习-2.4.19/net/ipv4/netfilter/iptable_filter.c 中实现的一个 kernel module。在这个 module 的初始化过程中,它会调用 nf_register_hook() 向 netfilter 的核心代码注册一组“鱼钩”。这个注册过程,实际上,也就是把“鱼钩”放到“垂钓点”的过程。“垂钓点”的具体位置,由 nf_hooks[][] 数组的下标具体说明。

ipt_do_table()

我 们具体看到 linux学习-2.4.19/net/ipv4/netfilter/iptable_filter.c 也就是 filter table 的实现代码,就发现 filter table 中的“鱼钩”上的 nf_hookfn 函数,主要是在调用 ipt_do_table() 函数。这是一个定义在 linux学习-2.4.19/net/ipv4/netfilter/ip_tables.c 中的函数。前面提到过,一个 table 就是一组防火墙 rules 的集合。显然,ipt_do_table() 函数将要做的事情,就是按照 table 中存储的一条又一条的 rules 来处理被“钓”上来的 IP packet。

table 里面存放了这个 table 中所有的防火墙 rules。但是并不是所有的 rules 都要拿过来,按照它审查一下这个 packet。事实上,这个 packet 是从哪个“鱼钩”上被钓上来的,就只有和那个“鱼钩”相关的 rules 才被拿过来,用来审查这个 packet。这个机制,就为每个 table 实现了多个 chain,而每个 chain 上又有多个 rules。而且,我们立刻看到,一个 chain 是和 IPv4 协议栈上的一个“垂钓点”相对应的。熟悉 iptables 用户空间管理工具的使用的读者朋友们应该立刻就会注意到这一点了。

在 linux学习-2.4.19/include/linux/netfilter_ipv4/ip_tables.h 中定义了 table 中的 rule 的存放格式,如下:

/* This structure defines each of the firewall rules.  Consists of 3
parts which are 1) general IP header stuff 2) match specific
stuff 3) the target to perform if the rule matches */
struct ipt_entry
{
struct ipt_ip ip;
/* Mark with fields that we care about. */
unsigned int nfcache;
/* Size of ipt_entry + matches */
u_int16_t target_offset;
/* Size of ipt_entry + matches + target */
u_int16_t next_offset;
/* Back pointer */
unsigned int comefrom;
/* Packet and byte counters. */
struct ipt_counters counters;
/* The matches (if any), then the target. */
unsigned char elems[0];
};

一个 entry 就是一个 rule。一个 entry 主要由两部分组成。一部分,是一系列的 matches;另一部分,是一个 target。这若干个 match 所要回答的问题,是相关的 packet 和本条 rule 是否匹配。而这个 target 所要回答的问题,是一旦 packet 匹配上以后,该拿这个 packet 怎么办?也就是要由 target 来决定这个匹配的 packet 今后的命运了。开头的 struct ipt_ip 的定义如下:

struct ipt_ip {
/* Source and destination IP addr */
struct in_addr src, dst;
/* Mask for src and dest IP addr */
struct in_addr smsk, dmsk;
char iniface[IFNAMSIZ], outiface[IFNAMSIZ];
unsigned char iniface_mask[IFNAMSIZ], outiface_mask[IFNAMSIZ];
/* Protocol, 0 = ANY */
u_int16_t proto;
/* Flags word */
u_int8_t flags;
/* Inverse flags */
u_int8_t invflags;
};

我们立刻可以看出来,在 struct ipt_ip 里面记录了关于这个 rule 所要匹配(match)的 packet 的一些特征。

match 和 target

netfilter 核心部分提供了一个分析、处置 packet 的架构,但是核心部分代码并不具体的去分析、处置 packet。这个具体的分析、处置的任务被交给其它的 module 来完成。核心部分代码可以根据 table 中记录的 rules 信息,来把 packet 交给能够处理相应的 rules 的 module 代码。那么,核心代码如何了解哪一个 module 可以处理哪一类的 rules 的呢?这要由各个相应的 modules 起动的时候,主动去向核心代码注册,ipt_register_target() 或者是 ipt_register_match()。这个注册过程,主要就是通知核心代码,本 module 有一个 target() 函数,可以决定 packet 的命运;或者是,本 module 有一个 match() 函数,可以判定一个 packet 是否符合 rules 的匹配要求。

这就提示我们,如果要写自己的防火墙模块,镶嵌在 netfilter 的架构中的话,我们主要要做的任务,就是向 netfilter 核心注册 ipt_register_target() 或者 ipt_register_match()。

iptables 管理工具

最 后,要说明的是 iptables,这个位于用户空间的管理工具。前面我们看到了,netfilter 在内核空间的代码根据 table 中的 rules,完成对 packet 的分析和处置。但是这些 table 中的具体的防火墙 rules,还是必须由系统管理员亲自编写。kernel 中的 netfilter 只是提供了一个机制,它并不知道该怎样利用这个机制,写出合适的 rules,来实现一个网络防火墙。那么,系统管理员编写的 rules,怎样进入位于 kernel 空间中的 netfilter 维护的 table 中去呢?

这个任务是由 iptables 这个工具来完成的。它经过 getsockopt() 以及 setsockopt() 两个系统调用,进入 kernel 空间。这两个调用是 BSD Socket 接口的一部分。这里面的问题是 IPv4 在接到关于某个 sock 的不认识的 opt 的时候,应该怎么处理?netfilter 要求它在 linux学习-2.4.19/net/ipv4/ip_sockglue.c 文件中处理 getsockopt() 和 setsockopt() 系统调用的 ip_sockopt() 函数中适当的地方调用 nf_sockopt()。这样,用户空间就可以和 netfilter 核心部分进行交流,可以维护 table 中的防火墙 rules 了。





回页首


小结

netfilter 对于 IPv4 的修改非常小,一是在若干个地方调用了 NF_HOOK(),二是在 ip_sockopt() 中调用了 nf_sockopt()。netfilter 的核心部分代码只是维护 table,解释 table 的任务在于其它的 kernel module。netfilter 会把从 hook “钓”起来的 packet 以及 table 里面的相关内容发给注册了的 module,决定 packet 的命运。



参考资料

1 netfilter/iptables 主站点在 http://www.netfilter.org或者 http://www.iptables.org在这个站点上,可以找到 netfilter 核心开发者 Paul Russell 写的 linux学习 Packet Filtering HOW-TO,Linux NAT HOW-TO 等关于怎样部署 linux学习 netfilter 防火墙的技术文章。

2 linux学习 内核源代码的在线交叉索引在 http://lxr.linux.no这个站点可以帮助读者朋友们更加方便的阅读 linux学习 kernel 的源程序。

 
ICMP时间戳漏洞深度解析与防火墙精准过滤实战 ICMP(Internet Control Message Protocol)作为网络层的控制协议,其核心功能是传递差错报告和状态查询信息,是维持网络连通性与诊断的基础。然而,协议中部分看似无害的查询功能,如Timestamp(时间戳)请求与响应,因其默认无认证且可能被默认启用的特性,在特定场景下会演变为信息泄露的隐蔽通道。攻击者可以利用此机制,通过发送ICMP Timestamp请求(类型13)并分析回复(类型14),精确获取目标系统的当前时间,进而推断其地理位置、NTP同步状态,甚至结合不同操作系统的响 阅读详情

相关推荐

软路由构建安全内网:分层防护实战解析

用软路由搭建企业级内网,不只是换台设备——它让防火墙策略、VLAN隔离、流量审计真正落地。结合软路由的灵活性与可编程性,实现从接入层到应用层的纵深防御,把边界防护延伸进内网毛细血管。

weixin_42400643的博客 164

[netfilter]--arp的主要流程

本文主要简单介绍arp的收包流程,以及钩子点的使用. arp的收包主要有两个流程, 1,arp_rcv,主要收包到本地,涉及到的钩子点NF_ARP_IN,NF_ARP_OUT, 2,通过桥接转发,__br_forward最后遍历hook函数,如果是arp包,找到br_nf_forward_arp, 2.1,br_nf_forward_arp,遍历NFPROTO_ARP,NF_ARP_FORWARD找到对应hook 注册 NFPROTO_ARP,NF_ARP_IN钩子arp_hook的堆栈情..

n1wer的专栏 738

Fail2Ban 原理与实战:日志驱动的 Linux 服务器自适应防护

Fail2Ban 是一种基于日志分析的轻量级服务器安全工具,其核心原理是实时监控系统服务(如 SSH、Nginx)日志,通过正则匹配识别暴力登录、认证失败等恶意行为模式,并自动调用 iptables 或 nftables 执行 IP 封禁。它不替代防火墙,而是作为‘日志到策略’的编排层,实现动态、可配置、低侵入的自适应防御。技术价值在于弥补静态规则无法响应新型扫描源的短板,适用于中小规模 Linux 服务器、VPS 及边缘设备的入门级纵深防护。本文深入解析其 Jail、Filter、Action、Backe

weixin_34221112的博客 374

NF_ARP_IN、NF_ARP_ OUT和 NF_ARP _FORWARD

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #incl

tycoon的专栏 1294

架构师视角下的网络分层与安全实践

计算机网络分层模型是理解现代分布式系统的基础概念,其核心价值在于将复杂通信解耦为可验证、可调试、可加固的逻辑层级。从OSI七层到云原生协议栈,分层原理决定了故障定位路径、性能瓶颈根源和安全控制落点。在微服务、混合云与eBPF等技术演进下,传统边界正在融合或重构,而安全已不再是附加模块,而是每一层协议约束力的自然叠加——如L3的ARP绑定阻断本地欺骗、L4的TCP选项加固抵御反射攻击、L7的HTTP/2 Server Push主动构建可信信道。本文基于金融支付网关、车机OTA平台与政务云等真实项目,聚焦分层认

weixin_30745553的博客 391

PEPS:基于Docker的轻量级企业邮件与文件协作栈

PEPS(Private Email & Private Storage)是一种面向中小团队的预集成协作系统,本质是将邮件服务(SMTP/IMAP)与文件存储(WebDAV/SFTP)通过Docker容器标准化交付。其核心原理在于封装复杂协议栈(如Postfix+Dovecot+OpenDKIM)与安全策略(SPF/DKIM/DMARC自动配置、TLS强制加密),规避手动部署常见的配置失当与兼容性陷阱。技术价值体现在开箱即用、资源可控、日志可溯和升级可管,显著降低自建协作基础设施的运维门槛。典型应用场景包括

weixin_34279579的博客 418

Linux 内核开发 - NetFilter

Linux 内核开发 - NetFilter

阿呆的隐秘角落 2974

linux内核协议栈 邻居协议之 arp 数据包收发处理流程

前言 在arp初始化时,通过调用dev_add_pack将arp协议的接收处理函数添加到了三层协议数据包处理函数相关的hash链表ptype_base中(关于三层协议数据包处理函数相关的hash链表,请参考文档http://blog.youkuaiyun.com/lickylin/article/details/22900401)。当底层接收到属于本机的arp数据包时,就会调用arp_rcv进行后续处理。 1 arp数据包文接收arp_rcv() 功能:对接收到的arp数据包的处理函数 首先对arp数据...

7108

使用netfilter框架处理ARP报文

内核开发交流群 745510310 欢迎加入学习利用netfilter的框架实现对arp报文的处理,这里只是打印arp报文信息,更多的处理可以在此基础上实现。arp 首部封装格式:内核版本 :,不同版本内核头文件可能不一样带来编译出错问题,可以参考这篇博客https://blog.youkuaiyun.com/fuyuande/article/details/79429441 更新一下内核。源码如下:/* ...

fuyuande的博客 3048

打造你自己的小程序容器 —— 一套能装得下整个未来的跨端技术!

摘要: 本文介绍了一种基于Capacitor框架开发的轻量级“小程序容器”解决方案——LapDrop。通过模拟微信小程序的运行逻辑(动态加载、原生能力调用、沙盒环境),LapDrop允许开发者自主构建跨平台(iOS/Android/Web)的小程序生态。其核心利用Capacitor的插件桥接机制,实现JS与原生功能的无缝调用,并支持浏览器调试与原生环境一致化。优势包括插件化架构、状态隔离、热更新及开放权限控制,适用于企业级模块化应用或开发者工具。未来计划扩展生命周期管理、远程加载等功能,目标成为开源的小程序

CangYuChenAi的博客 975

手把手教你用UNet实现轨道缺陷检测(附RSDDs数据集下载与完整代码)

本文详细介绍了如何使用UNet模型实现轨道缺陷检测,包括RSDDs数据集的下载与处理、UNet架构的改进与优化、训练策略设计以及模型部署的全流程。通过实战案例,展示了如何利用深度学习技术提升工业质检效率,特别适合从事工业缺陷检测和图像处理的开发者参考。

dapp9builder的博客 749

【Linux】网络安全管理:Netfilter、nftables 与 Firewalld | Redhat

本文介绍了Linux防火墙机制:Netfilter是内核底层框架,通过预设Hook点拦截数据包;nftables作为其上层工具,执行具体的包过滤、NAT等规则;而firewalld通过“区域”和“服务”概念,简化配置管理。通过“钓鱼执法”类比数据包从被拦截、经规则匹配到最终被接受、拒绝或转发的完整流程,并提供了firewall-cmd的常用操作指南。

D2005_10_25的博客 1792

ArcGIS实战:用栅格数据为偏远山区规划一条最省钱的公路(附完整数据与操作步骤)

本文详细介绍了如何利用ArcGIS进行栅格数据分析,为偏远山区规划一条最省钱的公路。通过DEM高程数据处理、成本权重设定和最佳路径计算,结合真实案例展示了从数据准备到工程方案转化的完整流程,帮助工程师在复杂地形中做出经济高效的路线决策。

weixin_32136203的博客 356

Netfilter的使用和实现

概述   Netfilter为多种网络协议(IPv4、IPv6、ARP等)各提供了一套钩子函数。 在IPv4中定义了5个钩子函数,这些钩子函数在数据包流经协议栈的5个关键点被调用。 这就像有5个钓鱼台,在每个钓鱼台放了一个鱼钩(钩子函数),把经过的数据包钓上来, 然后根据自定义的规则,来决定数据包的命运: 可以原封不动的放回IPv4协议,继续向上层递交;可以进行

stonesharp的专栏 1165

SECS/GSM 测试工具 SecsExpress 的配置与实战应用

本文详细介绍了半导体设备通讯测试工具SecsExpress的配置与实战应用。作为专业的SECS/GSM协议调试工具,它能模拟Host与设备端进行双向测试,帮助工程师快速部署、验证通讯链路,并高效排查与RMS系统或真实设备间的联调问题,是提升半导体工厂设备集成与维护效率的利器。

yhn456789的博客 298

mapbox进阶,百度地图、高德地图纠偏,使用在线网络地图加载插件

本文详细介绍如何基于mapbox-gl v3.8.0版本百度地图、高德地图纠偏,使用在线网络地图加载插件,亲测可用。希望能帮助到您。一起学习,加油!加油!

我哎GIS博客 749

Linux 防火墙概述:原理、演变与实践应用

Linux防火墙的核心是Netfilter,一个集成在Linux内核中的框架,用于在数据包通过系统时进行拦截和修改。:数据包进入网卡后、路由决策前的处理。:目标为本地进程的数据包。:需要转发的数据包。:本地发出的数据包。:数据包离开网卡前的最后处理。用户通过工具(如iptables、nftables)配置这些钩子上的规则,实现流量过滤、修改或转发。例如,iptables通过命令行操作Netfilter,设置数据包的处理策略。Linux防火墙以其灵活性和高性能成为网络安全的核心组件。

vortex5的博客 1825

【反卷积算法】Richardson-Lucy (RL) :通过不断迭代更新图像估计值

Richardson-Lucy(RL)反卷积算法:是一种基于最大似然估计(Maximum Likelihood Estimation, MLE)的图像去卷积方法,常用于去模糊和图像增强。通过不断地更新图像估计值,来最小化模糊图像和恢复图像之间的误差,逐步消除模糊,最终接近真实的原始图像,每次迭代都会根据当前估计的图像来修正下次迭代的结果。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 3038

Ubuntu服务器初始配置:权限、防火墙与SSH的宪法级实践

Linux服务器初始化配置不是简单的命令执行,而是构建身份、网络和执行三重安全边界的系统工程。其核心原理源于POSIX权限模型、netfilter防火墙机制与SSH协议栈设计,技术价值在于将不可信环境转化为可控可信基础设施。典型应用场景包括云服务器部署、边缘计算设备(如Jetson Nano/RK3588)加固、WSL开发环境标准化及生产级Web/Docker服务前置准备。过程中高频涉及sudo setuid权限位修复、ufw allow samba command not found等实操问题,本质是权限

weixin_33968104的博客 410

STM32入门教程:人脸识别

STM32CubeMX配置 打开STM32CubeMX,创建一个新的工程,并选择你使用的STM32系列和具体型号。根据摄像头模块的规格,将摄像头的输出引脚连接到相应的STM32引脚上。人脸识别是一种非常常见的人工智能应用,它可以通过摄像头捕捉到的图像,识别出图像中的人脸并进行相关的分析和处理。在本教程中,我们将使用STM32开发板和相关传感器,通过指导你搭建一个基于STM32的简单人脸识别系统,并编写相应的代码来实现该功能。另外,为了达到更好的人脸识别效果,可能需要使用更高性能的处理器和更复杂的算法。

吃不胖. 374

Python爬虫实战:使用Scrapy+Playwright高效爬取全球石油价格历史数据

python复制下载# 产品信息# 日期信息# 价格数据price = scrapy.Field() # 收盘价open = scrapy.Field() # 开盘价high = scrapy.Field() # 最高价low = scrapy.Field() # 最低价volume = scrapy.Field() # 交易量change_percent = scrapy.Field() # 涨跌幅# 元数据。

2201_76125261的博客 1020

Mythos:首个实现自主红队全流程的AI安全模型

大模型在网络安全领域的应用正从代码生成迈向自动化攻防闭环。其核心在于模型是否具备深度推理、符号执行感知与跨层漏洞迁移能力,而非单纯参数规模或微调程度。以Mythos为代表的前沿模型,通过强化学习对齐漏洞挖掘目标链路,结合推理时计算(test-time compute)实现多步自主规划,在真实内核级漏洞发现、POC构造与绕过防护机制等任务中展现出接近资深安全研究员的工程化能力。该技术显著推动‘安全左移’落地,支撑金融、政务、工控等关键场景的自动化渗透测试、开源组件风险扫描与AI原生安全协议构建,标志着AI从辅

congli3478的博客 427

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Mythos模型如何实现软件安全能力的范式跃迁

大语言模型在软件安全领域的应用,正从辅助分析工具迈向自主攻防闭环系统。其核心在于模型是否具备对程序语义、系统行为与攻击链路的深度建模能力,而非简单匹配已知漏洞模式。关键技术突破包括长上下文下的符号推理、基于环境反馈的强化学习(RLEF)训练范式,以及超长链式思维(100M token级推理)带来的战术级决策能力。这类能力使模型可完成从静态代码审计、动态利用构造到跨系统横向移动的全链路任务,显著提升漏洞发现效率与准确性。Claude Mythos正是这一演进路径的标志性成果,它在SWE-bench Pro和C

SAN_YUN的专栏 264

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SecGPT-14B:大模型如何重塑安全攻防、运营、合规与培训

大语言模型(LLM)凭借其强大的上下文理解与文本生成能力,正从通用领域向垂直行业深度渗透。其核心原理在于通过海量数据预训练,学习人类语言和知识的复杂模式,从而在理解、推理和生成任务上展现出前所未有的通用性。这一技术价值在于能够将非结构化信息转化为结构化洞察,并适配多样化的专业场景。在网络安全领域,传统工具面临告警疲劳、合规条文解读困难、攻防知识更新迅速等挑战。SecGPT-14B作为140亿参数的安全领域大模型,正是这一趋势的典型实践。它通过统一的基座模型结合场景化微调,将LLM的通用能力精准应用于攻防对抗

weixin_30550081的博客 366

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Mythos模型:AI驱动的端到端漏洞利用与安全防御新范式

大模型在网络安全领域的应用正从代码辅助迈向自主攻击链编排。Mythos代表了AI安全能力的关键跃迁——它不再仅识别漏洞,而是基于漏洞语义图谱(VSG)与推理时计算强化架构,实现高置信度的exploit生成与环境自适应利用。其技术价值在于将渗透测试工作流压缩为API级调用,显著提升红队效率与SDL闭环速度;典型应用场景覆盖企业级攻防演练、自动化POC验证、风险量化评估及遗留系统深度审计。该能力背后是超长上下文建模、分形推理架构与对抗性对齐机制的协同突破,标志着AI原生安全基础设施时代的开启。

weixin_30617737的博客 358
上一篇: GCC警告选项例解
下一篇: 浅析IPSec 安全机制
max415
博客等级 码龄22年 16粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值