Cara Menggunakan SQL Injection 2024

Cara Menggunakan SQL Injection
Cara Menggunakan SQL Injection - SQL, singkatan dari Structured Query Language yang merupakan standar untuk mengakses dan memanipulasi database.

Biasanya SQL digunakan untuk mengelola sistem database seperti Oracle, SQL Server, maupun MySQL.

Secara umum, pemakaian SQL hampir sama disemua sistem database, namun ada detail perbedaan tertentu yang khusus untuk setiap sistem.

SQL Injection merupakan teknhik Injeksi yang digunakan untuk melakukan serangan pada aplikasi web yang berbasis data, dimana penyetaan malicious SQL dimasukkan kedalam entri untuk dieksukusi.

SQL dapat mengeksploitasi kerentanan keamanan diperangkat lunak aplikasi, seperti saat ketikan user salah melakukan filter untuk pengiriman karakter.


Yang disematkan dalam penyataan SQL atau Inputan user tidak ditulis dengan benar tanpa diduga di eksekusi.

Untuk informasi yang lebih lengkap, silahkan simak ulasan cara menggunakan SQL Injection yang akan kami uraikan dibawah ini.


Cara Menggunakan SQL Injection


1. Mengenal Cara Menggunakan SQL Injection

Cara Menggunakan SQL Injection
Mengenal Cara Menggunakan SQL Injection
Sebelum mengetahui cara menggunakan SQL Injection, perlu anda ketahui terlebih dulu apa itu SQL dan cara kerjanya.

Berfungsi sebagai tekhnik yang menyalahgunakan celah keamanan yang ada disetiap lapisan basis data sebuah aplikasi.

Celah ini terjadi saat input dari pengguna tidak disaring secara benar, misalnya seperti kolom Username yang seharusnya hanya diisi dengan huruf atau angka namun diisi dengan karakter seperti : _=').


Karena hal itu, penyerangan melalui celah tersebut dilakukan dengan memasukkan Query dari SQL.

SQL selalu menjadi tekhnik penyerangan terfavorit sebagian hacker dari tahun ke tahun.

Selain itu juga dengan semakin sulitnya hacker melakukan serangan via jaringan yang sebabkan oleh kecanggihan perangkat pertahanan dari target.

Misalnya seperti Firewall, UTM, IDS, dan lain-lain, SQL Injection ini sangat mudah dilakukan karena banyak website programmer yang kurang 'Aware" terhadapnya.


2. Cara Menggunakan SQL Injection Dengan Mengetahui Tipe Serangan

Cara Menggunakan SQL Injection
Cara Menggunakan SQL Injection Dengan Mengetahui Tipe Serangan
Walau efek dari SQL ini bervariasi berdasarkan aplikasi yang ditargetkan, ada beberapa tipe umum dari SQL Injection

Mengetahui Tipe serangan dari SQL Injection adalah langkah awal dari cara menggunakan SQL Injection yang harus diketahui.


a. Otentikasi ByPass

Serangan ini akan membantu anda untuk masuk kedalam aplikasi dengan hak akses administrstif dan tanpa menggunakan Username dan Password yang valid.



b. Pencurian Informasi

Serangan ini memungkinkan anda mendapatkan informasi-informasi sensitif dalam database, baik secara langsung ataupun tidak.


c. Compromised Integritas Data

Penyerangan ini melibatkan perubahan isi database, dan seorang penyerang dapat menggunakan serangan ini untuk men-deface halaman website atau memasukkan konten berbahaya kedalamnya.


d. Compromised Ketesediaan Data

Seragan ini memungkinkan penyerang untuk menghapus informasi dengan maksud menghapus atau merusak log ataupun audit informasi dalam database.


e. Remote Command Execution:

Menggunakan perintah eksekusi via database akan memungkinkan penyerang untuk melakukan Compromised pada sistem operasi Host atau Target.

Satu dari sekian banyaknya pengguna SQL Injection yang meleibatkan ByPass disebuah proses autnetikasi Login aplikasi.


Umumnya, form Login Username dan Password disini mempunyai konstruksi SQL Query sebagai berikut:


Otentikasi biasa:
SELECT count (*) FROM Users WHERE Username=’Ronaldo’ AND Password= ‘Butterfly’

Otentikasi yang dilakukan attacker:
SELECT count (*) FROM Users WHERE Username=’qwert’ or 1=1 -- ’ AND Password= ‘zxcvb’

Input yang masuk ke database seharusnya berisikan Usernama (Ronaldo) dan Password (Butterfly) input yang dimasukkan Attacker adalah "Qwert" pada form Email tidaklah penting.

Karena setelah itu terdapat tanda “or 1=1 — “ yang artinya setiap input akan selalu dianggap true.

Kenapa? Karena 1=1 mengartikan true dan or adalah kondisi dimana salah satu atau lebih dari 2 atau lebih input true maka otentikasi dianggap true oleh sistem.

Dengan begitu form password dapat diisi sesuka hati karena dibelakang tanda “– “ tersebut dianggap sebagai syntax comment pada SQL.

Berikut contoh source code yang mempunyai celah terkena SQL Injection, dibagian request.get Parameter data yang diterima SQL query akan dikirim langsung dari HTTP request tanpa validasi dari data tersebut.

Baca juga : Free VPN For PC

Jumlah minimal atau maximal karakter dari jenis karakter yang diizinkan atau karakter-karakter berbahaya.

Kesalahan ini dapat menimbulkan celah untuk menjadikan SQL sebagai payload dan mengubah fungsi statement yang sudah ada.
String DRIVER = “com.ora.jdbc.Driver”;
String DataURL = “jdbc:db://localhost:5112/users”;
String LOGIN = “admin”;
String PASSWORD = “admin123”;
Class.forName(DRIVER);//Make connection to DB
Connection connection = DriverManager.getConnection(DataURL, LOGIN, PASSWORD);
String Username = request.getParameter(“USER”); // From HTTP request
String Password = request.getParameter(“PASSWORD”); // From HTTP request
int iUserID = -1;
String sLoggedUser = “”;
String sel = “SELECT User_id, Username FROM USERS WHERE Username = ‘” +Username + “‘ AND Password = ‘” + Password + “‘”;
Statement selectStatement = connection.createStatement ();
ResultSet resultSet = selectStatement.executeQuery(sel);
if (resultSet.next()) {
iUserID = resultSet.getInt(1);
sLoggedUser = resultSet.getString(2);
}PrintWriter writer = response.getWriter ();if (iUserID >= 0) {
writer.println (“User logged in: ” + sLoggedUser);
} else {

writer.println (“Access Denied!”)
Meski terdapat sejumlah Tools serangan yang digunakan untuk serangan SQL, namun anda tetap harus mempelajarinya.


Sebagai web programmer anda harus mempelajari cara untuk melakukan secure programming, tak hanya pada web programming namun juga diberbagai bahasa programming.


Akhir Kata

Bagi anda yang masih bingung dengan cara kerja dari SQL Injection, silahkan simak informasinya dalam ulasan diatas.

Informasi yang kami bagikan ini bersifat pengetahun yang dapat menambah wawasan anda seputar cara penggunaan SQL Injection dengan mudah.

Jika ingin berhasil, pastikan untuk mengikuti langkah-langkah diatas dengan hati-hati, benar dan sesuai dengan yang kami uraikan.

Itulah seluruh pembahasan kita pada artikel kali ini mengenai cara menggunakan SQL Injection. Sekian dan semoga bermanfaat.

Tidak ada komentar:

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel