Oersjoch fan fergese ark foar pentesting fan webboarnen en mear v2

In skoft lyn skreau ik oer dit, mar in bytsje meager en chaotysk. Neitiid besleat ik de list mei ark yn 'e resinsje út te wreidzjen, struktuer oan it artikel ta te foegjen en krityk yn rekken te hâlden (in protte tank Lefty foar advys) en stjoerde it nei in kompetysje op SecLab (en publisearre link, mar om alle dúdlike redenen seach gjinien har). De konkurrinsje is ôfrûn, de resultaten binne bekend makke en mei in skjin gewisse kin ik it (it artikel) op Habré publisearje.

Fergees webapplikaasje Pentester-ark

Yn dit artikel sil ik prate oer de populêrste ark foar pentesting (penetraasjetests) fan webapplikaasjes mei de strategy "swarte doaze".
Om dit te dwaan, sille wy sjen nei nutsbedriuwen dy't sille helpe mei dit soarte fan testen. Tink oan de folgjende produktkategoryen:

  1. Netwurk scanners
  2. Web script breach scanners
  3. Eksploitaasje
  4. Automatisearring fan ynjeksjes
  5. Debuggers (sniffers, lokale proxy's, ensfh.)


Guon produkten hawwe in universele "karakter", dus ik sil klassifisearje se yn 'e kategory dêr't se hawwe inоbetter resultaat (subjektive miening).

Netwurk scanners.

De wichtichste taak is om beskikbere netwurktsjinsten te ûntdekken, har ferzjes te ynstallearjen, it OS te bepalen, ensfh.

NmapOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Nmap ("Netwurk Mapper") is in fergese en iepen boarne hulpprogramma foar netwurkanalyse en kontrôle fan systeemfeiligens. Gewelddadige tsjinstanners fan 'e konsole kinne Zenmap brûke, dat is in GUI foar Nmap.
Dit is net allinich in "tûke" scanner, it is in serieus útbreidber ark (ien fan 'e "ûngewoane funksjes" is de oanwêzigens fan in skript foar it kontrolearjen fan in knooppunt op 'e oanwêzigens fan in wjirm "Stuxnet" (fermeld hjir). Typysk gebrûk foarbyld:

nmap -A -T4 localhost

-A foar opspoaren fan OS-ferzjes, skriptscannen en tracing
-T4-tiidkontrôle-ynstelling (mear is rapper, fan 0 nei 5)
localhost - doelhost
Wat hurder?

nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost

Dit is in set fan opsjes fan it profyl "stadige wiidweidige scan" yn Zenmap. It duorret nochal lang om te foltôgjen, mar úteinlik jout mear detaillearre ynformaasje dy't kin fûn wurde oer it doel systeem. Helpgids yn it Russysk, As jo ​​beslute om djipper te gean, ried ik ek oan om it artikel oer te setten Begjinnersgids foar Nmap.
Nmap hat de status "Feiligensprodukt fan it jier" krigen fan tydskriften en mienskippen lykas Linux Journal, Info World, LinuxQuestions.Org en Codetalker Digest.
In nijsgjirrich punt, Nmap is te sjen yn 'e films "The Matrix Reloaded", "Die Hard 4", "The Bourne Ultimatum", "Hottabych" en oaren.

IP-arkOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
IP-ark - in soarte fan set fan ferskate netwurkhulpprogramma's, komt mei in GUI, "wijd" oan Windows-brûkers.
Poarte scanner, dielde boarnen (dielde printers / mappen), WhoIs / Finger / Lookup, telnet client en folle mear. Gewoan in handich, fluch, funksjoneel ark.

D'r is gjin spesjaal punt om oare produkten te beskôgjen, om't d'r in protte nutsbedriuwen binne op dit gebiet en se hawwe allegear ferlykbere bestjoeringsprinsipes en funksjonaliteit. Dochs bliuwt nmap de meast brûkte.

Web script breach scanners

Besykje populêre kwetsberens te finen (SQL inj, XSS, LFI / RFI, ensfh.) As flaters (net wiske tydlike bestannen, mapyndeksearring, ensfh.)

Acunetix Web Vulnerability ScannerOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Acunetix Web Vulnerability Scanner - fan 'e keppeling kinne jo sjen dat dit in xss-scanner is, mar dit is net hielendal wier. De fergese ferzje, beskikber hjir, biedt nochal in soad funksjonaliteit. Meastal, de persoan dy't rint dizze scanner foar de earste kear en ûntfangt in rapport oer harren boarne foar de earste kear, belibbet in lichte skok, en jo sille begripe wêrom as jo dogge dit. Dit is in heul krêftich produkt foar it analysearjen fan alle soarten kwetsberens op in webside en wurket net allinich mei de gewoane PHP-websides, mar ek yn oare talen (hoewol't it ferskil yn taal gjin yndikator is). D'r is gjin spesjaal punt yn it beskriuwen fan de ynstruksjes, om't de scanner gewoan de aksjes fan 'e brûker "oppakt". Iets fergelykber mei "folgjende, folgjende, folgjende, klear" yn in typyske softwareynstallaasje.

NiktoOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Nikto Dit is in Open Source (GPL) webcrawler. Elimineert routine hânwurk. Sykjet de doelside foar net wiske skripts (guon test.php, index_.php, ensfh.), ark foar databaseadministraasje (/phpmyadmin/, /pma en sa), ensfh., dat is, kontrolearret de boarne foar de meast foarkommende flaters meastal feroarsake troch minsklike faktoaren.
Plus, as it wat populêr skript fynt, kontrolearret it it op frijlitten eksploaten (dy't yn 'e database binne).
Rapporten beskikber "net winske" metoaden lykas PUT en TRACE
Ensafuorthinne. It is heul handich as jo as auditor wurkje en elke dei websiden analysearje.
Fan 'e minussen wol ik it hege persintaazje falske positiven opmerke. As jo ​​side bygelyks altyd de haadflater jout ynstee fan in 404-flater (as it moat barre), dan sil de scanner sizze dat jo side alle skripts en alle kwetsberens út syn database befettet. Yn 'e praktyk bart dit net sa faak, mar as feit hinget in protte ôf fan' e struktuer fan jo side.
Klassike gebrûk:

./nikto.pl -host localhost

As jo ​​autorisearre wurde moatte op 'e side, kinne jo in koekje ynstelle yn it nikto.conf-bestân, de STATIC-COOKIE-fariabele.

WiktoOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Wikto - Nikto foar Windows, mar mei wat tafoegings, lykas "fuzzy" logika by it kontrolearjen fan koade foar flaters, it brûken fan GHDB, it krijen fan keppelings en boarnemappen, real-time monitoring fan HTTP-oanfragen / antwurden. Wikto is skreaun yn C# en fereasket it .NET-framework.

skipfishOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
skipfish - web kwetsberens scanner fan Michal Zalewski (bekend as lcamtuf). Skreaun yn C, cross-platform (Win fereasket Cygwin). Rekursyf (en foar in heul lange tiid, sawat 20 ~ 40 oeren, hoewol de lêste kear dat it foar my wurke wie 96 oeren) krûpt it de heule side en fynt allerhanne feiligensgaten. It genereart ek in soad ferkear (ferskate GB ynkommende / útgeande). Mar alle middels binne goed, benammen as jo tiid en middels hawwe.
Typysk gebrûk:

./skipfish -o /home/reports www.example.com

Yn 'e map "ferslaggen" sil in rapport yn html wêze, foarbyld.

w3af Oersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
w3af - Oanfal en kontrôle fan webapplikaasjekader, scanner foar iepen boarne web kwetsberens. It hat in GUI, mar jo kinne wurkje fanút de konsole. Mear krekter, it is in ramt mei in stel plugins.
Jo kinne lang oer har foardielen prate, it is better om it te besykjen :] Typysk wurk mei it komt del op it kiezen fan in profyl, it opjaan fan in doel en, yn feite, it lansearjen.

Mantra Security FrameworkOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Mantra is in dream dy't útkommen is. In samling fergese en iepen ark foar ynformaasjefeiligens ynboud yn in webbrowser.
Hiel nuttich by it testen fan webapplikaasjes yn alle stadia.
Gebrûk komt del op it ynstallearjen en starten fan de browser.

Yn feite binne d'r in protte nutsbedriuwen yn dizze kategory en it is frij lestich om in spesifike list fan har te selektearjen. Meastentiids bepaalt elke pentester sels de set fan ark dat hy nedich is.

Eksploitaasje

Foar automatisearre en handiger eksploitaasje fan kwetsberens wurde eksploaten skreaun yn software en skripts, dy't allinich parameters moatte wurde trochjûn om it befeiligingsgat te eksploitearjen. En d'r binne produkten dy't de needsaak eliminearje om manuell te sykjen nei eksploaten, en se sels op 'e flecht tapasse. Dizze kategory sil no besprutsen wurde.

Metasploit Kader Oersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
It Metasploit® Framework - in soarte fan meunster yn ús bedriuw. Hy kin safolle dwaan dat de ynstruksjes ferskate artikels sille dekke. Wy sille sjen nei automatyske eksploitaasje (nmap + metasploit). De ûnderste rigel is dit: Nmap sil de poarte analysearje dy't wy nedich binne, de tsjinst ynstallearje, en metasploit sil besykje eksploaten oan te passen op basis fan 'e tsjinstklasse (ftp, ssh, ensfh.). Ynstee fan tekstynstruksjes sil ik in fideo ynfoegje, frij populêr oer it ûnderwerp autopwn

Of wy kinne de wurking fan 'e eksploitaasje dy't wy nedich binne gewoan automatisearje. Bygelyks:

msf > use auxiliary/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > set RHOST [TARGET IP] msf auxiliary(vpn_3000_ftp_bypass) > run

Yn feite binne de mooglikheden fan dit ramt heul wiidweidich, dus as jo beslute om djipper te gean, gean dan nei link

ArmitageOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Armitage - OVA fan it cyberpunk-sjenre GUI foar Metasploit. Visualisearret it doel, advisearret eksploaten en leveret avansearre funksjes fan it ramt. Yn it algemien, foar dyjingen dy't graach alles moai en yndrukwekkend sjogge.
Screencast:

Tenable Nessus®Oersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Tenable Nessus® kwetsberensscanner - kin in protte dingen dwaan, mar ien fan 'e mooglikheden dy't wy derfan nedich binne, is om te bepalen hokker tsjinsten eksploitaasjes hawwe. Fergese ferzje fan it produkt "allinich thús"

Brûken:

  • Ynladen (foar jo systeem), ynstalleare, registrearre (de kaai wurdt stjoerd nei jo e-post).
  • De tsjinner begon, de brûker tafoege oan Nessus Server Manager (knop brûkers beheare)
  • Wy geane nei it adres
    https://localhost:8834/

    en krije de flash client yn 'e browser

  • Scans -> Add -> folje de fjilden yn (troch it skennenprofyl te selektearjen dat by ús past) en klikje op Scan

Nei in skoft sil it scanrapport ferskine yn it ljepblêd Rapporten
Om de praktyske kwetsberens fan tsjinsten foar eksploaten te kontrolearjen, kinne jo it hjirboppe beskreaune Metasploit Framework brûke of besykje in eksploit te finen (bygelyks op Explot-db, pakket stoarm, explot sykje ensfh.) en brûk it mei de hân tsjin syn systeem
IMHO: te grut. Ik brocht him as ien fan de lieders yn dizze rjochting fan de software yndustry.

Automatisearring fan ynjeksjes

In protte fan 'e web-app sec-scanners sykje nei ynjeksjes, mar se binne noch gewoan algemiene scanners. En d'r binne nutsbedriuwen dy't spesifyk dwaande binne mei it sykjen nei en eksploitearjen fan ynjeksjes. Wy sille no oer har prate.

sqlmapOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
sqlmap - iepen boarne hulpprogramma foar sykjen en eksploitearjen fan SQL-ynjeksjes. Unterstützt databaseservers lykas: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Typysk gebrûk komt del nei de line:

python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Der binne genôch hânboeken, ynklusyf yn it Russysk. De software makket it wurk fan in pentester sterk makliker by it wurkjen op dit gebiet.
Ik sil in offisjele fideodemonstraasje tafoegje:

bsqlbf-v2
bsqlbf-v2 - in perl-skript, in brute krêft foar "blinde" Sql-ynjeksjes. It wurket sawol mei heule getalwearden yn url as mei stringwearden.
Databank stipe:

  • MS-SQL
  • MySQL
  • PostgreSQL
  • Oracle

Foarbyld fan gebrûk:

./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 www.somehost.com/blah.php?u=5 - Keppeling mei parameters
- blyn u - parameter foar ynjeksje (standert wurdt de lêste fan 'e adresbalke nommen)
-sql "selektearje tabelnamme út imformation_schema.tables limyt 1 offset 0" - ús willekeurige fersyk oan de databank
-databank 1 - databanktsjinner: MSSQL
-type 1 - type oanfal, "bline" ynjeksje, basearre op wiere en flater (bygelyks syntaksisflaters) antwurden

Debuggers

Dizze ark wurde benammen brûkt troch ûntwikkelders as se problemen hawwe mei de resultaten fan it útfieren fan har koade. Mar dizze rjochting is ek nuttich foar pentesting, as wy de gegevens kinne ferfange dy't wy nedich binne op 'e flecht, analysearje wat komt yn reaksje op ús ynfierparameters (bygelyks by fuzzing), ensfh.

Burp Suite
Burp Suite - in set nutsbedriuwen dy't helpe by penetraasjetests. It stiet op it ynternet goede resinsje yn it Russysk fan Raz0r (hoewol foar 2008).
De fergese ferzje omfettet:

  • Burp Proxy is in lokale proxy wêrmei jo al oanmakke oanfragen fan 'e browser kinne wizigje
  • Burp Spider - spin, siket nei besteande bestannen en mappen
  • Burp Repeater - HTTP-fersiken manuell ferstjoere
  • Burp Sequencer - analysearjen fan willekeurige wearden yn foarmen
  • Burp Decoder is in standert encoder-decoder (html, base64, hex, ensfh.), wêrfan d'r tûzenen binne, dy't fluch yn elke taal skreaun wurde kinne
  • Burp Comparer - String Comparison Component

Yn prinsipe lost dit pakket hast alle problemen op yn ferbân mei dit gebiet.

FiddlerOersjoch fan fergese ark foar pentesting fan webboarnen en mear v2
Fiddler - Fiddler is in debuggen-proxy dy't alle HTTP(S)-ferkear oanmelde. Hjirmei kinne jo dit ferkear ûndersykje, breakpoints ynstelle en "spielje" mei ynkommende of útgeande gegevens.

Der is ek Fjoerskiep, monster Wireshark en oaren, de kar is oan de brûker.

konklúzje

Fansels hat elke pentester syn eigen arsenal en syn eigen set fan nutsfoarsjenningen, om't d'r gewoan in protte binne. Ik besocht guon fan 'e meast handige en populêrste te listjen. Mar sadat elkenien har fertroud kin meitsje mei oare nutsbedriuwen yn dizze rjochting, sil ik hjirûnder keppelings leverje.

Ferskate tops / listen fan scanners en nutsbedriuwen

Linux-distribúsjes dy't al in boskje ferskate pentesting-hulpprogramma's omfetsje

upd: BurpSuite dokumintaasje yn it Russysk fan it team "Hack4Sec" (tafoege Anton Kusmin)

PS Wy kinne net stilhâlde oer XSpider. Docht net mei oan 'e resinsje, hoewol it shareware is (ik fûn út doe't ik it artikel nei SecLab stjoerde, eins om't dit (gjin kennis, en gebrek oan 'e lêste ferzje 7.8) en net opnommen yn it artikel). En yn teory wie der in resinsje fan pland (ik haw der drege tests foar taret), mar ik wit net oft de wrâld it sil sjen.

PPS Guon materiaal út it artikel sil brûkt wurde foar syn beëage doel yn in kommende rapport at CodeFest 2012 yn 'e QA-seksje, dy't ark sil befetsje dy't hjir net neamd binne (fergees, fansels), lykas it algoritme, yn hokker folchoarder te brûken wat, hokker resultaat te ferwachtsjen, hokker konfiguraasjes te brûken en allerhanne hints en trúks wannear wurkje (ik tink hast elke dei oan it rapport, ik sil besykje jo it bêste te fertellen oer it ûnderwerp)
Troch de wei, der wie in les op dit artikel by Iepenje InfoSec Days (tag op Habré, website), kin rob korovans sjoch ris materialen.

Boarne: www.habr.com

Add a comment