eBPF 允许你在 OS 内核中安全地运行沙箱程序,用于安全性和网络等功能,而无需修改内核源代码或加载内核模块。eBPF-TC 具有牢固的数据包处理能力,并支持入口和出口操作,而且性能很高。
eBPF
使用eBPF实现基于DWARF的堆栈遍历
我们是 BPF 的忠实信徒,有很多原因。从广义上讲,它允许 Linux 内核以更高的安全保证和更低的学习门槛进行编程。
在 BPF 中开发分析器非常有意义,因为一旦实现了堆栈遍历机制,我们就可以利用 perf 子系统来获取有关 CPU 周期、指令、L3 缓存未命中或我们机器中可用的任何其他性能计数器的样本。它还有助于开发其他工具,如分配跟踪器、off-CPU分析器等。
实战eBPF kprobe函数插桩
说起eBPF大家都不陌生,在实际使用时,基于各种需求场景,kprobe的出场机会比较多。在eBPF kprobe实战过程中,你遇到过因为业务需求kprobe 需要获取多个参数的场景吗?如果你也纠结过如何取得超过6个的参数,本文尝试带你一起揭开这层面纱。
如何使用eBPF观测用户空间应用程序
很多刚接触eBPF的朋友会问我,eCapture的原理是什么,为什么区分OpenSSL、Gnutls、Nspr等类库实现?为什么要设定OpenSSL类库地址?为什么C、JAVA、Go实现的https通讯程序,在eCapture上实现却不一样。对于这些问题,我觉得核心问题是大家对「eBPF实现用户空间的行为跟踪」原理不了解,
eCapture旁观者:Android HTTPS明文抓包,无需CA证书
Android上抓包HTTPS是不是越来越难了?高版本无法添加CA证书、抓包软件依赖太多,VPN模式或HOOK会被检测。 救星来了, eCapture无需CA证书即可抓获HTTPS明文。支持Android系统,Wireshark直接查看。
eBPF网络程序新手指南 By Liz Rice
使用eBPF LSM热修复Linux内核漏洞
前面我们讨论了Tetragon产品实时阻断实现原理,那你知道它为什么没选择eBPF LSM吗? bpf_send_signal颗粒度是进程,而eBPF LSM的颗粒度是函数,更精确,控制范围也不一样,可以对函数调用堆栈做调整,达到替换执行的目标函数。业务场景就是对于漏洞的热更新了。本文就是一个简单的eBPF LSM实现思路,核心内容是确定精准HOOK点的思路。怎么找HOOK点?HOOK点挂载后,对性能影响是什么?如何做权衡?接下来,我们一起了解一下。
eCapture的几个好消息,支持Android…
Tetragon进程阻断原理
文章较长,可直接看文末视频。5月份Isovalent发布了基于eBPF技术的运行时实时防御产品Tetragon,引起业内广泛关注,实时阻断能力也受到很大争议,并被传统安全厂商EXP绕过挑战。今天我们一起来看下阻断能力的技术原理。
新型eBPF后门boopkit的原理分析与演示
前段时间的Bvp47木马利用BPF技术敲门,想必你已经精通了吧?笔者曾担忧在eBPF加持下,用在后门场景会更加恐怖。这不GitHub上开源了一个Boopkit,今天笔者跟大家一起来了解一下它的技术原理,使用了哪些eBPF程序功能。它是如何实现任意开启的TCP端口服务,远程唤醒后门,并生成反弹shell的。