Kubernetes'te eBPF ile Copy Fail sorununu aşmak
(github.com/iwanhae)K8s işletirken bu sorunla ilgili acil müdahale talebi gelince uygun bir şey hazırladım.
Copy Fail olarak adlandırılan, yalnızca AF_ALG kullanan bir soket açma yöntemiyle K8s Pod içinden host'un root yetkilerinin ele geçirilebildiği bir zafiyet ortaya çıktı.
https://tr.news.hada.io/topic?id=29031
Kernel yaması çıkmış olsa da, çoğu operasyon ortamında bunu hızlıca uygulamak zor. Üstelik yakın dönem kernel sürümlerinde bu özellik kernel built-in olarak etkin geldiği için kernel modülünü devre dışı bırakmak da mümkün olmuyor.
Bu sorunu daha kolay çözebilmek için, eBPF içinde ilgili function call tespit edildiğinde basitçe
- (kernel destekliyorsa) ilgili function call'un başarısız olmasını sağlamak ya da
- (desteklemiyorsa) ilgili prosesi kill etmek
üzere hazırlanmış bir programdır.
Tek bir K8s DaemonSet dağıtımıyla kullanılabilecek şekilde hazırladım; ihtiyacı olan varsa alıp kullanabilir~
1 yorum
Teşekkürler!
Bilginize) Docker seccomp profili de @achimnol tarafından oluşturuldu. https://github.com/moby/profiles/issues/19