Serangan traversal direktori, juga dikenal sebagai serangan traversal jalur, merupakan risiko yang signifikan dalam bidang keamanan web. Mereka terutama mengeksploitasi kerentanan keamanan dalam fungsi aplikasi web dalam mengakses file yang ada di server. Serangan ini memungkinkan pengguna jahat untuk mengakses file dan direktori yang disimpan di luar folder webroot dengan memanipulasi variabel yang mereferensikan file dengan urutan “dot-dot-slash (../)”.
Evolusi Serangan Traversal Direktori
Asal usul serangan traversal direktori dapat ditelusuri kembali ke masa awal internet ketika aplikasi web pertama kali mulai menggunakan skrip untuk mengakses file sisi server. Seiring kemajuan teknologi dan aplikasi web menjadi lebih kompleks, potensi kerentanan jenis ini juga meningkat.
Serangan traversal direktori yang pertama kali disebutkan secara publik agak sulit ditentukan karena sifat mendasar dari kerentanan ini. Namun, masalah keamanan menjadi lebih menonjol pada akhir tahun 1990an dan awal tahun 2000an, ketika aplikasi web menjadi hal yang biasa, dan peluang untuk mengeksploitasi referensi file yang tidak aman meningkat.
Memperluas Serangan Traversal Direktori
Serangan traversal direktori adalah bentuk eksploitasi HTTP di mana peretas mengakses direktori server yang biasanya tidak tersedia untuk umum. Penyerang mengeksploitasi validasi keamanan yang tidak memadai atau sanitasi nama file masukan yang diberikan pengguna, sehingga memungkinkan mereka untuk keluar dari lingkungan yang dibatasi.
Penggunaan rangkaian traversal direktori yang paling umum adalah dalam serangan berbasis URL, namun bisa juga muncul dalam injeksi header, manipulasi cookie, atau bahkan dalam parameter POST. Melalui ini, penyerang dapat melihat direktori terbatas dan menjalankan perintah di luar direktori root server web, sehingga mendapatkan akses tidak sah ke informasi sensitif.
Cara Kerja Serangan Traversal Direktori
Serangan traversal direktori bekerja dengan mengeksploitasi validasi/sanitasi keamanan yang tidak memadai atas nama file masukan yang diberikan pengguna, sehingga penyerang dapat memanipulasinya untuk melompat keluar dari lokasi terlarang.
Dalam bentuk yang terlalu disederhanakan, mari kita pertimbangkan skenario ketika aplikasi mencoba mengakses file gambar dari server:
Arduinohttp://example.com/app?file=logo.jpg
Dalam hal ini, aplikasi akan membuka file tersebut logo.jpg
dari direktori gambarnya. Namun, penyerang dapat menggunakan urutan “dot-dot-slash (../)” untuk berpindah ke direktori induk, lalu mengakses file yang tidak sah. Contohnya:
pestahttp://example.com/app?file=../../etc/passwd
Hal ini dapat mengakibatkan aplikasi menampilkan file sistem sensitif.
Fitur Utama Serangan Traversal Direktori
-
Memanipulasi Variabel: Fitur mendasar dari serangan traversal direktori melibatkan manipulasi variabel yang mereferensikan file dengan urutan “dot-dot-slash (../)”.
-
Melanggar Batasan: Hal ini memungkinkan penyerang untuk keluar dari direktori root aplikasi dan mengakses bagian lain dari sistem file.
-
Memanfaatkan Validasi Lemah: Serangan traversal direktori mengeksploitasi lemahnya validasi atau sanitasi input pengguna.
Jenis Serangan Traversal Direktori
Meskipun prinsip inti di balik serangan traversal direktori tetap sama, serangan tersebut dapat terwujud dalam cara yang berbeda berdasarkan konteks dan aplikasi yang dimaksud:
-
Serangan Berbasis URL: Ini melibatkan memasukkan masukan berbahaya ke dalam URL untuk melintasi direktori.
-
Serangan Berbasis Bentuk: Masukan berbahaya dimasukkan ke dalam kolom formulir untuk mengeksploitasi skrip sisi server yang rentan.
-
Serangan Berbasis Cookie: Penyerang memanipulasi cookie untuk melintasi direktori dan mengakses data yang tidak sah.
Jenis | Keterangan |
---|---|
Serangan berbasis URL | Menyuntikkan masukan berbahaya ke dalam URL untuk melintasi direktori. |
Serangan Berbasis Bentuk | Masukkan input berbahaya ke dalam kolom formulir untuk mengeksploitasi skrip sisi server. |
Serangan Berbasis Cookie | Memanipulasi cookie untuk melintasi direktori dan mengakses data yang tidak sah. |
Masalah dan Solusi Terkait dengan Serangan Traversal Direktori
Masalah utama serangan traversal direktori adalah akses tidak sah ke file dan data sensitif. Hal ini dapat menyebabkan kebocoran data, hilangnya kerahasiaan, dan berpotensi memberikan vektor serangan lebih lanjut kepada penyerang (seperti memperoleh kredensial database dari file konfigurasi).
Berikut beberapa solusinya:
-
Validasi Masukan: Pastikan validasi yang kuat atas masukan yang diberikan pengguna. Jangan izinkan “..” atau “/” sebagai bagian dari masukan.
-
Kontrol akses: Menerapkan kontrol akses yang tepat. Jangan hanya mengandalkan jalur file yang disediakan untuk mengotorisasi pengguna.
-
Prinsip Hak Istimewa Terkecil: Jalankan aplikasi dengan hak istimewa paling sedikit yang diperlukan, sehingga mengurangi potensi kerusakan akibat serangan traversal direktori.
Serangan Traversal Direktori dan Ketentuan Serupa
Ketentuan | Keterangan |
---|---|
Serangan Traversal Direktori | Memanfaatkan kerentanan dalam prosedur input pengguna untuk mengakses file dan direktori yang tidak sah. |
Penyertaan File Jarak Jauh (RFI) | Penyerang menggunakan jalur masukan pengguna untuk mengunggah skrip berbahaya ke server situs web. |
Penyertaan File Lokal (LFI) | Penyerang memanipulasi situs web untuk mengeksekusi atau mengungkapkan konten file di server web. |
Perspektif dan Teknologi Masa Depan Terkait Serangan Traversal Direktori
Seiring berkembangnya lanskap pengembangan web, metode dan alat untuk melakukan serangan traversal direktori mungkin menjadi lebih canggih. Namun demikian, landasan pencegahan kemungkinan besar masih terletak pada validasi masukan yang kuat dan konfigurasi sistem yang masuk akal.
Firewall aplikasi web, sistem deteksi anomali, dan algoritme pembelajaran mesin untuk sistem deteksi intrusi dapat memainkan peran penting dalam strategi mitigasi di masa depan terhadap serangan semacam itu.
Koneksi Antara Server Proxy dan Serangan Traversal Direktori
Server proxy dapat berfungsi sebagai lapisan keamanan tambahan terhadap serangan traversal direktori. Dengan memfilter permintaan dan respons antara klien dan server, mereka dapat membantu menemukan pola atau tanda serangan traversal direktori yang tidak biasa, sehingga mencegahnya mencapai server.
OneProxy, misalnya, menyediakan solusi server proxy tangguh yang dapat memainkan peran penting dalam strategi pertahanan Anda terhadap jenis serangan ini.