Araştırmacılara göre, siber saldırganlar zayıflıkları araştırmaya olan ilgilerini artırdıkça, sürekli entegrasyon/sürekli geliştirme (CI/CD) boru hatları, yazılım tedarik zincirinin en tehlikeli potansiyel saldırı yüzeyi olabilir.

Saldırı yüzeyi de büyüyor: CI/CD ardışık düzenleri, bunları otomatik süreçler kullanarak kod oluşturmak, test etmek ve dağıtmak için kullanan kurumsal yazılım geliştirme ekipleri içinde giderek artan bir şekilde demirbaş haline geliyor. Ancak aşırı izin, ağ segmentasyonu eksikliği ve zayıf sırlar ve yama yönetimi, uygulamalarının başına bela olur ve suçlulara şirket içi ve bulut ortamları arasında serbestçe geçiş yapmalarını sağlama fırsatı sunar.

10 Ağustos Çarşamba günü Black Hat USA’da güvenlik danışmanlığı NCC Group’tan Iain Smart ve Viktor Gazdağ sahne alacak.RCE-as-a-Service: 5 Yıllık Gerçek Dünya CI/CD Pipeline Uzlaşmasından Alınan Dersler,” firmanın test ettiği hemen hemen her şirket için üretim CI/CD boru hatlarında gerçekleştirdikleri başarılı tedarik zinciri saldırılarını tartışmak için.

NCC Group, küçük işletmelerden Fortune 500 şirketlerine kadar uzanan birkaç düzine başarılı hedef uzlaşmasını denetledi. Ek olarak güvenlik hatalarıaraştırmacılar, otomatikleştirilmiş işlem hatlarında amaçlanan işlevselliğin yeni suistimallerinin, işlem hatlarını basit bir geliştirici yardımcı programından hizmet olarak uzaktan kod yürütmeye (RCE) dönüştürmelerine izin verdiğini söylüyor.

Gazdağ, “İnsanların CI/CD boru hatlarına biraz daha sevgi göstereceklerini ve oturumumuzdaki önerilerin tümünü ya da en az bir ya da ikisini uygulayacaklarını umuyorum,” diyor. “Ayrıca bunun konuyla ilgili daha fazla güvenlik araştırmasına yol açacağını umuyoruz.”

Dark Reading’in haber yazı işleri müdürü Tara Seals, daha fazlasını öğrenmek için NCC Group’un yönetici güvenlik danışmanı Viktor Gazdağ ile görüştü.

Tara Mühürleri: CI/CD ardışık düzenlerinde daha yaygın olan bazı güvenlik zayıflıkları nelerdir ve bunlar nasıl kötüye kullanılabilir?

Viktor Gazdağ: Düzenli olarak daha fazla dikkat gerektiren üç yaygın güvenlik açığı görüyoruz:

1) Sürüm Kontrol Sisteminde (VCS) veya Kaynak Kontrol Yönetiminde (SCM) sabit kodlanmış kimlik bilgileri.

Bunlara kabuk komut dosyaları, oturum açma dosyaları, kodla aynı yerde (ayrı olarak veya gizli yönetim uygulamalarında değil) depolanan yapılandırma dosyalarındaki sabit kodlanmış kimlik bilgileri dahildir. Ayrıca genellikle farklı bulut ortamlarına (geliştirme, üretim) veya bulut içindeki SNS, Veritabanı, EC2 vb. gibi belirli hizmetlere erişim belirteçleri buluruz.

Ayrıca, destekleyici altyapıya veya CI/CD ardışık düzenine erişmek için kimlik bilgilerini de buluyoruz. Saldırgan bulut ortamına eriştiğinde, ayrıcalıklarını sıralayabilir, yanlış yapılandırmaları arayabilir veya zaten bulutta olduğu için ayrıcalıklarını yükseltmeye çalışabilir. CI/CD ardışık düzenine erişimle, yapı geçmişini görebilir, yapıtlara ve kullanılan sırlara (örneğin, SAST aracı ve güvenlik açıkları veya bulut erişim belirteçleri hakkındaki raporları) ve en kötü durum senaryolarına erişebilirler, derlenecek uygulamaya isteğe bağlı kod (arka kapı, SolarWinds) enjekte edin veya üretim ortamına tam erişim sağlayın.

2) Aşırı izin verilen roller.

Geliştiriciler veya hizmet hesapları genellikle, gerekli işi yapmak için gerekenden daha fazla izne sahip olan hesaplarıyla ilişkili (veya bir rolü üstlenebilir) bir role sahiptir.

Sistemi yapılandırma veya hem üretim hem de geliştirme ortamlarına yönelik gizli diziler gibi daha fazla işleve erişebilirler. Diğer geliştiricilerin onayı gibi güvenlik denetimlerini atlayabilir veya boru hattını değiştirebilir ve güvenlik açıklarını aramaya yardımcı olacak herhangi bir SAST aracını kaldırabilirler.

İşlem hatları üretim ve test dağıtım ortamlarına erişebildiğinden, aralarında segmentasyon yoksa ortamlar arasında, hatta şirket içi ve bulut arasında bile bir köprü görevi görebilirler. Bu, bir saldırganın güvenlik duvarlarını veya herhangi bir uyarıyı atlamasına ve aksi takdirde mümkün olmayan ortamlar arasında serbestçe hareket etmesine olanak tanır.

3) Denetim, izleme ve uyarı eksikliği.

Bu, en çok ihmal edilen alandır ve denetim açık veya etkinleştirilmiş olsa bile, herhangi bir yapılandırma değişikliği veya kullanıcı/rol yönetimi konusunda izleme ve uyarı eksikliği bulduğumuz zamanların %90’ı. İzlenebilecek tek şey, başarılı veya başarısız iş derlemesi veya derlemesidir.

Ağ bölümleme eksikliği, gizli yönetim ve yama yönetimi vb. gibi daha yaygın güvenlik sorunları da vardır, ancak bu üç örnek saldırıların başlangıç ​​noktalarıdır, ortalama ihlal tespit süresini azaltmak için gereklidir veya sınırlandırılması önemlidir. saldırı patlama yarıçapı.

TS: İşaret edebileceğiniz belirli gerçek dünya örnekleri veya somut senaryolarınız var mı?

VG: CI/CD veya boru hattı saldırılarıyla ilgili haberlerde yer alan bazı saldırılar şunlardır:

  • CCleaner saldırısı, Mart 2018
  • Homebrew, Ağustos 2018
  • Asus ShadowHammer, Mart 2019
  • CircleCI üçüncü taraf ihlali, Eylül 2019
  • SolarWinds, Aralık 2020
  • Codecov’un bash yükleyici betiği, Nisan 2021
  • TravisCI sırlara yetkisiz erişim, Eylül 2021

TS: Otomatikleştirilmiş boru hatlarındaki zayıflıklar neden sorunludur? Şirketler için riski nasıl tanımlarsınız?

VG: Boru hattı adımlarında kullanılan yüzlerce araç olabilir ve bu nedenle birinin bilmesi gereken muazzam bilgi çok büyük. Ayrıca, ardışık düzenlerin birden çok ortama ağ erişimi ve farklı araçlar ve ortamlar için birden çok kimlik bilgisi vardır. Boru hatlarına erişim kazanmak, saldırganların boru hattına bağlı diğer herhangi bir araca veya ortama erişmesine izin veren ücretsiz bir seyahat kartı almaya benzer.

TS: Bir rakip bir CI/CD ardışık düzenini başarılı bir şekilde bozarsa, şirketlerin maruz kalabileceği saldırı sonuçlarından bazıları nelerdir?

VG: Saldırı sonuçları, kaynak kodunun veya entelektüel verilerin çalınmasını, binlerce müşteriye (SolarWinds gibi) dağıtılan bir uygulamanın arka kapısının açılmasını, hem şirket içinde hem de şirket içinde geliştirme ve üretim gibi birden çok ortama erişim kazanmayı (ve bunlar arasında serbestçe hareket etmeyi) içerebilir. bulut veya her ikisi.

TS: Rakiplerin bir boru hattından ödün vermek için ne kadar sofistike olması gerekiyor?

VG: Black Hat’ta sunduğumuz şey, sıfırıncı gün güvenlik açıkları (farklı araçlarda bazı güvenlik açıkları bulmama rağmen) veya yeni teknikler değil. Suçlular, korumalı değilse ve İnternet’e açıksa, geliştiricilere kimlik avı (oturum ele geçirme, çok faktörlü kimlik doğrulama atlama, kimlik bilgileri hırsızlığı) veya doğrudan CI/CD ardışık düzeni yoluyla saldırabilir.

NCC Group, başlangıçta Web uygulamalarını test ettiğimiz yerlerde güvenlik değerlendirmeleri bile gerçekleştirdi. Bulduğumuz şey, CI/CD ardışık düzenlerinin, yazılım oluşturma/derleme işi dışında nadiren uyarılarla kaydedildiği ve izlendiğidir, bu nedenle suçluların bir boru hattını tehlikeye atmak için o kadar dikkatli veya karmaşık olmaları gerekmez.

TS: Bu tür saldırılar ne kadar yaygındır ve CI/CD ardışık düzenleri ne kadar geniş bir saldırı yüzeyi sunar?

VG: Haberlerde bahsedildiği gibi gerçek dünya saldırılarının birkaç örneği var. Ve yine de bulabilirsiniz, örneğin, İnternette Shodan ile Jenkins örnekleri. SaaS ile suçlular, varsayılan olarak etkinleştirilmiş çok faktörlü kimlik doğrulaması veya IP kısıtlamaları olmadığı ve İnternet’e yönelik oldukları için erişim elde etmek için parolaları numaralandırabilir ve kaba kuvvetle uygulamaya çalışabilir.

Uzaktan çalışma ile, geliştiriciler herhangi bir yerden ve herhangi bir zamanda erişim istedikleri için boru hatlarının güvenliğini sağlamak daha da zordur ve şirketler sıfır güven ağlarına doğru ilerledikçe veya değişen ağ konumlarına sahip olduklarından IP kısıtlamaları artık mümkün değildir.

Ardışık düzenlerin genellikle birden çok ortama ağ erişimi vardır (olmamaları gerekir) ve farklı araçlar ve ortamlar için birden çok kimlik bilgilerine erişimleri vardır. Şirket içi ve bulut arasında veya üretim ve test sistemleri arasında bir köprü görevi görebilirler. Bu, çok geniş bir saldırı yüzeyi olabilir ve saldırılar, boru hattının kendisiyle hiçbir ilgisi olmayanlardan bile, birden çok yerden gelebilir. Black Hat’ta, başlangıçta Web uygulaması testiyle başladığımız iki senaryo sunuyoruz.

TS: CI/CD ardışık düzenleri neden şirketler için bir güvenlik kör noktası olmaya devam ediyor?

VG: Çoğunlukla zaman yetersizliğinden, bazen insan eksikliğinden ve bazı durumlarda bilgi eksikliğinden. CI/CD ardışık düzenleri genellikle geliştiriciler veya BT ekipleri tarafından sınırlı zamana sahip ve hız ve teslimat odaklı olarak oluşturulur veya geliştiriciler yalnızca işle aşırı yüklenir.

CI/CD ardışık düzenleri çok veya aşırı derecede karmaşık olabilir ve yüzlerce araç içerebilir, birden çok ortam ve sırla etkileşime girebilir ve birden çok kişi tarafından kullanılabilir. Hatta bazı insanlar bir boru hattında kullanılabilecek araçların periyodik bir tablo gösterimini bile oluşturdular.

Bir şirket, kullandığı boru hattı ve destekleyici ortamlar için bir tehdit modeli oluşturmak için zaman ayırırsa, ortamlar, sınırlar ve sırlar arasındaki bağlantıyı ve saldırıların nerede olabileceğini görecektir. Tehdit modelinin oluşturulması ve sürekli güncellenmesi yapılmalı ve zaman almaktadır.

TS: Boru hatları için güvenliği artırmak için bazı en iyi uygulamalar nelerdir?

VG: Ağ segmentasyonu uygulayın, rol oluşturma için en az ayrıcalık ilkesini kullanın, gizli dizi yönetiminde bir sırrın kapsamını sınırlayın, güvenlik güncellemelerini sık sık uygulayın, yapıtları doğrulayın ve yapılandırma değişikliklerini izleyin ve uyarı verin.

TS: Paylaşmak istediğiniz başka düşünceleriniz var mı?

VG: Bulutta yerel veya bulut tabanlı CI/CD işlem hatları daha basit olsa da, aşırı izin verilen roller, segmentasyon olmaması, kapsamlı gizli sırlar ve uyarı eksikliği gibi aynı veya benzer sorunları görmeye devam ettik. Şirketlerin bulutta da güvenlik sorumlulukları olduğunu hatırlamaları önemlidir.



siber-1