Anda pasti sudah sangat sering mendengar berita tentang website yang
dibobol oleh hacker (baca: cracker) yang mengakibatkan kerusakan ringan
(misalnya di-deface) maupun sampai web sama sekali tidak bisa dibuka.
Itu terjadi karena berbagai sebab, mungkin karena cracker-nya emang
sangat lihai atau emang karena user/administrator web itu sendiri yang
lalai dalam mengamankan apa yang dimilikinya.
Kali ini saya ingin membahas sedikit cara mengurangi kemungkinan
terjadinya kerusakan akibat keusilan para dedemit dunia maya. Kalau
menghilangkan 100% mungkin agak sulit, ya paling tidak supaya tidak
terlalu sering diacak-acak. Kali ini saya ingin bahas khusus untuk PHP
framework CodeIgniter. Akan tetapi, beberapa di antaranya bisa juga
diterapkan di web/blog yang menggunakan PHP tanpa Framework CodeIgniter.
Error reporting di satu sisi sangat berguna bagi programmer saat
melakukan coding dan melihat di bagian mana saja terjadinya error. Akan
tetapi, ketika web sudah di-upload ke server dan semua orang bisa
mengaksesnya, error reporting malah akan menyebabkan orang lain bisa
melihat komponen-komponen penyusun web yang anda buat. Misalkan saja
contoh error reporting di bawah ini:A PHP Error was encountered
Severity: Notice
Message: Undefined variable: keys
Filename: blogs/header_full.php
Line Number: 8
Dengan melihat error reporting di atas saat men-develop suatu aplikasi
maka programmer bisa segera melihat ada apa yang error di controllers
yang me-load view blogs/header_full.php. dari pernyataan ini saja
kita menjadi mengetahui bahwa salah satu view yang digunakan dalam web
application ini berada di folder views/blogs/header_full.php dan kalau
programmer mengetahui hal ini bukankah begitu juga dengan cracker yang
mungkin saja mampir ke situs anda?.
Lalu bagaimana dong cara mengatasi hal ini? Untuk menghindari kasus
semacam ini maka anda perlu men-disable error reporting saat situs anda
sudah mulai beroperasi. Untuk melakukannya silahkan buka index.php di
root CodeIgniter anda dan pada baris-12 (kalau belum ada perubahan) ,
ganti error_reporting(E_ALL); menjadi error_reporting(0);
(angka nol). Kalau web application anda tiba-tiba tidak mau jalan
silahkan ubah kembali ke setting default CodeIgniter untuk melihat error
yang terjadi. Namun setelah itu jangan lupa untuk diubah ke nol lagi
kalau error telah diatasi.
Oke, mungkin itu dulu untuk saat ini dan insya Allah akan kita lanjutkan
dengan cara-cara pengamanan yang lain tentunya masih dengan Framework
CodeIgniter. Happy Coding!





Tidak ada komentar:
Posting Komentar