L3:vulnerability-scanning-automation · Software Wing · Pilihan
Otomasi pemindaian kerentanan
Otomasi jadwal scan, kepemilikan aset, dan laporan remediasi untuk badan siber nasional Indonesia.
- Klien
- BSSN
- Peran
- Backend Engineer (paruh waktu)
- Periode
- Mei 2023 hingga Jul 2023
Hasil
28 PRs
Pull request di-merge selama sekitar tiga setengah bulan, dari migrasi awal hingga ekspor terjadwal
Dihitung dari riwayat pull request di repositori.
Terverifikasi
Galeri
Masalah
BSSN memindai kerentanan pada situs dan sistem yang dilindungi. Menjalankan scan, melacak pemilik aset, dan menyusun laporan membutuhkan banyak pekerjaan manual di konsol scanner.
Yang saya kerjakan
- Saya merancang model data dan REST API dengan Express, Sequelize, dan Swagger untuk situs yang dilindungi, aset, platform, pemilik, scan, dan kerentanan, beserta audit log.
- Saya mengintegrasikan Nessus API untuk memulai, menjeda, dan melanjutkan scan, dengan notifikasi email serta job terjadwal untuk memantau progres dan perkiraan waktu selesai.
- Saya menambahkan jumlah temuan per severity, statistik tahap remediasi, dan ringkasan dashboard dengan caching Redis.
- Saya membuat laporan kerentanan PDF per aset dari beberapa scan dan ekspor terjadwal untuk membandingkan hasil antar tanggal scan.
Arsitektur
- KlienAnalyst dashboardAset, scan, dan laporan
- LayananExpress APISequelize, Swagger
- LayananScan schedulerCron job dan ekspor terjadwal
- EksternalNessusScanner kerentanan
- DataMySQLAset dan temuan
- DataRedisCache statistik
Alur data
- Analyst dashboard to Express API (REST)
- Express API to Nessus (launch, pause, resume)
- Scan scheduler sends asynchronously to Nessus (progress)
- Express API to MySQL (SQL)
- Scan scheduler sends asynchronously to MySQL (results)
- Express API to Redis (stats)
Tech stack
Node.js
Express
Sequelize
MySQL
Redis- Nessus API
Swagger
AWS EC2Sentry
L2 · Riwayat karier terkaitBackend Engineer (paruh waktu) · BSSN