01 Haziran 2023Ravie LakshmananProgramlama / Tedarik Zinciri

Araştırmacılar, uygulama güvenlik araçları tarafından tespit edilmekten kaçınmak için derlenmiş Python kodunu kullanan Python Paket Dizini (PyPI) deposuna yönelik yeni bir saldırı keşfettiler.

ReversingLabs analisti Karlo Zanki, “Python bayt kodu (PYC) dosyalarının doğrudan yürütülebilmesi gerçeğinden yararlanan ilk tedarik zinciri saldırısı olabilir.” söz konusu The Hacker News ile paylaşılan bir raporda.

Söz konusu paket fshec217 Nisan 2023 tarihinde üçüncü taraf yazılımlar sicilinden aynı gün sorumlu açıklamanın ardından kaldırılmıştır.

PYC dosyaları, bir Python programı yürütüldüğünde Python yorumlayıcısı tarafından oluşturulan derlenmiş bayt kodu dosyalarıdır.

“Bir modül ilk kez içe aktarıldığında (veya mevcut derlenmiş dosya oluşturulduktan sonra kaynak dosya değiştiğinde), .py dosyasını içeren dizinin __pycache__ alt dizininde derlenmiş kodu içeren bir .pyc dosyası oluşturulmalıdır. ” açıklar Python belgeleri.

Yazılım tedarik zinciri güvenlik firmasına göre paket, sonuncusu kötü amaçlı işlevsellik barındıran üç dosya (_init_.py, main.py ve full.pyc) içerir.

“Paketin giriş noktası, diğer dosyalardan birinde bulunan Python derlenmiş modülünün yüklenmesinden sorumlu Python kaynak kodunu içeren diğer düz metin dosyası olan main.py’den bir işlevi içe aktaran __init__.py dosyasında bulundu. , full.pyc,” diye işaret etti Zanki.

Kötü Amaçlı PyPI Paketleri

Bu, sırayla, kullanılarak elde edilir importlib paketi .pyc dosyasında bulunan kodu yüklemek ve yürütmek için (normal içe aktarmanın aksine).

PYC dosyasının tersine mühendislik uygulanmış sürümünün analizi, bunun kullanıcı adlarını, ana bilgisayar adlarını ve dizin listelerini toplamak için yapılandırıldığını ve bunun yanı sıra sabit kodlu bir sunucudan (13.51.44) ana bilgisayarda yürütülecek getirme komutlarını ortaya çıkarır.[.]246).

YAKLAŞAN WEBİNAR

🔐 API Güvenliğinde Uzmanlaşma: Gerçek Saldırı Yüzeyinizi Anlamak

API ekosisteminizdeki kullanılmayan güvenlik açıklarını keşfedin ve güçlü güvenlik için proaktif adımlar atın. Bilgilendirici web seminerimize katılın!

Oturuma Katılın

ReversingLabs, modülün indirildiğini ve bir dosyaya yerleştirilen yeni komutların getirilmesinden sorumlu olan ve tehdit aktörü tarafından farklı talimatlar vermek üzere istediği zaman değiştirilebilen başka bir Python betiğinin çalıştırıldığını da gözlemlediğini söyledi.

Komuta ve kontrol sunucusunun daha ayrıntılı incelenmesi, çalınan dosyaların herhangi bir yetkilendirme olmadan sırayla numaralandırılmış (1’den başlayarak) kimliklerine göre indirilmesini mümkün kılan bir yanlış yapılandırma ortaya çıkardı. Bu, saldırının büyük olasılıkla sofistike bir aktör tarafından düzenlenmediğini gösteriyor.

Geliştirme, tehdit aktörlerinin güvenlik çözümlerinden tespit edilmekten kaçınmak için farklı şaşırtma tekniklerini benimseme çabalarının bir devamıdır.

Zanki, “fshec2 paketinde keşfedilenler gibi yükleyici komut dosyaları, minimum miktarda Python kodu içerir ve basit bir eylem gerçekleştirir: derlenmiş bir Python modülünün yüklenmesi,” dedi. “Sadece kötü niyetli bir modül oluyor.”



siber-2