小红花·文摘
  • 首页
  • 广场
  • 排行榜🏆
  • 直播
  • FAQ
Dify.AI

本文探讨了BPF验证器的静态分析引擎,重点介绍了抽象解释原理、寄存器状态类型系统、深度优先搜索策略及状态裁剪机制。验证器通过跟踪类型和值域,避免了穷举所有输入的复杂性,并分析了循环处理、路径裁剪及精度追踪,以提高验证效率和准确性,确保程序的安全性与性能。

【eBPF 内核实现深度拆解】验证器核心算法:抽象解释、状态跟踪与路径裁剪

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-07-23T00:00:00Z

Kubernetes 集群中,kube-proxy 使用 iptables 管理服务,导致性能瓶颈。Cilium 通过 eBPF 替代 iptables,实现 O(1) 哈希查找和原子更新,显著提升性能,并支持无 Sidecar 的服务网格,适合大规模集群。

eBPF + 容器:Cilium 的数据面为什么不再需要 iptables

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-25T00:00:00Z

Daniel Finneran explores how eBPF has evolved far beyond its roots in packet filtering into a robust, safe way to extend the Linux kernel. He explains how the eBPF "verifier", the security...

Podcast: How eBPF Empowers Developers to Observe Inside the Linux Kernel in a Safe and Unintrusive Way

InfoQ
InfoQ · 2026-06-22T11:00:00Z

eBPF是一个通用的内核可编程框架,支持网络、追踪、安全和调度等功能。通过验证器确保安全性,JIT编译提升性能,BPF maps实现用户态与内核态的通信。BTF和CO-RE技术解决跨版本兼容性,BPF_LSM和sched_ext扩展了安全和调度能力。

【操作系统百科】eBPF 核心

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-19T00:00:00Z
逾400个Arch Linux AUR软件包遭劫持用于部署信息窃取器与eBPF rootkit

本周,攻击者控制了Arch用户软件仓库(AUR)中的400多个软件包,植入凭证窃取程序。该恶意程序窃取开发者信息,并在获取root权限后加载eBPF rootkit以隐藏自身。用户需检查6月11日后安装的软件包,若发现可疑,需更换所有凭证并排查持久化机制。此次攻击显示AUR对软件包历史记录的过度依赖。

逾400个Arch Linux AUR软件包遭劫持用于部署信息窃取器与eBPF rootkit

FreeBuf网络安全行业门户
FreeBuf网络安全行业门户 · 2026-06-12T17:03:25Z

微分段技术将网络划分为细粒度的安全区域,实现精确的访问控制,确保服务间的安全通信。实施过程包括可观测性、粗粒度分段、细粒度服务级策略和L7精确策略。尽管管理成本较高,但需在安全性与运维成本之间找到平衡,选择合适的技术栈(如Cilium、Istio)以满足不同规模和需求的安全策略。

【零信任安全架构】微分段深度拆解:从 VLAN 到 eBPF 的访问控制演化

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文深入探讨了eBPF虚拟机的寄存器模型和指令编码,解析了11个64位寄存器的角色及调用约定。通过对struct bpf_insn的详细解读,读者将理解指令的编码格式、类别及其语义,并掌握如何通过bpftool反汇编字节码,以解决verifier日志中的错误信息。文章为后续的验证器框架和JIT编译提供了基础。

【eBPF 内核实现深度拆解】BPF 指令集解码:寄存器机器、调用约定与指令编码

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文探讨了Linux内核中BPF程序加载的验证过程,重点分析了验证器的工作机制。通过bpf_check()函数,验证器分为多个阶段,包括控制流图构建、子程序分析和逐条指令模拟执行。每个阶段确保程序的安全性,检测不可达代码和循环,最终验证栈深度不超过512字节。这些步骤的理解有助于开发安全的BPF程序。

【eBPF 内核实现深度拆解】验证器框架:从 BPF_PROG_LOAD 到 do_check()

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文讨论了eBPF程序中常见的验证器拒绝模式及其排障方法,涵盖18种模式,如空指针解引用、边界检查缺失和指针算术错误。通过分析验证器日志,提供系统化的排查流程,帮助开发者快速定位和修复问题,提高调试效率。

【eBPF 内核实现深度拆解】与验证器共舞:常见拒绝模式与编程约束

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文探讨了BPF JIT编译器的工作原理,分析了x86-64与ARM64架构下的指令翻译差异。JIT通过两轮编译优化BPF字节码为本地指令,利用寄存器映射和指令模式匹配提高执行效率。x86-64架构因其自动清零特性使ALU32操作更高效,而ARM64则需额外指令清零高32位。JIT在性能与安全性之间取得平衡,适用于高吞吐量场景。

【eBPF 内核实现深度拆解】JIT 编译器后端:x86-64 与 ARM64 的 BPF→Native 翻译管线

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

BPF程序在内核中执行时无法访问全局变量和调用内核函数,唯一的持久化机制是BPF map。本文分析了BPF map的内核实现,包括hash表和数组的结构、并发模型及适用场景。hash map使用分桶链表和预分配策略,而array map则采用连续内存布局,支持零拷贝。per-CPU变体允许每个CPU独立操作,避免缓存行竞争。理解这些并发模型对优化BPF程序性能至关重要。

【eBPF 内核实现深度拆解】Map 内核实现(上):hash / array / per-CPU 的数据结构与并发模型

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文讨论了多种 BPF map 类型的实现及其应用,包括环形缓冲区、性能事件数组、布隆过滤器、队列、栈和 LPM trie。每种 map 解决特定问题,如事件输出、快速排除和数据传递。理解这些 map 的特性有助于在架构决策中选择合适的工具,以提高性能和效率。

【eBPF 内核实现深度拆解】Map 内核实现(下):ringbuf / perfbuf / bloom / queue-stack / LPM

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

BPF程序在沙盒中执行,无法随意调用内核函数或访问内存。它通过预定义的helper函数进行特定操作,每个helper函数有特定的调用上下文,限制了其在不同BPF程序类型中的使用。本文解析了helper函数的注册机制、参数类型编码及验证逻辑,强调了类型检查和NULL检查的重要性,以确保BPF程序的安全性。

【eBPF 内核实现深度拆解】Helper 函数子系统:注册、类型检查与参数传递

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

BPF程序的生命周期包括加载、挂载、运行和卸载四个阶段,引用计数模型决定程序的存在与内存回收。常见问题如“僵尸BPF程序”是由于引用计数泄露导致的。本文分析了BPF程序的生命周期管理,探讨了不同挂载类型的引用来源及其影响,强调了引用计数在内核中的重要性。

【eBPF 内核实现深度拆解】程序生命周期:load、attach、detach、pin 与引用计数

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

本文介绍了libbpf的加载生命周期,包括ELF解析、BPF程序和map的创建与加载。libbpf简化了BPF程序的加载过程,解决了传统bcc模式的依赖和延迟问题。文章详细阐述了libbpf的API设计、Skeleton的类型安全封装,以及ring buffer消费者的实现,强调了其在生产环境中的应用价值。

【eBPF 内核实现深度拆解】libbpf 加载器工程:skeleton、auto-attach、map pinning 与 ring buffer 消费者

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

BPF类型格式(BTF)是一种为BPF程序提供的二进制类型编码格式,旨在解决DWARF在内核中的局限性。BTF通过压缩内核调试信息,提供结构体、函数签名等类型信息,支持内核中的类型验证和调试,确保BPF程序在内核中高效解析和使用。

【eBPF 内核实现深度拆解】BTF 格式规范与内核类型系统

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-06-12T00:00:00Z

eBPF is emerging as a preferred method for security observability over traditional user-space agents. By attaching probes directly to the Linux kernel's syscall interface, it provides consistent...

Article: Kernel-Level Ground Truth: Why eBPF is Replacing User-Space Agents for Security Observability

InfoQ
InfoQ · 2026-05-19T09:00:00Z

本文讨论了Seccomp和eBPF在容器安全中的优势与局限性。Seccomp无法解引用用户态指针和识别敏感文件路径,而eBPF提供了更丰富的上下文信息。文章介绍了eBPF在Linux安全模块(LSM)中的应用,强调其动态加载和高可编程性。Falco和Tetragon作为安全监控工具,分别提供基于syscall的检测和内核态的实时阻断能力。建议在不同场景下结合使用Seccomp、Falco和Tetragon以实现分层防御。

eBPF 安全监控:不改内核也能审计 syscall

土法炼钢兴趣小组的博客
土法炼钢兴趣小组的博客 · 2026-05-10T00:00:00Z
Jan Kristof Nidzwetzki:利用eBPF和硬件断点监控PostgreSQL

本文讨论了如何利用eBPF和硬件断点监控PostgreSQL的内部操作,如事务ID生成和OID分配。硬件断点通过CPU硬件特性,在特定内存地址被访问时触发eBPF程序,具有较低的开销,适合频繁访问的函数或变量。使用bpftrace工具,可以有效监控PostgreSQL的性能指标。

Jan Kristof Nidzwetzki:利用eBPF和硬件断点监控PostgreSQL

Planet PostgreSQL
Planet PostgreSQL · 2026-05-08T00:00:00Z

GitHub has introduced a new approach to improving deployment safety by leveraging eBPF, enabling the company to detect and prevent hidden circular dependencies that could block recovery during...

GitHub Uses eBPF to Eliminate Deployment Risks and Prevent Circular Failures

InfoQ
InfoQ · 2026-04-28T12:00:00Z
  • <<
  • <
  • 1 (current)
  • 2
  • 3
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
友情链接: MOGE.AI 九胧科技 模力方舟 Gitee AI 菜鸟教程 Remio.AI DeekSeek连连 53AI 神龙海外代理IP IPIPGO全球代理IP 东波哥的博客 匡优考试在线考试系统 开源服务指南 蓝莺IM Solo 独立开发者社区 AI酷站导航 极客Fun 我爱水煮鱼 周报生成器 He3.app 简单简历 白鲸出海 T沙龙 职友集 TechParty 蟒周刊 Best AI Music Generator

小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码