Tuesday, January 12, 2010

SQL Injection


1. SQL injection dapt terjadi ketika seseorng dapat memasukkan beberapa perintah SQL dalam query dengan memanipulasikan data pada aplikasi database.

2. Terdapat beberapa cara SQL dapat diinjeksikan pada sesebuah aplikasi.

- Contoh dari SQL statement :
" select id, forname, surname from authors "
= Perintah ini akan menghasilkan kolum 'id', 'forname', dan 'surname' dari table 'authors'

== Hasil yang diinginkan dapat lebih spesifik dengan dapat menyebutkan 'author' seperti dibawah ini :
" select id, forname, surname from authors where forname = 'john' and surname = 'smith'

Hal utama yang perlu dicatat adalah kita memiliki batas-batas dalam pencarian dengan menyebut 'john' sebagai forname dan 'smith' sebagai surname. Seakan-akan 'forname' dan 'surname' field telah didapatkan dari user ayng memberikan input.

Seorang attacker dapat menginjeksikan beberapa SQL dalam query ini dengan memasukkan nilai pada aplikasi seperti di bawah ini :
Forname = john
Surename = smith

Query akan menjadi seperti ini :
select id, forname, surname from authors where forname = 'john' and surname = 'smith'

0 comments:

Post a Comment