Cara Mencegah Serangan SQL Injection

 on Wednesday, January 17, 2018  


Injeksi SQL telah menjadi pilihan populer bagi hacker, digunakan dalam serangan terhadap Sony Pictures, PBS, Microsoft, Yahoo, LinkedIn, dan CIA.

SQL, atau Structured Query Language, adalah bahasa perintah dan kontrol untuk basis data relasional seperti Microsoft SQL Server, Oracle dan MySQL. Dalam pengembangan web modern, database ini sering digunakan di bagian belakang aplikasi web dan sistem pengelolaan konten - yang berarti bahwa konten dan perilaku banyak situs web dibangun di atas data dalam server basis data.

Sebuah serangan yang berhasil pada database akan memberikan berbagai kemampuan akses  sebuah situs web atau aplikasi web kepada  hacker, mulai dari memodifikasi konten situs web ("defacing"), atau untuk mengambil informasi sensitif seperti akun kredensial atau data bisnis internal.

Sebuah “kabar buruk” bagi pemilik situs web atau aplikasi web-base.

Cara Mencegah Serangan SQL Injection
Kabar baiknya adalah bahwa sebenarnya ada banyak cara yang bisa dilakukan pemilik situs web untuk mencegah injeksi SQL. Meskipun tidak ada jaminan 100 persen dalam keamanan jaringan, paling tidak hambatan berat dapat ditempatkan di jalur upaya injeksi SQL.

1. Mempekerjakan sanitasi data yang komprehensif. Situs web harus memfilter semua masukan pengguna. Idealnya, data pengguna harus disaring untuk konteks. Misalnya, alamat email harus difilter agar hanya mengizinkan karakter yang diperbolehkan dalam alamat e-mail, nomor telepon harus difilter agar hanya mengizinkan karakter yang diperbolehkan dalam nomor telepon, dan seterusnya.

2. Gunakan firewall aplikasi web. Contoh yang populer adalah modul modSecurity open source yang tersedia untuk server web Apache, Microsoft IIS, dan nginx. ModSecurity menyediakan seperangkat peraturan yang canggih dan selalu berkembang untuk menyaring permintaan web yang berpotensi berbahaya. Pertahanan injeksi SQL-nya dapat menangkap sebagian besar upaya menyelinap SQL melalui saluran web.

3. Batasi hak istimewa database menurut konteks. Buat beberapa akun pengguna basis data dengan tingkat hak istimewa minimum untuk lingkungan penggunaannya. Misalnya, kode di balik halaman login harus query database menggunakan account terbatas hanya untuk tabel kredensial yang relevan. Dengan cara ini, pelanggaran melalui saluran ini tidak dapat dimanfaatkan untuk kompromi keseluruhan database.

4. Hindari membangun query SQL dengan input pengguna. Bahkan rutinitas sanitasi data bisa saja cacat. Idealnya, dengan menggunakan variabel SQL yang mengikat dengan pernyataan siap atau prosedur yang tersimpan jauh lebih aman daripada membuat kueri penuh.

5. Hilangkan kemampuan database yang tidak perlu, terutama yang meningkatkan hak istimewa database dan perintah yang menelurkan “shell”.

6. Terapkan secara teratur patch perangkat lunak. Karena kerentanan injeksi SQL secara teratur diidentifikasi dalam perangkat lunak komersial, penting untuk selalu mengikuti perkembangan patch.

7. Tekan pesan kesalahan. Pesan ini merupakan alat pengintai penting bagi penyerang, jadi jagalah agar tetap lokal jika memungkinkan. Jika pesan eksternal diperlukan, jaga agar tetap generik.

8. Terus memantau pernyataan SQL dari aplikasi yang terhubung dengan database. Ini akan membantu mengidentifikasi pernyataan SQL jahat dan kerentanan. Alat pemantau yang memanfaatkan pembelajaran mesin dan / atau analisis perilaku dapat sangat berguna.


Salah satu dari pertahanan ini secara signifikan mengurangi kemungkinan serangan injeksi SQL yang berhasil. Menerapkan semuanya akan memberikan tingkat tinggi pencegahan injeksi SQL. Meskipun penggunaannya meluas, situs Anda tidak harus menjadi korban injeksi SQL berikutnya.
Cara Mencegah Serangan SQL Injection 4.5 5 Darto Iwan Wednesday, January 17, 2018 Artikel Indo, Digital, Cyber, Data, Hacker, Informasi, Keamanan, Kominfo, Kriptografi, Server, SQL, Injection, Security, Injeksi SQL telah menjadi pilihan populer bagi hacker, digunakan dalam serangan terhadap Sony Pictures, PBS, Microsoft, Yahoo, LinkedIn,...


2 comments:

  1. Bener-bener ilmu baru buat saya. Walau pun banyak yang belum saya paham. Tetapi, paling tidak saya pernah baca dan sedikit tahu. Terima kasih

    ReplyDelete
    Replies
    1. Sama2. Paling tidak bisa membuat kita waspada.

      Delete

Silakan berkomentar ....