Gennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2

For noget tid siden skrev jeg om dette, men lidt sølle og kaotisk. Bagefter besluttede jeg at udvide listen over værktøjer i anmeldelsen, tilføje struktur til artiklen og tage kritik i betragtning (mange tak Lefty til råds) og sendte den til en konkurrence på SecLab (og udgivet link, men af ​​alle indlysende grunde så ingen hende). Konkurrencen er slut, resultaterne er offentliggjort og med god samvittighed kan jeg publicere den (artiklen) på Habré.

Gratis webapplikation Pentester-værktøjer

I denne artikel vil jeg tale om de mest populære værktøjer til penetrering (penetrationstest) af webapplikationer ved hjælp af "black box"-strategien.
For at gøre dette vil vi se på værktøjer, der vil hjælpe med denne type test. Overvej følgende produktkategorier:

  1. Netværksscannere
  2. Web script brudscannere
  3. Udnyttelse
  4. Automatisering af injektioner
  5. Debuggere (sniffere, lokale proxyer osv.)


Nogle produkter har en universel "karakter", så jeg vil klassificere dem i den kategori, hvor de har enоbedre resultat (subjektiv udtalelse).

Netværksscannere.

Hovedopgaven er at opdage tilgængelige netværkstjenester, installere deres versioner, bestemme OS osv.

NmapGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Nmap ("Netværksmapper") er et gratis og open source-værktøj til netværksanalyse og systemsikkerhedsrevision. Voldelige modstandere af konsollen kan bruge Zenmap, som er en GUI til Nmap.
Dette er ikke bare en "smart" scanner, det er et seriøst udvidelsesværktøj (en af ​​de "usædvanlige funktioner" er tilstedeværelsen af ​​et script til at kontrollere en node for tilstedeværelsen af ​​en orm "Stuxnet" (nævnte her). Typisk brugseksempel:

nmap -A -T4 localhost

-A til OS version detektion, script scanning og sporing
-T4 tidskontrolindstilling (mere er hurtigere, fra 0 til 5)
localhost - målvært
Noget hårdere?

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

Dette er et sæt muligheder fra profilen "langsom omfattende scanning" i Zenmap. Det tager ret lang tid at gennemføre, men giver i sidste ende mere detaljerede oplysninger, der kan findes ud af målsystemet. Hjælpevejledning på russisk, hvis du beslutter dig for at gå dybere, anbefaler jeg også at oversætte artiklen Begynderguide til Nmap.
Nmap har modtaget status som "Årets sikkerhedsprodukt" fra magasiner og fællesskaber som Linux Journal, Info World, LinuxQuestions.Org og Codetalker Digest.
Et interessant punkt, Nmap kan ses i filmene "The Matrix Reloaded", "Die Hard 4", "The Bourne Ultimatum", "Hottabych" og andre.

IP-ToolsGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
IP-Tools - en slags sæt af forskellige netværksværktøjer, kommer med en GUI, "dedikeret" til Windows-brugere.
Portscanner, delte ressourcer (delte printere/mapper), WhoIs/Finger/Lookup, telnet-klient og meget mere. Bare et praktisk, hurtigt, funktionelt værktøj.

Der er ingen særlig mening i at overveje andre produkter, da der er mange hjælpeprogrammer på dette område, og de har alle lignende driftsprincipper og funktionalitet. Alligevel er nmap stadig det mest brugte.

Web script brudscannere

Forsøger at finde populære sårbarheder (SQL inj, XSS, LFI/RFI osv.) eller fejl (ikke slettede midlertidige filer, mappeindeksering osv.)

Acunetix Web Vulnerability ScannerGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Acunetix Web Vulnerability Scanner — fra linket kan du se, at dette er en xss-scanner, men det er ikke helt sandt. Den gratis version, der er tilgængelig her, giver en hel del funktionalitet. Normalt oplever den person, der kører denne scanner for første gang og modtager en rapport om deres ressource for første gang, et lille chok, og du vil forstå hvorfor, når du først gør dette. Dette er et meget kraftfuldt produkt til at analysere alle slags sårbarheder på et websted og fungerer ikke kun med de sædvanlige PHP-websteder, men også på andre sprog (selvom sprogforskellen ikke er en indikator). Der er ingen særlig mening i at beskrive instruktionerne, da scanneren blot "optager" brugerens handlinger. Noget der ligner "næste, næste, næste, klar" i en typisk softwareinstallation.

NiktoGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Nikto Dette er en Open Source (GPL) webcrawler. Eliminerer rutinemæssigt manuelt arbejde. Søger på målwebstedet for ikke-slettede scripts (nogle test.php, index_.php osv.), databaseadministrationsværktøjer (/phpmyadmin/, /pma og lignende) osv., dvs. kontrollerer ressourcen for de mest almindelige fejl normalt forårsaget af menneskelige faktorer.
Plus, hvis det finder et populært script, tjekker det det for frigivne udnyttelser (som er i databasen).
Rapporterer tilgængelige "uønskede" metoder såsom PUT og TRACE
Og så videre. Det er meget praktisk, hvis du arbejder som revisor og analyserer hjemmesider hver dag.
Af minusserne vil jeg gerne bemærke den høje procentdel af falske positive. For eksempel, hvis dit websted altid giver hovedfejlen i stedet for en 404-fejl (hvornår den skulle forekomme), så vil scanneren sige, at dit websted indeholder alle scripts og alle sårbarheder fra dens database. I praksis sker det ikke så ofte, men som et faktum afhænger meget af strukturen på dit websted.
Klassisk brug:

./nikto.pl -host localhost

Hvis du har brug for at blive autoriseret på siden, kan du sætte en cookie i filen nikto.conf, variabelen STATIC-COOKIE.

WiktoGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Wikto — Nikto til Windows, men med nogle tilføjelser, såsom "fuzzy" logik ved kontrol af kode for fejl, brug af GHDB, indhentning af links og ressourcemapper, realtidsovervågning af HTTP-anmodninger/svar. Wikto er skrevet i C# og kræver .NET frameworket.

skipfishGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
skipfish - web sårbarhedsscanner fra Michal Zalewski (kendt som lcamtuf). Skrevet i C, på tværs af platforme (Win kræver Cygwin). Rekursivt (og i meget lang tid, omkring 20~40 timer, selvom sidste gang det virkede for mig var 96 timer) gennemgår den hele siden og finder alle mulige sikkerhedshuller. Det genererer også en masse trafik (adskillige GB indgående/udgående). Men alle midler er gode, især hvis du har tid og ressourcer.
Typisk brug:

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

I mappen "rapporter" vil der være en rapport i html, eksempel.

w3af Gennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
w3af — Web Application Attack and Audit Framework, open source web sårbarhedsscanner. Den har en GUI, men du kan arbejde fra konsollen. Mere præcist er det en ramme med en masse plugins.
Du kan tale om dets fordele i lang tid, det er bedre at prøve det :] Typisk arbejde med det handler om at vælge en profil, angive et mål og faktisk lancere det.

Mantra Security FrameworkGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Mantra er en drøm der gik i opfyldelse. En samling af gratis og åbne informationssikkerhedsværktøjer indbygget i en webbrowser.
Meget nyttig, når du tester webapplikationer på alle stadier.
Brugen går ud på at installere og starte browseren.

Faktisk er der mange hjælpeprogrammer i denne kategori, og det er ret svært at vælge en specifik liste fra dem. Oftest bestemmer hver pentester selv det sæt værktøjer, han har brug for.

Udnyttelse

Til automatiseret og mere bekvem udnyttelse af sårbarheder skrives udnyttelser i software og scripts, som kun skal videregives parametre for at udnytte sikkerhedshullet. Og der er produkter, der eliminerer behovet for manuelt at søge efter udnyttelser og endda anvende dem på farten. Denne kategori vil nu blive diskuteret.

Metasploit Framework Gennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Metasploit® Framework - et slags monster i vores forretning. Han kan så meget, at instruktionerne vil dække flere artikler. Vi vil se på automatisk udnyttelse (nmap + metasploit). Den nederste linje er denne: Nmap vil analysere den port, vi har brug for, installere tjenesten, og metasploit vil forsøge at anvende exploits til den baseret på tjenesteklassen (ftp, ssh, osv.). I stedet for tekstinstruktioner vil jeg indsætte en video, ret populær om emnet autopwn

Eller vi kan simpelthen automatisere driften af ​​den udnyttelse, vi har brug for. F.eks:

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

Faktisk er mulighederne for denne ramme meget omfattende, så hvis du beslutter dig for at gå dybere, gå til link

ArmitageGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Armitage — OVA af cyberpunk-genren GUI til Metasploit. Visualiserer målet, anbefaler udnyttelser og giver avancerede funktioner i rammeværket. Generelt for dem, der kan lide, at alt ser smukt og imponerende ud.
Screencast:

Holdbar Nessus®Gennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Tenable Nessus® sårbarhedsscanner - kan gøre mange ting, men en af ​​de muligheder, vi har brug for fra det, er at bestemme, hvilke tjenester der har exploits. Gratis version af produktet "kun hjemme"

Использование:

  • Downloadet (til dit system), installeret, registreret (nøglen sendes til din e-mail).
  • Startede serveren, føjede brugeren til Nessus Server Manager (knap Administrer brugere)
  • Vi går til adressen
    https://localhost:8834/

    og få flash-klienten i browseren

  • Scanninger -> Tilføj -> udfyld felterne (ved at vælge den scanningsprofil, der passer til os) og klik på Scan

Efter nogen tid vises scanningsrapporten på fanen Rapporter
For at kontrollere tjenesternes praktiske sårbarhed over for udnyttelser kan du bruge Metasploit Framework beskrevet ovenfor eller prøve at finde en udnyttelse (f.eks. på Explot-db, pakkestorm, eksplosionssøgning osv.) og brug det manuelt mod dets system
IMHO: for omfangsrig. Jeg bragte ham som en af ​​lederne i denne retning af softwareindustrien.

Automatisering af injektioner

Mange af web-app-sek-scannere søger efter injektioner, men de er stadig bare generelle scannere. Og der er hjælpeprogrammer, der specifikt beskæftiger sig med at søge efter og udnytte injektioner. Vi vil tale om dem nu.

sqlmapGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
sqlmap — open source-værktøj til at søge og udnytte SQL-injektioner. Understøtter databaseservere såsom: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Typisk brug koger ned til linjen:

python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Der er nok manualer, også på russisk. Softwaren letter i høj grad arbejdet for en pentester, når han arbejder på dette område.
Jeg tilføjer en officiel videodemonstration:

bsqlbf-v2
bsqlbf-v2 - et perl-script, en brute force for "blinde" SQL-injektioner. Det fungerer både med heltalsværdier i url og med strengværdier.
Database understøttet:

  • MS-SQL
  • MySQL
  • PostgreSQL
  • Oracle

Eksempel på anvendelse:

./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 — Sammenhæng med parametre
-blind u — parameter for injektion (som standard er den sidste taget fra adresselinjen)
-sql "vælg tabelnavn fra imformation_schema.tables grænse 1 offset 0" — vores vilkårlige anmodning til databasen
-database 1 — databaseserver: MSSQL
-type 1 — angrebstype, "blind" indsprøjtning, baseret på True and Error-svar (f.eks. syntaksfejl)

Debuggere

Disse værktøjer bruges hovedsageligt af udviklere, når de har problemer med resultaterne af at udføre deres kode. Men denne retning er også nyttig til pentesting, når vi kan erstatte de data, vi har brug for i farten, analysere, hvad der kommer som svar på vores inputparametre (for eksempel under fuzzing) osv.

Burp-suite
Burp-suite — et sæt hjælpeprogrammer, der hjælper med penetrationstest. Det er på internettet god anmeldelse på russisk fra Raz0r (dog for 2008).
Den gratis version inkluderer:

  • Burp Proxy er en lokal proxy, der giver dig mulighed for at ændre allerede genererede anmodninger fra browseren
  • Burp Spider - edderkop, søger efter eksisterende filer og mapper
  • Burp Repeater - manuel afsendelse af HTTP-anmodninger
  • Burp Sequencer - analyserer tilfældige værdier i formularer
  • Burp Decoder er en standard encoder-decoder (html, base64, hex osv.), hvoraf der er tusindvis, som hurtigt kan skrives på ethvert sprog
  • Burp Comparer - String Comparison Component

I princippet løser denne pakke næsten alle problemer relateret til dette område.

FiddlerGennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
Fiddler — Fiddler er en debugging-proxy, der logger al HTTP(S)-trafik. Giver dig mulighed for at undersøge denne trafik, indstille pausepunkter og "lege" med indgående eller udgående data.

Der er også Ildfår, monster Wireshark og andre, valget er op til brugeren.

Konklusion

Naturligvis har hver pentester sit eget arsenal og sit eget sæt værktøjer, da der simpelthen er mange af dem. Jeg forsøgte at nævne nogle af de mest bekvemme og populære. Men for at enhver kan sætte sig ind i andre værktøjer i denne retning, vil jeg give links nedenfor.

Forskellige toppe/lister over scannere og hjælpeprogrammer

Linux-distributioner, der allerede inkluderer en masse forskellige gennemtestende hjælpeprogrammer

UPD: BurpSuite dokumentation på russisk fra "Hack4Sec"-holdet (tilføjet Anton Kuzmin)

PS Vi kan ikke tie om XSpider. Deltager ikke i anmeldelsen, selvom det er shareware (fandt jeg ud af det, da jeg sendte artiklen til SecLab, faktisk på grund af dette (ikke viden og mangel på den seneste version 7.8) og har ikke inkluderet det i artiklen). Og i teorien var der planlagt en gennemgang af det (jeg har vanskelige tests forberedt til det), men jeg ved ikke, om verden vil se det.

PPS Noget materiale fra artiklen vil blive brugt til dets tilsigtede formål i en kommende rapport kl CodeFest 2012 i QA-sektionen, som vil indeholde værktøjer, der ikke er nævnt her (gratis, selvfølgelig), samt algoritmen, i hvilken rækkefølge man skal bruge hvad, hvilket resultat man kan forvente, hvilke konfigurationer man skal bruge og alle mulige hints og tricks, når arbejder (jeg tænker på rapporten næsten hver dag, jeg vil prøve at fortælle dig alt det bedste om emnet)
Der var i øvrigt en lektion om denne artikel kl Åbn InfoSec Days (tag på Habré, сайт), Kan plyndre korovanerne tage et kig Materialer.

Kilde: www.habr.com

Tilføj en kommentar