15 poin oleh GN⁺ 2025-11-22 | Belum ada komentar. | Bagikan ke WhatsApp
  • Cooldown dependensi (dependency cooldown) adalah teknik keamanan yang sederhana dan efektif yang dapat memitigasi sebagian besar serangan rantai pasok open source
  • Penyerang biasanya mengambil alih proyek open source populer untuk menyebarkan kode berbahaya, tetapi pada kebanyakan serangan periode paparannya singkat, kurang dari satu minggu
  • Dengan menetapkan cooldown yang menunggu selama periode tertentu (misalnya 7 hari) setelah versi baru dirilis, risiko infeksi akibat pembaruan otomatis dapat dikurangi secara signifikan
  • Dependabot, Renovate, pnpm, dan lainnya sudah mendukung fitur cooldown secara bawaan, mudah dikonfigurasi, dan tidak memerlukan biaya tambahan
  • Jika cooldown disediakan secara default di tingkat package manager, hal ini dapat membantu memperkuat keamanan rantai pasok dan mengurangi alarm yang tidak perlu

Struktur dan masalah serangan rantai pasok

  • Sebagian besar serangan rantai pasok (supply chain attack) mengikuti pola yang sama
    • Penyerang mendapatkan akses dengan memanfaatkan pencurian kredensial atau kerentanan CI/CD pada proyek open source populer
    • Perubahan berbahaya diunggah ke kanal distribusi seperti PyPI, npm, dan lainnya
    • Karena pembaruan otomatis atau versi yang tidak dipin dengan baik, pengguna memasang versi yang terinfeksi
    • Vendor keamanan mendeteksinya, mengeluarkan peringatan, lalu repositori paket menghapus versi tersebut
  • Jarak waktu antara tahap (1)~(2) panjang, tetapi tahap (2)~(5) biasanya selesai dalam hitungan jam hingga beberapa hari, sehingga masa aktivitas penyerang relatif singkat
  • Window of opportunity untuk kasus-kasus utama dalam 18 bulan terakhir
    • xz-utils: sekitar 5 minggu
    • Ultralytics: 12 jam (tahap 1), 1 jam (tahap 2)
    • tj-actions: 3 hari
    • chalk: kurang dari 12 jam
    • Nx: 4 jam
    • rspack: 1 jam
    • num2words: kurang dari 12 jam
    • Kong Ingress Controller: sekitar 10 hari
    • web3.js: 5 jam
  • Dari kasus-kasus ini, 8 serangan memiliki durasi serangan kurang dari 1 minggu, dan sebagian besar dapat diblokir dengan cooldown

Konsep dan efek cooldown

  • Cooldown adalah pendekatan yang menunda penggunaan dependensi baru selama periode tertentu setelah dirilis
    • Selama periode ini, vendor keamanan dapat mendeteksi apakah dependensi tersebut berbahaya
  • Kelebihan
    • Terbukti efektif secara empiris, dan dapat memblokir sebagian besar serangan berskala besar
    • Sangat mudah diimplementasikan dan pada sebagian besar alat bisa diatur gratis
    • Contoh Dependabot
      version: 2
      - package-ecosystem: github-actions
        directory: /
        schedule:
          interval: weekly
        cooldown:
          default-days: 7
      
    • Mendorong perilaku positif dari vendor keamanan: membuat mereka fokus pada deteksi cepat alih-alih peringatan berlebihan atau promosi

Kesimpulan dan saran

  • 8 dari 10 serangan memiliki durasi 1 minggu atau kurang, dan cooldown 7 hari dapat memblokir sebagian besar di antaranya
  • Dengan menerapkan cooldown 14 hari, semua kasus selain xz-utils dapat dicegah
  • Cooldown bukan solusi sempurna, tetapi merupakan cara sederhana untuk mengurangi risiko paparan hingga 80~90%
  • Selain Dependabot dan Renovate, perlu ada perbaikan agar package manager sendiri mendukung cooldown secara default
  • Keamanan rantai pasok bukan hanya masalah teknis, tetapi juga soal struktur kepercayaan sosial, dan cooldown adalah langkah mitigasi yang realistis dan berguna

Belum ada komentar.

Belum ada komentar.