Lewati ke konten

Pindai celah keamanan aplikasi Anda

SingkatnyaBuka Keamanan, lalu klik Jalankan pemindaian keamanan. Dalam satu atau dua menit, MonstarX memeriksa kode Anda dengan 33 aturan, menguji aplikasi yang berjalan sebagai orang asing, dan meminta AI membaca seluruh aplikasi. Anda mendapat nilai dari A sampai F dan daftar temuan, dimulai dari yang paling parah, masing-masing dengan lokasinya, alasan pentingnya, dan apa yang perlu diubah. Pilih yang ingin diperbaiki, lalu MonstarX memperbaikinya seperti proses membangun biasa dan memindai lagi. Hasilnya bisa diunduh sebagai laporan.

Aplikasi yang dibuat dengan cepat cenderung terlalu memercayai browser: fungsi yang bisa dipanggil siapa saja, reservasi yang dicari berdasarkan nomornya tanpa memeriksa siapa pemiliknya, atau harga yang diambil dari halaman. Penyerang justru mencari celah seperti ini.

Tab Keamanan membaca aplikasi Anda dari sudut pandang penyerang, mencantumkan temuannya mulai dari yang paling parah, dan membantu Anda memperbaikinya. Anggap saja ini uji penetrasi kecil (pemeriksaan keamanan ketika seseorang sengaja mencoba membobol aplikasi) yang sudah ada di dalam MonstarX.

Bagaimana cara menjalankan pemindaian keamanan?

Section titled “Bagaimana cara menjalankan pemindaian keamanan?”
  1. Buka proyek Anda, lalu klik Keamanan di bilah atas.

  2. Klik Jalankan pemindaian keamanan. Prosesnya memakan satu atau dua menit.

  3. Lihat ketiga bagiannya selesai satu per satu. Anda boleh meninggalkan tab ini: pemindaian berjalan di server MonstarX dan terus berlanjut. Batal menghentikannya dan menyimpan apa yang sudah ditemukan.

Lencana tab Keamanan di bilah atas menampilkan ikon berputar selama pemindaian berjalan, lalu jumlah temuan yang belum ditangani (diwarnai sesuai temuan terparah) atau titik hijau jika tidak ada temuan yang tersisa. Untuk memindai lagi nanti, klik Pindai lagi di bagian atas tab.

Pemindaian terdiri dari tiga bagian:

BagianFungsinyaBiaya
Pemeriksaan kode33 aturan dijalankan pada setiap file aplikasi: pemeriksaan masuk yang tidak ada, catatan yang diubah tanpa memeriksa pemiliknya, rahasia yang tertulis di kode, kueri database yang dirangkai dari teks, HTML yang tidak aman, unggahan yang tidak diperiksa, webhook yang tidak diverifikasi, dan lainnya.Gratis
Pengujian aplikasi berjalanPermintaan hanya-baca ke aplikasi yang sedang berjalan sebagai orang asing tanpa akun: halaman yang seharusnya hanya untuk orang yang sudah masuk, rute yang menjawab siapa saja, akses lintas situs, dan, pada aplikasi yang sudah diterbitkan, header keamanan serta file yang seharusnya tidak pernah bisa diakses.Gratis
Tinjauan AIModel AI membaca seluruh aplikasi beserta temuan tadi, mengonfirmasi atau menyanggahnya, lalu mencari masalah yang hanya terlihat saat membaca kode, seperti harga yang dipercaya begitu saja dari halaman atau data yang dikirim halaman tetapi tidak pernah ditampilkan.Memakai kredit, seperti permintaan di mode Percakapan

Pengujian aplikasi berjalan memakai aplikasi yang sudah diterbitkan jika sedang aktif, dan pratinjau jika belum. Hasilnya menyebutkan mana yang diuji.

OWASP adalah organisasi nirlaba yang menerbitkan Top 10, daftar paling terkenal tentang jenis risiko keamanan aplikasi web yang paling serius. Setiap temuan dikelompokkan ke salah satunya, sehingga Anda (atau pakar keamanan) tahu jenis masalahnya:

Dalam bahasa sederhana
A01 Kegagalan kontrol aksesSeseorang bisa melihat atau mengubah sesuatu yang bukan miliknya.
A02 Kegagalan kriptografiRahasia atau kode disimpan atau dibuat dengan cara yang lemah.
A03 InjeksiTeks yang diketik seseorang dijalankan sebagai perintah atau kode.
A04 Desain tidak amanLogika aplikasi bisa disalahgunakan, misalnya email atau reservasi gratis tanpa batas.
A05 Kesalahan konfigurasi keamananPengaturan terlalu terbuka, misalnya header keamanan yang tidak ada.
A06 Komponen rentan dan usangPerangkat lunak lama dengan celah yang sudah diketahui.
A07 Kegagalan identifikasi dan autentikasiPenanganan proses masuk atau sesi yang lemah.
A08 Kegagalan integritas perangkat lunak dan dataKode atau data dari luar dipercaya tanpa diperiksa.
A09 Kegagalan pencatatan dan pemantauan keamananRahasia bocor ke log, atau serangan tidak disadari.
A10 Pemalsuan permintaan sisi serverAplikasi bisa dipaksa mengambil alamat yang dipilih penyerang.

CWE (Common Weakness Enumeration) adalah katalog bernomor berisi kelemahan-kelemahan spesifik, seperti CWE-639: catatan yang dicari berdasarkan ID yang dikendalikan pengguna. Setiap temuan menautkan ke kategori OWASP-nya dan, jika ada, ke halaman CWE-nya, agar Anda bisa membaca lebih lanjut.

Di bagian atas, Anda melihat skor dari 100 dengan nilai dari A sampai F, jumlah temuan yang belum ditangani menurut tingkat keparahan, apa yang dipindai dan diuji, biaya tinjauan AI, serta ringkasan tinjauan dalam beberapa kalimat.

Skor dimulai dari 100 dan berkurang 40 untuk setiap temuan Kritis, 15 untuk setiap temuan Tinggi, 5 untuk setiap temuan Sedang, dan 1 untuk setiap temuan Rendah. Nilainya menunjukkan langkah selanjutnya:

NilaiSkorArtinya
A90–100Tidak ditemukan masalah serius.
B75–89Ada beberapa hal yang perlu dirapikan.
C55–74Perbaiki temuan tinggi sebelum lebih banyak orang memakai aplikasi.
D35–54Ada celah serius: perbaiki sebelum menerbitkan.
F0–34Dalam kondisi saat ini, aplikasi terbuka untuk diserang.

Setiap temuan menampilkan tingkat keparahan, judul, kategori OWASP, CWE, asalnya (Pemeriksaan kode, Pengujian aplikasi berjalan, atau Tinjauan AI), seberapa yakin pemindaian (Dikonfirmasi, Kemungkinan besar, atau Perlu diperiksa), serta file dan barisnya. Klik salah satunya untuk membukanya:

  • Kode di sekitar baris tersebut, dengan barisnya ditandai.
  • Apa yang salah, Mengapa itu penting, dan Apa yang harus diubah, dalam bahasa sederhana.
  • Catatan Tinjauan AI: apakah temuan itu dikonfirmasi dan bagaimana caranya.
  • Buka di Kode membawa Anda ke file tersebut di tab Kode.

Jika tinjauan AI menganggap sebuah temuan sebagai alarm palsu, muncul tulisan Tinjauan AI: kemungkinan bukan masalah sebenarnya. Temuan itu tetap ada di daftar, diurutkan paling akhir, tetapi tidak dihitung dalam skor.

Di bawah daftar, Apa yang diperiksa membuka semua pemeriksaan yang dijalankan, dikelompokkan menurut kategori OWASP, dengan tanda centang, jumlah temuan, atau alasan pemeriksaan dilewati.

  1. Centang temuan yang ingin diperbaiki, atau klik Pilih semua. Tombol Perbaiki 2 temuan muncul. Tombol ini tetap abu-abu selama proses membangun berjalan.

  2. Klik tombol itu. MonstarX menjelaskan apa yang akan terjadi, lalu klik Perbaiki 2 temuan sekali lagi.

  3. Setiap temuan menjadi tugas di rencana fitur Anda (Keamanan: …; jika rencana hampir penuh, temuan-temuan itu digabung dalam satu tugas), dan satu permintaan di mode Bangun dikirim ke percakapan dengan lencana Keamanan. Permintaan ini berjalan seperti permintaan lain, menyimpan versi, dan QA mungkin menguji aplikasi setelahnya.

  4. Setelah proses membangun selesai, pemindaian berjalan lagi dengan sendirinya. Temuan yang sudah hilang ditampilkan sebagai terselesaikan (2 diperbaiki oleh MonstarX). Temuan yang masih ada muncul kembali dengan tanda Masih ditemukan setelah perbaikan.

Bagaimana jika sebuah temuan bukan masalah sebenarnya?

Section titled “Bagaimana jika sebuah temuan bukan masalah sebenarnya?”

Buka temuan itu dan klik Sisihkan, lalu sebutkan alasannya:

  • Bukan masalah sebenarnya
  • Risiko yang diterima: Anda mengetahuinya dan menerimanya.
  • Ditangani dengan cara lain

Temuan yang Anda sisihkan pindah ke daftar Disisihkan dan tetap di sana pada setiap pemindaian berikutnya, meskipun kode lain berubah. Klik Kembalikan untuk memasukkannya lagi ke daftar.

Bagaimana cara mengunduh laporan keamanan?

Section titled “Bagaimana cara mengunduh laporan keamanan?”

Klik Unduh laporan di bagian bawah hasil. Anda mendapat file Markdown (dokumen teks biasa yang bisa dibuka di editor apa pun) yang dinamai sesuai proyek Anda, misalnya jasa-pemandu-anjing-jakarta-selatan-security-report.md. Isinya disusun seperti laporan uji penetrasi:

  • Ruang lingkup dan metode: berapa aturan dijalankan pada berapa file, apa yang diuji, dan apa yang dilakukan tinjauan AI.
  • Ringkasan: skor, temuan yang belum ditangani menurut tingkat keparahan, dan ringkasan tinjauan.
  • Temuan: masing-masing dengan tautan OWASP dan CWE, lokasinya, kodenya, apa yang salah, mengapa penting, dan apa yang perlu diubah.
  • Terselesaikan sejak pemindaian sebelumnya, dan Disisihkan oleh pemiliknya, beserta alasan Anda.
  • Pemeriksaan: setiap pemeriksaan beserta hasilnya.

Laporan ini praktis untuk dibagikan kepada developer, klien, atau auditor. Laporan tersedia setelah pemindaian berhenti berjalan.

Apakah pemindaian gratis?

Pemeriksaan kode dan pengujian aplikasi berjalan gratis. Tinjauan AI memakai kredit, seperti permintaan di mode Percakapan, dan hasilnya menampilkan biayanya. Memperbaiki temuan memakai kredit seperti proses membangun lainnya.

Apakah nilai yang bagus berarti aplikasi saya aman?

Tidak ada pemindaian yang bisa menjanjikan itu. Pemindaian menemukan apa yang bisa dilihat oleh aturan, pengujian, dan tinjauannya. Perbaiki dulu temuan kritis dan tinggi, pindai lagi, dan minta seseorang meninjau bagian yang menangani uang atau data pribadi sebelum banyak orang memakai aplikasi.

Sebaiknya saya memindai sebelum atau sesudah menerbitkan?

Keduanya. Pindai sebelum menerbitkan untuk menangkap celah besar. Pindai lagi setelah aplikasi aktif: beberapa pemeriksaan, seperti header keamanan dan file yang seharusnya tidak pernah bisa diakses, hanya berjalan pada aplikasi yang sudah diterbitkan.

Apakah orang yang saya beri akses ke proyek bisa melihat hasil pemindaian?

Tidak. Hasil pemindaian menyebutkan setiap titik lemah, jadi hanya pemilik yang melihat tab Keamanan.

Apakah pemindaian memeriksa kode proses masuk dan database milik MonstarX sendiri?

Tidak. Bagian-bagian itu sama di setiap aplikasi dan dikelola oleh MonstarX. Pemindaian memeriksa kode yang ditulis untuk aplikasi Anda, dan aplikasi Anda yang sedang berjalan.

Apa yang terjadi jika proses membangun sedang berjalan saat saya memulai pemindaian?

Pemindaian menunggu proses membangun selesai (hingga 10 menit), sehingga yang diperiksa adalah kode yang sudah jadi.