Semua artikel

Scan Keamanan Aplikasi Web dengan Qualys Community Edition (Gratis)

Cara memakai Qualys Community Edition yang gratis untuk scan celah keamanan aplikasi web dan server: apa saja yang didapat, persiapan sebelum scan, autentikasi, discovery scan, vulnerability scan, cara membaca hasilnya, dan batasannya.

Keamanan Aplikasi|Dipublikasikan |10 menit baca
Gembok di atas keyboard laptop sebagai gambaran keamanan aplikasi

Qualys Community Edition adalah versi gratis dari platform cloud Qualys. Dengan akun ini, tim kecil bisa memakai mesin scan yang sama dengan yang dipakai perusahaan besar untuk mengecek satu aplikasi web dan beberapa server, tanpa membeli lisensi. Batasannya memang ada, tapi untuk perusahaan yang belum pernah melakukan scan keamanan sama sekali, ini cara praktis untuk menemukan celah yang paling kelihatan sebelum ditemukan orang lain. Artikel ini membahas apa saja yang didapat dari versi gratisnya, cara menjalankan scan dengan aman, dan cara membaca hasilnya.

Apa Saja yang Didapat di Qualys Community Edition

Menurut panduan resmi Qualys Community Edition, akun gratis ini mencakup scan aplikasi web sekaligus vulnerability management untuk server. Qualys bisa saja mengubah ketentuannya, jadi cek lagi batasan terbarunya saat mendaftar.

KomponenKuota Community EditionFungsinya
Web Application Scanning (WAS)1 URL aplikasi webMengecek website atau aplikasi web dari celah seperti yang ada di OWASP Top 10
Vulnerability Management (VM)16 IP internal dan 3 IP eksternalMencari patch yang belum dipasang, software usang, dan konfigurasi yang salah di server
Virtual Scanner Appliance1 applianceScan server di jaringan privat yang tidak bisa diakses dari internet
Cloud Agent16 agentPengecekan terus-menerus dari dalam server tanpa perlu scan jaringan

Versi berbayar menambah fitur yang mulai terasa perlu kalau scan sudah jadi rutinitas. Di Community Edition hanya ada satu user, data hasil scan disimpan tiga bulan, API tidak tersedia, dan scan aplikasi web tidak bisa dijadwalkan, jadi setiap scan harus dijalankan manual. Akun juga akan dihapus kalau tidak dipakai selama enam bulan. Untuk pengecekan pertama atau pengecekan manual berkala pada satu aplikasi, batasan ini masih bisa diterima.

DAST Melengkapi Analisis Kode

Qualys WAS termasuk tool DAST (dynamic application security testing). Cara kerjanya mengetes aplikasi yang sedang berjalan dari luar: mengirim input khusus ke form dan parameter, lalu memeriksa responsnya. Tool analisis statis seperti SonarQube bekerja dengan membaca source code. Keduanya menemukan masalah yang berbeda. DAST menangkap masalah yang baru muncul saat aplikasi berjalan, seperti security header yang hilang, konfigurasi server yang salah, atau celah injeksi di deployment yang sebenarnya. Analisis statis menemukan masalah di bagian kode yang mungkin tidak pernah dijangkau crawler. Kalau tim Anda sudah memakai salah satunya, menambahkan yang lain biasanya sepadan.

Persiapan Sebelum Scan Pertama

Vulnerability scan tidak sekadar melihat-lihat. Qualys WAS mengirim form dengan data uji, dan panduan resminya sendiri memberi peringatan soal ini. Di aplikasi production, akibatnya bisa berupa data uji yang masuk ke database, email terkirim ke alamat sungguhan, atau aksi yang terpicu dari tombol yang ditemukan crawler. Sedikit persiapan bisa mencegah sebagian besar masalah ini.

  • Scan hanya sistem milik Anda sendiri atau yang sudah ada izin tertulis untuk dites. Scan aplikasi orang lain tanpa izin bisa berujung masalah hukum, walaupun niatnya baik.
  • Kalau memungkinkan, scan environment staging yang sama dengan production. Kalau terpaksa scan production, pilih waktu yang sepi dan beri tahu tim sebelumnya.
  • Buat akun khusus untuk scan dengan login, dengan hak akses yang realistis tapi tanpa akses ke data pelanggan sungguhan atau fitur pembayaran.
  • Pastikan ada backup database terbaru untuk environment yang akan di-scan.
  • Kalau aplikasi dilindungi WAF atau rate limiter, putuskan apakah scanner perlu diizinkan lewat. Kalau scanner diblokir, celahnya jadi tidak kelihatan, jadi keputusan ini sebaiknya diambil dengan sengaja.
  • Catat URL yang tidak boleh dipicu otomatis, seperti logout, hapus data, kirim pesan, dan pembayaran. Daftar ini nanti dimasukkan ke blacklist.

Tambahkan Aplikasi Web dan Atur Autentikasi

Di modul WAS, tambahkan aplikasi web dengan nama dan URL awalnya. Biasanya sebagian besar fitur aplikasi ada di balik halaman login, dan scan yang tidak bisa login hanya akan mengetes halaman publik. Qualys WAS mendukung authentication record untuk form login HTML maupun autentikasi di level server seperti HTTP Basic, Digest, NTLM, dan sertifikat SSL client. Selama crawling, Qualys juga memantau session supaya scan tetap dalam keadaan login.

Di option profile, isi blacklist dan POST data blacklist dengan URL yang sudah dicatat tadi. Untuk percobaan pertama yang lebih hati-hati, scan juga bisa dibatasi hanya ke request GET. Ingat, semua yang dikecualikan juga tidak ikut dites, jadi celah di bagian tersebut tidak akan terdeteksi.

Mulai dengan Discovery Scan

Discovery scan menjelajahi aplikasi tanpa melakukan tes celah keamanan. Dari sini kelihatan ke mana saja scan sungguhan nanti akan pergi, sehingga ini saat yang tepat untuk menemukan URL yang perlu di-blacklist dan memastikan login berjalan. Di hasilnya, cek QID 150009 (Links Crawled) untuk melihat halaman apa saja yang berhasil dijangkau, dan QID 150021 (Scan Diagnostics) untuk melihat kendala yang dialami scanner, misalnya login gagal atau crawling berhenti terlalu cepat.

Kalau daftar Links Crawled hanya berisi halaman login dan beberapa halaman publik, berarti autentikasinya belum jalan. Perbaiki dulu sebelum menjalankan vulnerability scan, karena kalau tidak, laporannya akan terlihat lebih bersih daripada kondisi aplikasi sebenarnya.

Jalankan Vulnerability Scan

Setelah hasil discovery scan sudah sesuai, jalankan vulnerability scan dengan pengaturan yang sama. Scan ini menjalankan pengecekan dari KnowledgeBase Qualys, yang masing-masing punya nomor QID, ke setiap halaman dan parameter yang ditemukan crawler. Tergantung ukuran aplikasinya, scan bisa selesai dalam kurang dari satu jam sampai beberapa jam. Pantau error rate dan waktu respons aplikasi selama scan berjalan, terutama saat pertama kali.

Cara Membaca Hasil Scan

Qualys mengelompokkan temuan menjadi confirmed vulnerability, potential vulnerability, dan information gathered, masing-masing dengan tingkat severity 1 sampai 5. Cara menanganinya berbeda-beda.

KategoriArtinyaYang perlu dilakukan
Confirmed vulnerabilityScanner sudah memastikan celahnya dari respons aplikasiPerbaiki sesuai severity, mulai dari severity 5 dan 4
Potential vulnerabilityAda tanda-tanda celah, tapi belum bisa dipastikan sepenuhnyaCek manual, karena sebagian benar dan sebagian false positive
Information gatheredInformasi tentang aplikasi dan server, seperti versi software dan headerPeriksa apakah ada informasi yang seharusnya tidak terlihat dari luar

Setiap temuan dilengkapi URL yang terdampak, request yang dikirim scanner, dan respons yang diterima. Pakai bukti ini untuk mereproduksi masalahnya sebelum diserahkan ke developer. Temuan yang bisa direproduksi tim jauh lebih cepat diperbaiki daripada sekadar satu baris di laporan PDF.

Scan Server dengan Vulnerability Management

Community Edition juga mencakup tiga IP eksternal, yang biasanya cukup untuk server publik di balik aplikasi kecil: web server, API server, dan mungkin mail server atau VPN gateway. Scan eksternal dijalankan dari scanner milik Qualys di internet. Untuk server di jaringan privat, pasang virtual scanner appliance di dalam jaringan tersebut, atau install cloud agent di server-servernya.

Kalau bisa, aktifkan host authentication di option profile. Dengan scan yang login ke server, Qualys bisa membaca versi paket yang terpasang secara langsung, sehingga patch yang belum dipasang jauh lebih banyak ditemukan dibanding scan yang hanya melihat port terbuka dan banner layanan.

Rutinitas Scan yang Praktis

  1. 1Daftar Qualys Community Edition, tambahkan URL aplikasi dan maksimal tiga IP server publik, lalu cek batasan yang berlaku di akun Anda.
  2. 2Siapkan akun uji, blacklist URL, backup, dan jadwal scan, lalu beri tahu tim.
  3. 3Jalankan discovery scan, cek QID 150009 dan QID 150021, lalu sesuaikan autentikasi dan blacklist sampai crawling mencakup seluruh aplikasi.
  4. 4Jalankan vulnerability scan dan scan server, lalu pilah hasilnya: reproduksi temuan yang confirmed, cek manual yang potential, dan catat false positive.
  5. 5Perbaiki temuan mulai dari severity tertinggi, deploy, lalu scan ulang untuk memastikan perbaikannya berhasil.
  6. 6Ulangi scan setiap ada rilis besar dan minimal sekali tiap tiga bulan, karena di Community Edition scan aplikasi web tidak bisa dijadwalkan otomatis.

Kapan Versi Gratis Sudah Tidak Cukup

Community Edition cukup untuk satu aplikasi dan beberapa server. Batasannya mulai terasa kalau ada beberapa aplikasi yang perlu dites, kalau scan perlu dijadwalkan atau dijalankan dari CI/CD pipeline lewat API, kalau lebih dari satu orang perlu akses, atau kalau Anda butuh attestation scan untuk kepatuhan PCI DSS. Di titik itu, langganan Qualys berbayar atau scanner lain yang bisa masuk ke proses rilis sudah layak dipertimbangkan.

Poin penting

  • Qualys Community Edition gratis dan mencakup 1 URL aplikasi web, 16 IP internal dan 3 IP eksternal, 1 virtual scanner, dan 16 cloud agent. Cek lagi batasan terbarunya saat mendaftar.
  • Scan aplikasi web mengirim data sungguhan. Utamakan staging, pakai akun uji khusus, siapkan backup, dan blacklist URL yang berbahaya.
  • Jalankan discovery scan dulu, lalu cek QID 150009 dan QID 150021 untuk memastikan crawler berhasil login dan menjangkau aplikasi.
  • Reproduksi temuan confirmed sebelum diserahkan ke developer, cek manual temuan potential, dan scan ulang setiap selesai perbaikan.
  • Ulangi scan secara manual setiap rilis besar, dan pertimbangkan versi berbayar kalau butuh penjadwalan, API, lebih banyak user, atau attestation PCI.

Artikel terkait

Artikel lain tentang software development, AI, cloud, dan infrastruktur.

Smartphone yang menampilkan folder berisi aplikasi pesan
Pengembangan AI|

Chatbot AI untuk Bisnis: Manfaat, Contoh Penggunaan, dan Biayanya

Panduan untuk pemilik bisnis yang mempertimbangkan chatbot AI: bedanya dengan chatbot biasa, kapan sepadan, contoh per industri, memilih antara website, Telegram, dan WhatsApp, komponen biaya, dan cara mengukur hasilnya.

Terminal Linux yang menampilkan prompt Ubuntu dengan perintah sudo
Tools Developer|

Setup WSL 2 untuk Development di Windows: Panduan Praktis

Panduan development di Windows dengan WSL 2: instalasi, di mana menyimpan file proyek, VS Code dan Git, membatasi memori lewat .wslconfig, Docker dan systemd, networking, backup, dan solusi masalah yang sering muncul.

Sedang mencari partner untuk pengembangan software?

Ceritakan proyek yang sedang Anda bangun, kebutuhan yang ingin diselesaikan, dan tantangan yang dihadapi. Kami dapat membantu membahas pendekatan teknis, scope, timeline, dan estimasi biaya.

Mulai diskusi