JULY SPECIAL ! DISKON 96%
Belajar Data Science Bersertifikat, 12 Bulan hanya 180K!
1 Hari 15 Jam 36 Menit 15 Detik

Serba Serbi SQL Injection, Praktisi Data Wajib Tahu

Belajar Data Science di Rumah 31-Januari-2023
https://dqlab.id/files/dqlab/cache/0b141600ec4bd241596f0fdb03a9f989_x_Thumbnail800.jpeg

Kejahatan di dunia maya belakangan ini semakin meningkat sejalan dengan adanya hacker Bjorka yang sempat menggemparkan jagad media sosial. SQL Injection adalah salah satu jenis ancaman kejahatan dalam dunia digital atau sering kita sebut dengan istilah cyber crime. Tak dapat dipungkiri, fenomena cyber crime kini semakin marak seiring dengan perkembangan teknologi.


SQL Injection adalah bentuk serangan terhadap keamanan sebuah aplikasi web yang sering ditemui. Serangan ini sudah masuk ke peringkat ketiga dengan serangan paling besar. Penyerangan ini mencakup jenis pencurian data dan juga manipulasi database, termasuk email, password, data pribadi, sampai-sampai bisa mencuri aset finansial dari para user. 


Banyaknya layanan bisnis yang mulai bermunculan berupa toko online berbasis web membuat keamanan menjadi ancaman yang perlu diwaspadai. Bayangkan jika database yang dibobol adalah database dari aplikasi finansial yang kita gunakan. Sangat berbahaya bukan?


Apa sebenarnya SQL Injection itu? Apakah Sahabat DQ bisa mencegahnya melihat betapa berbahayanya hal ini? Nah, pada artikel ini akan dibahas lebih detail SQL Injection. Sekaligus juga akan diberikan tips untuk mencegahnya.


1. SQL Injection

SQL Injection adalah salah satu bentuk dari cyber crime atau tindakan kejahatan di dunia digital. Hal ini semakin sering terjadi karena semakin pesatnya perkembangan teknologi.

SQL

Aktivitas SQL Injection diantaranya adalah pencurian dan manipulasi database berupa data pribadi bahkan dapat juga berupa aset finansial. SQL Injection melakukan langkah injeksi kode terhadap suatu celah pada keamanan database yang dimiliki oleh suatu website atau aplikasi. 


Pada umumnya, peretas menggunakan query SQL dengan tools tertentu untuk mengakses data sehingga mereka dapat masuk tanpa melalui proses otentikasi. SQL injection ini dapat meretas berbagai website yang menggunakan SQL seperti MySQL, Oracle, SQL Server, dan sebagainya.


Baca juga : Serba-Serbi SQL Injection yang Pemula Wajib Tahu   


2. Prinsip Kerja SQL Injection

Hingga saat ini, SQL Injection masih menjadi teknik favorit yang dilakukan para hacker untuk melakukan peretasan web atau aplikasi.


SQL


Kenapa favorit? Karena cara kerja SQL Injection yang sederhana namun efektif dalam meretas sebuah situs. 

Alur dari serangan SQL injection dapat terbagi menjadi beberapa tahapan, diantaranya adalah:

  • Menemukan celah keamanan melalui data pengguna.

Langkah pertama yang dilakukan pada proses SQL injection adalah melihat celah keamanan dengan mendapatkan data pengguna melalui proses login saat akan mengakses situs tertentu. Terutama saat pengguna menuliskan nama user beserta kata sandi.


Selanjutnya mereka akan mengirimkan kode pada halaman login dengan query SQL dan diproses oleh database sebagai sebuah perintah. Pada bagian username umumnya diisi dengan menggunakan karakter.


Melalui langkah tersebut, hacker dapat menambahkan karakter sebagai kontrol SQL serta memberikan kata kunci berupa instruksi yang dapat merusak database. 

  • Proses validasi.

Selanjutnya database melakukan validasi atas perintah yang dikirimkan. Dengan demikian, database akan memberikan informasi pengguna yang digunakan pada proses login. Selanjutnya, hacker akan diizinkan untuk masuk pada akun tersebut. 

  • Mendapatkan akses database.

Langkah selanjutnya, mereka dapat melakukan segala aktivitas pada akun terkait. Mulai dari mengubah pengaturan di dalamnya termasuk menjadikan hacker sebagai administrator. Mereka bisa dengan mudah mengakses, mengubah, hingga menghapus data pada situs terkait.


3. Mengapa Kita Harus Waspada dengan SQL Injection?

Setelah mengerti apa itu SQL Injection dan seperti apa alur kerja dari serang SQL Injection, kita juga harus melihat beberapa alasan mengapa SQL Injection ini disebut sangat berbahaya, di antaranya karena:

  • Verifikasi login bisa ditembus dengan mudah. Hacker dapat masuk pada website maupun aplikasi tanpa memerlukan username dan password yang valid.

  • Privasi pengguna website atau aplikasi menjadi terancam.

  • Data website atau aplikasi dapat dicuri dengan mudah.

  • Database dimodifikasi

  • Riwayat data dari database bisa dihapus. Jika hacker sudah mengubah dirinya sebagai administrator, maka ia dapat menghapus semua history data pada database karena tidak ingin dirinya ketahuan.

  • OS Command Execution dan pembobolan Firewall


4. Beberapa Contoh dari Serangan SQL Injection

SQL

Meskipun efek dari SQL Injection bervariasi berdasarkan aplikasi yang ditargetkan, terdapat beberapa tipe umum dari SQL Injection:

  • Pencurian Informasi

Serangan ini memungkinkan menyerang untuk mendapatkan, baik secara langsung maupun tidak langsung informasi-informasi sensitif di dalam database.

  • Otentikasi Bypass

Serangan ini memungkinkan penyerang untuk masuk ke dalam aplikasi dengan hak akses administratif, tanpa menggunakan username dan password yang valid.

  • Compromised Ketersediaan Data

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

  • Compromised Integritas Data

Serangan ini melibatkan perubahan isi database, seorang penyerang bisa menggunakan serangan ini untuk deface halaman web atau memasukkan konten berbahaya ke dalam halaman web.


5. Tips Ampuh Mencegah SQL Injection

SQL

Ada beberapa cara yang dilakukan untuk menangkal SQL Injection. Berikut adalah cara-caranya:

  • Query SQL

Untuk melindungi QUERY SQL terkait adanya serangan SQL Injection, kita dapat menggunakan teknik sanitasi yaitu mengosongkan seluruh inputan yang diterima dari request object ASP.

Teknik sanitasi ini sangat berguna untuk penggunaan RDBMS (Relational Database Management System).

  • Pesan Error

Cara kedua adalah pesan error. Dengan cara mematikan atau merubah dan mengganti pesan error maka dapat mencegah attacker untuk menelusuri jalur database.

  • Panjang Input Box

Panjang input box yang dibatasi akan membuat hacker pemula menjadi bingung terhadap penggunaan code inject yang tidak berfungsi di input box dikarenakan code yang panjang. 

  • Pisahkan Database Username dengan Password

Cara terakhir untuk mengatasi serangan SQL Injection pada aplikasi adalah memisahkan antara database username dan password.

Dengan memisahkan kedua data ini maka pelaku penyerangan membutuhkan usaha dan percobaan lebih keras karena harus memahami struktur database aplikasi.

Hal ini juga berguna untuk mengantisipasi apabila ada 1 database yang terekspose maka database-database lainnya dapat terlindungi.


Baca juga : Fakta Seputar SQL Injection & Cara Atasinya 


Kejahatan bisa terjadi dimana saja, bahkan di dunia digital sekalipun. Segala sesuatu yang berhubungan dengan data, apalagi data yang bersifat personal memang sudah selayaknya untuk dilindungi.


Serangan SQL Injection bukanlah satu-satunya kejahatan yang akan kita temui, karena ada banyak sekali kejahatan siber yang mengancam website atau aplikasi yang kita miliki. Sehingga kita harus terus waspada dan terus meningkatkan keamanan website.


Namun sebelum masuk ke tingkat advance tersebut, ada baiknya hal-hal yang bersifat fundamental dari SQL loh. Eits, kamu gak perlu bingung harus belajar SQL dimana karena DQLab juga menyediakan modul SQL yang sangat cocok bagi pemula karena membahas hal-hal yang bersifat fundamental.


Agar bisa mengaksesnya, kamu cukup berlangganan untuk menjadi member premium di DQLab.id dan akses berbagai modul dan ebook dengan materi yang beragam sesuai kebutuhan.


Yuk, tunggu apa lagi? Sekarang giliranmu!


Penulis: Salsabila MR

Editor: Annisa Widya Davita

Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login