Kamu deposuna açılan arka kapı, büyük şirketleri hedef almak için yeni bir saldırı biçimi kullandı

İkili kodda kafatası ve kemikler

Araştırmacıların dört Alman şirketini hedef alan açık kaynak kodunda gizli bulduğu bir arka kapı, profesyonel bir sızma test cihazının işiydi. Test cihazı, dünya çapında milyonlarca yazılım projesi tarafından kullanılan halka açık depolardan yararlanan yeni bir saldırı sınıfına karşı müşteri direncini test ediyordu. Ama kötü olabilirdi. Çok çirkin.

Bağımlılık karışıklığı, bir araştırmacının Apple, Microsoft ve diğer 33 şirkete ait ağlarda kendi seçtiği yetkisiz kodu yürütmek için kullanılabileceğini gösterdiği Mart 2021’de ön planda ortaya çıkan yeni bir tedarik zinciri saldırısı biçimidir. Araştırmacı Alex Birsan, yeni saldırı modülünü geliştirmek için 130.000 dolar hata ödülü ve kredi aldı.

Birkaç hafta sonra başka bir araştırmacı, Amazon, Slack, Lyft, Zillow ve diğer şirketlerin aynı tekniği kullanan saldırılara hedef olduğunu gösteren kanıtları ortaya çıkardı. 200’den fazla kötü amaçlı paketin ayni olarak piyasaya sürülmesi, Birsan tarafından tasarlanan saldırının gerçek dünyadaki tehdit aktörlerine hitap ettiğini gösterdi.

Aradığın bağımlılık bu değil

Bağımlılık karmaşası, şirketlerin NPM, PyPI veya RubyGems gibi depolarda bulunan açık kaynak koduna bağımlılığından yararlanır. Bazı durumlarda, iş yazılımı, uygulamanın çalışması için gerekli kod kitaplıklarını almak için bu kaynaklara otomatik olarak bağlanır. Diğer zamanlarda, geliştiriciler bu sözde bağımlılıkları dahili olarak depolar. Adından da anlaşılacağı gibi, bağımlılık karışıklığı, bir hedefin kitaplığı yanlış yerden indirmesine neden olarak çalışır: dahili bir kaynaktan ziyade genel bir kaynak.

Bunu başarmak için bilgisayar korsanları, hedeflenen kuruluş tarafından dahili olarak depolanan kod bağımlılıklarının adlarını keşfetmek için JavaScript kodunu, yanlışlıkla yayınlanan dahili paketleri ve diğer kaynakları araştırır. Bilgisayar korsanları daha sonra kötü niyetli bir bağımlılık yaratır ve onu halka açık depolardan birinde barındırır. Kötü amaçlı pakete dahili paketle aynı adı vererek ve daha yüksek bir sürüm numarası kullanarak, bazı hedefler onu otomatik olarak indirecek ve yazılımı güncelleyecektir. Bununla, bilgisayar korsanları, hedeflerin dayandığı yazılım tedarik zincirine bulaşmayı başardı ve hedefi veya kullanıcılarını kötü amaçlı kod yürütmeye ikna etti.

Geçtiğimiz birkaç hafta boyunca, iki güvenlik şirketinden araştırmacılar, medya, lojistik ve endüstrideki dört Alman şirketinin kullandıklarına çok benzeyen bakımcı adları ve paketleri kullanan kod bağımlılıklarını izliyorlar. Paket adları ve ilgili bakıcıların adları şunlardı:

  • bertelsmannpm; bertelsmannnpm@protonmail.com
  • boschnode modülleri; boschnodemodules@protonmail.com
  • stihlnode modülleri; stihlnodemodules@protonmail.com
  • dbschenkernpm; dbschenkernpm@protonmail.com

Bu isimlere dayanarak, araştırmacılar paketlerin Bertelsmann, Bosch, Stihl ve DB Schenk’i hedef alacak şekilde tasarlandığı sonucuna vardı.

Her paketin içinde, hedefe özel dizinlerin kullanıcı adını, ana bilgisayar adını ve dosya içeriğini alan ve bunları HTTPS ve DNS bağlantıları aracılığıyla filtreleyen gizlenmiş kod vardı. Kötü amaçlı paket daha sonra, saldırgan tarafından yönetilen bir komut ve kontrol sunucusuna aşağıdakiler de dahil olmak üzere talimatları alması için sinyal gönderen bir arka kapı kurar:

  • C2 sunucusundan bir dosya indirin
  • C2 sunucusuna bir dosya yükleyin
  • Rastgele Javascript kodunu değerlendirin
  • Yerel bir ikili dosya çalıştırın
  • Sil ve işlemi sonlandır
  • Arka kapıyı C2 sunucusuna kaydedin

Kötü amaçlı paketleri bağımsız olarak keşfeden iki güvenlik şirketi olan JFrog ve ReversingLabs’taki araştırmacılar, bunların güvenlik firması Snyk’in geçen ay bulduğu aynı kötü amaçlı paket ailesinin parçası olduklarını çabucak keşfettiler. Dosyaları ilk bulan kişi Snyk olmasına rağmen, amaçlanan hedefi belirlemek için yeterli bilgiye sahip değildi.

sahnenin dönüşü

Çarşamba günü, JFrog ve ReversingLabs burada ve burada blog yazmadan birkaç saat önce, Code White adlı bir penetrasyon testi butiği paketler için kredi aldı.

Şirket, “Mükemmel analiziniz için teşekkürler” dedi. cıvıldamak kim Snyk’e döndü ve geçen ayki blog gönderisini alıntıladı. “Endişelenmeyin, ‘kötü niyetli aktör’, devam eden müşteri saldırısı simülasyonlarımızın bir parçası olarak bağımlılık karışıklığını araştırmakla görevlendirilen stajyerlerimizden biri 😎. Sorularınızı netleştirmek için: Gerçekçi tehdit aktörlerini taklit etmek istiyoruz. güvenlik istihbarat servisimizin bir parçası olarak özel müşteriler için ve iplik ve npm’yi destekleyen “kendi” paket yöneticimizi getirdik. “

Code White CEO’su David Elze, doğrudan bir mesajda, firmanın stajyerinin paketleri oluşturduğunu ve ilgili şirketler tarafından açıkça yetkilendirilen meşru bir sızma testi uygulamasının bir parçası olarak yayınladığını söyledi.

Elze, “Müşterilerimizin isimlerini ifşa etmiyoruz, ancak özellikle ilgili şirketler tarafından yasal olarak yetkilendirildiğimizi ve bu gerçekçi saldırı senaryolarını simüle etmek için onlar adına hareket ettiğimizi onaylayabilirim.” Dedi.

Beyaz Kod’un katılımı, Snyk tarafından keşfedilen ve daha sonra JFrog ve ReversingLabs tarafından gözlemlenen bağımlılık karışıklığı saldırılarının, bu vektörün gerçek dünya istismarlarının yükselişte olduğunun bir işareti olmadığı anlamına gelir. Ancak bu saldırı sınıfının doğada hiçbir zaman kullanılmadığını ve bundan sonra da kullanılmayacağını düşünmek yanlış olur.

Mart ayında güvenlik firması Sonatype, npm’de Amazon, Slack, Lyft ve Zillow’u hedefleyen kötü amaçlı paketler keşfetti. Bu paketler, bir hata ödül programının veya iyi niyetli bir kavram kanıtlama uygulamasının parçası olduklarını belirten sorumluluk reddi beyanları içermiyordu. Ek olarak, paketler, bash geçmişi ve Linux kullanıcı parola verilerinin depolandığı dizin olan / etc / shadow içeriği de dahil olmak üzere hassas kullanıcı bilgilerini sızdırmak üzere programlanmıştır. Bazı durumlarda, paketler ters bir kabuk bile açtı.

JFrog ayrıca, geliştiricilerin bilgisayarlarından kişisel bilgileri çalan çeşitli Azure projeleri için npm’de 200’den fazla paketin yukarıda belirtilen varlığı da dahil olmak üzere, doğada kötü niyetli saldırılar tespit etti.

Bu, bu son keşfin yanlış bir alarm olmasına rağmen, kötü niyetli bağımlılık karışıklık saldırılarının olduğu anlamına gelir. yapmak doğada meydana gelir. Başarıyla gelebilecek korkunç sonuçlar göz önüne alındığında, kuruluşlar sistemlerini test etmeye veya güvenlik açıkları ve açıklardan yararlanma için tüm açık kaynak ekosistemlerini izleyen Snyk, JFrog, ReversingLabs veya Sonatype gibi şirketlerin hizmetlerini kullanmaya zaman ayırmalıdır.