-->

Apa itu SQL Injection dan bagaimana cara mencegahnya


SQL Injection adalah sebuah teknik hacking yang dimana memanfatkan celah keamanan yang ada pada server SQL, biasanya terjadi karena sebuah kode/input pada SQL tidak dibuat dengan benar/ada sebuah eror yang memungkinkan penyerang dapat menjalan perintah-perintah ke dalam server database tanpa izin/akses terlebih dahulu SQL Injection juga berperngaruh pada website yang menggunakan backend SQL sebagai databasenya seperti Mysql, Oracle, MariaDB, SQL Server, dll.

SQL Injection ini dapat terjadi karena beberapa hal seperti kurangnya penanganan terhadap karakter-karakter seperti tanda petik satu atau karakter double minus yang dapat menyebabkan suatu aplikasi dapat disisipi peretas dengan perintah SQL.

Pencegahan SQL Injection

Dari yang kita tahu SQL Injection memang sangat berbahaya karena dapat melihat database tanpa akses terlebih dahulu, namun setiap masalah pasti ada solusi, berikut merupakan tindak pencegahan pada serangan SQL Injection.

1. Lakukan pengujian keamanan aplikasi/website secara rutin

Hal ini bertujuan agar celah keamanan dapat diketahui secara dini, dan melakukan tindakan dengan perbaikan pada eror.

2. Memberikan enkripsi dan mengunci pada database 

Untuk mengamanan data dari para attacker, anda dapat menggunakan enkripsi untuk database anda agar aman. Anda dapat menyimpan data yang bersifat credential secara terpisah untuk menyulitkan penyerang dalam melakukan SQL Injection.

3. Gunakan keamanan WAF (Web Application Firewall)

Hal ini bertujuan untuk website mendektesi dan menblok serangan SQL Injection.

* Namun cara ini tidak 100% ampuh karna para hacker sudah menemukan solusi untuk kemanan satu ini dengan menggunakan bypass WAF

4. Menggunakan Parameterized Query

Parameterized Query adalah sebuah permintaan query yang memakai penanda, dimana penanda atau parameter ini akan diberikan nilai pada waktu query dijalankan atau dieksekusi. Cara ini merupakan cara sederhana yang dapat dilakukan untuk mencegah SQL Injection. Parameterized akan mendefinisikan seluruh kode SQL sebelum mengirimkannya ke lapisan query.

Tambahan

Contoh eror pada SQL : Hilangnya sebagian konten/teks sebuah website, Hilangnya gambar pada website, pesan eror beserta path SQL

Segitu saja yang bisa saya bahas, kalau ada kesalahan mohon perbaiki

Wassalamualaikum Wr Wb

Referensi : https://bssn.go.id/wp-content/uploads/2019/09/Proteksi-terhadap-Kerentanan-SQL-Injection-2019-v.1.3.1_sign.pdf

 


See Also :