Kita telah mengenali tentang apa itu Remote Code Execution, cara kerja, serta pencegahannya. Namun, ternyata ada lagi suatu ancaman dari kerentanan yang ternyata mirip seperti Remote Code Execution. Yap, ancaman tersebut adalah Remote Command Execution. Walau pada dasarnya mirip, namun terdapat perbedaan diantaranya. So, biar lebih paham, mari kita simak bersama!
Apa Itu Remote Command Execution?
Menurut OWASP, Command injection adalah serangan di mana tujuannya adalah eksekusi perintah sewenang-wenang pada sistem operasi host melalui aplikasi yang rentan. Serangan injeksi perintah dimungkinkan ketika aplikasi melewati data yang disediakan pengguna yang tidak aman (formulir, cookie, header HTTP, dll.) ke shell sistem. Dalam serangan ini, perintah sistem operasi yang disediakan penyerang biasanya dieksekusi dengan hak istimewa dari aplikasi yang rentan. Serangan injeksi perintah dimungkinkan sebagian besar karena validasi input yang tidak memadai.
Intinya, command Injection (juga dikenal sebagai Shell Injection) adalah kerentanan keamanan web yang memungkinkan penyerang mengeksekusi perintah sistem operasi (OS) sewenang-wenang di server yang menjalankan aplikasi, dan biasanya sepenuhnya membahayakan aplikasi dan semua datanya. Sangat sering, penyerang dapat memanfaatkan kerentanan injeksi perintah OS untuk mengkompromikan bagian lain dari infrastruktur hosting, mengeksploitasi hubungan kepercayaan untuk memutar serangan ke sistem lain dalam organisasi.
Perbedaan Command Injection dan Code Injection
Agar dapat memahami perbedaan antara command injection dan code injection, kita harus mengkaji ulang dari definisinya,
Code Injection -> Code Injection adalah istilah umum untuk jenis serangan yang terdiri dari penyuntikan kode yang kemudian diinterpretasikan/dieksekusi oleh aplikasi. Jenis serangan ini mengeksploitasi penanganan data yang tidak tepercaya.
Command Injection -> Command Injection adalah serangan di mana tujuannya adalah mengeksekusi perintah sewenang-wenang pada sistem operasi host melalui aplikasi yang rentan. Serangan injeksi perintah dimungkinkan ketika aplikasi melewati data yang disediakan pengguna yang tidak aman (formulir, cookie, header HTTP, dll.) ke shell sistem.
Jika kita analogikan, Code Evaluation, Arbitary Code Execution, dan Remote Code Execution adalah sinonim dari Code Injection. Sementara, OS Injection, Command Injection, dan Arbitary Command Execution adalah sinonim dari Command Execution.
Code Injection memungkinkan penyerang untuk menyuntikkan KODE-nya sendiri yang dieksekusi oleh aplikasi. Sementara Command Injection, penyerang memperluas fungsionalitas default aplikasi, yang mengeksekusi perintah sistem.
Jadi misalnya apabila kita masukkan URL Injection seperti berikut
vulnerableweb.com/index.php?page=phpinfo();
Dan muncul tampilan informasi php target web, maka web tersebut vulnerable terhadap Code Injection.
Apabila kita masukkan URL Injection seperti berikut
vulnerableweb.com/index.php?page=ls
Dan muncul tampilan seperti daftar tata letak directory, maka web tersebut vulnerable terhadap Command Injection.
Comments
Post a Comment