Jadual Kandungan
1. Prakata
2. Analisis ringkas suntikan berasaskan masa sqlmap
3. Analisis mendalam kod sumber
Rumah Operasi dan penyelenggaraan Keselamatan Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap

Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap

May 12, 2023 pm 12:10 PM
sqlmap time-based

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.

如何实现sqlmap time-based inject的分析

如何实现sqlmap time-based inject的分析

如何实现sqlmap time-based inject的分析

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:

如何实现sqlmap time-based inject的分析

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:

如何实现sqlmap time-based inject的分析

Apa yang saya temui di sini hampir sama dengan apa yang saya teka sebelum ini.

Cari di mana muatan itu, terutamanya muatan dengan syarat if, atau gunakan pertanyaan kata kunci, dan temuinya di sini:

sqlmap/xml/payloads/time_blind.xml:

如何实现sqlmap time-based inject的分析

Anda boleh melihat bahawa muatan setiap satu jika keadaan berada dalam medan vektor.

4. Tutup

Menutup aksara sebelum titik suntikan ialah kunci sama ada ia boleh disuntik.


Alat yang diperhatikan/sqlmap/xml/boundaries.xml, jadi kita juga perlu merujuk kepada pelbagai situasi penutupan di sini:

如何实现sqlmap time-based inject的分析

5. Tentukan sama ada ia terlewat

5.1 Kaedah 1

Merujuk kepada suntikan awvs sebelum ini, saya memikirkan kaedah pengesanan yang lebih mudah difahami. Ambil masa penggunaan 6 ujian biasa tanpa muatan yang disuntik dan hitung nilai purata sebagai masa permintaan asli (ori_time).

Apabila masa suntikan ialah tidur(5), tolak ori_time daripada masa semasa sebagai sleep_time. Jika masa_tidur kurang daripada 4, ia dianggap bahawa kelewatan tidak berlaku. (Memandangkan ori_time dipengaruhi oleh rangkaian dan menjadi lebih besar, ambang dilaraskan kepada empat saat)

Apabila masa suntikan ialah sleep(0), tolak ori_time daripada masa semasa sebagai sleep_time. Jika masa_tidur lebih daripada 2, ini bermakna terdapat penggera palsu dalam kelewatan.

5.2 Kaedah 2

Lihat kod sqlmap sekali lagi, mereka menggunakan masalah matematik yang saya tidak faham (butiran)


Tindakan susulan: Permintaan. queryPage --->wasLastResponseDelayed Anda boleh melihat bahawa logiknya ialah: ambil masa penggunaan 30 ujian biasa tanpa muatan yang disuntik dan masukkannya ke dalam kb.responseTimes. Kira sisihan piawai 30 kali sebagai sisihan dan hitung masa tindak balas yang paling perlahan berdasarkan sisihan sebagai lowerStdLimit:

如何实现sqlmap time-based inject的分析

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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Analisis sampel suntikan automatik Sqlmap Analisis sampel suntikan automatik Sqlmap May 13, 2023 pm 03:31 PM

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

Bagaimana untuk menganalisis masalah dengan sqlmap Bagaimana untuk menganalisis masalah dengan sqlmap May 27, 2023 pm 01:07 PM

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

Bagaimana untuk menganalisis pertahanan suntikan SQLMap dan SQLi Bagaimana untuk menganalisis pertahanan suntikan SQLMap dan SQLi May 11, 2023 pm 06:37 PM

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

Apakah proksi mod bawang SQLMAP? Apakah proksi mod bawang SQLMAP? May 26, 2023 am 09:56 AM

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.

Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap Bagaimana untuk melaksanakan analisis suntikan berasaskan masa sqlmap May 12, 2023 pm 12:10 PM

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

Apakah kaedah konfigurasi suntikan sqlmap _dns? Apakah kaedah konfigurasi suntikan sqlmap _dns? May 12, 2023 pm 12:25 PM

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.

Idea ​​sqlmap memproses penyulitan tanda Idea ​​sqlmap memproses penyulitan tanda May 14, 2023 am 11:52 AM

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.

Bagaimana untuk menggunakan sqlmapGetshell Bagaimana untuk menggunakan sqlmapGetshell May 13, 2023 pm 06:25 PM

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

See all articles