Beberapa langkah untuk menghindari PHP Injeksi

  

Arsip

Sn Sl Rb Km Jm Sb Mg
1234567
891011121314
15161718192021
22232425262728

       

Newsletter

Langganan newsletter:

Voting: februari2010

Berapa nilai desain layout BeritaNet.com dengan skala 1 sampai 5?

       

Referensi IT

    
    

    

    
  • email Email kan kepada kawan anda
  • Tambahkan ke Yahoo! web Anda Tambahkan ke del.icio.us Digg berita atau artikel ini Tambahkan ke Furl Tambahkan ke Squidoo Tambahkan ke Technorati Tambahkan ke StumbleUpon Tambahkan ke Reddit Tambahkan ke Netscape Tambahkan ke Newsvine
    Kontak BeritaNET.com :
    Naskah : redaksi AT beritanet.com
    Iklan : iklan AT beritanet.com
    Lowongan : karir AT beritanet.com
    Kursus IT : kursus AT beritanet.com
    Beli Buku : buku AT beritanet.com
    Kerjasama : joint AT beritanet.com

Prakiraan Cuaca Besok

  sumber : http://bmg.go.id
         

Sesuaikan ukuran huruf: Perkecil font Perbesar font
foto berita artikel

Mungkin sudah banyak sekali artikel-artikel yang membahas tentang cara menghindari PHP Injeksi, namun disini saya akan menjelaskan lebih detail lagi caranya beserta source code nya sehingga pembaca lebih mudah untuk mengimplementasikannya. Tentu anda sudah tidak asing lagi mendengar kata PHP Injeksi, tapi mungkin ada beberapa orang yang belum mengerti apa itu PHP Injeksi. PHP Injeksi adalah sebuah istilah dimana seorang penyusup membongkar security web dengan cara memasukan skrip-skrip PHP maupun JavaScript kedalam sistem web melalui media inputan seperti News, ShutBox ataupun lewat URL. Untuk menghindari hal-hal tersebut ada beberapa langkah yang dapat kita lakukan, yaitu:

1.    Anda dapat sedikit merubah teknik kode saat mengeksekusi isi berita(News). Berikut adalah contoh kodenya:
<?php
$dbh = mysql_connect(‘localhost’, ‘username’, ‘password’);
mysql_select_db (‘cmsdb’, $dbh);
$id = mysql_real_escape_string($_GET[‘id’]);< br />$SQL = “SELECT * FROM (nama_tabel) WHERE (id)= ‘”.$id.”’”;
$result = mysql_query($SQL, $dbh) OR die (mysql_error($dbh));
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
    $headline = stripslashes($row[‘headline’]);
    Echo “Headline” .$headline;
}
Mysql_free_result($result);
Mysql_close($dbh);
?>

2.    Anda dapat melakukan validasi data yang berasal dari URL. Contohnya:
<?php
$dbh = mysql_connect(‘localhost’, ‘username’, ‘password’);
mysql_select_db (‘cmsdb’, $dbh);
$id = $_GET[‘id’];
if (!is_numeric($id)){
die (“Jangan memodifikasi ID berita”);
}
$SQL = “SELECT * FROM (nama_table) WHERE (id) = ‘”.$id.”’”;
$result = mysql_query($SQL, $dbh) OR die (mysql_error($dbh));
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
    $headline = stripslashes($row[‘headline’]);
    Echo “Headline” .$headline;
}
Mysql_free_result($result);
Mysql_close($dbh);
?>

3.    Membatasi panjang digit user saat login. Contohnya:
<?php
$dbh = mysql_connect(‘localhost’, ‘username’, ‘password’);
mysql_select_db (‘cmsdb’, $dbh);
$username = $_POST[‘username’];
$password = $_POST[‘password’];
$length = strlen ($username);

// Apabila datanya terlalu panjang, maka pesan akan ditolak
If ($length < 5 || $length > 25) {
    die (‘Digit user anda berlebihan!!! Masukan hanya antara 5 sampai 25 digit saja’);
}

// Menjalankan query
$SQL = “SELECT * FROM users WHERE username = ‘”.$username.”’”;
$SQL  .= “AND password=PASSWORD (‘$password’) “;
$result = mysql_query ($SQL);
Mysql_close ($dbh);
?>

Penulis :  Adi Suratno Sukmo Kusumo - Peserta Content Contest 2009



    

Diskusikan berita ini di Diskusi BeritaNET.com


Berikan komentar comment Komentar (0 dimuat)


Paling Dicari Hari Ini


Bincang IT : Redaksi :  © 2007-2008. BERITA NET.com - SITUS BERITA INDONESIA
Links to Site
  eXTReMe Tracker