Mengenal SQL Injection & Cara Pencegahannya
![https://dqlab.id/files/dqlab/cache/721c94eff89631613ce3a8e3d2dfcdcf_x_Thumbnail800.jpeg](https://dqlab.id/files/dqlab/cache/721c94eff89631613ce3a8e3d2dfcdcf_x_Thumbnail800.jpeg)
SQL injection adalah model pemrograman berbahaya yang disuntikkan ke dalam kode data base untuk menghancurkan atau merusak informasi yang ada di dalam data base tersebut. SQL injection merupakan salah satu upaya peretasan dengan berbagai tujuan, salah satunya untuk menyerang database D-O-S (Denial of Service). Saat penyusup atau peretas memiliki akses ke database, mereka dapat mengubah informasi apa pun yang ada di dalamnya. Dalam kebanyakan kasus, SQL injection memungkinkan penyusup untuk mengakses database yang biasanya tidak dapat mereka akses. Kasus ini tidak hanya sekali dua kali terjadi.
SQL injection dapat masuk dalam kategori kejahatan. Pada dasarnya, SQL injection adalah tindakan ketika peretas kriminal memasukkan perintah jahat ke dalam suatu media seperti formulir web, search field, login field, atau URL dari situs web yang tidak aman untuk mendapatkan akses tidak sah ke data sensitif dan berharga. Ada beberapa cara yang bisa dilakukan untuk menghindari dan menangani SQL injection. Bagaimana caranya? Yuk kita simak bersama!
1. Bahaya SQL Injection
Lembaga Cyber crime Tactics and Techniques melaporkan bahwa semua jenis cyber crime pada bisnis naik 55% pada paruh kedua tahun 2018, sementara serangan terhadap konsumen individu hanya naik 4%. Apakah kamu pernah mendengar hacker Bjorka? Yaps! Inilah salah satu cara yang dilakukan oleh ‘Bjorka’ untuk mendapatkan data dari berbagai instansi. Parahnya, banyak ‘Bjorka-Bjorka’ lain yang mengintai para bisnis yang memiliki keamanan database yang buruk. Data-data yang didapatkan oleh hacker dapat diperjualbelikan di situs terlarang dan data tersebut dapat disalahgunakan oleh pihak yang tidak bertanggung jawab dan pastinya merugikan orang lain.
Baca juga : Saatnya Belajar SQL, Kenali Rekomendasi Query SQL Bagi Pemula
2. Cara Pertama Mencegah SQL Injection
Cara pertama yang bisa kita lakukan adalah dengan menggunakan Prepared Statements atau Stored Procedures. Statement yang telah disiapkan bisa membatasi variabel pada perintah SQL yang masuk. Dengan cara ini, para hacker tidak dapat ‘membonceng’ untuk memberikan suntikan SQL berbahaya ke statement SQL asli. Prosedur yang telah tersimpan juga membatasi hal-hal tidak diinginkan yang dapat dilakukan oleh para hacker dengan menyimpan statement SQL pada database yang dijalankan dari aplikasi web oleh users.
3. Cara Kedua Mencegah SQL Injection
Cara preventif kedua yang bisa digunakan untuk mencegah SQL injection adalah dengan menerapkan Principle of Least Privilege (PoLP). PoLP berarti setiap akun hanya memiliki akses yang cukup untuk melakukan tugasnya dan tidak lebih. Artinya setiap users diberikan batasan akses sesuai kebutuhannya sehingga tidak bisa mengakses database lain yang tidak ia butuhkan. Misalnya, akun web yang hanya memerlukan akses baca ke database tertentu tidak boleh memiliki akses untuk menulis, mengedit, atau mengubah data dengan cara apa pun.
4. Cara Ketiga Mencegah SQL Injection
Salah satu cara untuk menghindari SQL injection adalah dengan rutin melakukan update software manajemen database. Pada dasarnya tidak ada software yang bebas dari bug. Para hacker dapat memanfaatkan kerentanan software ini untuk menyusup dan ‘mengobrak abrik’ database kita. Oleh karena itu, kita harus melindungi data dengan menambal celah agar hacker tidak bisa ‘menyusup’. Salah satu caranya adalah dengan memperbarui software manajemen basis data yang kita gunakan.
Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data
Yuk asah kemampuan SQL kamu bersama DQLab! DQLab adalah platform belajar online yang berfokus pada pengenalan Data Science dan Artificial Intelligence dengan menggunakan bahasa pemrograman populer seperti R dan Python. Menariknya, DQLab adalah platform edukasi pertama yang mengintegrasi fitur ChatGPT yang memudahkan beginner untuk mengakses informasi mengenai data science secara lebih mendalam.
DQLab juga menggunakan metode HERO yaitu Hands-On, Experiential Learning & Outcome-based, yang dirancang ramah untuk pemula. Jadi sangat cocok untuk kamu yang belum mengenal data science sama sekali. Untuk bisa merasakan pengalaman belajar yang praktis dan aplikatif, yuk sign up sekarang di DQLab.id atau ikuti training corporate DQLab dengan klik tautan https://dqlab.id/b2b berikut untuk informasi lebih lengkapnya!
Penulis: Galuh Nurvinda K