CI/CD hattı, yazılım ekiplerinin kodları daha hızlı, daha güvenli ve daha güvenilir bir şekilde teslim etmesine yardımcı olan bir dizi otomatik adımdır.
Sürekli entegrasyon (CI) ve sürekli teslimat (CD) ile ilgili tüm süreçleri koordine eder. Razz Security’nin CTO’su Mukesh, yakın zamanda tam sunucu erişimi elde etmek için CI/CD hatlarını kullandı.
Araştırmacı CI/CD Boru Hatlarını Kullandı
Kamuya açık bir web sunucusunda .git dizininin ifşa edilmesinden kaynaklanan, potansiyel olarak tehlikeli bir güvenlik açığı tespit edildi.
Bu hatadan dolayı .git/config gibi dosyaları da kapsayan tüm versiyon kontrolü okunabiliyor ve indirilebiliyordu.
Yapılan inceleme sonucunda bu yapılandırma dosyasının hassas kullanıcı kimlik bilgilerini içerdiği ve bunun sonucunda istismar zincirinin daha da ilerlediği ortaya çıktı.
Uyumluluğun Kodunu Çözme: CISO’ların Bilmesi Gerekenler – Ücretsiz Web Seminerine Katılın
Burada bir saldırgan, tüm Git deposunu klonlayarak sunucunun tamamını ele geçirmek için bu kimlik bilgilerini kullanabilir.
Bu, kaynak koduna, dağıtım betiklerine ve diğer kritik sistem bilgilerine erişmelerini sağladığı için. Bu güvenlik denetimi, web ortamlarında sürüm kontrol sistemlerinin düzgün bir şekilde güvence altına alınmasının önemini vurgular.
Küçük yanlış yapılandırmalar bile ciddi sonuçlara veya güvenlik tehditlerine yol açabileceğinden, Razz güvenlik raporunda, bir saldırganın üretim sunucusuna yetkisiz erişim elde etmek için Bitbucket Pipelines’ı kullandığı belirtiliyor.
Kod dağıtımını otomatikleştiren boru hattı yapılandırma dosyasını keşfettikten sonra saldırgan, sunucunun authorized_keys dosyasına kendi SSH (Güvenli Kabuk) genel anahtarını ekleyecek şekilde dosyayı değiştirdi.
Değiştirilen boru hattı betiği, hedef sunucuda (damn.vulnerable.site) ‘ubuntu’ kullanıcısı olarak komutları çalıştırmak için atlassian/ssh-run:0.2.8 boru hattını kullandı.
Bu değişiklik saldırganın şu komutu kullanarak anahtarını eklemesine olanak sağladı: “echo ssh-rsa AAAA…snip…sw== >> /home/ubuntu/.ssh/authorized_keys”.
Bir sonraki işlem hattı çalışması, ana dala bir kod gönderimi ile tetiklenir ve bu değişiklik, saldırganın sunucuya SSH erişimi elde etmesine olanak tanır.
Bu sayede saldırgan, ele geçirilen sunucu üzerinde kabuk erişimi ve tam kontrol elde etti; buna, keyfi komutları yürütme yeteneği de dahildi.
Ayrıca, potansiyel bir ayrıcalık yükseltme açığının bulunduğunu ve bu açığın kök erişimine yol açarak sistem üzerindeki kontrollerini daha da artırabileceğini belirttiler.
Bu istismar zinciri, .git klasörü gibi hassas dizinleri kamuya açmanın ve CI/CD kanallarını kötüye kullanmanın tehlikelerini ortaya koyuyor.
Azaltma önlemleri
Aşağıda tüm hafifletme önlemlerinden bahsettik:
- SSH anahtar erişimini düzenli olarak izlediğinizden ve incelediğinizden emin olun.
- Güncel olmayan veya gereksiz SSH anahtarlarını kaldırın.
- .git dizininize genel erişimi engelleyin.
Güvenlik Ekibiniz için Ücretsiz Olay Müdahale Planı Şablonunu İndirin – Ücretsiz İndir