att berÀtta om anvÀndbara verktyg för penetrationstestare. I den hÀr nya artikeln kommer vi att titta pÄ verktyg för att analysera sÀkerheten i webbapplikationer.
VÄr kollega har redan gjort en liknande för cirka sju Är sedan. Det Àr intressant att se vilka verktyg som har bevarat och stÀrkt sina positioner, och vilka som har hamnat i skuggan och nu anvÀnds sÀllan.

Vi bör notera att Burp Suite ocksÄ hör hit, men om det och dess anvÀndbara plugins kommer det att finnas en separat publikationen.
InnehÄll:
Amass
â ett verktyg i Go för att hitta och enumerera DNS-underdomĂ€ner och kartlĂ€gga externa nĂ€tverk. Amass Ă€r ett OWASP-projekt, utformat för att visa hur organisationer ser ut pĂ„ nĂ€tet för en extern observatör. Amass fĂ„r namn pĂ„ underdomĂ€ner pĂ„ olika sĂ€tt, med bĂ„de rekursiv enumeration av underdomĂ€ner och sökning i öppna kĂ€llor.
För att upptÀcka relaterade nÀtverkssegment och autonoma systemnummer anvÀnder Amass IP-adresser som erhÄlls under drift. All information som hittas anvÀnds för att skapa en nÀtverkskarta.
Fördelar:
- Tekniker för informationsinsamling omfattar:
* DNS â enumeration av underdomĂ€ner via ordbok, bruteforce för underdomĂ€ner, "smart" enumeration med mutationer baserade pĂ„ hittade underdomĂ€ner, omvĂ€nda DNS-förfrĂ„gningar och sökning efter DNS-servrar dĂ€r det kan göras en begĂ€ran om zonöverlĂ„telse (AXFR);* Sökning i öppna kĂ€llor â Ask, Baidu, Bing, CommonCrawl, DNSDB, DNSDumpster, DNSTable, Dogpile, Exalead, FindSubdomains, Google, IPv4Info, Netcraft, PTRArchive, Riddler, SiteDossier, ThreatCrowd, VirusTotal, Yahoo;
* Sökning i TLS-certifikatdatabaser â Censys, CertDB, CertSpotter, Crtsh, Entrust;
* AnvĂ€ndning av API:er för sökmotorer â BinaryEdge, BufferOver, CIRCL, HackerTarget, PassiveTotal, Robtex, SecurityTrails, Shodan, Twitter, Umbrella, URLScan;
* Sökning i webbarkiv frÄn Internet: ArchiveIt, ArchiveToday, Arquivo, LoCArchive, OpenUKArchive, UKGovArchive, Wayback;
- Integrering med Maltego;
- Ger den mest omfattande tÀckningen av uppgiften att söka efter DNS-underdomÀner.
Nackdelar:
- Var försiktig med amass.netdomains â det försöker kontakta varje IP-adress i den identifierade infrastrukturen och hĂ€mta domĂ€nnamn frĂ„n omvĂ€nda DNS-förfrĂ„gningar och TLS-certifikat. Det Ă€r en "högljudd" teknik, den kan avslöja dina spaningsaktiviteter inom den undersökta organisationen.
- Hög minnesanvÀndning, kan konsumera upp till 2 GB RAM i olika konfigurationer, vilket förhindrar att detta verktyg kan köras i molnet pÄ en billig VDS.

Altdns
â ett verktyg pĂ„ Python för att skapa ordböcker för att bryta DNS-underdomĂ€ner. Gör det möjligt att generera mĂ„nga variationer av underdomĂ€ner med hjĂ€lp av mutationer och permutationer. För detta anvĂ€nds ord som ofta förekommer i underdomĂ€ner (t.ex. test, dev, staging), alla mutationer och permutationer tillĂ€mpas pĂ„ redan kĂ€nda underdomĂ€ner som kan matas in i Altdns. Resultatet Ă€r en lista med variationer av underdomĂ€ner som kan existera, och denna lista kan senare anvĂ€ndas vid DNS-bruteforce.
Fördelar:
- Fungerar bra med stora datamÀngder.
aquatone
â var tidigare mer kĂ€nd som ett annat verktyg för att söka efter underdomĂ€ner, men författaren övergav detta till förmĂ„n för det ovan nĂ€mnda Amass. Nu Ă€r aquatone omskriven pĂ„ Go och mer inriktad pĂ„ förundersökningar av webbplatser. För detta genomgĂ„r aquatone angivna domĂ€ner och söker efter webbplatser pĂ„ olika portar, samlar in all information om webbplatsen och gör en skĂ€rmbild. BekvĂ€mt för snabb förundersökning av webbplatser, efter vilken man kan vĂ€lja prioriterade mĂ„l för attacker.
Fördelar:
- Genererar en grupp filer och mappar som Àr praktiska att anvÀnda vid vidare arbete med andra verktyg:
* HTML-rapport med insamlade skÀrmbilder och grupperade efter likhet av svarens rubriker;* Fil med alla URL:er dÀr webbplatser har hittats;
* Fil med statistik och sida-data;
* Mapp med filer som innehÄller svarsrubriker frÄn de hittade mÄlen;
* Mapp med filer som innehÄller svarstexten frÄn de hittade mÄlen;
* SkÀrmbilder av de hittade webbplatserna;
- Stöder arbete med XML-rapporter frÄn Nmap och Masscan;
- AnvÀnder headless Chrome/Chromium för renderering av skÀrmbilder.
Nackdelar:
- Kan vÀcka uppmÀrksamhet frÄn intrÄngsdetekteringssystem, sÄ det krÀver konfiguration.
SkÀrmbilden togs för en av de gamla versionerna av aquatone (v0.5.0), dÀr DNS-underdomÀnssökning implementerades. Gamla versioner kan hittas pÄ .

MassDNS
â ett annat verktyg för att söka efter DNS-underdomĂ€ner. Huvudskillnaden Ă€r att det gör DNS-förfrĂ„gningar direkt till mĂ„nga olika DNS-resolvers och gör detta med betydande hastighet.
Fördelar:
- Snabb â kan lösa mer Ă€n 350 000 namn per sekund.
Nackdelar:
- MassDNS kan orsaka en betydande belastning pÄ de anvÀnda DNS-resolvern, vilket kan leda till avstÀngning pÄ dessa servrar eller klagomÄl till din leverantör. Utöver det kommer det att leda till hög belastning pÄ företagets DNS-servrar, om de har nÄgra och ansvarar för de domÀner du försöker lösa.
- Listan över resolvrar Àr för nÀrvarande förÄldrad, men om man tar bort de icke-fungerande DNS-resolvrarna och lÀgger till nya kÀnda sÄ kommer allt att fungera bra.

SkÀrmdump av aquatone v0.5.0
nsec3map
â ett verktyg i Python för att fĂ„ en komplett lista över domĂ€ner skyddade av DNSSEC.
Fördelar:
- Snabbt upptÀcker vÀrdar i DNS-zoner med ett minimalt antal förfrÄgningar, om zonen har DNSSEC-stöd aktiverat;
- Inkluderar ett plugin för John the Ripper, som kan anvÀndas för att knÀcka de mottagna NSEC3-hashes.
Nackdelar:
- MÄnga DNS-fel hanteras felaktigt;
- Ingen automatisk parallell bearbetning av NSEC-poster â man mĂ„ste dela upp namnrymden manuellt;
- Högt minnesanvÀndande.
Acunetix
â en web sĂ„rbarhetsscanner som automatiserar processen för att kontrollera sĂ€kerheten i webbapplikationer. Den testar applikationen för SQL-injektioner, XSS, XXE, SSRF och mĂ„nga andra webb sĂ„rbarheter. Men, precis som alla andra scanners för web sĂ„rbarheter, ersĂ€tter den inte en pentester, eftersom komplexa sĂ„rbarhetskedjor eller logiksĂ„rbarheter inte kan hittas av den. DĂ€remot tĂ€cker den mĂ„nga olika sĂ„rbarheter, inklusive olika CVE som en pentester kanske har glömt, vilket gör den mycket praktisk för att frigöra frĂ„n rutinmĂ€ssiga kontroller.
Fördelar:
- LÄg nivÄ av falska positiva;
- Resultaten kan exporteras som rapporter;
- Genomför ett stort antal kontroller för olika sÄrbarheter;
- Parallell scanning av flera vÀrdar.
Nackdelar:
- Ingen dedupliceringsalgoritm (sidor med samma funktionalitet kommer Acunetix att betrakta som olika, eftersom de har olika URL:er), men utvecklarna arbetar pÄ det;
- KrÀver installation pÄ en separat webbserver, vilket komplicerar testningen av kundsystem med anslutning via VPN och anvÀndningen av scannern i ett isolerat segment av det lokala kundnÀtverket;
- Kan "skapa ljud" pÄ den undersökta tjÀnsten, till exempel genom att skicka för mÄnga attackerande vektorer till kontaktformulÀret pÄ webbplatsen, vilket starkt komplicerar affÀrsprocesserna;
- Ăr en proprietĂ€r och dĂ€rmed inte gratis lösning.

Dirsearch
â ett verktyg i Python för att bruteforca kataloger och filer pĂ„ webbplatser.
Fördelar:
- Kan sĂ€rskilja Ă€kta â200 OKâ sidor frĂ„n â200 OKâ sidor med texten âsidan hittades inteâ;
- Levereras med en praktisk ordbok som har en bra balans mellan storlek och sökprestanda. InnehÄller standardvÀgar som Àr typiska för mÄnga CMS och teknikstackar;
- Ett eget ordboksformat som möjliggör bra effektivitet och flexibilitet vid genomsökning av filer och kataloger;
- AnvĂ€ndarvĂ€nlig utdata â enkel text, JSON;
- Kan göra throttling â pauser mellan förfrĂ„gningar, vilket Ă€r livsviktigt för alla svaga tjĂ€nster.
Nackdelar:
- TillÀgg mÄste anges som en strÀng, vilket Àr omstÀndligt om man behöver ange mÄnga tillÀgg samtidigt;
- För att anvÀnda egen ordbok mÄste den göras om nÄgot till Dirsearch ordboksformat för maximal effektivitet.

wfuzz
â en webb fuzzare i Python. Kanske en av de mest kĂ€nda webb fuzzarna. Principen Ă€r enkel: wfuzz lĂ„ter dig fuzz-a alla delar av en HTTP-förfrĂ„gan, vilket gör att du kan fuzz-a GET/POST-parametrar, HTTP-rubriker, inklusive Cookies och andra autentiseringsrubriker. Samtidigt Ă€r det ocksĂ„ bra för enkel bruteforcing av kataloger och filer, för vilket en bra ordbok behövs. Har ocksĂ„ ett flexibelt filtersystem som lĂ„ter dig filtrera svar frĂ„n webbplatsen efter olika parametrar, vilket möjliggör effektiva resultat.
Fördelar:
- MĂ„ngsidig â modulĂ€r struktur, sammansĂ€ttning tar nĂ„gra minuter;
- AnvÀndarvÀnlig mekanism för filtrering och fuzzing;
- Kan fuzz-a vilken HTTP-metod som helst samt vilken del av HTTP-förfrÄgan som helst.
Nackdelar:
- Under utveckling.

ffuf
â en webb fuzzare pĂ„ Go, skapad efter âmodellen och likhetenâ av wfuzz, gör det möjligt att bruteforca filer, kataloger, URL-vĂ€gar, namn och vĂ€rden för GET/POST-parametrar, HTTP-rubriker, inklusive Host-rubrik för bruteforce av virtuella vĂ€rdar. Skiljer sig frĂ„n sin bror wfuzz genom ökad hastighet och nĂ„gra nya funktioner, till exempel, Dirsearch format ordböcker stöds.
Fördelar:
- Filter liknar wfuzz filter, vilket gör att bruteforcing kan anpassas flexibelt;
- Möjliggör fuzzing av vÀrden för HTTP-rubriker, POST-förfrÄgningsdata och olika delar av URL, inklusive namn och vÀrden för GET-parametrar;
- Kan ange vilken HTTP-metod som helst.
Nackdelar:
- Under utveckling.

gobuster
â ett Go-verktyg för efterforskning, som har tvĂ„ arbetslĂ€gen. Det första anvĂ€nds för att bruteforce:a filer och kataloger pĂ„ en webbplats, det andra â för att iterera över DNS-subdomĂ€ner. Verktyget stöder inte initialt rekursiv iteration av filer och kataloger, vilket sjĂ€lvklart sparar tid, men Ă„ andra sidan mĂ„ste bruteforce:a varje ny endpoint pĂ„ webbplatsen köras separat.
Fördelar:
- Hög hastighet bÄde för iterering av DNS-subdomÀner och för bruteforce:a filer och kataloger.
Nackdelar:
- I den aktuella versionen stöds inte installation av HTTP-rubriker;
- Som standard betraktas endast vissa HTTP-statuskoder (200, 204, 301, 302, 307) som giltiga.

Arjun
â ett verktyg för bruteforce:a dolda HTTP-parametrar i GET/POST-parametrar samt i JSON. Den inbyggda ordboken har 25 980 ord, som Ajrun kontrollerar pĂ„ nĂ€stan 30 sekunder. Fokus Ă€r att Ajrun inte kontrollerar varje parameter separat utan testar cirka 1000 parametrar Ă„t gĂ„ngen och ser om svaret förĂ€ndras. Om svaret Ă€ndras delar det denna 1000 parametrar i tvĂ„ delar och kontrollerar vilken av dessa delar som pĂ„verkar svaret. PĂ„ sĂ„ sĂ€tt, med nĂ„got sĂ„ enkelt som binĂ€r sökning, kommer den Ă„t parametern eller flera dolda parametrar som pĂ„verkade svaret och dĂ€rför kan existera.
Fördelar:
- Hög hastighet genom binÀr sökning;
- Stöd för GET/POST-parametrar, liksom parametrar i JSON-format;
PĂ„ liknande sĂ€tt fungerar pluginen för Burp Suite â , som ocksĂ„ Ă€r bra pĂ„ att hitta dolda HTTP-parametrar. Mer om den kommer vi att berĂ€tta i en kommande artikel om Burp och dess plugins.

LinkFinder
â ett Python-skript för att hitta lĂ€nkar i JavaScript-filer. Nyttigt för att hitta dolda eller glömda endpoints/URL:er i webbapplikationen.
Fördelar:
- Snabb;
- Det finns ett speciellt plugin för Chrome baserat pÄ LinkFinder.
.
Nackdelar:
- Otydlig slutoutput;
- Analyserar inte JavaScript i realtid;
- Ganska enkel logik för att hitta lĂ€nkar â om JavaScript pĂ„ nĂ„got sĂ€tt Ă€r obfuskert, eller om lĂ€nkarna initialt saknas och genereras dynamiskt, sĂ„ kan inget hittas.

JSParser
â ett Python-skript som anvĂ€nder och för att analysera relativa URL:er frĂ„n JavaScript-filer. Mycket anvĂ€ndbart för att upptĂ€cka AJAX-förfrĂ„gningar och skapa en lista över API-metoder som applikationen interagerar med. Fungerar effektivt tillsammans med LinkFinder.
Fördelar:
- Snabb analys av JavaScript-filer.

sqlmap
â troligen ett av de mest kĂ€nda verktygen för webbapplikationsanalys. Sqlmap automatiserar sökandet och utnyttjandet av SQL-injektioner, fungerar med flera SQL-dialekter och har en stor arsenal av olika tekniker, frĂ„n ârakt pĂ„â citat till komplexa vektorer för time-based SQL-injektioner. Dessutom har den mĂ„nga tekniker för vidare exploatering för olika databashanteringssystem, sĂ„ den Ă€r anvĂ€ndbar inte bara som en skanner för SQL-injektioner, utan ocksĂ„ som ett kraftfullt verktyg för att utnyttja redan upptĂ€ckta SQL-injektioner.
Fördelar:
- Ett stort antal olika tekniker och vektorer;
- LÄg falsk positivitet;
- MÄnga möjligheter för finjustering, olika tekniker, mÄl-databas, tamper-skript för att kringgÄ WAF;
- Möjlighet att skapa en dump av utdata;
- MĂ„nga olika möjligheter till exploatering, till exempel för vissa databaser â automatisk uppladdning/nedladdning av filer, erhĂ„lla möjlighet att köra kommandon (RCE) och andra;
- Stöd för direktanslutning till databasen med hjÀlp av data som erhÄllits under attacken;
- En textfil med resultaten frĂ„n Burp kan matas in â behöver inte manuellt ange alla kommandoradsattribut.
Nackdelar:
- SvÄrt att anpassa, till exempel att skriva egna kontroller pÄ grund av bristfÀllig dokumentation för detta;
- Utan rÀtt instÀllningar gör den en ofullstÀndig uppsÀttning kontroller, vilket kan vara missledande.

NoSQLMap
â ett verktyg pĂ„ Python för att automatisera sökandet och utnyttjandet av NoSQL-injektioner. LĂ€tt att anvĂ€nda inte bara i NoSQL-databaser utan ocksĂ„ vid granskning av webbapplikationer som anvĂ€nder NoSQL.
Fördelar:
- Precis som sqlmap kan det inte bara upptÀcka potentiella sÄrbarheter utan ocksÄ kontrollera möjligheten till exploatering för MongoDB och CouchDB.
Nackdelar:
- Stöder inte NoSQL för Redis, Cassandra, det pÄgÄr utveckling inom detta omrÄde.
oxml_xxe
â ett verktyg för att infoga XXE XML-exploiteringar i olika typer av filer dĂ€r XML-format anvĂ€nds pĂ„ nĂ„got sĂ€tt.
Fördelar:
- Stöder mÄnga vanliga format, sÄsom DOCX, ODT, SVG, XML.
Nackdelar:
- PDF, JPEG, GIF-stödet Àr inte helt implementerat;
- Skapar endast en fil. För att lösa detta problem kan verktyget , som kan skapa ett stort antal filer med payloads pÄ olika platser.
De nÀmnda verktygen Àr utmÀrkta för att testa XXE vid uppladdning av dokument som innehÄller XML. Men kom ocksÄ ihÄg att XML-behandlare kan förekomma i mÄnga andra sammanhang, till exempel kan XML anvÀndas som dataformat istÀllet för JSON.
DÀrför rekommenderar vi att du kollar pÄ följande repository som innehÄller ett stort antal olika payloads: .
tplmap
â ett Python-verktyg för automatisk upptĂ€ckter och utnyttjande av sĂ„rbarheter i Server-Side Template Injection, har instĂ€llningar och flaggor som liknar sqlmap. AnvĂ€nder flera olika tekniker och vektorer, inklusive blind-injektioner, och har tekniker för att exekvera kod och ladda upp/ned filer. Dessutom har det tekniker för tiotalet olika mallmotorer och vissa tekniker för att hitta eval()-liknande kodinjektioner i Python, Ruby, PHP, JavaScript. Vid framgĂ„ngsrik exploatering öppnar det en interaktiv konsol.
Fördelar:
- Ett stort antal olika tekniker och vektorer;
- Stöder mÄnga mallmotorer;
- MÄnga exploateringstekniker.
CeWL
â en ordboks-generator pĂ„ Ruby, skapad för att extrahera unika ord frĂ„n en angiven webbplats, följder lĂ€nkar pĂ„ webbplatsen till en angiven djup. Den sammansatta ordboken med unika ord kan sedan anvĂ€ndas för att brute-forca lösenord pĂ„ tjĂ€nster eller brute-forca filer och kataloger pĂ„ samma webbplats, eller för att attackera erhĂ„llna hashvĂ€rden med hjĂ€lp av hashcat eller John the Ripper. AnvĂ€ndbar vid upprĂ€ttande av en "mĂ„l"-lista över potentiella lösenord.
Fördelar:
- Enkelt att anvÀnda.
Nackdelar:
- Var försiktig med djupet pÄ sökningen sÄ att du inte fÄngar upp överflödiga domÀner.
Weakpass
â en tjĂ€nst som innehĂ„ller mĂ„nga ordböcker med unika lösenord. Extremt anvĂ€ndbar för olika uppgifter relaterade till lösenordsbrott, frĂ„n enkel online brute-force av konton pĂ„ mĂ„l-tjĂ€nster, till offline brute-force av erhĂ„llna hashvĂ€rden med hjĂ€lp av eller . InnehĂ„ller omkring 8 miljarder lösenord frĂ„n 4 till 25 tecken lĂ„nga.
Fördelar:
- InnehĂ„ller bĂ„de specifika ordböcker och ordböcker med de mest förekommande lösenorden â det finns möjlighet att vĂ€lja en specifik ordbok för dina egna behov;
- Ordböckerna uppdateras och fylls pÄ med nya lösenord;
- Ordböckerna Àr sorterade efter effektivitet. Du kan vÀlja ett alternativ för snabb online brute-force eller för noggrant val av lösenord frÄn en omfattande ordbok med de senaste lÀckorna;
- Det finns en kalkylator som visar tiden för bruteforce av lösenord pÄ din utrustning.

Vi vill sÀrskilt framhÀva verktyg för CMS-kontroller: WPScan, JoomScan och AEM hacker.
AEM_hacker
Àr ett verktyg för att identifiera sÄrbarheter i applikationer för Adobe Experience Manager (AEM).
Fördelar:
- Kan identifiera AEM-applikationer frÄn en lista med URL:er som matas in;
- InnehÄller skript för att uppnÄ RCE genom att ladda upp en JSP-shell eller utnyttja SSRF.
JoomScan
Àr ett Perl-verktyg för automatisering av sÄrbarhetsidentifiering vid distribution av Joomla CMS.
Fördelar:
- Kan upptÀcka konfigurationsfel och problem med administrativa instÀllningar;
- Listar versioner av Joomla och relaterade sÄrbarheter, likasÄ för enskilda komponenter;
- InnehÄller mer Àn 1000 exploits för Joomla-komponenter;
- Ger slutrapporter i text- och HTML-format.

WPScan
Àr ett verktyg för att skanna webbplatser pÄ WordPress och har sÄrbarheter bÄde för WordPress-motorn och vissa plugins.
Fördelar:
- Kan lista inte bara osÀkra WordPress-plugins och teman, utan ocksÄ fÄ en lista över anvÀndare och TimThumb-filer;
- Kan utföra bruteforce-attacker mot WordPress-webbplatser.
Nackdelar:
- Utan rÀtt instÀllningar gör den en ofullstÀndig uppsÀttning kontroller, vilket kan vara missledande.

Generellt föredrar olika mĂ€nniskor olika verktyg för arbete: de Ă€r alla bra pĂ„ sitt sĂ€tt, och vad som tilltalade en person kanske inte alls passar en annan. Om du tycker att vi har förbisett nĂ„got bra verktyg â skriv om det i kommentarerna!
KĂ€lla: habr.com
