Kaua aega tagasi olen juba kirjutanud , kuid see oli veidi napp ja segane. Hiljem otsustasin laiendada tööriistade loetelu ülevaates, lisada artikli struktuuri, arvestada kriitikaga (suur tänu nõuannete eest) ja saatsin selle konkursile SekLab (ja avaldasin , kuid kõigil arusaadavatel põhjustel ei näinud keegi seda). Konkurs on lõppenud, tulemused on välja kuulutatud ja saan puhta südamega selle (artikli) avaldada Habrisse.
Tasuta veebirakenduste pentesteri tööriistad
Antud artiklis räägin kõige populaarsematest tööriistadest veebirakenduste pentestimise (sissetungi testimise) kohta «mustade kastide» strateegia järgi.
Selle jaoks vaatame utiliite, mis aitavad sellel testimisel. Uurime järgmisi tootekategooriaid:
- Võrgu skannerid
- Veebiskeemide haavatavuste skannerid
- Eksploitatsioon
- Automaatne süstimist
- Veakontrollerid (snifferid, kohalikud proksid jne)
Mõned tooted on üldiselt "universaalsed" ja seetõttu liigitaksin need kategooriasse, kus need saavutavad parima rezultati (subjektiivne arvamus).oVõrgu skannerid.
Võrguskannerid.
Peamine ülesanne on avada olemasolevad võrgu teenused, määrata nende versioonid, tuvastada operatsioonisüsteem jne.
Nmap
on tasuta avatud lähtekoodiga tööriist võrgu analüüsimiseks ja süsteemide turvadiagnoosimiseks. Konsooli vastased saavad kasutada Zenmap'i, mis on Nmap'i graafiline kasutajaliides.
See pole lihtsalt "nutikas" skanner, vaid tõsine laiendatav tööriist (näiteks eriliseks funktsiooniks on skript, mis kontrollib sõlme järgneva viiruse olemasolu"). Tüüpiline kasutusviis: nmap -A -T4 localhost
-A operatsioonisüsteemi versiooni määramiseks, skaneerimiseks skriptide abil ja jälgimiseks
-T4 aja juhtimise seade (rohkem - kiirem, vahemikus 0 kuni 5)
localhost - sihthost
Tahate midagi tugevamat?
nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost
See on valikute kogum zenmap'i “aeglane põhjalik skanneerimine” profiilist. Sooritatakse üsna pika aja jooksul, kuid annab seejärel rohkem üksikasjalikku teavet sihtsüsteemi kohta.
Vene keeles juhendmaterjal Beginner’s Guide to Nmap .
Nmap on saanud tiitli „Aasta küberturbe toode” sellistelt väljaannetest ja kogukondadest nagu Linux Journal, Info World, LinuxQuestions.Org ja Codetalker Digest.
Huvitav detail, Nmap'i võib näha filmides „Matrix: Ümber sünd”, „Die Hard 4”, „Bourne Ultimatum”, „Hotabich” ja .
IP-Tools
— mitmesuguste võrgutiliitide paketina, mis on varustatud GUI'ga ja „pühendatud” Windowsi kasutajatele.
Portide skanner, jagatud ressursside (jagatud printerid/kaustad), WhoIs/Finger/Lookup, telnet klient ja palju muud. Lihtsalt mugav, kiire, funktsionaalne tööriist.
Pole erilist mõtet arutada teisi tooteid, kuna selles valdkonnas on palju tööriistu, mis töötavad sarnaste põhimõtete ja funktsioonidega. Siiski jääb kõige rohkem kasutatavaks nmap.
Veebiskeemide haavatavuste skannerid
Püütakse leida populaarseid haavu (SQL inj, XSS, LFI/RFI jne) või vigu (kustutamata ajutised failid, kataloogide indekseerimine jne)
Acunetix Veebivulnerability Scanner
— Lingil on näha, et see on XSS-skanner, kuid see ei ole päris nii. Tasuta versioon, mis on saadaval lingil, pakub üsna laia funktsionaalsust. Inimesel, kes käivitab selle skanneri esmakordselt ja saab oma ressursilt aruande, haarab sageli väike šokk, ja te mõistate, miks, kui seda teete. See on väga võimas toode, et analüüsida erinevaid haavatavusi veebilehel ja see töötab mitte ainult meie tuttavate PHP-saitidega, vaid ka teiste keeltes (kuigi keele erinevus ei ole näitaja). Juhendamist ei ole eriti mõtet kirjeldada, kuna skanner lihtsalt „kinni püüdma“ kasutaja toiminguid. Midagi sarnast nagu „järgmine, järgmine, järgmine, valmis“ tüüpilises tarkvara installimises.
Nikto
see on avatud lähtekoodiga (GPL) veebiskanner. Vabastab rutiinsest käsitsi tööst. Otsib sihtveebisaidilt kustutamata skripte (nt test.php, index_.php jne), andmebaasi haldustööriistu (/phpmyadmin/, /pma ja sarnased) jne, seega kontrollib ressurssi kõige tavalisemate vigade suhtes, mis on tavaliselt tekkinud inimfaktori tõttu.
Lisaks, kui see leiab mõne populaarse skripti, kontrollib see seda väljatoodud eksploiteerimiste osas (mis on andmebaasis).
Teavitab saadaval olevatest „soovimatutest“ meetoditest, nagu PUT ja TRACE
Ja nii edasi. Väga mugav, kui töötad audiitorina ja analüüsid veebisaite iga päev.
Miinuste seas tahaksin märkida kõrget valehäirete protsenti. Näiteks, kui teie sait annab pidevalt peamise lehe asemele 404 vea (kui see peaks tekkima), ütleb skanner, et teie saidil on kõik skriptid ja kõik haavatavused tema andmebaasist. Praktiliselt ei esine seda sageli, kuid tõsi on see, et palju sõltub teie saidi struktuurist.
Klassikaline kasutus:
./nikto.pl -host localhost
Kui tuleb olla saidil autentitud, saate seadistada küpsised failis nikto.conf, muutujas STATIC-COOKIE.
Wikto
— Nikto Windowsile, kuid mõningate täiendustega, nagu „umbes“ loogika koodi vigade kontrollimisel, GHDB kasutamine, ressursside linkide ja kaustade saamine, reaalajas HTTP päringute/vastuste jälgimine. Wikto on kirjutatud C#-s ja nõuab .NET frameworki.
skipfish
— veebirünnakute skanner (tuntud kui lcamtuf). Kirjutatud C keeles, on platvormidevaheline (Windowsi jaoks vajalik Cygwin). Rekursiivselt (ja väga pikalt, umbes 20–40 tundi, kuigi viimane kord töötas see mul 96 tundi) läbib ta kogu veebilehe ja leiab üles kõikvõimalikud turvaaukud. Sellel genereeritakse ka väga palju liiklust (mitu gigabaiti sissetulevat/väljumist). Kuid kõik meetodid on head, eriti kui on aega ja ressursse.
Tüüpiline kasutus:
./skipfish -o /home/reports www.example.com
Kaustas «reports» on HTML aruanne, .
w3af 
— Veebirakenduse rünnaku ja auditi raamistik, avatud lähtekoodiga veebivulnerability skanner. On olemas GUI, kuid saab töötada ka konsoolist. Täpsemalt öeldes on see raamistik, kus on .
Selle eeliste üle võiks kaua rääkida, parem on seda ise proovida :]
Tüüpiline töö selle kasutamisega seisneb profiili valimises, eesmärgi määramises ja tegelikult käivitamises.
Mantra Security Framework
on unistus, mis sai teoks. Tasuta ja avatud lähtekoodiga tööriistade kogum, mis on integreeritud veebibrauserisse.
On väga kasulikud veebirakenduste testimisel kõikides etappides.
Kasutamine seisneb brauseri paigaldamises ja käivitamises.
Tegelikult on selles kategoorias väga palju utiliite ja on üsna keeruline koostada konkreetset nimekirja. Enamik pentseste määrab ise, millised tööriistad on neile vajalikud.
Eksploitatsioon
Tarkvara ja skriptide haavatavuste automatiseeritud ja mugavamaks kasutamiseks kirjutatakse eksploite, mis vajavad ainult parameetrite edastamist, et kasutada turvaprobleemi. On ka tooteid, mis vabastavad käsitsi eksploitide otsimisest ning rakendavad neid "otsetoimimise" režiimis. Täna on juttu just sellest kategooriast.
Metasploit Framework 
— tõeline monster meie valdkonnas. Tal on nii palju oskusi, et instruktsioon tuleb mitmest artiklist. Me vaatame automaatset eksploiteerimist (nmap + metasploit). Idee on selline, et Nmap analüüsib meie vajalikku porti, tuvastab teenuse ning Metasploit proovib rakendada sellele eksploite, lähtudes teenuse klassist (ftp, ssh jne). Tekstilise juhendi asemel teen video, mis on üsna populaarne teema autopwn kohta.

Aga võime ka lihtsalt automatiseerida vajaliku eksploidi töö. Näiteks:
msf > kasuta abi/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > seada RHOST [TARGET IP]
msf auxiliary(vpn_3000_ftp_bypass) > käivita
Tegelikult on selle raamistikuga seotud võimalused väga ulatuslikud, seega kui otsustasite süvitsi minna, klikake
Armitage
— OVA žanriga kübervedu GUI Metasploitile. Visualiseerib sihtmärgi, soovitab ekspluateerimisi ja pakub selle raamistikuga arenenud võimalusi. Ühesõnaga, need, kes armastavad, et kõik näeks ilus ja muljetavaldav välja.
Screencast:

Tenable Nessus®
— oskab väga palju, kuid me vajame temalt üht võimalust - määrata, milliste teenuste jaoks on ekspluateerimised. Tasuta versioon toote "kodune ainult"
Kasutamine:
- Laadige alla (oma süsteemi jaoks), installige, registreerige (võti saadetakse e-posti teel).
- Käivitasime serveri, lisasime kasutaja Nessus Server Managerisse (nupp Manage users)
- Sisenege aadressil
https://localhost:8834/
ja saame brauseris flash-klient.
- Skannid -> Lisa -> täidame väljad (valides sobiva skannimise profiili) ja vajutame Skanni
Mõne aja pärast ilmub skannimise raport vahekaardile Reports
Teenuste praktilise haavatavuse kontrollimiseks ekspluateerimiste vastu saab kasutada eespool kirjeldatud Metasploit Frameworki või proovida leida ekspluateerimist (näiteks , , jne.) ja kasutada seda käsitsi vastu oma süsteemi
IMHO: liiga mahukas. Too see esimesena välja selle valdkonna tarkvara tööstuses.
Süstemaatika süstide automatiseerimine
Paljud web app sec skannerid teostavad süstide otsingut, kuid need on lihtsalt üldised skannerid. Samuti on tööriistu, mis tegelevad just süstide otsimise ja ära kasutamisega. Nendest käibki jutt.
sqlmap
— avatud lähtekoodiga tööriist SQL süstide otsimiseks ja ära kasutamiseks. Toetab andmebaasi servereid nagu: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Tüüpiline kasutamine piirdub järgnevaga:
python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
On piisavalt käsiraamatuid, sealhulgas vene keeles. Tarkvara lihtsustab oluliselt pentesterite tööd sellel alal.
Lisaks toon ametliku videodemonstratsiooni:

bsqlbf-v2
— perl skript, 'pimedate' SQL süstide brutaalne jõudmine. Töötab nii integer väärtuste kui ka stringidega url-s.
Toetab andmebaase:
- MS-SQL
- MySQL
- PostgreSQL
- Oracle
Kasutamise näide:
./bsqlbf-v2-3.pl -url www.somehost.com/blah.php?u=5 -blind u -sql "select table_name from imformation_schema.tables limit 1 offset 0" -database 1 -type 1
-url — Link parameetritega
-blind u — süstimise parameeter (vaikimisi võetakse viimane aadressirida)
-sql «select table_name from information_schema.tables limit 1 offset 0» — meie kohandatud päring andmebaasi
-andmebaas 1 — andmebaasi server: MSSQL
-tüüp 1 — rünnaku tüüp, „pime” süstimine, mis põhineb True ja Error (näiteks süntaktilised vead) vastustel
Debuggereid
Need tööriistad on peamiselt suunatud arendajatele, kui tekivad probleemid nende koodi täitmise tulemustega. Kuid see suund on kasulik ka penetratsioonitestimisel, kus saab asendada vajalikke andmeid „lennult”, analüüsida, mis tuleb vastuseks meie sisendparameetritele (nt fuzzing'i puhul) jne.
Burp Suite
— tööriistade komplekt, mis aitab sissetungi testimisel. Internetis on olemas vene keeles Raz0r'ilt (tõsi, 2008. aastast).
Tasuta versioon sisaldab:
- Burp Proxy — kohaliku vaheproksina, võimaldab muuta juba vormitud päringuid brauserist
- Burp Spider — ämblik, otsib olemasolevaid faile ja kauste
- Burp Repeater — käsitsi HTTP-päringute saatmine
- Burp Sequencer — juhuslike väärtuste analüüs vormides
- Burp Decoder — tavaline kodeerija-dekodeerija (html, base64, hex jne), mille kümmeke on, mida saab kiiresti mõnes keeles kirjutada
- Burp Comparer — ridade võrdlemise komponent
Tegelikult lahendab see pakett praktiliselt kõik probleemid, mis on seotud selle valdkonnaga.
Fiddler
— Fiddler on silumisproksi, mis logib kogu HTTP(S) trafiga. See võimaldab uurida seda trafficit, seadistada katkestuspunktide ja 'katsetada' sissetulevate või väljuvate andmetega.
On ka , monster ja teised, valik jääb kasutajale.
Kokkuvõte
Loomulikult on igal testijal oma arsenali ja tööriistade kogum, kuna neid on lihtsalt palju. Püüdsin esitada mõned kõige kasutajasõbralikumad ja populaarsemad. Kuid et igaühel oleks võimalus tutvuda ka teiste selle valdkonna tööriistadega, toon allpool välja lingid.
Erinevad topid/nimekirjad skaneerijatest ja tööriistadest
- .
Linuxi distributsioonid, mis sisaldavad juba palju erinevaid tööriistu pentestimiseks
upd: vene keeles 'Hack4Sec' meeskonnalt (lisatud )
P.S. XSpider'ist ei tohi tähelepanuta jätta. See ei osale ülevaates, kuigi on tinglikult tasuta (sain teada, kui saatsin artikli SekLabi, just selle pärast (mitte teadmise, ja mitte ka viimase versiooni 7.8 puudumise tõttu) ning ei lisanud seda artiklisse). Ja teoreetiliselt oli plaanis selle ülevaade (olen selle jaoks ette valmistanud keerulised testid), kuid ma ei tea, kas maailm seda näeb.
P.P.S. Mõned artiklis olevad materjalid kasutatakse otstarbekohaselt tulevases ettekandes 2012 QA sektsioonis, kus käsitletakse siin mainimata tööriistu (loomulikult tasuta), ning räägitakse algoritmist, millist järjekorda kasutada, milliseid tulemusi oodata, milliseid konfiguratsioone kasutada ja igasuguseid nippe ning trikke töös (mõtlen ettekande läbiviimisele peaaegu iga päev, püüan jagada oma parimat teavet teemaga seoses).
Muide, selle artikli põhjal toimus seminar Open InfoSec Days (, ), võib karavane rünnata vaadata .
Allikas: habr.com
