02 2022 档案
摘要:内核samples/bpf代码中tracex1_kernel中把bpr_probe_read中的第二个参数变成*2,相当于恶意读取字段数值,编译没有错误,但是在load bpf的时候verfify checker会有大量的错误 /* non-portable! works for the given
阅读全文
摘要:bpf程序是如何控制内存类型的访问 bpf_probe_read试着把类型转化的部分,换成一个内核不识别的函数,看下下编译和执行是否都能正确地进行~把内核中samples/bpf中的tracex1_kern.c中的skb = (struct sk_buff*) PT_REGS_PARM1(ctx);
阅读全文
摘要:普通的ebpf程序是比较简单的,包括当前cilium/bpf中其实都提供了比较完整的案例,对于比较复杂的程序,即比如这个trace点是放在了kprobe上面,对于这种的bpf程序的入口函数其实是变成了bt_regs,这种的话,首先你是需要去获得寄存器的信息的,第二个呢,从寄存器中找到相应的函数的信息
阅读全文