Rumah Keselamatan Apakah suntikan sql? - definisi dari techopedia

Apakah suntikan sql? - definisi dari techopedia

Isi kandungan:

Anonim

Definisi - Apakah maksud SQL Suntik?

Suntikan SQL adalah serangan komputer di mana kod berniat jahat tertanam dalam aplikasi yang kurang direka dan kemudian dihantar ke pangkalan data backend. Data berniat jahat kemudian menghasilkan keputusan pertanyaan pangkalan data atau tindakan yang seharusnya tidak pernah dilaksanakan.

Techopedia menerangkan Suntikan SQL

Mari kita melalui contoh serangan suntikan SQL:


Aplikasi yang menjalankan operasi bank mengandungi menu yang boleh digunakan untuk mencari butiran pelanggan menggunakan titik data seperti nombor Keselamatan Sosial pelanggan. Di latar belakang aplikasi memanggil pertanyaan SQL yang berjalan dalam pangkalan data dengan melewati nilai carian yang dimasukkan seperti berikut:


SELECT client_name, telefon, alamat, date_of_birth WHERE social_sec_no = 23425


Dalam skrip sampel ini, pengguna memasuki nilai 23425 dalam tetingkap menu aplikasi, meminta pengguna memasukkan nombor Keselamatan Sosial. Kemudian, menggunakan nilai yang disediakan oleh pengguna, pertanyaan SQL berjalan dalam pangkalan data.


Seorang pengguna dengan pengetahuan SQL mungkin memahami aplikasi tersebut dan, daripada memasuki satu nilai apabila diminta untuk nombor Keselamatan Sosial, masukkan rentetan "23425 atau 1 = 1, " yang disampaikan kepada pangkalan data seperti berikut:


SELECT client_name, telefon, alamat, date_of_birth WHERE social_sec_no = 23425 atau 1 = 1


Klausa WHERE adalah penting kerana memperkenalkan kelemahan. Dalam pangkalan data, keadaan 1 = 1 selalu benar, dan kerana pertanyaan telah ditentukan untuk mengembalikan butiran nombor Keselamatan Sosial pelanggan (23425) atau WHERE 1 = 1, pertanyaan akan mengembalikan semua baris di dalam jadual, yang bukan niat asal.


Contoh serangan suntikan SQL di atas adalah mudah, tetapi ia menunjukkan bagaimana mengeksploitasi kerentanan untuk menipu aplikasi ke dalam menjalankan pangkalan data backend query atau arahan.


Serangan suntikan SQL boleh dikurangkan dengan memastikan reka bentuk aplikasi yang betul, terutama dalam modul yang memerlukan input pengguna untuk menjalankan pertanyaan pangkalan data atau arahan. Dalam contoh di atas, permohonan itu boleh ditukar supaya ia menerima satu nilai angka sahaja.

Apakah suntikan sql? - definisi dari techopedia