Spletna orodja ali kje naj začne pentester?

Naprej pogovor o uporabnih orodjih za pentesterje. V novem članku si bomo ogledali orodja za analizo varnosti spletnih aplikacij.

Naš kolega BeLove Nekaj ​​takega sem že naredil kompilacija pred približno sedmimi leti. Zanimivo je videti, katera orodja so obdržala in utrdila svoje položaje, katera pa so zbledela v ozadju in se redko uporabljajo.
Spletna orodja ali kje naj začne pentester?

Upoštevajte, da to vključuje tudi Burp Suite, vendar bo o njem in njegovih uporabnih vtičnikih na voljo ločena publikacija.

Vsebina:

Amass

Amass - orodje Go za iskanje in naštevanje poddomen DNS ter preslikavo zunanjega omrežja. Amass je projekt OWASP, zasnovan tako, da pokaže, kakšne so organizacije na internetu zunanjim osebam. Amass pridobiva imena poddomen na različne načine; orodje uporablja tako rekurzivno oštevilčenje poddomen kot odprtokodno iskanje.

Za odkrivanje medsebojno povezanih omrežnih segmentov in avtonomnih sistemskih številk Amass uporablja naslove IP, pridobljene med delovanjem. Vse najdene informacije se uporabijo za izdelavo zemljevida omrežja.

Profesionalci:

  • Tehnike zbiranja informacij vključujejo:
    * DNS - slovarsko iskanje poddomen, bruteforce poddomen, pametno iskanje z uporabo mutacij na podlagi najdenih poddomen, povratne DNS poizvedbe in iskanje DNS strežnikov, kjer je možno narediti zahtevo za prenos cone (AXFR);

    * Odprtokodno iskanje - Ask, Baidu, Bing, CommonCrawl, DNSDB, DNSDumpster, DNSTable, Dogpile, Exalead, FindSubdomains, Google, IPv4Info, Netcraft, PTRArchive, Riddler, SiteDossier, ThreatCrowd, VirusTotal, Yahoo;

    * Iskanje po podatkovnih bazah certifikatov TLS - Censys, CertDB, CertSpotter, Crtsh, Entrust;

    * Uporaba API-jev iskalnika - BinaryEdge, BufferOver, CIRCL, HackerTarget, PassiveTotal, Robtex, SecurityTrails, Shodan, Twitter, Umbrella, URLScan;

    * Iskanje po internetnih spletnih arhivih: ArchiveIt, ArchiveToday, Arquivo, LoCArchive, OpenUKArchive, UKGovArchive, Wayback;

  • Integracija z Maltego;
  • Zagotavlja najpopolnejšo pokritost naloge iskanja poddomen DNS.

Cons:

  • Bodite previdni pri amass.netdomains – poskusil bo vzpostaviti stik z vsakim naslovom IP v identificirani infrastrukturi in pridobiti imena domen iz povratnih iskanj DNS in potrdil TLS. To je "odmevna" tehnika, ki lahko razkrije vaše obveščevalne dejavnosti v preiskovani organizaciji.
  • Velika poraba pomnilnika, lahko porabi do 2 GB RAM-a v različnih nastavitvah, kar vam ne bo omogočilo zagona tega orodja v oblaku na poceni VDS.

Spletna orodja ali kje naj začne pentester?

Altdns

Altdns — orodje Python za sestavljanje slovarjev za naštevanje poddomen DNS. Omogoča ustvarjanje številnih različic poddomen z uporabo mutacij in permutacij. Za to se uporabljajo besede, ki jih pogosto najdemo v poddomenah (na primer: test, dev, staging), vse mutacije in permutacije pa se uporabijo za že znane poddomene, ki jih lahko oddate na vnos Altdns. Rezultat je seznam različic poddomen, ki lahko obstajajo, in ta seznam se lahko kasneje uporabi za grobo silo DNS.

Profesionalci:

  • Dobro deluje z velikimi nabori podatkov.

akvaton

akvaton - je bil prej bolj poznan kot še eno orodje za iskanje poddomen, vendar se je avtor sam temu odpovedal v korist prej omenjenega Amassa. Zdaj je bil aquatone na novo napisan v Go in je bolj usmerjen k predhodnemu izvidovanju na spletnih mestih. Za to gre aquatone skozi določene domene in išče spletna mesta na različnih vratih, nato pa zbere vse informacije o spletnem mestu in naredi posnetek zaslona. Priročno za hitro predhodno izvidovanje spletnih mest, po katerem lahko izberete prednostne cilje za napade.

Profesionalci:

  • Izhod ustvari skupino datotek in map, ki jih je priročno uporabljati pri nadaljnjem delu z drugimi orodji:
    * Poročilo HTML z zbranimi posnetki zaslona in naslovi odgovorov, razvrščenimi po podobnosti;

    * Datoteka z vsemi URL-ji, kjer so bile najdene spletne strani;

    * Datoteka s statistiko in podatki strani;

    * Mapa z datotekami, ki vsebujejo glave odgovorov iz najdenih ciljev;

    * Mapa z datotekami, ki vsebujejo telo odgovora najdenih ciljev;

    * Posnetki zaslona najdenih spletnih mest;

  • Podpira delo s poročili XML iz Nmap in Masscan;
  • Za upodabljanje posnetkov zaslona uporablja brezglavi Chrome/Chromium.

Cons:

  • Lahko pritegne pozornost sistemov za zaznavanje vdorov, zato zahteva konfiguracijo.

Posnetek zaslona je narejen za eno od starih različic aquatone (v0.5.0), v kateri je implementirano iskanje poddomen DNS. Starejše različice najdete na stran za objave.
Spletna orodja ali kje naj začne pentester?

MassDNS

MassDNS je še eno orodje za iskanje poddomen DNS. Njegova glavna razlika je v tem, da postavlja poizvedbe DNS neposredno številnim različnim razreševalcem DNS in to zelo hitro.

Profesionalci:

  • Hiter - zmožen razrešiti več kot 350 tisoč imen na sekundo.

Cons:

  • MassDNS lahko povzroči znatno obremenitev uporabljenih razreševalcev DNS, kar lahko privede do prepovedi teh strežnikov ali pritožb pri vašem ponudniku internetnih storitev. Poleg tega bo močno obremenilo DNS strežnike podjetja, če jih imajo in če so odgovorni za domene, ki jih poskušate razrešiti.
  • Seznam razreševalcev je trenutno zastarel, a če izberete pokvarjene razreševalnike DNS in dodate nove znane, bo vse v redu.

Spletna orodja ali kje naj začne pentester?
Posnetek zaslona aquatone v0.5.0

nsec3map

nsec3map je orodje Python za pridobitev celotnega seznama domen, zaščitenih z DNSSEC.

Profesionalci:

  • Hitro odkrije gostitelje v conah DNS z najmanjšim številom poizvedb, če je v coni omogočena podpora DNSSEC;
  • Vključuje vtičnik za Johna Razparača, ki ga je mogoče uporabiti za razbijanje nastalih zgoščenih vrednosti NSEC3.

Cons:

  • Številne napake DNS se ne obravnavajo pravilno;
  • Samodejne paralelizacije obdelave zapisov NSEC ni - imenski prostor morate razdeliti ročno;
  • Velika poraba pomnilnika.

Acunetix

Acunetix — skener spletnih ranljivosti, ki avtomatizira postopek preverjanja varnosti spletnih aplikacij. Preizkuša aplikacijo za vbrizgavanje SQL, XSS, XXE, SSRF in številne druge spletne ranljivosti. Vendar, tako kot kateri koli drug skener, različne spletne ranljivosti ne nadomestijo pentestra, saj ne more najti zapletenih verig ranljivosti ali ranljivosti v logiki. Pokriva pa veliko različnih ranljivosti, vključno z različnimi CVE-ji, na katere je pentester morda pozabil, zato je zelo priročen, da vas osvobodi rutinskih pregledov.

Profesionalci:

  • Nizka stopnja lažno pozitivnih rezultatov;
  • Rezultate je mogoče izvoziti kot poročila;
  • Izvaja veliko število pregledov za različne ranljivosti;
  • Vzporedno skeniranje več gostiteljev.

Cons:

  • Ni algoritma za deduplikacijo (Acunetix bo strani, ki so po funkcionalnosti enake, obravnaval kot različne, ker vodijo do različnih URL-jev), vendar razvijalci delajo na tem;
  • Zahteva namestitev na ločenem spletnem strežniku, kar otežuje testiranje odjemalskih sistemov s povezavo VPN in uporabo skenerja v izoliranem segmentu lokalnega odjemalskega omrežja;
  • Storitev, ki jo preučujemo, lahko povzroča hrup, na primer s pošiljanjem preveč napadalnih vektorjev na kontaktni obrazec na spletnem mestu, kar močno zaplete poslovne procese;
  • Je lastniška in zato ni brezplačna rešitev.

Spletna orodja ali kje naj začne pentester?

Dirsearch

Dirsearch — orodje Python za surovo vsiljevanje imenikov in datotek na spletnih mestih.

Profesionalci:

  • Lahko razlikuje prave strani »200 OK« od strani »200 OK«, vendar z besedilom »stran ni najdena«;
  • Priložen je priročen slovar, ki ima dobro razmerje med velikostjo in učinkovitostjo iskanja. Vsebuje standardne poti, ki so skupne mnogim CMS in tehnološkim nizom;
  • Lasten format slovarja, ki omogoča doseganje dobre učinkovitosti in prilagodljivosti pri naštevanju datotek in imenikov;
  • Priročen izpis - golo besedilo, JSON;
  • Lahko naredi dušenje - premor med zahtevami, ki je ključnega pomena za vsako šibko storitev.

Cons:

  • Razširitve je treba posredovati kot niz, kar je neprijetno, če morate posredovati več razširitev hkrati;
  • Če želite uporabljati svoj slovar, ga boste morali za največjo učinkovitost nekoliko spremeniti v obliko slovarja Dirsearch.

Spletna orodja ali kje naj začne pentester?

wfuzz

wfuzz - Python spletna aplikacija fuzzer. Verjetno eden najbolj znanih spletnih fazarjev. Načelo je preprosto: wfuzz vam omogoča, da postopno razdelite katero koli mesto v zahtevi HTTP, kar omogoča postopno razdeljevanje parametrov GET/POST, glav HTTP, vključno s piškotki in drugimi glavami za preverjanje pristnosti. Hkrati je priročen tudi za preprosto surovo uporabo imenikov in datotek, za kar potrebujete dober slovar. Ima tudi prilagodljiv sistem filtrov, s katerim lahko filtrirate odzive s spletne strani glede na različne parametre, kar vam omogoča doseganje učinkovitih rezultatov.

Profesionalci:

  • Večnamenska - modularna struktura, montaža traja nekaj minut;
  • Priročen mehanizem za filtriranje in fuzzing;
  • Fazno lahko določite katero koli metodo HTTP, pa tudi katero koli mesto v zahtevi HTTP.

Cons:

  • V razvoju.

Spletna orodja ali kje naj začne pentester?

ffuf

ffuf — spletni fuzzer v Go, ustvarjen po »podobi in podobnosti« wfuzza, omogoča surovo obdelavo datotek, imenikov, poti URL-jev, imen in vrednosti parametrov GET/POST, glav HTTP, vključno z glavo gostitelja za surovo uporabo virtualnih gostiteljev. wfuzz se od svojega brata razlikuje po višji hitrosti in nekaterih novih funkcijah, na primer podpira slovarje formata Dirsearch.

Profesionalci:

  • Filtri so podobni filtrom wfuzz, omogočajo vam prilagodljivo konfiguracijo surove sile;
  • Omogoča zamegljevanje vrednosti glave HTTP, podatkov zahteve POST in različnih delov URL-ja, vključno z imeni in vrednostmi parametrov GET;
  • Določite lahko katero koli metodo HTTP.

Cons:

  • V razvoju.

Spletna orodja ali kje naj začne pentester?

gobuster

gobuster — orodje Go za izvidovanje, ima dva načina delovanja. Prvi se uporablja za bruteforce datotek in imenikov na spletnem mestu, drugi pa za bruteforce poddomen DNS. Orodje na začetku ne podpira rekurzivnega naštevanja datotek in imenikov, kar seveda prihrani čas, po drugi strani pa je treba brute force vsake nove končne točke na spletni strani zagnati posebej.

Profesionalci:

  • Visoka hitrost delovanja tako za surovo iskanje poddomen DNS kot tudi za surovo iskanje datotek in imenikov.

Cons:

  • Trenutna različica ne podpira nastavitve glav HTTP;
  • Privzeto veljajo samo nekatere statusne kode HTTP (200,204,301,302,307).

Spletna orodja ali kje naj začne pentester?

Arjun

Arjun - orodje za brutalno uporabo skritih HTTP parametrov v parametrih GET/POST, kot tudi v JSON. Vgrajeni slovar ima 25 besed, ki jih Ajrun preveri v skoraj 980 sekundah. Trik je v tem, da Ajrun ne preverja vsakega parametra posebej, ampak preveri ~30 parametrov hkrati in vidi, ali se je odgovor spremenil. Če se je odgovor spremenil, teh 1000 parametrov razdeli na dva dela in preveri, kateri od teh delov vpliva na odgovor. Tako se s preprostim binarnim iskanjem najde parameter ali več skritih parametrov, ki so vplivali na odgovor in zato lahko obstajajo.

Profesionalci:

  • Visoka hitrost zaradi binarnega iskanja;
  • Podpora za parametre GET/POST, kot tudi parametre v obliki JSON;

Vtičnik za Burp Suite deluje po podobnem principu - param-rudar, ki je tudi zelo dober pri iskanju skritih parametrov HTTP. Več o tem vam bomo povedali v prihajajočem članku o Burpu in njegovih vtičnikih.
Spletna orodja ali kje naj začne pentester?

LinkFinder

LinkFinder — skript Python za iskanje povezav v datotekah JavaScript. Uporabno za iskanje skritih ali pozabljenih končnih točk/URL-jev v spletni aplikaciji.

Profesionalci:

  • Hitro;
  • Obstaja poseben vtičnik za Chrome, ki temelji na LinkFinderju.

.

Cons:

  • Neprijeten končni zaključek;
  • Ne analizira JavaScript skozi čas;
  • Precej preprosta logika za iskanje povezav - če je JavaScript nekako zamegljen ali pa povezave na začetku manjkajo in se generirajo dinamično, potem ne bo mogel najti ničesar.

Spletna orodja ali kje naj začne pentester?

JSParser

JSParser je skript Python, ki uporablja Tornado и JSBeautifier za razčlenitev relativnih URL-jev iz datotek JavaScript. Zelo uporabno za zaznavanje zahtev AJAX in sestavljanje seznama metod API, s katerimi aplikacija komunicira. Učinkovito deluje v povezavi s LinkFinderjem.

Profesionalci:

  • Hitro razčlenjevanje datotek JavaScript.

Spletna orodja ali kje naj začne pentester?

sqlmap

sqlmap je verjetno eno najbolj znanih orodij za analizo spletnih aplikacij. Sqlmap avtomatizira iskanje in delovanje vbrizgavanj SQL, deluje z več narečji SQL in ima v svojem arzenalu ogromno različnih tehnik, od narekovajev do zapletenih vektorjev za časovno zasnovane vbrizgave SQL. Poleg tega ima veliko tehnik za nadaljnje izkoriščanje za različne DBMS-je, zato ni uporaben samo kot skener za vbrizgavanje SQL, ampak tudi kot močno orodje za izkoriščanje že najdenih vbrizganj SQL.

Profesionalci:

  • Veliko število različnih tehnik in vektorjev;
  • Majhno število lažno pozitivnih rezultatov;
  • Veliko možnosti natančnega prilagajanja, različne tehnike, ciljna zbirka podatkov, skripte za poseganje v obhod WAF;
  • Sposobnost ustvarjanja izhodnega dumpa;
  • Veliko različnih operativnih zmogljivosti, na primer za nekatere baze podatkov - samodejno nalaganje / razkladanje datotek, pridobitev zmožnosti izvajanja ukazov (RCE) in drugo;
  • Podpora za neposredno povezavo z bazo podatkov z uporabo podatkov, pridobljenih med napadom;
  • Kot vhod lahko predložite besedilno datoteko z rezultati Burpa - ni vam treba ročno sestaviti vseh atributov ukazne vrstice.

Cons:

  • Težko je prilagoditi, na primer, pisanje nekaterih svojih čekov zaradi redke dokumentacije za to;
  • Brez ustreznih nastavitev izvaja nepopoln nabor preverjanj, kar je lahko zavajajoče.

Spletna orodja ali kje naj začne pentester?

NoSQLMap

NoSQLMap — orodje Python za avtomatizacijo iskanja in izkoriščanja vbrizganj NoSQL. Primeren je za uporabo ne samo v bazah podatkov NoSQL, ampak tudi neposredno pri revidiranju spletnih aplikacij, ki uporabljajo NoSQL.

Profesionalci:

  • Tako kot sqlmap ne samo najde morebitno ranljivost, ampak tudi preveri možnost njenega izkoriščanja za MongoDB in CouchDB.

Cons:

  • Ne podpira NoSQL za Redis, Cassandra, razvoj poteka v tej smeri.

oxml_xxe

oxml_xxe — orodje za vdelavo izkoriščanja XXE XML v različne vrste datotek, ki v neki obliki uporabljajo format XML.

Profesionalci:

  • Podpira veliko pogostih formatov, kot so DOCX, ODT, SVG, XML.

Cons:

  • Podpora za PDF, JPEG, GIF ni v celoti implementirana;
  • Ustvari samo eno datoteko. Za rešitev te težave lahko uporabite orodje docem, ki lahko ustvari veliko število koristnih datotek na različnih mestih.

Zgornji pripomočki odlično preizkušajo XXE pri nalaganju dokumentov, ki vsebujejo XML. Upoštevajte pa tudi, da lahko upravljalnike formatov XML najdete v številnih drugih primerih, na primer XML lahko uporabite kot format podatkov namesto JSON.

Zato priporočamo, da ste pozorni na naslednji repozitorij, ki vsebuje veliko število različnih uporabnih obremenitev: PayloadsAllTheThings.

tplmap

tplmap - orodje Python za samodejno prepoznavanje in izkoriščanje ranljivosti vbrizgavanja predloge na strani strežnika; ima nastavitve in zastavice, podobne sqlmap. Uporablja več različnih tehnik in vektorjev, vključno s slepim vbrizgavanjem, ima pa tudi tehnike za izvajanje kode in nalaganje/nalaganje poljubnih datotek. Poleg tega ima v svojem arzenalu tehnike za ducat različnih mehanizmov predlog in nekaj tehnik za iskanje eval() podobnih vbrizganj kode v Python, Ruby, PHP, JavaScript. Če je uspešen, odpre interaktivno konzolo.

Profesionalci:

  • Veliko število različnih tehnik in vektorjev;
  • Podpira številne mehanizme za upodabljanje predlog;
  • Veliko operacijskih tehnik.

CeWL

CeWL - generator slovarjev v Rubyju, ustvarjen za pridobivanje edinstvenih besed z določenega spletnega mesta, sledi povezavam na spletnem mestu do določene globine. Prevedeni slovar edinstvenih besed se lahko kasneje uporabi za brutalno vsiljevanje gesel v storitvah ali surovo vsiljevanje datotek in imenikov na istem spletnem mestu ali za napad na nastale zgoščene vrednosti z uporabo hashcat ali John the Ripper. Uporabno pri sestavljanju »ciljnega« seznama možnih gesel.

Profesionalci:

  • Enostaven za uporabo.

Cons:

  • Pri globini iskanja morate biti previdni, da ne zajamete dodatne domene.

Weakpass

Weakpass - storitev, ki vsebuje veliko slovarjev z edinstvenimi gesli. Izjemno uporabno za različna opravila, povezana z razbijanjem gesel, od preproste spletne surove sile računov na ciljnih storitvah do off-line brutalne sile prejetih zgoščenih vrednosti hashcat ali John The Ripper. Vsebuje približno 8 milijard gesel, dolgih od 4 do 25 znakov.

Profesionalci:

  • Vsebuje specifične slovarje in slovarje z najpogostejšimi gesli - lahko izberete določen slovar za svoje potrebe;
  • Slovarji se posodabljajo in polnijo z novimi gesli;
  • Slovarji so razvrščeni po učinkovitosti. Izberete lahko možnost tako za hitro spletno brutalno silo kot za podrobno izbiro gesel iz obsežnega slovarja z najnovejšimi uhajanji;
  • Obstaja kalkulator, ki prikazuje čas, potreben za brisanje gesel na vaši opremi.

Spletna orodja ali kje naj začne pentester?

V posebno skupino želimo uvrstiti orodja za CMS preglede: WPScan, JoomScan in AEM hacker.

AEM_heker

AEM heker je orodje za prepoznavanje ranljivosti v aplikacijah Adobe Experience Manager (AEM).

Profesionalci:

  • Lahko prepozna aplikacije AEM s seznama URL-jev, ki so bili poslani na njegov vnos;
  • Vsebuje skripte za pridobivanje RCE z nalaganjem lupine JSP ali izkoriščanjem SSRF.

JoomScan

JoomScan — Perl orodje za avtomatsko odkrivanje ranljivosti pri uvajanju Joomla CMS.

Profesionalci:

  • Sposoben najti napake v konfiguraciji in težave z administrativnimi nastavitvami;
  • Navaja različice Joomla in z njimi povezane ranljivosti, podobno za posamezne komponente;
  • Vsebuje več kot 1000 podvigov za komponente Joomla;
  • Izpis končnih poročil v besedilni in HTML obliki.

Spletna orodja ali kje naj začne pentester?

WPScan

WPScan - orodje za skeniranje spletnih mest WordPress, ima v svojem arzenalu ranljivosti tako za sam mehanizem WordPress kot za nekatere vtičnike.

Profesionalci:

  • Sposoben navajati ne samo nevarne WordPress vtičnike in teme, ampak tudi pridobiti seznam uporabnikov in datotek TimThumb;
  • Lahko izvaja napade s surovo silo na spletnih mestih WordPress.

Cons:

  • Brez ustreznih nastavitev izvaja nepopoln nabor preverjanj, kar je lahko zavajajoče.

Spletna orodja ali kje naj začne pentester?

Na splošno imajo različni ljudje raje različna orodja za delo: vsa so dobra na svoj način in tisto, kar je nekomu všeč, drugemu morda sploh ne ustreza. Če menite, da smo po krivici zanemarili kakšen dober pripomoček, zapišite o tem v komentar!

Vir: www.habr.com

Dodaj komentar