DICARI! Yang Mau Belajar Data Science Disc. 96%
Belajar Data 6 BULAN Bersertifikat hanya Rp120K!

0 Hari 0 Jam 37 Menit 49 Detik

Yuk, Ketahui Serba Serbi SQL Injection

Belajar Data Science di Rumah 02-Mei-2023
https://dqlab.id/files/dqlab/cache/ee5ef4a07f7b17312eaa8dcd325c6c7a_x_Thumbnail800.jpeg

Serangan injeksi SQL adalah salah satu kerentanan aplikasi web tertua – telah dibahas sejak akhir 1990-an – tetapi masih tetap relevan hingga saat ini. Hal ini dibuktikan berdasarkan situs OWASP 2021, yang menyatakan bahwa SQL injection berada di urutan ketiga dengan resiko serangan paling besar. Dimana 94% dari aplikasi diuji untuk beberapa bentuk ijeksi dengan tingkat kejadian maks 19%, tingkat kejadian rata-rata 3,37% dan 33 CWEs yang dipetakan ke dalam kategori ini memiliki kejadian terbanyak kedua dalam aplikasi dengan 274.000 kejadian.


Penjelasan ini menguraikan apa itu, bagaimana cara kerjanya, dan bagaimana Anda dapat mencegahnya. Injeksi SQL, yang terkadang disingkat menjadi SQLi, adalah jenis kerentanan di mana penyerang menggunakan kode SQL (bahasa permintaan terstruktur) untuk memanipulasi database dan mendapatkan akses ke informasi yang berpotensi berharga. Ini adalah salah satu jenis serangan yang paling umum dan mengancam karena berpotensi digunakan terhadap aplikasi web atau situs web apa pun yang menggunakan basis data berbasis SQL (yang sebagian besar darinya). Untuk lebih jelasnya, Yuk, simak artikel dibawah ini sampai selesai!


1. Bagaimana Cara Kerja Serangan SQL Injection?

Sebelum memahai tentang SQL injection, penting untuk mengetahui apa itu structured query language (SQL). SQL adalah bahasa kueri yang digunakan dalam pemrograman untuk mengakses, memodifikasi, dan menghapus data yang disimpan dalam basis data relasional. Karena sebagian besar situs web dan aplikasi web mengandalkan database SQL, serangan injeksi SQL dapat menimbulkan konsekuensi serius bagi organisasi.


Masalah potensial muncul karena sebagian besar formulir web tidak memiliki cara untuk menghentikan informasi tambahan agar tidak dimasukkan ke dalam formulir. Penyerang dapat mengeksploitasi kelemahan ini dan menggunakan kotak masukan pada formulir untuk mengirimkan permintaan mereka sendiri ke database. Ini berpotensi memungkinkan mereka melakukan berbagai aktivitas jahat, mulai dari mencuri data sensitif hingga memanipulasi informasi dalam database untuk tujuan mereka sendiri.


Karena prevalensi situs web dan server yang menggunakan database, kerentanan injeksi SQL adalah salah satu jenis serangan dunia maya tertua dan paling luas. Beberapa perkembangan dalam komunitas peretas telah meningkatkan risiko jenis serangan ini, terutama munculnya alat untuk mendeteksi dan mengeksploitasi injeksi SQL. Tersedia secara gratis dari pengembang sumber terbuka, alat ini memungkinkan penjahat dunia maya untuk secara otomatis melakukan serangan hanya dalam beberapa menit dengan memungkinkan mereka mengakses tabel atau kolom apa pun di database hanya dengan proses klik dan serangan.


Baca juga : Saatnya Belajar SQL, Kenali Rekomendasi Query SQL Bagi Pemula


2. Jenis-jenis SQL Injection

Bergantung pada bagaimana mereka mendapatkan akses ke data back-end dan sejauh mana potensi kerusakan yang ditimbulkannya, injeksi SQL terbagi dalam tiga kategori:

  • In-band SQLi

Jenis serangan SQLi ini sangat mudah bagi penyerang karena mereka menggunakan saluran komunikasi yang sama untuk meluncurkan serangan dan mengumpulkan hasil. Jenis serangan SQLi ini memiliki dua sub-variasi:

  • Error-based SQLi

  • Union-based SQLi

  • Inferential SQLi

Jenis SQLi ini melibatkan penyerang yang menggunakan respons dan pola perilaku server setelah mengirimkan muatan data untuk mempelajari lebih lanjut tentang strukturnya. Data tidak ditransfer dari database situs web ke penyerang, sehingga penyerang tidak melihat informasi tentang in-band serangan (oleh karena itu disebut 'blind SQLi). SQLi inferensial dapat diklasifikasikan menjadi dua sub-tipe:

  • Time-based SQLi

  • Boolean SQLi

  • Out-of-band SQLi

Jenis serangan SQL ini terjadi dalam dua skenario:

  • Ketika penyerang tidak dapat menggunakan saluran yang sama untuk meluncurkan serangan serta mengumpulkan informasi; atau,

  • Ketika server terlalu lambat atau tidak stabil untuk melakukan tindakan ini


3. Dampak Serangan SQL Injection

Serangan injeksi SQL yang berhasil dapat menimbulkan konsekuensi serius bagi bisnis. Ini karena serangan injeksi SQL dapat:

  • Mengekspos data sensitif

  • Kompromi integritas data

  • Kompromi privasi pengguna

  • Berikan penyerang akses umum ke sistem Anda

Biaya serangan injeksi SQL bukan hanya finansial: itu juga dapat melibatkan hilangnya kepercayaan pelanggan dan kerusakan reputasi, jika informasi pribadi seperti nama, alamat, nomor telepon, dan detail kartu kredit dicuri. Setelah kepercayaan pelanggan rusak, akan sangat sulit untuk diperbaiki.


Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data


4. Bagaimana Cara Mencegah SQL Injection

Untuk bisnis yang peduli dengan pencegahan injeksi SQL, prinsip utama untuk membantu mempertahankan situs web dan aplikasi web meliputi:

  • Pelatihan Staff:

Bangkitkan kesadaran tentang risiko berbasis SQLi dalam tim yang bertanggung jawab atas aplikasi web Anda dan berikan pelatihan berbasis peran yang diperlukan untuk semua pengguna.

  • Tetap periksa input pengguna:

Setiap masukan pengguna yang digunakan dalam kueri SQL menimbulkan risiko. Alamat input dari pengguna yang diautentikasi dan/atau internal dengan cara yang sama seperti input publik hingga diverifikasi. Berikan akun yang terhubung ke database SQL hanya hak minimum yang diperlukan. Gunakan daftar putih sebagai praktik standar, bukan daftar hitam untuk memverifikasi dan memfilter input pengguna.

  • Gunakan versi terbaru:

Penting untuk menggunakan versi terbaru dari lingkungan pengembangan untuk memaksimalkan perlindungan, karena versi lama mungkin tidak memiliki fitur keamanan saat ini. Pastikan untuk menginstal perangkat lunak dan tambalan keamanan terbaru bila tersedia.

  • Terus memindai aplikasi web

  • Gunakan firewall


Nikmati trilogi modul Fundamental SQL menarik  lainnya bersama DQLab. Tidak perlu khawatir, kamu tetap bisa belajar ngoding meskipun belum familiar dengan bahasa pemrograman sekalipun. Belajar SQL adalah langkah yang tepat untuk membangun pembiasaan kamu untuk ngoding dan semakin memperkaya skill data science kamu. Yuk, Sign up sekarang untuk #MulaiBelajarData di DQLab!


Mulai bangun portfolio datamu yang outstanding dengan Data Analyst Career Track bersama DQLab dan nikmati modul-modul dari dasar hingga tingkat mahir. Caranya dengan Sign Up sekarang untuk #MulaiBelajarData di DQLab:

  • Buat Akun Gratis dengan Signup di DQLab.id/signup

  • Selesaikan modulenya, dapatkan sertifikat & reward menarik dari DQLab

  • Subscribe DQLab.id untuk Akses Semua Module Premium


Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login