AWS Cloud Development Kit’teki Güvenlik Açığı, Kullanıcıları Potansiyel Hesap Devralma Riskleriyle Karşı Karşıya Bırakıyor


AWS Bulut Geliştirme Kiti Güvenlik Açığı

Siber güvenlik araştırmacıları, Amazon Web Services (AWS) Bulut Geliştirme Kitini (CDK) etkileyen ve belirli koşullar altında hesabın ele geçirilmesiyle sonuçlanabilecek bir güvenlik kusurunu ortaya çıkardı.

Aqua, The Hacker News ile paylaşılan bir raporda, “Bu sorunun etkisi, belirli senaryolarda, bir saldırganın hedef AWS hesabına yönetim erişimi elde etmesine olanak tanıyarak tüm hesabın ele geçirilmesiyle sonuçlanabilir” dedi.

27 Haziran 2024’teki sorumlu açıklamanın ardından sorun, Temmuz ayında yayınlanan CDK 2.149.0 sürümünde proje sahipleri tarafından giderildi.

AWS CDK, Python, TypeScript veya JavaScript kullanarak bulut uygulama kaynaklarını tanımlamaya ve bunları CloudFormation aracılığıyla sağlamaya yönelik açık kaynaklı bir yazılım geliştirme çerçevesidir.

Aqua tarafından tanımlanan sorun, bulut güvenlik firmasının AWS’deki gölge kaynaklarla ilgili önceki bulgularına ve AWS Basit Depolama Hizmeti (S3) klasörleri için önceden tanımlanmış adlandırma kurallarının Bucket Monopoly saldırılarını düzenlemek ve hassas verilere erişim sağlamak için nasıl silah haline getirilebileceğine dayanıyor.

Bir AWS ortamının AWS Cloud Development Kit (AWS CDK) ile kullanıma hazırlanması, önyükleme adı verilen ve belirli AWS kaynaklarının ortama sağlandığı bir işlemle gerçekleştirilir. Buna bir AWS S3 klasörü, Amazon Elastic Container Registry (Amazon ECR) deposu ve AWS Identity and Access Management (IAM) rolleri dahildir.

Siber güvenlik

AWS belgelerine göre “CDK tarafından kullanılan kaynaklar ve bunların yapılandırmaları bir AWS CloudFormation şablonunda tanımlanmıştır”.

“Bir ortamı önyüklemek için AWS CDK Komut Satırı Arayüzü (AWS CDK CLI) cdk bootstrap komutunu kullanırsınız. CDK CLI şablonu alır ve bunu önyükleme yığını olarak bilinen bir yığın olarak AWS CloudFormation’a dağıtır. Varsayılan olarak yığın adı CDKToolkit.”

Önyükleme sürecinin bir parçası olarak oluşturulan IAM rollerinden bazıları, ilgili S3 klasöründeki varlıkları yükleme ve silme izninin yanı sıra yönetici erişimiyle yığın dağıtımları gerçekleştirme izni verir.

Aqua, AWS CDK tarafından oluşturulan IAM rollerinin adlandırma modelinin, alanların her birinin aşağıda açıklandığı “cdk-{Qualifier}-{Description}-{Account-ID}-{Region}” yapısını takip ettiğini söyledi:

  • Önyükleme aşamasında özelleştirilebilmesine rağmen, varsayılan olarak “hnb659fds” olarak ayarlanan benzersiz, dokuz karakterlik bir dize değeri olan niteleyici
  • Açıklama, kaynak açıklaması (örneğin, cfn-exec-role)
  • Hesap Kimliği, ortamın AWS hesap kimliği
  • Bölge, ortamın AWS bölgesi

Benzer şekilde, önyükleme sırasında oluşturulan S3 klasörü “cdk-{Qualifier}-assets-{Account-ID}-{Region}” adlandırma modelini izler.

Aqua, “Birçok kullanıcı niteleyiciyi özelleştirmeden cdk önyükleme komutunu çalıştırdığından, hazırlama grubunun S3 kovası adlandırma modeli öngörülebilir hale geliyor” dedi. “Bunun nedeni, paket adı niteleyicisinin varsayılan değerinin ‘hnb659fds’ olarak ayarlanmış olması, paketin adını tahmin etmeyi kolaylaştırıyor.”

GitHub’da varsayılan niteleyicinin kullanıldığı binlerce örneğin keşfedilmesi, aynı zamanda paketin adını tahmin etmenin AWS Hesap Kimliğini ve CDK’nın dağıtıldığı bölgeyi bulmak kadar basit olduğu anlamına da gelir.

Bu hususu, S3 klasör adlarının tüm AWS hesaplarında küresel olarak benzersiz olduğu gerçeğiyle birleştiren boşluk, S3 Bucket Namesquatting (veya Bucket Sniping) olarak adlandırılan şeyin kapısını açarak, bir saldırganın başka bir kullanıcının CDK klasörü mevcut değilse talep etmesine olanak tanır. çoktan.

Bu, bir kullanıcı CDK’yı aynı hesap kimliği ve bölgeyle önyüklemeye çalıştığında kısmi hizmet reddine (DoS) yol açabilir; bu, önyükleme sırasında özel bir niteleyici belirtilerek çözülebilecek bir senaryodur.

Kurbanın CDK’sının, saldırgan tarafından kontrol edilen S3 klasörüne veri okuma ve yazma iznine sahip olması ve böylece CloudFormation şablonlarının kurcalanması ve kurbanın AWS hesabında kötü amaçlı eylemlerin yürütülmesi mümkün hale gelirse daha ciddi bir sonuç ortaya çıkabilir.

Aqua, “CDK’daki CloudFormationExecutionRole rolü olan CloudFormation hizmetinin dağıtım rolü, varsayılan olarak hesapta yönetici ayrıcalıklarına sahiptir” diye belirtti.

“Bu, kurbanın CDK’sı tarafından saldırganın S3 klasörüne yazılan herhangi bir CloudFormation şablonunun daha sonra kurbanın hesabında yönetici ayrıcalıklarıyla dağıtılacağı anlamına gelir. Bu, saldırganın ayrıcalıklı kaynaklar oluşturmasına olanak tanır.”

Varsayımsal bir saldırıda, bir kullanıcının geçmişte CDK önyükleme işlemini başlatmış olması ve ardından kota sınırlamaları nedeniyle S3 klasörünü silmesi durumunda, bir rakip bu durumdan yararlanarak aynı adda bir klasör oluşturabilir.

Bu daha sonra CDK’nın hileli gruba dolaylı olarak güvenmesine ve CloudFormation şablonlarını okumasına/yazmasına neden olabilir ve bu da onları istismara açık hale getirebilir. Ancak bunun başarılı olması için saldırganın aşağıdaki ön koşulları yerine getirmesi bekleniyor:

Tahmin edilebilir adla paketi talep edin ve genel erişime izin verin

Pakete her yüklendiğinde belirli bir CloudFormation şablon dosyasına kötü amaçlı bir yönetici rolü veya arka kapı enjekte edecek bir Lambda işlevi oluşturun

Son aşamada, kullanıcı CDK’yi “cdk konuşlandırması” kullanarak dağıttığında, süreç yalnızca şablonu kopya kümesine göndermekle kalmaz, aynı zamanda saldırganın üstlenebileceği ve sonuçta kurbanın hesabının kontrolünü ele geçirebileceği bir yönetici rolünü de enjekte eder.

Siber güvenlik

Başka bir deyişle, saldırı zinciri, önyükleme işlemi sırasında kurulan bir CDK S3 klasörü silindiğinde ve CDK yeniden kullanıldığında, hedef AWS hesabında yönetici rolünün oluşturulmasını kolaylaştırır. AWS o zamandan beri CDK kullanıcılarının yaklaşık %1’inin saldırı vektörüne karşı savunmasız olduğunu doğruladı.

AWS tarafından uygulanan düzeltme, CDK’nin verileri önyüklemeyi başlatan hesaba ait olmayan klasörlere göndermesini önlemek amacıyla varlıkların yalnızca kullanıcının hesabındaki klasörlere yüklenmesini sağlar. Ayrıca müşterilerin varsayılan “hnb659fds” yerine ısmarlama bir niteleyici kullanmalarını da teşvik etti.

Bununla birlikte, önyükleme CDK sürümü v2.148.1 veya daha önceki bir sürüm kullanılarak gerçekleştirilmişse, kullanıcının CDK’yı en son sürüme güncellemesini ve önyükleme komutunu yeniden çalıştırmasını gerektiren kullanıcı eylemi gerekir. Alternatif olarak kullanıcılar, FilePublishingRole CDK rolüne bir IAM politikası koşulu uygulama seçeneğine sahiptir.

Bulgular bir kez daha AWS hesap kimliklerinin gizli tutulmasını, kapsamlı bir IAM politikasının tanımlanmasını ve S3 klasörlerine öngörülebilir adlar vermekten kaçınılmasını gerektiriyor.

Aqua, “Bunun yerine, bölge ve hesap başına benzersiz karmalar veya rastgele tanımlayıcılar oluşturun ve bunları S3 klasör adlarınıza dahil edin” diye bitirdi. “Bu strateji, önceden kovanızı ele geçiren saldırganlara karşı korunmanıza yardımcı olur.”

Açıklama, Broadcom’un sahibi olduğu Symantec’in, AWS ve Microsoft Azure Blob Depolama için bulut hizmeti kimlik bilgilerini sabit kodlayan ve şifrelenmemiş, kullanıcı verilerini riske sokan çeşitli Android ve iOS uygulamaları bulması üzerine geldi.

Rahatsız edici uygulamalardan bazıları arasında Pic Stitch: Collage Maker, Crumbl, Eureka: Earn Money for Surveys, Videoshop – Video Editor, Meru Cabs, Sulekha Business ve ReSound Tinnitus Relief yer alıyor.

Güvenlik araştırmacıları Yuanjing Guo ve Tommy Dong, “Bu tehlikeli uygulama, uygulamanın ikili dosyasına veya kaynak koduna erişimi olan herhangi birinin potansiyel olarak bu kimlik bilgilerini çıkarabileceği ve bunları verileri manipüle etmek veya sızdırmak için kötüye kullanabileceği ve bunun da ciddi güvenlik ihlallerine yol açabileceği anlamına geliyor” dedi.

Bu makaleyi ilginç buldunuz mu? Bizi takip edin heyecan ve yayınladığımız daha özel içerikleri okumak için LinkedIn.





Source link