Yalıtılmış ortamlar oluşturmaya yönelik bir katman olan Bubblewrap 0.4.0'in sürümü

Mevcut araç setinin yeni sürümü Balonlu ambalaj 0.4.0Linux'ta yalıtılmış ortamların çalışmalarını düzenlemek ve ayrıcalıklı olmayan kullanıcıların uygulama düzeyinde çalışmak üzere tasarlanmıştır. Uygulamada Bubblewrap, Flatpak projesi tarafından paketlerden başlatılan uygulamaları izole etmek için bir katman olarak kullanılıyor. Proje kodu C dilinde yazılmıştır ve tarafından dağıtıldı LGPLv2+ kapsamında lisanslanmıştır.

Yalıtım için, gruplar, ad alanları, Secomp ve SELinux kullanımına dayalı geleneksel Linux konteyner sanallaştırma teknolojileri kullanılır. Bir kapsayıcıyı yapılandırmak amacıyla ayrıcalıklı işlemler gerçekleştirmek için Bubblewrap, kök haklarıyla (suid bayrağına sahip yürütülebilir bir dosya) başlatılır ve kapsayıcı başlatıldıktan sonra ayrıcalıkları sıfırlar.

Kaplarda kendi ayrı tanımlayıcı kümenizi kullanmanıza olanak tanıyan ad alanı sistemindeki kullanıcı ad alanlarının etkinleştirilmesi, birçok dağıtımda varsayılan olarak çalışmadığından işlem için gerekli değildir (Bubblewrap, bir uygulamanın sınırlı bir suid uygulaması olarak konumlandırılmıştır). kullanıcı ad alanları yeteneklerinin alt kümesi - geçerli olan dışındaki tüm kullanıcı ve işlem tanımlayıcılarını ortamdan hariç tutmak için CLONE_NEWUSER ve CLONE_NEWPID modları kullanılır). Ek koruma için kontrol altında yürütülebilir
Bubblewrap programları PR_SET_NO_NEW_PRIVS modunda başlatılır; bu, örneğin setuid bayrağının mevcut olması durumunda yeni ayrıcalıkların elde edilmesini yasaklar.

Dosya sistemi düzeyinde izolasyon, varsayılan olarak yeni bir bağlama ad alanı oluşturularak gerçekleştirilir; burada tmpfs kullanılarak boş bir kök bölüm oluşturulur. Gerekirse, harici FS bölümleri bu bölüme "mount —bind" modunda eklenir (örneğin, "bwrap —ro-bind /usr /usr" seçeneğiyle başlatıldığında, /usr bölümü ana sistemden iletilir) salt okunur modda). Ağ yetenekleri, CLONE_NEWNET ve CLONE_NEWUTS bayrakları aracılığıyla ağ yığını izolasyonu ile geridöngü arayüzüne erişimle sınırlıdır.

Benzer bir projeden temel fark Yangın hapsiAynı zamanda bir setuid başlatma modeli kullanan . ayrıcalıklar sıfırlandıktan sonra. Öte yandan Firejail, ilgili tüm işlevleri tek bir yürütülebilir dosyada birleştirir, bu da güvenliğin denetlenmesini ve sürdürülmesini zorlaştırır. uygun seviye.

Yeni sürüm, mevcut kullanıcı ad alanlarının ve işlem pid ad alanlarının birleştirilmesine yönelik desteğin uygulanması açısından dikkate değerdir. Ad alanlarının bağlantısını kontrol etmek için “--userns”, “--userns2” ve “-pidns” bayrakları eklendi.
Bu özellik setuid modunda çalışmaz ve root haklarını almadan çalışabilen ancak aktivasyon gerektiren ayrı bir modun kullanılmasını gerektirir.
sistemdeki kullanıcı ad alanları (Debian ve RHEL/CentOS'ta varsayılan olarak devre dışıdır) ve bu olasılığı dışlamaz Çalışma potansiyel geriye kalan güvenlik açıkları "kullanıcı ad alanları" kısıtlamaları için. Bubblewrap 0.4'ün yeni özellikleri arasında glibc yerine musl C kütüphanesi ile derleme yeteneği ve ad alanı bilgilerinin JSON formatında istatistik içeren bir dosyaya kaydedilmesi desteği de yer alıyor.

Kaynak: opennet.ru

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster