i (am) Blogger and U?

from X-periment to X-perience

Belajar Online: E-learning - Kuis & Soal

"Belajar Online: E-learning - Kuis & Soal", Software/aplikasi e-learning berbasis web yang dapat digunakan oleh pengajar/guru/pembimbing atau perorangan untuk membuat soal/kuis atau per [...]

Aplikasi Web: WebReview-Series 1

Web Review-Series 1 adalah paket aplikasi web yang memfasilitasi Anda yang ingin membuat situs yang berisi review dari berbagai hal. Review tentang suatu produk, Review tentang suatu te [...]

One-Page Portofolio / Gallery 1

One-Page Portofolio/Gallery adalah paket aplikasi web yang memfasilitasi Anda baik perseorangan maupun korporat yang ingin menampilkan/memajang portofolio/hasil karya/gallery kegiatan/p [...]

Aplikasi Web: WebReview-Series 2

Web Review-Series 2 memiliki fitur-fitur yang sama persis dengan Web Review-Series 1 tapi dengan theme/template yang berbeda (theme yang dipakai pada versi ini adalah theme yang respons [...]

One-Page Portofolio / Gallery 2

One-Page Portofolio / Gallery 2 memiliki fitur-fitur yang sama persis dengan One-Page Portofolio / Gallery 1 tapi dengan theme/template yang berbeda (theme yang dipakai pada versi ini a [...]

Online Shop Basic 1

Online Shop Basic 1 adalah paket minimalis aplikasi toko online instan yang dapat digunakan untuk menjalankan bisnis secara online. Aplikasi ini adalah aplikasi toko online yang "sudah [...]

2010
02Jan

Bagian 1: Cara-cara Mengamankan Aplikasi CodeIgniter

Post category: Web Development


Anda pasti sudah sangat sering mendengar berita tentang website yang dibobol oleh hacker (atau 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!


No comments...
>> Comments closed. <<