Proof-Carrying-BPF: eBPF Doğrulayıcısı İçin Kanıt Taşıyan Programlar
SOSP '26 makalesi, eBPF doğrulayıcısının reddettiği karmaşık BPF programlarını kanıt taşıyan (proof-carrying) yaklaşımla kabul ettirmeyi öneriyor.
SOSP '26'da sunulan bu çalışma, Linux çekirdeğindeki eBPF doğrulayıcısının karmaşıklığını artırmadan kabul edebileceği program sınıfını genişletmek için "proof-carrying-BPF" (kanıt taşıyan BPF) yaklaşımını öneriyor. Yöntem, çekirdek doğrulayıcısının kullanıcı alanı (userspace) kopyasını BPF derleyici arka ucuna (backend) entegre ediyor; derleyici, çekirdek doğrulayıcısının güvenliği kanıtlayamadığı durumlarda sembolik değerlendirme yoluyla kanıt üretiyor. Çekirdekteki doğrulayıcı ise bu kanıtları çekirdek içi bir kanıt denetleyicisiyle kontrol ederek geçerli kanıt sunan programları kabul ediyor.
Bu tasarım, yakın zamanda önerilen BCF çerçevesinin kullanıcı alanı-çekirdek geçişlerinden kaynaklanan gecikme ve doğrulama sırasında doğrulayıcının atıl kalması gibi sorunlarını çözmeyi hedefliyor. Araştırmacıların prototipi, Calico ve Cilium veri yolları, BCC ve Inspektor Gadget'tan derlenen BCF test setindeki, çekirdek doğrulayıcısı tarafından daha önce reddedilen 360 nesnenin tamamını başarıyla doğrulamış.
EBPF ile çalışan ağ, gözlemlenebilirlik ve güvenlik araçları geliştiren mühendisler için bu çalışma, doğrulayıcı reddi nedeniyle production'a alınamayan karmaşık BPF programlarının kabul edilme ihtimalini artırıyor ve çekirdek tarafında ek karmaşıklık veya güvenlik riski eklemeden bunu başarıyor.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz