


Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap
1. Prakata
Bagaimana untuk mengesan suntikan SQL?
Jawapan saya ialah: mengenai keselamatan Parti A, pengesanan suntikan SQL agak mudah dilakukan.
1) Ralat pengesanan suntikan.
2) Jangan menyuntik laporan ralat bool, kerana positif palsu agak tinggi.
3) Lakukan suntikan masa berdasarkan masa, operasi hubungan dan penyelenggaraan untuk melakukan rakaman db log perlahan, memantau tidur, pemantauan kata kunci penanda aras, anda boleh menambah nombor ID tugas imbasan ke titik perpuluhan tidur masa, sesuai untuk kedudukan. (p.s. Kaedah ini boleh menemui 99% suntikan SQL)
Oleh itu, apabila melakukan suntikan masa berasaskan masa, saya mengehadkan ralat masa dengan sangat keras. Walau bagaimanapun, @chengable sedang melakukan kerja berkaitan keselamatan pada Parti B, dan suntikan masa berdasarkan masa biasanya tidak boleh dilakukan. Difahamkan bahawa dia menapis kewujudan titik suntikan terlebih dahulu, dan kemudian mengesan sqlmapapi.py. Saya juga menggunakan sqlmap untuk ujian sebelumnya. . Walau bagaimanapun, suntikan masa sqlmap agak tepat Bagaimana jika anda tidak mahu menggunakan sqlmapapi.py? Di sini saya akan memindahkan logik suntikan berasaskan masa sqlmap.
2. Analisis ringkas suntikan berasaskan masa sqlmap
Aduan: kod sqlmap tidak piawai, hodoh dan besar. Seseorang mengesyorkan saya untuk membaca kod sumber sqlmap dan belajar banyak sekarang setelah saya memikirkannya, saya menyerah lebih awal.
Jadi, jika anda malas dan tidak mahu melihat kod sumber dan menambah --technique=T -v 3, mari kita lihat muatan pengesanan sqlmap terlebih dahulu.
Nampaknya saya malas dan mencari beberapa cara, seperti yang anda boleh lihat daripada tangkapan skrin :
Mula-mula, sqlmap menyumbat muatan suntikan tidur:
Tidur disumbat pertama(5), selepas mendapati ia telah dieksekusi tidur(0) sekali lagi, dan akhirnya disumbat ia sekali lagi tidur(5).
Kemudian buat tekaan Idea semak umum ialah tidur(5) dahulu, dan kemudian tidur(0) jika kelewatan kedua berjaya. Jika tiada kelewatan ditemui, teruskan tidur(5 Jika kelewatan berjaya sekali lagi, peringatan bahawa mungkin terdapat suntikan akan muncul:
Akhir sekali, Apa yang sangat bijak ialah untuk mengelakkan positif palsu, sqlmap menggunakan syarat penghakiman untuk menghapuskan positif palsu Daripada rajah di atas, anda boleh melihat bahawa sqlmap menguji dua kali untuk menjadikan persamaan itu benar dan menguji dua kali untuk menjadikan persamaan itu tidak benar. Mengikut kelewatan kedua untuk menentukan positif palsu berdasarkan keadaan semasa.
3. Analisis mendalam kod sumber
Kembali ke kod sumber untuk melihat: Berdasarkan beberapa kata kunci sebelumnya, mari pergi terus ke kod untuk melihat . Contohnya, *nampaknya* muncul sebelum mencari kod langkah pertama:
sqlmap/lib/controller/checks.py:
Nilainya ialah purata 30 kali ganda ditambah TIME_STDEV_COEFF*sisihan piawai (sisihan) Manakala untuk TIME_STDEV_COEFF, menetapkannya kepada 7 boleh menjadikan ketepatan penghakiman 99.999999997440%.
Akhir sekali, tentukan sama ada masa penggunaan semasa permintaan adalah lebih besar daripada lowerStdLimit Jika ia lebih besar daripada kelewatan, ia bermakna kelewatan berlaku, dan jika ia kurang daripada ia bermakna tiada kelewatan. (selain itu, apabila lowerStdLimit kurang daripada 0.5 saat, lowerStdLimit mengambil masa 0.5 saat).
Emosi memberitahu saya bahawa saya harus memilih kaedah satu, dan rasional memberitahu saya bahawa saya harus memilih kaedah dua. Saya masih memilih kaedah dua dan mengukur titik suntikan (butiran). Pengimbasan yang sangat stabil mendapati kelemahan suntikan.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Gunakan sqlmap untuk mengautomasikan suntikan ke dalam dvwa, tetapkan tahap dvwa kepada rendah, buka SQLInjection (SQLInjection(Blind) dvwa), buka penyahpepijatan pelayar, masukkan id pengguna dan serahkan, dan lihat permintaan yang dipintas. Anda boleh melihat bahawa ia adalah permintaan GET, url "http://192.168.1.222:8089/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" Kami terus memasukkannya ke dalam salmap untuk mengujinya, gunakan - u perintah -u"http ://192.168.1.22

Gambaran Keseluruhan 0x00 Baru-baru ini, saya mengalami fenomena aneh apabila menggunakan ujian suntikan sqlmap Versi sqlmap yang lebih tinggi tidak dapat mengesan suntikan, tetapi versi yang lebih rendah boleh mengesan suntikan, dan data boleh kehabisan, yang bukan penggera palsu ujian perbandingan dan melihat kod sumber sqlmap, Menjumpai dua lubang kecil. Format titik suntikan pembiakan senario 0x01: json..."whereparams":[{"name":"keyWord","value":"test"}]} Parameter boleh suntikan: perintah valuesqlmap: pythonsqlmap.py-rsqlpk.txt– flush -session-vvsqlmapv1.2.11 tidak boleh menyuntik s

Bahagian Pertama: Menggunakan Sqlmap 1.1 Pengenalan kepada sqlmap 1. Saya menyebut beberapa pernyataan asas suntikan sql, tetapi suntikan manual sangat menyusahkan Kita boleh menggunakan sqlmap, alat suntikan sql yang berkuasa, untuk mendapatkan data. # sqlmap ialah alat ujian penembusan sumber terbuka yang secara automatik boleh mengesan dan mengeksploitasi kelemahan suntikan SQL dan pelayan yang disambungkan ke pangkalan data. Ia mempunyai enjin pengesanan yang sangat berkuasa, penguji penembusan dengan pelbagai ciri, akses kepada sistem fail asas melalui cap jari pangkalan data dan pelaksanaan perintah melalui sambungan luar jalur. Tapak web rasmi: sqlmap.org(2)#Pangkalan data yang disokong: MySQL, Oracle, PostgreS

Kerana perlu untuk menjalankan ujian penembusan pada tapak web luaran, kebanyakan tapak web mempunyai kawalan kekerapan capaian Setelah kekerapan ini melebihi, IP akan diharamkan secara langsung. Terutama apabila SQLMAP sedang berjalan, ia lebih "merah makcik", dan ralat dilaporkan dan keluar sebelum SQLMAP selesai dijalankan. Jadi saya mula mengkaji mod proksi SQLMAP mempunyai dua mod proksi, satu proksi biasa (proksi HTTP) dan satu lagi proksi bawang. Saya pada asalnya ingin menulis tentang permohonan ejen biasa, tetapi Baidu melihat bahawa artikel ini cukup terperinci dan berhenti bercakap kosong. Sambungan Sqlmap - Pelaksanaan kumpulan proksi IP luaran Mari fokus pada proksi bawang Pada mulanya, apabila bawang digunakan secara langsung untuk suntikan, tiada laporan "makcik merah" Kemudian, apabila bilangan tapak web yang ditembusi meningkat.

1. Prakata Bagaimana untuk mengesan suntikan SQL? Jawapan saya ialah: Apabila Pihak A melakukan keselamatan, pengesanan suntikan SQL agak mudah dilakukan. 1) Ralat pengesanan suntikan. 2) Jangan menyuntik laporan ralat bool kerana positif palsu agak tinggi. 3) Lakukan suntikan masa berdasarkan masa, operasi hubungan dan penyelenggaraan untuk melakukan rakaman db log perlahan, memantau tidur dan pemantauan kata kunci penanda aras Anda boleh menambah nombor ID tugas pengimbasan pada titik perpuluhan masa tidur untuk memudahkan kedudukan. (p.s. Kaedah ini boleh menemui 99% suntikan SQL) Oleh itu, apabila melakukan suntikan masa berasaskan masa, saya mengehadkan ralat masa dengan sangat keras. Walau bagaimanapun, @chengable sedang melakukan kerja berkaitan keselamatan dalam Parti B, berdasarkan t

Terdapat terlalu sedikit artikel yang berkaitan tentang suntikan dns untuk sqlmap di Internet. Mereka hanya memperkenalkan secara ringkas parameter --dns-domain Artikel praktikal yang berkaitan sama ada kabur atau disebut dalam satu pukulan, yang mengelirukan (terutamanya tidak jujur. belum lagi Big boss). Kemudian saya melakukannya sekali lagi dengan merujuk kepada kaedah di Internet. Perkara yang perlu disediakan termasuk satu sqlmap, windows blind injection, dua nama domain dan pelayan rangkaian luaran. Suatu ketika saya sedang melakukan sesuatu, saya terjumpa suntikan buta masa Ia adalah mesin Windows, dan saya teringat kaedah suntikan dns. Sebelum memulakan, saya merancang untuk menggunakan perintah --sql-shell sqlmap untuk menguji muatan suntikan dns Pertama, pergi ke burpsuite.

Apabila saya menguji APP syarikat, saya mendapati bahawa kami menambahkan aksara 32-bit pada semua kandungan parameter dan akhirnya melakukan penyulitan MD5. Memandangkan proses pemprosesan APP terlebih dahulu mengesahkan sama ada tanda itu betul, jika pengesahan tandatangan gagal, ia tidak akan dapat memasuki pangkalan data sama sekali Untuk menggunakan SQLMAP untuk mengujinya, saya menulis skrip untuk data proksi paket data, lakukan penggantian yang disulitkan bagi kandungan parameternya dan 32 aksara. Nota: Skrip ini sesuai untuk sistem dalaman syarikat, kerana anda boleh mengetahui proses penyulitan atau anda boleh mendapatkan kaedah penyulitan JS bahagian hadapan. Pertama, saya menulis program menggunakan Django untuk mensimulasikan sistem syarikat Prosesnya adalah untuk mendapatkan ID POST dan token, dan menambah perkataan yang disulitkan tersuai.

sqlmap membaca dan menulis fail –fail-baca: membaca fail daripada sistem fail sistem pengurusan pangkalan data belakang –fail-tulis: mengedit fail tempatan pada sistem fail sistem pengurusan pangkalan data belakang (menulis dari tempatan) –file-dest : Laluan mutlak ke fail yang ditulis oleh sistem pengurusan pangkalan data bahagian belakang (tulis laluan sasaran Anda boleh menggunakan arahan di atas untuk membaca dan menulis fail sistem selepas suntikan SQL, tetapi prasyaratnya ialah anda perlu membaca dan menulis). kebenaran dan menjadi kebenaran dba, jika tidak, operasi baca dan tulis tidak boleh dilakukan dengan jayanya. Mengambil DVWA sebagai contoh, bina DVWA di bawah kali untuk membaca dan menulis fail. Baca fail: Semak maklumat yang berkaitan dalam PHPinfo, gunakan -file-r
