Pendahuluan

Serangan siber saat ini tidak lagi hanya menyerang website atau server secara langsung. Para penyerang kini mulai menargetkan rantai distribusi software atau yang dikenal sebagai supply chain attack. Salah satu target utama mereka adalah ekosistem open-source seperti npm, PyPI, dan Crates.io yang digunakan jutaan developer di seluruh dunia.

Baru-baru ini muncul kampanye berbahaya bernama TrapDoor yang ditemukan menyebarkan malware melalui package palsu di berbagai platform open-source. Serangan ini menjadi perhatian besar karena dapat mencuri kredensial developer dan menyusup ke lingkungan pengembangan software.


Apa Itu TrapDoor?

TrapDoor adalah kampanye supply chain attack yang memanfaatkan package open-source berbahaya untuk menyerang developer. Penyerang mengunggah package palsu ke beberapa repository populer seperti:

  • npm untuk JavaScript
  • PyPI untuk Python
  • Crates.io untuk Rust

Package tersebut dibuat menyerupai library asli sehingga developer tanpa sadar menginstalnya ke dalam proyek mereka.

Tujuan utama serangan ini adalah mencuri informasi penting seperti:

  • token API
  • password
  • SSH key
  • kredensial cloud
  • token CI/CD

Dengan data tersebut, penyerang dapat mengambil alih akun developer atau bahkan menyusup ke infrastruktur perusahaan.


Cara Kerja Serangan TrapDoor

1. Mengunggah Package Berbahaya

Penyerang membuat package dengan nama yang mirip library populer. Teknik ini dikenal sebagai typosquatting.

Contohnya:

  • expresss
  • reqeust
  • numppy

Sekilas nama tersebut terlihat normal, padahal sebenarnya adalah package palsu.


2. Malware Berjalan Saat Instalasi

Saat developer menjalankan perintah seperti:

npm install

atau:

pip install

script berbahaya otomatis dijalankan melalui mekanisme seperti:

  • preinstall
  • postinstall

Developer sering kali tidak menyadari bahwa malware sudah aktif di sistem mereka.


3. Mencuri Kredensial

Setelah aktif, malware mulai mencari data sensitif pada komputer developer, misalnya:

  • file .env
  • token GitHub
  • AWS credentials
  • SSH key
  • konfigurasi Docker dan Kubernetes

Data tersebut kemudian dikirim ke server milik penyerang.


Dampak Serangan TrapDoor

1. Akun Developer Bisa Diambil Alih

Jika token GitHub atau akses cloud berhasil dicuri, penyerang dapat mengakses repository perusahaan atau server produksi.


2. Menyebar ke Pipeline CI/CD

Serangan supply chain sangat berbahaya karena dapat menyebar melalui pipeline otomatis seperti:

  • GitHub Actions
  • GitLab CI
  • Jenkins

Akibatnya, malware bisa masuk ke aplikasi produksi tanpa disadari.


3. Efek Domino pada Open Source

Satu package berbahaya dapat digunakan oleh banyak proyek lain. Artinya, satu serangan bisa menyebar ke ribuan aplikasi sekaligus.


Mengapa Supply Chain Attack Semakin Populer?

Ada beberapa alasan mengapa penyerang mulai fokus ke supply chain:

Developer Sangat Bergantung pada Open Source

Saat ini hampir semua aplikasi modern menggunakan dependency dari internet.

Satu aplikasi bisa memiliki ratusan bahkan ribuan package tambahan.


Banyak Developer Tidak Memeriksa Package

Sebagian besar developer langsung menginstal package tanpa mengecek:

  • reputasi package
  • jumlah download
  • source code
  • aktivitas maintainer

Hal ini dimanfaatkan oleh penyerang.


Serangan Lebih Efisien

Daripada menyerang satu perusahaan secara langsung, penyerang cukup menyusupkan malware ke package populer. Setelah itu malware akan menyebar sendiri.


Teknik yang Digunakan TrapDoor

Typosquatting

Membuat nama package yang mirip package asli.


Dependency Confusion

Menipu sistem agar mengunduh package palsu daripada package internal perusahaan.


Credential Harvesting

Mencuri token, password, dan data penting developer.


Persistence

Membuat malware tetap aktif meskipun sistem direstart.


Cara Mencegah Serangan Supply Chain

1. Selalu Periksa Package

Sebelum menginstal package, cek:

  • jumlah download
  • reputasi maintainer
  • repository GitHub
  • tanggal update terakhir

2. Gunakan Lockfile

Gunakan file seperti:

  • package-lock.json
  • poetry.lock
  • Cargo.lock

Agar versi dependency tetap konsisten.


3. Audit Dependency Secara Berkala

Gunakan tools keamanan seperti:

  • Snyk
  • Trivy
  • Dependabot
  • osv-scanner

Untuk mendeteksi package berbahaya.


4. Hindari Menyimpan Token di File Biasa

Gunakan secret manager dan jangan menyimpan credential di source code.


5. Terapkan DevSecOps

Keamanan harus menjadi bagian dari proses development, bukan hanya setelah aplikasi selesai dibuat.


Pelajaran dari Kasus TrapDoor

Kasus TrapDoor menunjukkan bahwa ekosistem open-source kini menjadi target utama serangan siber modern.

Developer tidak bisa lagi hanya fokus pada coding. Keamanan dependency dan supply chain juga harus menjadi perhatian utama.

Satu package kecil yang terlihat aman ternyata bisa menjadi pintu masuk bagi penyerang untuk menyerang organisasi besar.


Kesimpulan

TrapDoor adalah contoh nyata bagaimana supply chain attack berkembang semakin canggih. Dengan memanfaatkan package open-source palsu, penyerang dapat mencuri data developer dan menyusup ke sistem perusahaan.

Karena itu, developer dan organisasi perlu lebih berhati-hati dalam menggunakan dependency dari internet. Pemeriksaan package, audit keamanan, dan monitoring pipeline harus menjadi bagian penting dalam pengembangan software modern.

Di era DevOps dan cloud saat ini, keamanan supply chain bukan lagi pilihan, tetapi kebutuhan utama.