ProHoster > Blog > administration > Gennemgang af gratis værktøjer til gennemgang af webressourcer og mere v2
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:
Netværksscannere
Web script brudscannere
Udnyttelse
Automatisering af injektioner
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.
Nmap 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-Tools 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 Scanner 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.
Nikto 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.
Wikto 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.
skipfish 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 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 Framework Mantraer 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 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
Armitage 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® 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.
sqlmap 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.
Fiddler 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
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.