Nalika pangembangan piranti lunak maju ing siklus urip rantai pasokan piranti lunak, tahap paket muncul minangka titik penting, ngowahi kode sumber dadi artefak sing bisa dieksekusi sing disiapake kanggo distribusi. Nanging, tahap kritis iki ora kebal saka kerentanan, saengga dadi target utama kanggo para pelaku jahat sing pengin ngrusak integritas lan keamanan piranti lunak. Posting blog iki nyinaoni ancaman sing umum sing bisa muncul sajrone fase iki lan nggambarake strategi sing efektif kanggo nyuda ancaman kasebut. Konten iki dadi terusan saka seri blog kita sing njelajah software supply chain security tengen SDLC.
Tahap Paket ing Siklus Urip Pengembangan Piranti Lunak
Tahap paket saka siklus urip rantai pasokan piranti lunak nyakup proses pengemasan lan nyiapake piranti lunak kanggo distribusi menyang pangguna. Tahap iki kalebu nggawe paket instalasi, ngatur dependensi, lan ngasilake metadata kanggo piranti lunak.
Ancaman integritas bangunan yaiku kerentanan sing bisa ngidini penyerang ngenalake pangowahan sing ora sah ing piranti lunak sajrone proses pengemasan. Ancaman kasebut bisa dilebokake liwat macem-macem cara, kayata ngrusak registri paket, ngeksploitasi kerentanan ing alat pengemasan, utawa manipulasi dependensi pihak katelu.
Ketergantungan total marang komponen sumber terbuka ing piranti lunak modern ndadekake tahap iki minangka tahap S sing paling kerepSCA target. Ngenalake malware siluman ing komponen sumber terbuka sing populer minangka impen kanggo akeh penjahat siber. Iki sebabe luwih saka 245,000 paket jahat ditemokake sajrone taun 2023.
Tuladhane saka Software Supply Chain Security Ancaman ing Tahap Paket
Gunakake paket sing kena pengaruh
Iki nuduhake tumindak nggunakake utawa nyebarake paket piranti lunak sing wis dirusak utawa diowahi dening mungsuh.
Iki bisa kedadeyan sawise paket metu saka registri paket resmi, liwat akses langsung menyang sistem pangguna utawa liwat taktik rekayasa sosial sing ngapusi pangguna supaya ndownload utawa nginstal paket sing mbebayani. Conto vektor iki yaiku Browserify typosquatting Nyerang.
Penyerang, sing ngupaya ngrusak sistem Linux lan Mac, nyusup menyang proses pangembangan perpustakaan Node.js populer sing diarani Browserify. Penyerang kasebut nyelipke kode jahat menyang kode sumber proyek kasebut, kanthi niat kanggo nyebarake liwat registri paket NPM. Sawise paket Browserify sing tercemar diunggah menyang NPM, para pangembang sing ora curiga bakal ndownload lan nginstal, amarga percaya yen iku versi sing sah. Kode jahat, sing dilebokake ing njero paket kasebut, bakal mlaku kanthi meneng, ngrusak integritas sistem sing kena infeksi. Iki bisa nyebabake pencurian data, ketidakstabilan sistem, utawa malah akses jarak jauh kanggo penyerang.
Registri paket kompromi
Registri paket sing disusupi yaiku repositori piranti lunak sing wis disusupi dening mungsuh sing wis entuk akses ora sah menyang antarmuka utawa infrastruktur administratif registri.
Iki ngidini mungsuh ngowahi utawa ngganti paket piranti lunak sing sah karo sing mbebayani, sing banjur bisa disebarake menyang pangguna sing wis diinstal kanthi ora curiga. Conto saka jinis ancaman iki yaiku Serangan marang Pangilon Paket: Sawijining peneliti, kanthi tujuan kanggo promosi piranti lunak sumber terbuka, ngrusak sawetara registri paket populer, kalebu Maven Central, NPM, lan RubyGems. Kanthi entuk akses menyang registri kasebut, peneliti bisa nggawe pangilon, lan replika saka repositori asli, sing nyedhiyakake alternatif sing trep kanggo para pangembang kanggo ndownload paket.
Nanging, pangilon iki nduweni tujuan sing ala. Pangilon sing disusupi dadi saluran kanggo peneliti kanggo nyebarake paket mbebayani. Paket-paket iki ngganti paket sing sah, sing ora dideteksi dening registri utama, lan para pangembang sing ora curiga tanpa disadari ndownload lan nginstal. Sawise diinstal, paket-paket mbebayani iki ngeculake muatane, nglakokake kode sembarang, nyolong data sensitif, utawa ngganggu operasi.
Unggah Paket sing Diowahi
Mungsuh ngunggah paket sing dimodifikasi menyang repositori utawa saluran distribusi sing ngemot kode utawa muatan jahat. Iki bisa ditindakake kanthi ngowahi kode sumber, kemasan, utawa metadata paket kasebut.
Salah sawijining ancaman sing paling misuwur saka jinis iki yaiku Serangan CodeCov ing taun 2021. Penyerang, sing ngupaya ngrusak proyèk piranti lunak nganggo CodeCov, integrasi terus-terusan sing populer lan pangiriman terus-terusan (CI/CD) piranti, nggunakake kredensial sing bocor kanggo entuk akses tanpa wewenang menyang bucket Google Cloud Storage (GCS) proyek. Sawise penyerang entuk akses menyang bucket GCS, dheweke ngunggah artefak jahat, versi modifikasi saka paket CodeCov, sing banjur disebarake menyang pangguna liwat layanan CodeCov. Pengembang sing ora curiga, sing ngandelake fitur nganyari otomatis, bakal ndownload lan nginstal paket jahat kasebut, percaya yen iku sing sah. Sawise diinstal, kode jahat bakal mlaku kanthi meneng, ngrusak integritas sistem sing kena infeksi. Iki bisa nyebabake pencurian data, ketidakstabilan sistem, utawa malah akses jarak jauh kanggo penyerang.
Serangan ing registri paket iku umum banget nganti sawetara pola serangan diwenehi jeneng:
In Ketip, aktor jahat ngunggah menyang registri pirang-pirang paket jahat kanthi kesalahan ketik tipis utawa jeneng sing padha karo sing sah lan populer, kanthi pangarep-arep para pangembang bakal salah ngeja jeneng paket sing dimaksud nganggo jeneng sing jahat. Asring paket jahat nyamar dadi sing sah supaya ora kedeteksi, nambah kemungkinan kena pengaruh lintang.
Kebingungan Ketergantungan migunakake cara sawetara manajer paket ngrampungake paket sing dijaluk saka pirang-pirang registri. Nalika organisasi nggunakake komponen internal sing diterbitake ing registri internal, penyerang sing ngerti kasunyatan kasebut bisa nerbitake komponen jahat kanthi jeneng sing padha ing registri umum. Yen jeneng sing digunakake kanggo komponen internal ora dilindhungi, sawetara manajer paket bakal njupuk komponen jahat tinimbang komponen internal.
kanthi Paket Troyan, penjahat siber iki nyamarke malware ing antarane kode valid sing migunani. Iki bisa digunakake dening penulis asli, utawa dening kontributor sing nawakake awake dhewe kanggo njaga paket kasebut. Iki uga dikenal minangka Pembajakan PaketPara penyerang nggunakake akeh teknik kanggo mbajak paket sing wis ana, kaya Pengambilalihan Domain ing ngendi domain sing wis kadaluwarsa sing ditinggal dijupuk dening penyerang sing nggawe maneh email pengelola lawas lan nindakake pemulihan sandhi kanggo njupuk alih akun pengelola kasebut.
Cathetan Akhir
Amarga organisasi saya akeh nggunakake metodologi pangembangan piranti lunak sing ngutamakake otomatisasi lan pangiriman terus-terusan, pentinge ngamanake tahap paket piranti lunak ora tau luwih penting. Kanthi ngetrapake langkah-langkah keamanan sing kuat sajrone fase kritis iki, organisasi bisa nyuda risiko kena serangan jahat sing bisa ngrusak integritas lan keamanan piranti lunak.
Strategi-strategi sing dijlentrehake ing postingan blog iki, bebarengan karo conto-conto sing diwenehake, dadi pangeling-eling sing cetha yen tahap paket minangka titik sing rentan ing rantai pasokan piranti lunak. Organisasi kudu nggatekake ancaman kasebut lan ngetrapake langkah-langkah keamanan sing dibutuhake kanggo njaga piranti lunak saka serangan. Kanthi mengkono, dheweke bisa njamin integritas, keamanan, lan keandalan piranti lunak kanggo pangguna lan pelanggan.
Melu Lelampahan Kita Menuju Ekosistem Piranti Lunak sing Aman
Aja nganti kelewatan kesempatan kanggo tetep selangkah luwih maju ing jagad iki software supply chain securityLangganan blog kita dina iki lan dadia sing pertama nampa wawasan paling anyar, kanggo mesthekake yen organisasi sampeyan tetep tahan banting lan aman ing tengah-tengah ancaman sing saya tambah. Bebarengan, kita bisa mbangun ekosistem piranti lunak sing luwih kuat lan aman kanggo kabeh wong.
Elinga, software supply chain security minangka lelampahan sing terus-terusan, dudu tujuan. Kanthi terus-terusan ngevaluasi lan adaptasi praktik keamanan kanggo ngatasi ancaman sing muncul, organisasi bisa njaga rantai pasokan piranti lunak lan ngirim piranti lunak sing dipercaya marang pangguna.
Tonton Demo Video kita




