Informasi Teknologi dan Security

Thursday, March 3, 2022

SQL Injection

SQL Injection merupakan sebuah celah keamanan pada sebuah aplikasi dengan memanfaatkan injeksi payload yang berupa query pada nilai yang nantinya akan diproses oleh backend ke database. Dengan adanya celah ini mengakibatkan seseorang dapat memanipulasi query yang sebelumnya digunakan oleh aplikasi untuk mendapatkan hasil yang diinginkan. Serangan ini juga sangat berbahaya karena seseorang dapat mengambil alih database hingga melakukan RCE kepada server database.

Cara kerja
Cara kerja dari serangan SQL Injection banyak sekali tipenya yaitu:
  1. Error Based SQL Injection serangan ini dengan memanfaatkan pesan error yang ditampilkan oleh aplikasi.

  2. Union Based SQL Injection berfokus pada operator UNION dengan memanfaatkan gabungan dari hasil pengambilan data yang nantinya akan ditampilkan menjadi satu kesatuan.
  3. Time Based SQL Injection serangan yang berfokus pada eksekusi sebuah permintaan berdasarkan waktu eksekusi. 
  4. Boolean SQL Injection serangan yang berfokus pada pencocokan sebuah data dengan memanfaatkan boolean pada query untuk mendapatkan data yang benar.
Terdapat banyak sekali cara untuk mengetahui keberadaan celah ini yaitu seperti:
' or 1#
' or '1'='1
'=''or'
dan masih banyak lagi. Dengan memanfaatkan payload query kita bisa mendapatkan data yang kita inginkan seperti berikut:
Before

After


Pencegahan
Untuk melakukan pencegahan pada SQL Injection banyak sekali metode yang dapat digunakan yaitu salah satunya prepare statement. Dimana prepare statement mencoba query terlebih dahulu sebelum melakukan eksekusi pada database.

Kesimpulan
Serangan SQL Injection merupakan serangan yang sangat berbahaya karena seseorang dapat menggunakannya untuk mendapatkan akses secara langsung pada database. Tak hanya itu banyak sekali tipe SQL Injection yang membuat serangan dapat dicustom sendiri untuk mendapatkan payload yang benar.
Untuk lebih jelasnya teman-teman dapat berkomentar dibawah ini, terimakasih. Admin@zi 

No comments:

Post a Comment