Peneliti keamanan siber telah menemukan paket berbahaya di Python Package Index (PyPI) yang telah diunduh ribuan kali selama lebih dari tiga tahun sambil secara diam-diam mengambil kredensial Amazon Web Services (AWS) pengembang.
Paket yang dimaksud adalah “fabrice”, yang merupakan kesalahan ketik pada pustaka Python populer yang dikenal sebagai “fabric”, yang dirancang untuk menjalankan perintah shell dari jarak jauh melalui SSH.
Meskipun paket sahnya telah diunduh lebih dari 202 juta kali, paket jahatnya telah diunduh lebih dari 37.100 kali hingga saat ini. Pada saat penulisan, “fabrice” masih tersedia untuk diunduh dari PyPI. Ini pertama kali diterbitkan pada Maret 2021.
Paket kesalahan ketik ini dirancang untuk mengeksploitasi kepercayaan yang terkait dengan “fabric”, menggabungkan “payload yang mencuri kredensial, membuat pintu belakang, dan mengeksekusi skrip khusus platform,” kata perusahaan keamanan Socket.
“Fabrice” dirancang untuk melakukan tindakan jahat berdasarkan sistem operasi yang diinstalnya. Pada mesin Linux, ia menggunakan fungsi khusus untuk mengunduh, mendekode, dan mengeksekusi empat skrip shell berbeda dari server eksternal (“89.44.9[.]227”).
Pada sistem yang menjalankan Windows, dua payload berbeda – Skrip Visual Basic (“p.vbs”) dan skrip Python – diekstraksi dan dieksekusi, dengan skrip Python menjalankan skrip Python tersembunyi (“d.py”) yang disimpan di folder Unduhan .
“VBScript ini berfungsi sebagai peluncur, memungkinkan skrip Python untuk menjalankan perintah atau memulai muatan lebih lanjut seperti yang dirancang oleh penyerang,” kata peneliti keamanan Dhanesh Dodia, Sambarathi Sai, dan Dwijay Chintakunta.
Skrip Python lainnya dirancang untuk mengunduh file berbahaya yang dapat dieksekusi dari server jarak jauh yang sama, menyimpannya sebagai “chrome.exe” di folder Unduhan, mengatur persistensi menggunakan tugas terjadwal untuk menjalankan biner setiap 15 menit, dan terakhir menghapus “d berkas .py”.
Tujuan akhir dari paket ini, apa pun sistem operasinya, tampaknya adalah pencurian kredensial, mengumpulkan akses AWS dan kunci rahasia menggunakan Kit Pengembangan Perangkat Lunak (SDK) AWS Boto3 untuk Python, dan mengekstraksi informasi kembali ke server.
“Dengan mengumpulkan kunci AWS, penyerang mendapatkan akses ke sumber daya cloud yang berpotensi sensitif,” kata para peneliti. “Paket fabrice mewakili serangan kesalahan ketik yang canggih, dibuat untuk meniru perpustakaan fabric tepercaya dan mengeksploitasi pengembang yang tidak menaruh curiga dengan mendapatkan akses tidak sah ke kredensial sensitif pada sistem Linux dan Windows.”