Perlindungan Aplikasi didasarkan pada teknologi RASP (Runtime Application Self-Protection) yang mendeteksi dan memblokir serangan selama waktu proses aplikasi, memberikan pertahanan kuat tanpa perlu mengubah kode. Cukup deploy probe RASP pada host atau kontainer Anda untuk melindungi terhadap eksploitasi kerentanan yang belum diketahui, injeksi memory shell, serta ancaman lanjutan lainnya.
Cara kerja
Perlindungan Aplikasi menggunakan teknologi RASP untuk memantau perilaku aplikasi dari dalam. Dengan melakukan hook pada fungsi kritis di lapisan aplikasi, sistem ini mengamati interaksi antara aplikasi dan sistem lain secara real time. Ketika perilaku mencurigakan terdeteksi, sistem menganalisis konteks eksekusi saat itu untuk mengidentifikasi dan memblokir serangan.
Fitur ini melindungi proses web pada host Anda dari kerentanan aplikasi, kerentanan nol hari, dan serangan memory shell.
Skenario dan manfaat
Menjamin keamanan aplikasi internal: RASP tidak berfokus pada asal lalu lintas—melainkan pada perilaku aplikasi—sehingga mampu mempertahankan terhadap ancaman Utara-Selatan maupun timur-barat. RASP berjalan bersama proses aplikasi dan berperan sebagai lini pertahanan terakhir bagi aset aplikasi Anda.
Menangani encoding kompleks dan lalu lintas terenkripsi: RASP memiliki visibilitas penuh terhadap konteks aplikasi. Terlepas dari bagaimana permintaan ditransformasi, aksi yang diambil aplikasi tetap konsisten—sehingga RASP dapat mendeteksi anomali ketika identitas dan perilaku tidak sesuai. Berbeda dengan perangkat batas jaringan yang tidak dapat mengaudit lalu lintas terenkripsi, RASP memperoleh data permintaan terdekripsi lengkap langsung dari dalam aplikasi.
Tingkat false positive dan false negative rendah; melindungi terhadap kerentanan nol hari: RASP menganalisis data dari operasi fungsi kritis dalam aplikasi dan mengabaikan serangan yang sebenarnya tidak dapat dieksekusi—sehingga mengurangi false positive maupun false negative. Untuk kerentanan nol hari, tidak peduli bagaimana serangan masuk atau seberapa tersembunyi tekniknya, serangan tersebut tidak dapat melewati jalur eksekusi fungsi kritis, sehingga RASP dapat mencegatnya secara efektif.
Pelacakan serangan dan lokalisasi kerentanan: RASP menyediakan rantai serangan terperinci kepada tim keamanan dan pengembang, termasuk muatan serangan asli, tumpukan panggilan kode, dan informasi lainnya—memudahkan lokalisasi, reproduksi, dan perbaikan kerentanan.
Biaya operasional rendah: Mudah dideploy melalui Konsol—tidak perlu memelihara atau memperbarui aturan spesifik.
Prasyarat dan batasan
Perlindungan Aplikasi mendukung aplikasi Java, PHP, dan Node.js. Fitur ini berjalan pada Instance ECS Alibaba Cloud, server penyedia cloud pihak ketiga, serta server IDC on-premises yang telah menginstal agen Security Center.
Sistem operasi berikut didukung:
Sistem Operasi | Sistem Operasi yang Didukung |
Windows (64-bit) |
|
Linux (64-bit) |
|
Kemampuan yang didukung
Deteksi serangan (aplikasi Java)
Tabel berikut mencantumkan jenis serangan yang dapat dideteksi dan dicegat oleh Perlindungan Aplikasi, beserta rekomendasi perlindungan terkait.
Jenis Serangan | Deskripsi | Rekomendasi |
JNI Injection | Injeksi JNI adalah teknik umum untuk bypass RASP. Ketika penyerang mendapatkan eksekusi kode, mereka dapat menggunakan fungsi Java Native Interface untuk memanggil library bersama eksternal berbahaya, melewati perlindungan keamanan tingkat Java dan menyembunyikan perilaku berbahaya. | Kerentanan eksekusi kode mungkin ada di server Anda. Periksa lokasi kerentanan tersebut dan batasi fungsionalitas eksekusi kode. |
SQL Injection | Serangan SQL injection bekerja dengan menyisipkan perintah SQL ke dalam permintaan halaman atau string kueri formulir web, sehingga menipu server untuk mengeksekusi pernyataan SQL sembarang. Penyerang dapat mengeksploitasi formulir web untuk mengekstraksi data dari situs web yang rentan. | SQL injection disebabkan oleh penggabungan pernyataan SQL. Gunakan prepared statements untuk menangani parameter input sedapat mungkin, atau batasi penggabungan parameter menggunakan allowlist dan blocklist. |
XXE | Serangan injeksi XML External Entity (XXE) terjadi ketika parser XML memproses referensi entitas eksternal. Penyerang dapat membuat konten XML berbahaya untuk mencapai pembacaan file sembarang, eksekusi perintah, dan serangan jaringan internal. | Periksa apakah aplikasi Anda perlu memuat entitas eksternal saat mengurai XML. Jika tidak, nonaktifkan entitas eksternal dalam konfigurasi penguraian XML Anda. |
Malicious DNS Query | Kueri DNS berbahaya dapat dieksploitasi dalam berbagai cara. Penyerang dapat menggunakan protokol DNS untuk melewati pembatasan jaringan internal dan mengekstraksi data sensitif, atau untuk memindai sistem internal guna mencari kerentanan seperti SSRF dan injeksi JNDI. | Kueri DNS berbahaya dipicu ketika server mengirim permintaan ke parameter yang dikontrol pengguna. Periksa parameter tersebut dan batasi menggunakan allowlist. |
Malicious Reflection Call | Ini adalah modul perlindungan diri RASP yang mencegah penyerang memodifikasi data runtime RASP melalui refleksi. | Kerentanan eksekusi kode mungkin ada di server Anda. Periksa lokasi kerentanan tersebut dan batasi fungsionalitas eksekusi kode. |
Malicious Outbound Connection | SSRF (Server-Side Request Forgery) adalah kerentanan di mana penyerang membuat permintaan yang diinisiasi server untuk menargetkan sistem internal. | Untuk memperbaiki kerentanan SSRF, batasi rentang alamat target yang dapat dijangkau oleh permintaan server. Gunakan allowlist untuk mengizinkan akses hanya ke sumber daya internal yang aman, dan nonaktifkan akses jaringan outbound yang tidak diperlukan. |
Malicious File Read/Write | Kelas RandomAccessFile Java digunakan untuk operasi baca dan tulis file. Jika jalur dan konten file tidak dibatasi saat menggunakan kelas ini, penyerang dapat membaca file sistem sensitif atau mengunggah file trojan berbahaya. | Periksa apakah operasi baca dan unggah file normal. Jika tidak normal, periksa kode fungsi dan batasi operasi menggunakan blocklist. |
Malicious File Upload | Jika fitur unggah file situs web tidak membatasi jenis file, penyerang dapat mengunggah file trojan berbahaya untuk mendapatkan akses server yang lebih luas, menyebabkan kerusakan serius. | Batasi jenis file yang dapat diunggah dan larang file dengan izin eksekusi, seperti JSP. |
Command Execution | Kerentanan eksekusi perintah terjadi ketika server tidak menyaring perintah yang dapat dieksekusi pengguna, sehingga memungkinkan eksekusi perintah sistem sembarang. | Eksekusi perintah jarak jauh sering disebabkan oleh webshell atau kode berbahaya di server. Segera hapus webshell tersebut. Jika merupakan fitur normal server, batasi perintah yang dapat dieksekusi menggunakan allowlist. |
Directory Traversal | Kelemahan konfigurasi di situs web dapat memungkinkan penelusuran direktori sembarang, menyebabkan kebocoran privasi yang dapat dieksploitasi penyerang. | Periksa apakah operasi penelusuran direktori normal. Jika tidak normal, periksa kode fungsi dan gunakan blocklist untuk membatasi perintah terkait seperti "./" dan "../". |
Memory Shell Injection | Memory shell adalah teknik malware baru di mana penyerang menginjeksikan trojan ke memori server menggunakan metode khusus, sehingga berhasil melewati WAF dan pertahanan berbasis host. | Kerentanan eksekusi kode mungkin ada di server Anda. Periksa lokasi kerentanan tersebut dan batasi fungsionalitas eksekusi kode. |
Arbitrary File Read | Jika fitur unduh dan baca file situs web menggunakan jalur mutlak atau karakter penelusuran direktori tanpa pembatasan pada jalur file, penyerang dapat memperoleh informasi sensitif dan menyerang server. | Periksa apakah operasi baca file normal. Jika tidak normal, periksa kode fungsi dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Thread Injection | Thread injection adalah teknik umum untuk bypass RASP. Ketika penyerang mendapatkan hak istimewa eksekusi kode, mereka dapat membuat thread baru sehingga RASP kehilangan konteks lingkungan runtime, memengaruhi kemampuan pertahanan RASP. | Kerentanan eksekusi kode mungkin ada di server Anda. Periksa lokasi kerentanan tersebut dan batasi fungsionalitas eksekusi kode. |
Malicious Attach | API Attach adalah teknologi yang disediakan Java untuk memodifikasi bytecode secara dinamis pada waktu proses. Penyerang sering menggunakannya untuk menginjeksikan memory shell berjenis agent dengan tingkat stealth tinggi. | Kerentanan eksekusi kode mungkin ada di server Anda. Periksa lokasi kerentanan tersebut dan batasi fungsionalitas eksekusi kode. |
JNDI Injection | Ketika aplikasi melakukan lookup JNDI, jika URL lookup dapat dikontrol oleh penyerang, penyerang dapat membuat server mengkueri tautan berbahaya, sehingga server memuat kelas berbahaya dan mencapai eksekusi kode sembarang. |
|
Dangerous Protocol Usage | Jika URL yang dapat diakses server dikontrol pengguna dan aplikasi tidak membatasi protokol, penyerang dapat menggunakan protokol berbahaya seperti file dan netdoc untuk membaca file sensitif di server. | Batasi protokol yang dapat diakses oleh URL. |
Deserialization Attack | Deserialisasi Java adalah proses mengembalikan urutan karakter menjadi objek Java. Jika objek yang dihasilkan berisi kode berisiko tinggi, penyerang dapat mengeksploitasi kontrol variabel anggota selama deserialisasi untuk melakukan serangan berbahaya. |
|
Arbitrary File Deletion | Jika fitur penghapusan file situs web tidak membatasi jalur file, penyerang dapat menghapus file sembarang menggunakan jalur mutlak atau karakter penelusuran direktori, sehingga mengganggu server. | Periksa apakah operasi penghapusan file normal. Jika tidak normal, periksa kode fungsi dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Expression Injection | Komponen ekspresi menyediakan fungsionalitas kaya, termasuk kueri dan pemrosesan data waktu proses. Namun, banyak komponen ekspresi juga mendukung operasi berhak istimewa tinggi seperti pemanggilan fungsi. Jika tidak dibatasi dan dapat dikontrol penyerang, penyerang dapat mengeksekusi kode sembarang melalui evaluasi ekspresi. | Batasi secara ketat apa yang dapat masuk ke evaluasi ekspresi, blokir sebagian besar pemanggilan fungsi Java. Jika disebabkan oleh kerentanan komponen pihak ketiga, segera tingkatkan versi komponen tersebut. |
Engine Injection | Java mendukung banyak komponen engine pihak ketiga (seperti engine JS Rhino, Nashorn, dan engine templat Velocity, FreeMarker). Engine ini biasanya menyediakan operasi berhak istimewa tinggi seperti pemanggilan fungsi. Jika tidak dibatasi dan dapat dikontrol penyerang, penyerang dapat mengeksekusi kode sembarang melalui engine. | Batasi secara ketat apa yang masuk ke file engine, blokir sebagian besar pemanggilan fungsi Java. Jika disebabkan oleh kerentanan komponen pihak ketiga, segera tingkatkan versi komponen tersebut. |
Malicious Beans Binding | Beberapa framework Java mendukung binding parameter Beans waktu proses. Jika jenis Beans yang dapat di-bind tidak dibatasi, penyerang dapat mengganggu operasi aplikasi atau bahkan mencapai eksekusi kode sembarang dengan memodifikasi nilai Beans sensitif. | Batasi jenis Beans yang dapat di-bind, dan larang modifikasi nilai Beans yang mirip dengan tipe Class dan ClassLoader. Jika disebabkan oleh kerentanan komponen pihak ketiga, segera tingkatkan versi komponen tersebut. |
Malicious Class Loading | Banyak eksploitasi nol hari dan webshell mengandalkan pemuatan kelas berbahaya. Setelah kelas berbahaya dimuat, penyerang dapat memperoleh hak istimewa eksekusi kode melalui inisialisasi kelas tersebut, memungkinkan operasi berbahaya lebih lanjut. |
|
JSTL Arbitrary File Inclusion | JSTL (JSP Standard Tag Library) adalah kumpulan tag JSP yang mengenkapsulasi fungsionalitas inti umum untuk aplikasi JSP. Ketika parameter yang dikontrol pengguna langsung digabungkan ke dalam tag JSTL tanpa pembatasan, penyerang dapat membuat skrip serangan khusus untuk mencapai pembacaan file sembarang dan serangan SSRF. | Hindari menggabungkan langsung parameter yang dikontrol pengguna ke dalam tag JSTL. Jika diperlukan, terapkan kontrol allowlist ketat pada konten parameter. |
Deteksi serangan (aplikasi PHP)
Jenis Serangan | Deskripsi | Rekomendasi |
Malicious File Inclusion | Kerentanan inklusi file di PHP adalah masalah keamanan umum yang memungkinkan penyerang mengikutsertakan dan mengeksekusi file sembarang dengan memanipulasi input. Kerentanan ini biasanya terjadi saat menggunakan fungsi | Validasi dan batasi jalur file input pengguna, hanya mengizinkan file yang telah ditentukan sebelumnya dalam direktori aplikasi untuk mencegah penyerang menyuntikkan jalur berbahaya. |
Malicious Outbound Connection | SSRF (Server-Side Request Forgery) adalah kerentanan di mana penyerang membuat permintaan yang diinisiasi server untuk menargetkan sistem internal. | Untuk memperbaiki kerentanan SSRF, batasi rentang alamat target yang dapat dijangkau oleh permintaan server. Gunakan allowlist untuk mengizinkan akses hanya ke sumber daya internal yang aman, dan nonaktifkan akses jaringan outbound yang tidak diperlukan. |
Deserialization | Kerentanan deserialisasi PHP adalah masalah keamanan serius yang memungkinkan penyerang mengeksekusi fungsi sembarang dengan memanipulasi data serialisasi. Hal ini biasanya terjadi saat menggunakan fungsi | Hindari langsung mendeserialisasi data yang tidak tepercaya. Gunakan |
Callback Function Execution | Fungsi callback di PHP, seperti | Untuk mencegah penyalahgunaan fungsi callback PHP, pastikan nama fungsi callback yang diteruskan ke |
Malicious File Read/Write | Ketika fungsi baca/tulis file dipanggil tanpa pembatasan pada jalur dan konten file, penyerang dapat membaca file sistem sensitif atau mengunggah file trojan berbahaya. | Untuk mencegah kerentanan keamanan terkait file, validasi dan batasi secara ketat jalur file agar hanya mengizinkan akses ke direktori yang telah ditentukan, dan lakukan pemeriksaan keamanan pada konten file untuk mencegah unggahan kode berbahaya. |
Arbitrary Code Execution | Kerentanan eksekusi kode sembarang memungkinkan penyerang mengeksekusi cuplikan kode sembarang di server, berpotensi mengambil alih kendali atau membaca dan memodifikasi data sensitif. Hal ini biasanya terjadi ketika program tidak memvalidasi input pengguna secara memadai, sehingga memungkinkan injeksi kode berbahaya. Eksploitasi yang berhasil dapat menyebabkan kebocoran data, perusakan situs web, atau instalasi malware. | Gunakan validasi input dan encoding output yang ketat. Hindari menggunakan |
Arbitrary File Read | Tanpa penyaringan dan pembatasan yang tepat pada antarmuka baca file, penyerang dapat menggunakan jalur mutlak atau karakter penelusuran direktori untuk membaca dan mengunduh file, memperoleh informasi sensitif dan menyerang server. | Terapkan validasi input dan pembatasan jalur yang ketat pada antarmuka baca file untuk memastikan hanya file yang ada dalam allowlist yang dapat diakses, dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Arbitrary File Deletion | Tanpa pembatasan jalur file yang tepat pada antarmuka penghapusan file, penyerang dapat menggunakan jalur mutlak atau karakter penelusuran direktori untuk menghapus file secara sembarang dan menyerang server. | Terapkan validasi input dan pembatasan jalur yang ketat pada antarmuka penghapusan file untuk memastikan hanya file yang telah diverifikasi yang dapat dihapus, dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Command Execution | Kerentanan eksekusi perintah memungkinkan penyerang menyuntikkan perintah atau kode sistem operasi ke server backend dari jarak jauh, sehingga mengambil alih kendali sistem backend. | Validasi dan filter semua input pengguna. Hindari menggunakan input yang tidak diproses untuk menyusun perintah sistem operasi, dan gunakan API aman untuk menggantikan eksekusi perintah sistem jika memungkinkan. |
Directory Traversal | Kelemahan konfigurasi di situs web dapat memungkinkan penelusuran direktori sembarang, menyebabkan kebocoran privasi yang dapat dieksploitasi penyerang. | Gunakan pengaturan izin server yang tepat dan file seperti |
Malicious File Upload | Jika fitur unggah file tidak membatasi jenis file, penyerang dapat mengunggah file trojan berbahaya untuk mendapatkan akses server yang lebih luas, menyebabkan kerusakan serius. | Batasi dan validasi secara ketat jenis file yang diunggah, hanya mengizinkan jenis file yang aman, memblokir ekstensi file yang dapat dieksekusi seperti .php, dan memeriksa ulang konten file di sisi server untuk memastikan keamanan. |
Deteksi serangan (aplikasi Node.js)
Tabel berikut mencantumkan jenis serangan yang dapat dideteksi dan dicegat oleh Perlindungan Aplikasi untuk aplikasi Node.js, beserta rekomendasi perlindungan terkait.
Jenis Serangan | Deskripsi | Rekomendasi |
Command Execution | Kerentanan eksekusi perintah memungkinkan penyerang menyuntikkan perintah atau kode sistem operasi ke server backend dari jarak jauh, sehingga mengambil alih kendali sistem backend. | Hindari menggunakan fungsi |
Malicious File Read/Write | Ketika fungsi baca/tulis file dipanggil tanpa pembatasan pada jalur dan konten file, penyerang dapat membaca file sistem sensitif atau mengunggah file trojan berbahaya. | Validasi dan batasi secara ketat jalur file agar hanya mengizinkan akses ke direktori yang telah ditentukan, dan lakukan pemeriksaan keamanan pada konten file. |
Arbitrary File Read | Tanpa penyaringan dan pembatasan yang tepat pada antarmuka baca file, penyerang dapat menggunakan jalur mutlak atau karakter penelusuran direktori untuk membaca dan mengunduh file, memperoleh informasi sensitif dan menyerang server. | Terapkan validasi input dan pembatasan jalur yang ketat pada antarmuka baca file untuk memastikan hanya file yang ada dalam allowlist yang dapat diakses, dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Arbitrary File Write | Jika aplikasi tidak memvalidasi dan membatasi dengan benar jenis, ukuran, dan konten file yang ditulis, penyerang dapat mengeksploitasi hal ini untuk menulis file berbahaya ke lokasi yang ditentukan pada sistem target, menanamkan skrip atau trojan berbahaya. Hal ini dapat menyebabkan kompromi server secara penuh. |
|
Arbitrary File Deletion | Tanpa pembatasan jalur file yang tepat pada antarmuka penghapusan file, penyerang dapat menggunakan jalur mutlak atau karakter penelusuran direktori untuk menghapus file secara sembarang. | Terapkan validasi input dan pembatasan jalur yang ketat pada antarmuka penghapusan file untuk memastikan hanya file yang telah diverifikasi yang dapat dihapus, dan gunakan blocklist untuk membatasi parameter input seperti "./" dan "../". |
Malicious File Link | Jika aplikasi tidak memvalidasi dengan benar jalur target dan objek tautan saat membuat tautan file, penyerang dapat menggunakan tautan simbolik atau hard link untuk memetakan file yang dilindungi ke lokasi yang dapat diakses, melewati kontrol akses untuk membaca, memodifikasi, atau menghancurkan file sistem sensitif. | Jangan izinkan input eksternal mengontrol langsung target tautan atau jalur tautan. Lakukan normalisasi, validasi jalur riil, dan pemeriksaan allowlist direktori pada sumber dan target tautan. Gunakan |
Malicious Outbound Connection | SSRF (Server-Side Request Forgery) adalah kerentanan di mana penyerang membuat permintaan yang diinisiasi server untuk menargetkan sistem internal. | Untuk memperbaiki kerentanan SSRF, batasi rentang alamat target yang dapat dijangkau oleh permintaan server. Gunakan allowlist untuk mengizinkan akses hanya ke sumber daya internal yang aman, dan nonaktifkan akses jaringan outbound yang tidak diperlukan. |
Malicious Process Creation | Node.js fork() dapat digunakan untuk membuat proses Node baru yang mengeksekusi file JS. Jika aplikasi tidak membatasi secara ketat skenario pemanggilan, logika eksekusi, atau parameter input, penyerang dapat menggunakan kemampuan ini untuk membuat subproses berbahaya, melakukan operasi tidak sah, atau lebih lanjut mengompromikan server melalui pemuatan skrip atau eksekusi perintah. | Jangan biarkan input pengguna langsung menentukan jalur modul dan parameter startup untuk |
Malicious Process Binding | Node.js process.binding() dapat digunakan untuk mengakses modul tingkat rendah internal. Jika aplikasi tidak membatasi pemanggilan tersebut, penyerang dapat menggunakan kemampuan ini untuk mengakses antarmuka tingkat rendah, melewati kontrol keamanan lapis atas, dan melakukan operasi tak terduga, menyebabkan kebocoran informasi sensitif, penyalahgunaan hak istimewa, atau eksploitasi sistem lebih lanjut. | Jangan ekspos |
Malicious MCP Call | Dalam skenario AI Agent, MCP (Model Context Protocol) dapat digunakan untuk mengakses sumber daya eksternal, layanan, atau kemampuan. Jika aplikasi tidak memvalidasi secara ketat cakupan pemanggilan, parameter permintaan, dan konten respons layanan MCP, penyerang dapat menginduksi Agent untuk melakukan pemanggilan MCP berbahaya, mengakses data sensitif, melakukan operasi berisiko tinggi, atau berinteraksi dengan layanan yang tidak tepercaya. | Perlakukan MCP Server sebagai komponen eksternal yang tidak tepercaya. Hanya izinkan koneksi ke sumber tepercaya dengan versi tetap dan konfigurasi terkontrol. Buat allowlist untuk nama tool MCP, nama server, parameter, URL, direktori kerja, dan perintah startup. Aktifkan konfirmasi manual atau kebijakan tingkat risiko lebih tinggi untuk tool yang memodifikasi file, mengeksekusi perintah, mengakses jaringan, atau membaca kredensial. Jangan ekspos kunci produksi langsung ke MCP Server. Jalankan MCP Server di kontainer terisolasi atau akun berhak istimewa rendah. Lakukan validasi format, validasi keamanan URL, dan catatan audit pada metadata OAuth, URL jarak jauh, dan konten respons tool. Perilaku dasar |
Malicious Tool Call | Dalam skenario AI Agent, Tool dapat digunakan untuk melakukan operasi eksternal atau memanggil kemampuan pihak ketiga. Jika aplikasi tidak membatasi secara efektif cakupan yang tersedia, parameter pemanggilan, dan hasil eksekusi Tool, penyerang dapat menggunakan injeksi prompt atau input berbahaya yang dibuat khusus untuk menginduksi Agent memanggil Tool berisiko tinggi, melakukan operasi tidak sah, mengakses sumber daya sensitif, atau bahkan memengaruhi keamanan host atau sistem bisnis. | Rancang izin Tool menggunakan prinsip hak istimewa minimal. Tolak tool berisiko tinggi secara default dan berikan otorisasi eksplisit berdasarkan skenario bisnis. Kategorikan tool ke dalam tingkat risiko: read-only, write, jaringan, dan eksekusi perintah. Butuhkan konfirmasi atau persetujuan kebijakan untuk Tool write, eksekusi perintah, dan outbound. Terapkan validasi kuat dan batasan allowlist pada setiap parameter Tool, seperti templat perintah, direktori yang dapat diakses, domain yang diizinkan, dan metode HTTP yang diizinkan. Perlakukan hasil Tool sebagai input yang tidak tepercaya dan lakukan deteksi injeksi prompt dan data sensitif sebelum memasukkan ke konteks LLM. Simpan catatan audit untuk nama tool, parameter, rantai pemanggilan, runId/toolCallId, dan ringkasan hasil. Blokir atau tingkatkan peringatan saat mendeteksi urutan berbahaya seperti membaca file sensitif diikuti koneksi outbound, atau eksekusi perintah diikuti penulisan item startup. |
Perlindungan kerentanan aplikasi
Perlindungan Aplikasi dapat secara efektif mempertahankan terhadap kerentanan aplikasi, kerentanan nol hari, dan serangan memory shell. Prinsip perlindungan kerentanan ditunjukkan pada gambar berikut. Selama respons insiden kerentanan aplikasi, memanfaatkan kemampuan perlindungan serangan RASP dapat dengan cepat memblokir serangan, memberikan lebih banyak waktu untuk memperbaiki kerentanan aplikasi. Perlindungan Aplikasi juga dapat membantu dalam melokalisasi sumber risiko dan menentukan cakupan dampak dengan cepat. Untuk informasi lebih lanjut tentang kerentanan aplikasi, lihat Kelola kerentanan.

Jika Anda tidak dapat segera memperbaiki kerentanan aplikasi, Anda dapat menghubungkan proses aplikasi ke RASP untuk perlindungan terlebih dahulu. Langkah-langkah berikut menunjukkan cara menambahkan perlindungan RASP untuk aplikasi yang telah terdeteksi kerentanannya.
Masuk ke Konsol Security Center.
Di panel navigasi kiri, pilih . Di pojok kiri atas konsol, pilih wilayah tempat aset yang akan dilindungi berada: Chinese Mainland atau Outside Chinese Mainland.
Pada tab Application Vulnerability, kerentanan dengan tag RASP supports real-time protection. didukung oleh Perlindungan Aplikasi. Klik Enable Protection Now di kolom Actions untuk kerentanan yang sesuai.

Di panel Access Management, pilih kelompok aplikasi yang akan dihubungkan dari dropdown Application Group Name, pilih aset yang sesuai, lalu klik Confirm.
Jika kelompok aplikasi yang diperlukan belum ada, Anda dapat mengklik Create Application Group di dropdown, masukkan nama kelompok aplikasi, lalu klik OK untuk membuat kelompok aplikasi secara cepat. Protection Mode dari kelompok aplikasi yang dibuat di sini adalah Block, dan Protection Policy Group adalah Group Name.
Setelah aplikasi dengan kerentanan terdeteksi dihubungkan ke Perlindungan Aplikasi, daftar Unhandled Vulnerabilities di halaman detail kerentanan akan menampilkan kolom Actions server sebagai Protected hanya setelah pemindaian kerentanan selesai dilakukan untuk kerentanan aplikasi tersebut.
Analisis perilaku aplikasi
Fitur Analisis Perilaku Aplikasi memantau, mengumpulkan, dan menganalisis data perilaku aplikasi secara real time untuk aplikasi yang terhubung, menghasilkan laporan dan tampilan visual. Hal ini membantu Anda memahami detail serangan dan pertahanan aplikasi serta memperkuat keamanan sistem. Untuk informasi lebih lanjut, lihat Analisis perilaku aplikasi.
Perlindungan memory shell (hanya untuk aplikasi Java)
Teknologi RASP Perlindungan Aplikasi dapat mendeteksi memory shell secara real time dengan menganalisis data memori, serta mendukung pencegatan proses injeksi dan eksekusi memory shell. Untuk informasi lebih lanjut, lihat Perlindungan malware resident-memori.
Deteksi kelemahan (hanya untuk aplikasi Java)
Tabel berikut mencantumkan jenis kelemahan aplikasi yang dapat dideteksi oleh Perlindungan Aplikasi, beserta rekomendasi perbaikan terkait.
Jenis Kelemahan | Tingkat Risiko | Deskripsi | Rekomendasi |
Insecure Fastjson Configuration | High | Fastjson dalam aplikasi telah mengaktifkan deserialisasi, yang dapat dieksploitasi penyerang untuk mencapai eksekusi kode jarak jauh. Nonaktifkan fitur ini jika tidak diperlukan. | Atur safemode Fastjson ke true, atau atur autotype ke false. |
Insecure log4j Configuration | High | Komponen log4j telah mengaktifkan fungsionalitas lookup, yang dapat dieksploitasi penyerang untuk injeksi JNDI, mengakibatkan eksekusi kode jarak jauh. | Tingkatkan log4j ke versi terbaru, atau hapus file org/apache/logging/log4j/core/lookup/JndiLookup.class dari paket JAR. |
Insecure Startup Parameters | High | Ketika penyerang dapat mengakses port debugging JDWP, mereka dapat mengeksekusi kode sembarang melalui fitur ini, menyebabkan eksekusi kode jarak jauh. | Tutup port JDWP atau hindari mengekspos port JDWP ke jaringan publik jika tidak ada skenario yang memerlukannya. Berhati-hatilah terhadap Aplikasi jangka panjang yang mengaktifkan port JDWP. |
Shiro Weak Key | High | Shiro menggunakan kunci enkripsi lemah, yang dapat dipecahkan penyerang untuk melakukan serangan deserialisasi lebih lanjut, mengakibatkan eksekusi kode jarak jauh. | Segera perbarui kunci enkripsi Shiro dalam aplikasi Anda. |
Insecure JMX Configuration | Medium | Akses jarak jauh JMX diaktifkan tanpa otentikasi yang memadai. Penyerang dapat menghubungkan secara jarak jauh ke layanan JMX aplikasi dan mencapai eksekusi perintah. | Nonaktifkan koneksi JMX jarak jauh, atau gunakan kredensial otentikasi yang aman. |
Insecure Rhino Configuration | Medium | Framework Rhino berisi properti berbahaya yang dapat dieksploitasi penyerang untuk eksekusi kode jarak jauh. | Tingkatkan Rhino ke versi terbaru, lalu gunakan SafeStandardObjects untuk mendefinisikan konteks Rhino guna mencegah mesin JavaScript memanggil kode Java. Berikut adalah contoh penggunaan SafeStandardObjects untuk mendefinisikan konteks Rhino: |
Insecure Spring Configuration | Medium | Spring Actuator telah mengaktifkan titik akhir tertentu: heapDump, env, restart, refresh, trace, jolokia, h2-console, dll., yang dapat menyebabkan kebocoran informasi sensitif atau eksekusi kode jarak jauh. | Nonaktifkan fitur-fitur ini jika tidak ada skenario khusus yang memerlukannya. |
Weak Login Credentials | Medium | Aplikasi memiliki kata sandi login lemah, yang dapat di-brute-force oleh penyerang untuk mengakses sistem dan memperoleh informasi sensitif atau bahkan akses server. | Segera ubah kata sandi aplikasi menjadi kata sandi yang kompleks. |
Insecure JNDI Configuration | Low | Aplikasi memiliki pengaturan parameter useCodebaseOnly/rmi-trustURLCodebase/ldap-trustURLCodebase yang tidak aman, yang dapat rentan terhadap injeksi JNDI. | Tingkatkan JDK ke versi terbaru. Jika tidak dapat ditingkatkan, tambahkan parameter startup berikut saat menjalankan aplikasi: |
Insecure XML Entity Configuration | Low | Penguraian entitas eksternal XML diaktifkan, yang dapat membuat aplikasi rentan terhadap serangan XXE. | Nonaktifkan entitas eksternal jika tidak ada skenario khusus yang memerlukannya. |
Database Weak Password | Low | Aplikasi menggunakan kata sandi lemah untuk menghubungkan ke database, yang dapat dieksploitasi penyerang untuk menghubungkan ke database dan menyebabkan kebocoran informasi sensitif atau eksekusi kode jarak jauh. | Segera ubah kata sandi koneksi database menjadi kata sandi yang kompleks. |