Birkaç gün önce, PyPI dizininde (Python paket dizini) kötü amaçlı kod içeren 11 paketin tespit edildiği duyurulmuştu .
Sorunlar tespit edilmeden önce, paketler toplamda yaklaşık 38 kez indirilmişti ve tespit edilen kötü amaçlı paketlerin, saldırganların sunucularıyla iletişim kanallarını gizlemek için gelişmiş yöntemler kullanmalarıyla öne çıktığı belirtilmelidir.
Keşfedilen paketler şunlardır:
- önemli paket (6305 indirme) e önemli paket (12897): bu paketler harici bir sunucuya bağlantı kurun pypi.python.org'a bağlanma kisvesi altında sisteme kabuk erişimi sağlamak için (ters kabuk) ve iletişim kanalını gizlemek için trevorc2 programını kullanın.
- pptesti (10001) ve ipboard'lar (946): DNS'yi bilgi aktarmak için bir iletişim kanalı olarak kullandı sistem hakkında (ilk pakette ana bilgisayar adı, çalışma dizini, dahili ve harici IP, ikincisinde kullanıcı adı ve ana bilgisayar adı).
- baykuş (3285) AnlaşmazlıkGüvenlik (557) y yiff partisi (1859) - Sistemdeki Discord hizmet belirtecini tanımlayın ve harici bir ana bilgisayara gönderin.
- trffab (287): / etc / passwd, / etc / hosts, / home'un tanımlayıcısını, ana bilgisayar adını ve içeriğini harici bir ana bilgisayara gönderir.
- 10cent10 (490) - Harici bir ana bilgisayara ters kabuk bağlantısı kuruldu.
yandex-yt (4183): güvenliği ihlal edilen sistem hakkında bir mesaj gösterdi ve nda.ya.ru (api.ya.cc) aracılığıyla yayınlanan ek eylemler hakkında ek bilgiler içeren bir sayfaya yönlendirildi.
Bu nedenle, faaliyetlerini gizlemek için PyPI kataloğunda kullanılan Fastly içerik dağıtım ağını kullanan importantpackage ve important-package paketlerinde kullanılan harici sunuculara erişim yöntemine özel dikkat gösterilmesi gerektiği belirtilmiştir .
Aslında, istekler pypi.python.org sunucusuna gönderildi (HTTPS isteği içinde SNI'de python.org adının belirtilmesi dahil), ancak saldırgan tarafından kontrol edilen sunucunun adı HTTP başlığında "Host" ayarlandı. ». İçerik dağıtım ağı, verileri iletirken pypi.python.org'a TLS bağlantısının parametrelerini kullanarak saldırganın sunucusuna benzer bir istek gönderdi.
PyPI'nin altyapısı, tipik istekleri önbelleğe almak için Varnish'in şeffaf proxy'sini kullanan ve HTTPS isteklerini proxy üzerinden iletmek için uç nokta sunucuları yerine CDN düzeyinde TLS sertifika işleme yöntemini kullanan Fastly İçerik Dağıtım Ağı tarafından desteklenmektedir. Hedef sunucudan bağımsız olarak, istekler proxy'ye gönderilir; proxy, istenen sunucuyu HTTP "Host" başlığıyla tanımlar ve etki alanı sunucu adları, tüm Fastly istemcilerinde bulunan tipik CDN yük dengeleyici IP adreslerine bağlanır.
Saldırganların sunucusu ayrıca ücretsiz planlar sunan ve hatta anonim kayıt imkanı sağlayan Fastly adlı CDN'ye de kayıtlı . Benzer bir yöntemin, saldırganın sunucusu tarafından başlatılan bir "ters kabuk" oluşturulduğunda kurbana istek göndermek için kullanıldığını belirtmekte fayda var . Dışarıdan bakıldığında, saldırganın sunucusuyla etkileşim, PyPI TLS sertifikasıyla şifrelenmiş, PyPI diziniyle yapılan meşru bir oturum gibi görünüyor. "Alan adı öne çıkarma" olarak bilinen benzer bir teknik, daha önce engellemeleri atlayarak ana bilgisayar adını aktif olarak gizlemek için kullanılıyordu. Bu, bazı CDN'ler tarafından sağlanan HTTPS seçeneğini kullanmayı, SNI'da sahte ana bilgisayarı belirtmeyi ve istenen ana bilgisayar adını bir TLS oturumu içindeki HTTP ana bilgisayar başlığında iletmeyi içeriyordu.
Kötü amaçlı etkinliği gizlemek için, sunucu ile etkileşimi normal web taramasına benzer hale getiren TrevorC2 paketi ek olarak kullanıldı.
pptest ve ipboards paketleri, DNS sunucusuna yapılan isteklerde yararlı bilgileri kodlamaya dayalı olarak ağ etkinliğini gizlemek için farklı bir yaklaşım kullandı. Kötü amaçlı yazılım, komuta ve kontrol sunucusuna iletilen verilerin alt alan adındaki base64 formatı kullanılarak kodlandığı DNS sorguları gerçekleştirerek bilgi iletir. Saldırgan, etki alanının DNS sunucusunu kontrol ederek bu mesajları kabul eder.
Son olarak, daha fazla bilgi edinmek isterseniz, ayrıntıları aşağıdaki bağlantıda bulabilirsiniz.