Tutorial Dasar SQL Injection Part 2 - Selamat datang di bagian kedua dari dasar-dasar SQL untuk SQL Injection. Seperti di bagian terakhir kami mengambil url ini "http://situspalsu.com/report.php?id=23" sebagai contoh dan kemudian diasumsikan beberapa query dasar dengan melihat URL. Query kami adalah :
select * from table_name where id=23
select * from table_name where id='23'
select * from table_name where id="23"
select * from table_name where id=(23)
select * from table_name where id=('23')
select * from table_name where id=("23")
Anda juga dapat menemukan masukan Anda di bawah kolom atau kelompok / order dengan pernyataan tetapi hal ini tidak terlalu diperlukan, jadi kita akan membahas mereka di kemudian hari. Sekarang mari kita terus langkah berikutnya cara untuk menguji dengan input yang berbeda dan tahu yang mana dari pertanyaan di atas yang kita hadapi.
Sebelum kita mulai, kita harus tahu berbagai jenis komentar yang digunakan di SQLi.
Jadi sekarang mari kita mulai dengan fase berikutnya. Semua apa yang perlu kita lakukan adalah input injection yang berbeda dan melihat bagaimana aplikasi bekerja pada itu.
Informasi
Ingat, setiap input tertutup dengan tanda kutip tunggal. Hanya kutip tunggal dengan input akan membuat kesalahan/error. Ketika input dengan tanda petik ganda sebuah qoute ganda dengan masukan akan memberikan pesan error. Ketika input tidak tertutup dengan kutip tunggal dan kutip ganda keduanya akan memberikan pesan error.
Pertama-tama kita dapat mencoba input kami dengan beberapa injection untuk melihat apakah kita mendapatkan pesan kesalahan yang kita cari. Pesan kesalahan mungkin tidak selalu disebabkan oleh kesalahan SQL, itu mungkin ada kesalahan umum atau perubahan output dari aplikasi. Yang harus Anda lakukan adalah mengenalinya.
Berikut adalah contoh pesan kesalahan/error dari beberapa tipe SQL :
MySQL Error :
Berikut adalah contoh pesan kesalahan/error dari beberapa tipe SQL :
MySQL Error :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'' at line 1
MSSQL ASPX Error :
Server Error in '/' Application
MSAccess (Apache PHP) :
Fatal error: Uncaught exception 'com_exception' with message Source: Microsoft JET Database Engine
MSAccesss (IIS ASP) :
Microsoft JET Database Engine error '80040e14'
Oracle Error :
ORA-00933: SQL command not properly ended
ODBC Error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
PostgreSQL Error :
PSQLException: ERROR: unterminated quoted string at or near "'" Position: 1
atau
Query failed: ERROR: syntax error at or near "'" at character 56 in /www/site/test.php on line 121.
MS SQL Server: Error :
Microsoft SQL Native Client error %u201880040e14%u2019
Unclosed quotation mark after the character string
Sekarang saya akan menunjukkan tes yang berbeda untuk membuat kesalahan dan mengkonfirmasi query yang bekerja di dalam Aplikasi saat menggunakan contoh yang sama "http://situspalsu.com/report.php?id=23" url, Anda dapat melakukan tes ini dan cek reaksi aplikasi:
select * from table_name where id=23
Output yang sama harusnya muncul jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa injeksi adalah jenis intiger. Sekarang mari kita uji untuk input query tertutup kutip tunggal.
select * from table_name where id='23
Jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa Injection tersebut berupa tipe Injection Kutip Tunggal. Sekarang mari kita uji untuk input query tertutup kutip ganda.
select * from table_name where id="23"
Jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa jenis injeksi adalah kutip ganda. Sekarang mari kita uji untuk braket tertutup intiger berdasarkan input query.
select * from table_name where id=(23)
Jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa injeksi adalah jenis Intiger dengan Query braket. Sekarang mari kita uji untuk braket tertutup Tunggal berdasarkan input query.
select * from table_name where id=('23')
Jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa injection adalah braket tertutup Kutip Tunggal berdasarkan input query. Sekarang mari kita uji untuk braket tertutup ganda input query berdasarkan Quote.
select * from table_name where id=("23")
Jika aplikasi Web bereaksi sama seperti yang ditunjukkan di atas maka Anda dapat memastikan bahwa injection adalah braket tertutup ganda berdasarkan input query.
Jadi di sini kita hanya belajar untuk memeriksa permintaan bekerja dalam aplikasi, dalam tutorial berikutnya kita akan belajar dua hal bagaimana menggunakan operator komentar yang tepat dan bagaimana dan mengapa untuk menemukan jumlah kolom.
- Tuangkan saran maupun kritik dan jandan meninggalkan Spam
- Berkomentarlah dengan baik sesuai dengan konten yang tersedia
- Dilarang jual obat kuat disini