LFI - Tweak yang Menarik
Ringkasan
Penyertaan File Lokal (LFI) adalah jenis kerentanan aplikasi web yang memungkinkan penyerang memasukkan dan mengeksekusi file sewenang-wenang di server web. Penyerang dapat memanfaatkan kerentanan ini dengan meneruskan jalur file berbahaya sebagai parameter, yang dapat berupa file lokal di server. Ini dapat memungkinkan penyerang untuk melihat informasi sensitif, seperti file konfigurasi atau kredensial pengguna, mengeksekusi kode arbitrer, atau bahkan mendapatkan kendali penuh atas server.
Keterangan
Saya telah menemukan kerentanan inklusi file lokal (LFI) di salah satu program tempat saya dapat mengunduh file web.xml dari direktori WEB-INF/ . Namun bugnya cukup sederhana dengan tweak kecil.
Situs web memiliki opsi Unduh Detail Kursus di mana ia mengambil detail kursus dari server melalui nama file = parameter, itu adalah permintaan POST. Situs web berjalan di server IIS jadi awalnya saya berpikir untuk mengunduh beberapa file sensitif namun semuanya dibatasi tetapi kemudian saya berpikir untuk mengunduh file web.xml yang berhasil diunduh. File yang diunduh memiliki nama pengguna dan kata sandi admin tetapi saya tidak dapat menemukan portal masuk sehingga tingkat keparahannya diturunkan. Saya tidak melaporkan bug tersebut karena targetnya adalah OOS (Out-Of-Scope).
Bagaimana saya menemukan kerentanan ini?
- Saya pergi ke situs web di mana ada opsi untuk "Unduh Detail Kursus"
3. Saya tahu itu menggunakan server IIS jadi saya mencari jalur web.xml
4. Saya mengedit path ke ?filename=/WEB-INF/web.xml
5. Kemudian saya mengklik tombol dan mengunduh file dan membukanya, saya mendapatkan kredensial
Mengapa itu terjadi?
Menurut pendapat saya,
Situs web tidak memvalidasi dan membersihkan input pengguna sebelum memprosesnya. Namun sebagian besar file sensitif diblokir tetapi memblokir file tertentu bukanlah solusi ideal dari sudut pandang saya, masukan pengguna harus divalidasi dan dibersihkan sebelum memprosesnya.
Dampak
Dampak dari kerentanan LFI bisa sangat parah, karena dapat menyebabkan penyusupan total server web dan datanya. Namun dalam kasus saya, dampaknya terbatas pada pengunduhan file web.xml karena semua file sensitif utama dibatasi untuk diunduh, jadi dampaknya sedang.
CATATAN : Jika saya dapat menemukan panel login yang memberi saya akses dengan kredensial yang saya peroleh, tingkat keparahannya akan tinggi.
CVSS yang dihitung
String Vektor - CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Skor - 5,3 (Sedang)
Mitigasi
Validasi dan sanitasi input harus dilakukan jika ada input pengguna yang masuk. Server tidak boleh memproses input pengguna tanpa validasi. Validasi dan sanitasi harus dilakukan di sisi klien dan juga sisi server. Selain itu, aplikasi harus menghindari penggunaan input pengguna untuk membuat jalur file dan sebaliknya menggunakan pendekatan daftar putih untuk menentukan jalur file yang diizinkan. Firewall aplikasi web juga dapat digunakan untuk mendeteksi dan memblokir upaya mengeksploitasi kerentanan LFI.

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































