banner header web design web design seo
Security dalam pemrograman PHP
10-01-2008

Untuk membuat sebuah systems yang aman sempurna secara teori adalah tidak mungkin. Seandainnya kita mampu mem-validasi semua input dengan retina scan atau sidik jari, maka kita akan mendapatkan system yang sangat aman, tetapi hal ini akan menyusahkan dari sisi user, dan tidak disukai. Pada saat ini didalam pemrograman, untuk mem-validasi dari data input hanya menggunakan encrypted cookies.

Berikut ini adalah hal mendasar yang perlu diperhatikan bagi seorang PHP programmer:

  1. Register_Globals ON/OFF PHP Assc. Menyarankan untuk menge-set Register_Globals pada kondisi OFF, yang artinnya Auto global untuk variable akan OFF. Untuk itu programmer harus mendefinisikan asal dari semua data variable yang masuk, misalnnya dari POST, GET, COOKIES, SESSION, dsb. Pada saat ini para penyedia public hosting menge-set Globals_Register pada kondisi berbeda-beda. Bagi yang tidak mau repot dan pusing karena mendapat pertanyaan dari para konsumen, mereka biasannya akan menge-set pada kondisi ON. Bagi para pengguna public hosting, bisa menge-set Register_global pada file htacces yang biasannya diberikan dalam keadaan kosong dan kita bisa tambahkan setting sesuai keinginan kita. Atau kita juga bisa meng-set menggunakan sebuah PHP script (sebagai emulator) yang ditempatkan pada setiap halaman.
  2. Cara install PHP Pada server (di lakukan oleh hosting provider) Ada dua cara untuk menginstall PHP yang biasa dilakukan, yaitu sbb: a.) PHP sebagai Apache Module b.) PHP sebagai CGI binary. Hal ini akan menghasilkan kemungkinan cara penyerangan oleh hacker yang berbeda pula.
  3. File Systems Security. Dalam pemrograman PHP, file yang kita tempatkan di internet server memungkinkan untuk dijangkau oleh para hacker, misalnnya menghapus, memerintahkan mencetak file yang sangat besar dsb. Untuk itu kita harus memperhatikan pemrograman yang berhubungan dengan acces ke file systems, misalnnya kita harus mempergunakan limited permission kepada user dan megecek varibel input, dsb.
  4. Database Security PHP Assc. menyarakan untuk memisahkan previlage untuk acces database bagi owner(superuser- admin) dan user biasa. Hal ini akan memperkecil kemungkinan kerusakan database karena hacker apabila hacker mampu membobol masuk sebagai user biasa.
  5. Menyembunyikan PHP pada URL. Hal ini tidak significant, tetapi bisa memperlambat laju penyerangan para hacker. Hal ini bisa dilakukan dengan menambahkan setting di htacces atau fasilitas lain yang disediakan oleh hosting provider.
  6. Setting Error reporting. Para hacker biasanya melakukan penyerangan dengan cara memunculkan error pada sytems dan mengumpulkan data yang berguna bagi mereka untuk melakukan penyerangan berikutnnya. Sementara dari sisi owner, membutuhkan data error untuk mengetahui kesalahan yang terjadi. Untuk itu kita harus tahu cara mensetting error reporting sesuai kebutuhan kita.
  7. Magic quotes Magic quotes adalah prosses yang secara otomatis menolak data yang masuk pada script php. Untuk itu sebaiknnya magic quotes diset pada kondisi OFF dan kita tempatkan script pengganti.
  8. Selalu update pada perkembangan PHP version dan perubahannya. Semoga tulisan ini membantu…..

Bookmark and Share