Contoh Script PHP yang Vulnerable (Path Traversal), Jadi Pintu Akses ke File Konfigurasi Situs

Kerentanan kode di atas terletak pada variabel $sub_page, yang dapat dimanipulasi untuk menyertakan path berbahaya misalnya /etc/passwd.

Selain itu, penyerang dapat menyertakan file PHP di luar direktori yang dituju (misalnya, ../../../../malicious_script), yang menyebabkan serangan arbitrary code execution.

Perbaikan dengan pembatasan file yang tidak diinginkan

Mekanisme validasi dengan in_array memastikan bahwa hanya nilai variabel $sub_page yang sudah ditentukan saja yang dapat diterima, yaitu dashboard.php, profile.php, dan settings.php. Hal ini mencegah penyerang menggunakan path secara sembarangan karena input pengguna harus sesuai dengan aturan opsi yang telah ditetapkan sebelumnya.

P.S.:

Snippet di atas didapat dari riset software plugin WordPress: Tutor LMS

Leave a Reply

Your email address will not be published. Required fields are marked *