Reikalavimai: Naudokite sqlmap atvirojo kodo įsiskverbimo testavimo įrankį, kad patikrintumėte svetainių sąsajas dėl injekcijos rizikos. SQL injekcija reiškia, kad žiniatinklio programa nevertina vartotojo įvesties duomenų teisėtumo arba filtravimas nėra griežtas, o užpuolikas gali pridėti papildomų SQL teiginių prie iš anksto žiniatinklio programoje apibrėžto užklausos teiginio pabaigos ir atlikti neteisėtas operacijas be administratoriaus žinios, kad apgautų duomenų bazės serverį vykdyti neteisėtas savavališkas užklausas, kad būtų galima toliau gauti atitinkamą duomenų informaciją. Trumpai tariant, tai yraBackend sąsaja vykdo SQL sakinius, sujungdama prašomus parametrus。
Peržiūra:
sqlmap yra atvirojo kodo įsiskverbimo testavimo įrankis, kuris automatizuoja SQL injekcijos pažeidžiamumų aptikimo ir išnaudojimo bei duomenų bazių serverių perėmimo procesą. Jame yra galingas aptikimo variklis, daugybė nišinių galutinio įsiskverbimo testerio funkcijų ir platus jungiklių asortimentas, įskaitant duomenų bazės pirštų atspaudus, duomenų gavimą iš duomenų bazių, prieigą prie pagrindinės failų sistemos ir komandų vykdymą operacinėje sistemoje per ne juostos ryšius.
"sqlmap" veikia iš karto ir veikia bet kurioje platformojePython 2.6, 2.7 ir 3.x versijos。
SQLMAP aplinkos kūrimas
Python atsisiuntimas:Hipersaito prisijungimas matomas.
SQLMAP atvirojo kodo adresas:Hipersaito prisijungimas matomas. SQLMAP komandų dokumentacija:Hipersaito prisijungimas matomas.
Pirmiausia kompiuteris turi įdiegti Python (praleista), o tada naudoti komandą git, kad atsisiųstumėte šaltinio kodą, kaip nurodyta toliau:
Parinktys:
-h, --help Rodyti pagrindinį pagalbos pranešimą ir išeiti -----Rodyti pagrindinį pagalbos pranešimą ir išeiti -hh Rodyti išplėstinį pagalbos pranešimą ir išeiti----- --versija, kad pamatytumėte versijos numerį----------- Rodyti programos versijos numerį ir išeiti -v IŠSAMUS detalumo lygis (0-6, numatytasis 1) --Išsamumo lygis: 0-6 (numatytasis 1)
Tikslinės:
Norint nustatyti tikslinį URL, reikia nustatyti bent vieną iš šių parinkčių, būtent: Norint ją naudoti įprastai, į SQLMap operacijos komandą turi būti įtraukta bent viena iš šių parinkčių
-d DIRECT Ryšio eilutė tiesioginiam duomenų bazės ryšiui------------------- -u URL, --url=URL Tikslinis URL --------------------- Tikslinis URL (pvz., "http://www.site.com/vuln.php?id=1") -l LOGFILE Išanalizuokite tikslą (-us) iš Burp arba WebScarab tarpinio serverio žurnalo failo ---- tikslą iš Burp ar kito tarpinio serverio žurnalo failo -x SITEMAPURL analizuoja tikslą iš nuotolinio svetainės žemėlapio (.xml) failo --Išanalizuoti tikslą (-us) iš nuotolinio svetainės žemėlapio (.xml) failo Nuskaitykite kelis taikinius, pateiktus tekstiniame faile -------- BULKFILE -r REQUESTFILE Įkelti HTTP užklausą iš failo ---------------Įkelti HTTP užklausą iš failo -g GOOGLEDORK Apdorokite "Google" dork rezultatus kaip tikslinius URL--- -c CONFIGFILE Įkelti parinktis iš konfigūracijos INI failo -------------- Įkelti parinktis iš konfigūracijos INI failo
Prašymą:
Šios parinktys nurodo, kaip prisijungti prie paskirties URL
--method=METHOD Priverstinis tam tikro HTTP metodo naudojimas (pvz., PUT------------------ --data=DATA Duomenų eilutė, siunčiama per POST naudojant POST metodą------------------ --param-del=PARA.. Nustatykite parametrų reikšmių atskyrimo simbolį--------------------Simbolis, naudojamas parametrų reikšmėms skaidyti --cookie=COOKIE nurodo HTTP slapuko reikšmę ---------------------- HTTP slapuko antraštės reikšmę --cookie-del=COO.. Simbolis, naudojamas slapukų reikšmėms skaidyti------------------ Bandydami injekcijos tašką naudodami SQLMAP, galite naudoti parametrą -v x, kad nurodytumėte aido informacijos sudėtingumą, kuris svyruoja nuo [0~6] iki 7 lygių, o numatytasis yra 1.
0: Kartu su svarbia informacija rodomos tik python klaidos. 1: Rodyti pagrindinę informaciją ir įspėjamąją informaciją. (numatytasis) 2: Rodyti derinimo informaciją tuo pačiu metu. 3: Tuo pačiu metu rodoma įpurškiama naudingoji apkrova. 4: Rodyti HTTP užklausas tuo pačiu metu. 5: Tuo pačiu metu rodykite HTTP atsakymo antraštę. 6: Tuo pačiu metu rodykite HTTP atsakymo puslapį.
ASP.NET Šerdies įpurškimo aplinkos nustatymas
Sukurkite naują žiniatinklio projektą naudodami "ASP.NET Core", parašykite sąsają su injekcija, o šaltinio kodas yra toks:
Bandymo sąsaja:
Dažniausiai naudojami įsiskverbimo testai
DBVS duomenų bazių išvardijimas
Ir naudokite SQL serverio profilį, kad užfiksuotumėte SQL vykdymą, kaip parodyta šiame paveikslėlyje:
pasirinkite * iš [Users], kur [Username] = 'itsvse' UNION ALL SELECT NULL,NULL,CHAR(113)+CHAR(98)+CHAR(122)+CHAR(118)+CHAR(113)+(SELECT name FROM master.. sysdatabases for json auto, INCLUDE_NULL_VALUES)+CHAR(113)+CHAR(113)+CHAR(118)+CHAR(120)+CHAR(113)-- yHIm'
Išvardinti nurodytos duomenų bazės lenteles
Komanda yra tokia:
Sudėtingoms HTTP užklausoms galiteper parametrą -r(HTTP užklausų įkėlimas iš failų,Naudokite "Burp Suite" įrankį paketų HTTP užklausoms užfiksuoti), kad įkeltumėte pradinę HTTP užklausą iš tekstinio failo. Tai leidžia praleisti daugelio kitų parinkčių naudojimą (pvz., slapukų nustatymus, paskelbtus duomenis ir kt.).
SQL Map yra galingas, daugiau išplėstinių funkcijų rasite dokumentacijoje. (Pabaiga)
|