![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
eBPF
文章平均质量分 91
芯光未来
Risc-V SoC Software Architect & Linux Kernel Researcher
展开
-
LSF/MM/BPF Summit 2023
5月8号,今年度的Linux Storage, Filesystem, Memory Management & BPF Summit已经拉开帷幕,Linux存储、文件系统、内存管理以及BPF领域的年度峰会又一次到来。此次峰会聚集了Linux最重要的开发专家以及内核子系统维护者,以规划和探索改进相关模块的发展方向,这些技术点将在未来24-48个月内进入主流内核和Linux发行版。原创 2023-05-10 10:35:57 · 717 阅读 · 0 评论 -
eBPF双子座:天使or恶魔?
随着eBPF技术在各种行业领域上的使用和普及,人们在享受着技术变革红利的同时,也遭受着无孔不入的恶意攻击,就像任何事物都有两面性一样。没有任何一项技术只有高高在上的优势,而没有弊端,只有更加清晰的刨析清楚eBPF的内核,才能推动它不断的进步,趋利避害,尽可能发挥正向的作用。原创 2023-02-20 20:21:10 · 545 阅读 · 0 评论 -
Wasm + eBPF = Infinite Imaginationn (五)
使用 Wasm-bpf 工具链在 Wasm 中编写、动态加载、分发运行 eBPF 程序转载 2023-02-14 17:14:07 · 188 阅读 · 0 评论 -
Wasm + eBPF = Infinite Imaginationn (四)
现在,借助 Wasm-bpf 编译工具链和运行时,使用 Wasm 将 eBPF 程序编写为跨平台模块,同时用 C/C++ 或 Rust 来编写 Wasm 程序。通过在 WebAssembly 中使用 eBPF 程序,我们不仅能让 Wasm 应用享受到 eBPF 的高性能和对系统接口的访问能力,还可以让 eBPF 程序使用到 Wasm 的沙箱、灵活性、跨平台性、和动态加载,并使用 Wasm 的 OCI 镜像来方便、快捷地分发和管理 eBPF 程序。结合这两种技术,将t给 eBPF 和 Wasm带来全新开发体验转载 2023-02-14 17:01:29 · 371 阅读 · 0 评论 -
Wasm + eBPF = Infinite Imaginationn (三)
Wasm-bpf 是一个全新的开源项目,它定义了一套 eBPF 相关系统接口的抽象,并提供了一套对应的开发工具链、库以及通用的 Wasm + eBPF 运行时平台实例,让任意 Wasm 虚拟机或者 Wasm 轻量级容器中的应用,有能力将使用场景下沉和拓展到内核态,获取内核态和用户态的几乎所有数据,在网络、安全等多个方面实现对整个操作系统层面的可编程控制,从而极大的拓展 WebAssembly 生态在非浏览器端的应用场景。转载 2023-02-14 16:44:51 · 158 阅读 · 0 评论 -
Wasm + eBPF = Infinite Imaginationn (二)
回望过去的 2022 年,有两项技术备受瞩目:eBPF 和 WebAssembly原创 2023-02-14 16:34:53 · 259 阅读 · 0 评论 -
Wasm + eBPF = Infinite Imaginationn (一)
当今云原生世界中两个最热门的轻量级代码执行沙箱/虚拟机是 eBPF 和 WebAssembly。它们都运行从 C、C++ 和 Rust 等语言编译的高性能字节码程序,并且都是跨平台、可移植的。转载 2023-02-14 16:31:32 · 256 阅读 · 0 评论 -
深入解析云原生网络抖动引起的性能问题 @龙蜥社区eBPF SIG
“高频率、难攻克”一直是业界对抖动问题的评价,特别是在云计算场景下,复杂的网络拓扑,众多的业务承载形态,容器、虚拟机和传统的物理机并存,业务的应用也出现了微服务众多、多语言开发、多通信协议的鲜明特征,这给开发者定位这类问题带来非常大的挑战。试想从手机或者 PC 浏览器发出的一个付款请求,可能要经过你的家庭路由器,运营商网络,云服务商物理网络、虚拟网络,以及电商服务器,容器或者虚拟机,最后才是具体的服务程序对请求进行处理,这里面每个节点都可能存在延迟。原创 2022-12-12 20:47:12 · 3909 阅读 · 0 评论 -
浅析从DWARF到BTF @龙蜥社区eBPF SIG
DWARF的全称是"Debugging With Attributed Record Formats",遵从GNU FDL授权。DWARF是一种调试文件格式,许多编译器和调试器均使用DWARF来支持源代码级调试。简单来说,DWARF记录了源代码、二进制程序以及它们之间存在的联系。本文主要从三个方面介绍DWARF: 1. DWARF在elf文件存在哪些段,以及每个段的含义; 2. 采用具体的实例,介绍了.deubg_str所包含的内容; 3. 重点介绍了.debug_info段,其是理解BTF的关键;原创 2022-12-27 11:29:18 · 747 阅读 · 0 评论 -
eBPF verifier常见错误整理 @龙蜥社区eBPF SIG
本文梳理了一些常见的 eBPF verifier 报错,避免更多的人走弯路,写出能成功加载的 eBPF 程序。同时,本文通过讲解 eBPF verifier 检查原理及给出示例程序,来分析为什么 eBPF verifier 会报错,使读者能够知其然知其所以然,达到融会贯通。原创 2022-12-10 23:08:07 · 4404 阅读 · 0 评论 -
万字长文让你深入了解BPF字节码 @龙蜥社区eBPF SIG
本文详细介绍了eBPF的字节码和指令架构的定义,由具体的例子展开进行了深入分析,通过eBPF的字节码(指令集)有助于理解eBPF程序。在进行eBPF程序开发时,会遇到很多verifier的报错,经过学习本文后,通过读报错信息就可以清楚异常点的问题,对于进一步深入eBPF的开发有很大的帮助。原创 2022-12-10 22:22:04 · 4699 阅读 · 0 评论 -
首届中国eBPF大会分享---基于eBPF的内核漏洞检测实践
随着智能化、数字化、云化的飞速发展,全球基于Linux系统的设备数以百亿计,而这些设备的安全保障主要取决于主线内核的安全性和健壮性。传统的内核安全存在周期长、效率低以及版本适配的问题,有没有实用的方案能够实现高效检测内核漏洞?在11月12号,由西安邮电大学主办,中国科学院软件研究所指导的首届中国eBPF大会在线上顺利举办。此次大会上,我参与了探讨eBPF发展趋势的圆桌会议和《基于eBPF的内核漏洞检测实践》主题演讲,在此把精华内容分享给大家。原创 2022-11-14 10:25:01 · 4673 阅读 · 0 评论 -
【云安全系列】eBPF——云原生容器防护力
本文简要的介绍通过eBPF与seccomp结合,获取seccomp需要的系统调用白名单的流程。通过使用eBPF进行syscall采集,syscall白名单可以通过代码的方式自动生成,再结合seccomp能力使得syscall白名单安全能力生效。这就构成了完整的云原生系统调用维度安全保护全流程,保证了业务容器syscall维度的安全,eBPF技术结合seccomp安全机制可以进一步提高seccomp安全防护生产力。原创 2022-11-14 09:37:52 · 4133 阅读 · 0 评论 -
【云安全系列】让Seccomp“动“起来--SeccompNotify
Seccomp 作为最早一批系统级安全防护机制,从最开始只支持4个 syscall 的保护,逐步发展到 300+syscall 管控,再到现在在用户态定义的动态管控。可以察觉系统安全正在逐步由小部分的内核开发维护人员,向着更加普遍且大众开发者贴近。本文通过实际编码的方式,着重介绍了 SeccompNotify 在进程中通过将裁决移交给第三方进程,从而达到约束 target 进程的功能。除此之外,还概括了目前 SeccompNotify 主要使用的场景和注意事项;原创 2022-11-05 22:39:56 · 4681 阅读 · 0 评论 -
eBPF 技术的发展与挑战---2022云栖大会参会纪实
系统安全不是单一维度,我们要建立起从应用态到内核态的多层级防御矩阵,并从多角度的视角来看待和解决安全问题,会达到更好的效果。原创 2022-11-04 00:37:33 · 4482 阅读 · 0 评论 -
通过eBPF实例分析和解决Linux系统性能问题(二)
接上篇《[通过eBPF实例分析和解决Linux系统性能问题(一)]》本文通过eBPF + Perf实例来分析具体的CPU system 占用率高因其的性能问题,通过对perf和eBPF的分析,给大家在分析性能问题时,提供多一种思路和选择。原创 2022-10-22 16:20:31 · 5000 阅读 · 0 评论 -
通过eBPF实例分析和解决Linux系统性能问题(一)
当日志无法解决问题或者没有日志的情况下,利用 eBPF 技术在 OS 层面对应用行为逻辑的观测,在定位某些应用的疑难问题时有着极大帮助。原创 2022-10-22 10:31:34 · 4495 阅读 · 0 评论 -
从现在,看未来---Linux Kernel 未来发展方向
Linux发展至今已逾三十多年,随着内核新feature以及兼容性越来越高,使其变得十分庞大,现在如果再想通读内核源代码几乎成了 **“不可能的任务”**。近年来,又掀起了宏内核和微内核、Rust重写内核以及eBPF will be replace Linux等等有争议的声音,相信Linux Kernel的核心Maintainer也都注意到了这些。那么,他们会给出怎么样的回应?我们拭目以待 !原创 2022-09-12 10:17:31 · 8709 阅读 · 0 评论 -
我的内核安全之路,和在开源社区的“升级”之旅
在OpenAnolis,我感受到了国内开源社区的活力、热情和对技术认真的态度。我认为这不仅能激励国内越来越多的开发者参与其中,也可以将国内开源社区引导向良性循环的发展路径,而这些,正是目前国内开源社区急切需要的。原创 2022-09-09 11:09:10 · 374 阅读 · 1 评论 -
国内Linux内核先驱者陈莉君教授领衔,业界首个产学研 eBPF技术探索SIG成立!
近日,我有幸能加入由陈老师领衔、集结各大公司的eBPF领域大佬,成立的龙蜥社区eBPF技术探索SIG组。后续会持续推动eBPF技术在国内的落地以及前沿技术探索,大家感兴趣的话可以查看SIG组页面或加我微信,一起开始eBPF的神奇之旅!SIG组页面:https://openanolis.cn/sig/ebpfresearch?lang=zh微信:Kernel-Security原创 2022-09-01 19:34:52 · 1696 阅读 · 0 评论 -
关于eBPF安全可观测,我想和你聊聊----PODS 2022大会上的主题分享
和大家分享下16号晚上,我在PODS 2022大会上关于内核安全方面的一些思考和心得,直播没讲到的内容摘自我博客的其他文章,有些在公众号文章里也有。本次分享将从监控和可观测性、eBPF安全可观测性分析、内核安全可观测性展望三个方面展开。原创 2022-08-19 10:39:39 · 10359 阅读 · 0 评论 -
玩转eBPF---关于内核运行时安全的那些事儿
内核安全问题,牵一发而动全身,尤其是在运行时安全方面。通过上述eBPF新型program类型,并优化内核LSM框架和现有机制容易丢失系统调用的问题,从阻断一个函数调用运行的角度,来实现更细粒度,也更合理的检测。感兴趣的朋友可以进入龙蜥社区eBPF技术探索SIG组页面学习,进而分享自己的看法和解决方案,和SIG组成员一起开启eBPF的神奇之旅!龙蜥社区eBPF技术探索SIG组:https://openanolis.cn/sig/ebpfresearch钉钉群号:44866635...原创 2022-08-17 11:01:27 · 10070 阅读 · 1 评论 -
利用eBPF探测Rootkit漏洞
探索控制eBPF事件的方法,并研究一个使用BPF事件捕获rootkit的案例。Rootkit是一种存在于内核中复杂类型的恶意漏洞攻击,并将介绍Tracee用于检测Syscall 钩子的新特性,它实现了在内核中使用eBPF事件的独特方式........................原创 2022-07-18 20:52:15 · 6298 阅读 · 0 评论 -
利用LSM钩子打破系统调用跟踪桎梏
racee是一个用于Linux的运行时安全性和取证的开源项目,用于解决常见的Linux安全性问题。通过利用Linux扩展的Berkeley Packet Filter (eBPF)的技术优势,在内核运行时跟踪系统和应用程序,以便获取相应的数据信息。Tracee分析收集的事件可以用来检测可疑的行为模式,在本文中,我将分享从使用eBPF和Linux安全模块(LSM)钩子的角度,来分析在解决Linux漏洞(如TOCTOU类型)中学到的经验教训..................原创 2022-07-18 20:27:53 · 10312 阅读 · 0 评论 -
LinuxTracing System浅析和eBPF开发经验分享
本文总结了从动静态探针的角度梳理分析LinuxTracingSystem以及实例解决eBPF程序中遇到的问题。本文在以下几点上做了自己的分析和分享,希望对大家更清晰的认识LinuxTracingSystem和eBPF有所帮助。1.自下而上的方式分析动静态探针2.各种场景下动静态探针的选择3.BPF开发框架的选择4.多内核版本兼容性问题5.如何为低版本内核生成BTF文件6.eBPF边界检查问题分析httpshttpseBPF Verifier验证机制与编译器优化机制不一致问题..........原创 2022-07-18 19:45:11 · 10483 阅读 · 1 评论