Directory traversal pada sebuah website memungkinkan pengunjung dapat melihat file-file sistem operasi seperti /etc/resolv.conf. Jika /etc/resolv.conf dapat dilihat dengan mudah bukan tidak mungkin file lain seperti /etc/passwd dapat juga dilihat. Ada beberapa cara untuk mencegah directory traversal. Mengaktifkan safe_mode adalah salah satunya dan dapat juga mencegah directory traversal dengan menggunakan modsecurity.

Cara pertama mencegah directory traversal adalah dengan mengaktifkan safe_mode php. Caranya dengan meng-edit php.ini kemudian ganti opsi safe_mode menjadi on. Dengan cara ini fungsi-fungsi php yang menyentuh sistem operasi seperti exec() atau chmod().

Cara lainnya mencegah directory traversal adalah dengan menggunakan modsecurity. Tapi setelah instalasi dan diaktifkan, modsecurity tidak langsung bisa mencegah directory traversal tapi perlu ditambahkan sebuah rule. Untuk mencegah directory traversal dengan modsecurity, rulenya adalah

SecRule REQUEST_URI “\.\.” “phase:1,log,deny,msg:’Directory Traversal Attack Detected’”

rule tersebut sebetulnya bisa dimasukkan di config modsecurity mana saja karena tinggal diincludekan saja di httpd.conf namun saya memasukkan rule tersebut di modsecurity_localrules.conf. Dengan rule tersebut setiap ada tindakan yang terjaring maka akan ditampilkan halaman error 500.

Jika anda ingin mencoba apakah sebetulnya modsecurity anda sudah berjalan atau belum, bisa dilakukan sedikit percobaan seperti disini.

sumber : http://osdir.com/ml/apache.mod-security.user/2007-06/msg00206.html

& Komentar

  • At 2011.02.07 13:29, meti said:

    *prok-prok-prok* akhirnya posting perdana…. :D

    • At 2011.02.27 02:36, Yuda said:

      yes… :) )

      (Required)
      (Required, will not be published)