Web alati ili odakle početi kao pentester?

Nastaviti govoriti o korisnim alatima za pentestere. U novom članku ćemo pogledati alate za analizu sigurnosti web aplikacija.

Naš kolega BeLove Već sam radio ovako nešto kompilacija prije otprilike sedam godina. Zanimljivo je vidjeti koji su alati zadržali i ojačali svoje pozicije, a koji su izblijedjeli u drugi plan i sada se rijetko koriste.
Web alati ili odakle početi kao pentester?

Imajte na umu da ovo također uključuje Burp Suite, ali o njemu i njegovim korisnim dodacima bit će posebna publikacija.

Sadržaj:

Gomila

Gomila - Go alat za pretraživanje i nabrajanje DNS poddomena i mapiranje vanjske mreže. Amass je OWASP projekt dizajniran da pokaže kako organizacije na Internetu izgledaju autsajderu. Amass dobiva nazive poddomena na razne načine; alat koristi i rekurzivno nabrajanje poddomena i pretraživanja otvorenog koda.

Za otkrivanje međusobno povezanih mrežnih segmenata i brojeva autonomnog sustava, Amass koristi IP adrese dobivene tijekom rada. Sve pronađene informacije koriste se za izradu mape mreže.

Pros:

  • Tehnike prikupljanja informacija uključuju:
    * DNS - pretraživanje poddomena rječnikom, bruteforce poddomena, pametno pretraživanje korištenjem mutacija na temelju pronađenih poddomena, obrnuti DNS upiti i traženje DNS poslužitelja gdje je moguće napraviti zahtjev za prijenos zone (AXFR);

    * Pretraživanje otvorenog koda - Ask, Baidu, Bing, CommonCrawl, DNSDB, DNSDumpster, DNSTable, Dogpile, Exalead, FindSubdomains, Google, IPv4Info, Netcraft, PTRArchive, Riddler, SiteDossier, ThreatCrowd, VirusTotal, Yahoo;

    * Pretraživanje baza podataka TLS certifikata - Censys, CertDB, CertSpotter, Crtsh, Entrust;

    * Korištenje API-ja tražilice - BinaryEdge, BufferOver, CIRCL, HackerTarget, PassiveTotal, Robtex, SecurityTrails, Shodan, Twitter, Umbrella, URLScan;

    * Pretraživanje internetskih web arhiva: ArchiveIt, ArchiveToday, Arquivo, LoCArchive, OpenUKArchive, UKGovArchive, Wayback;

  • Integracija s Maltegom;
  • Pruža najcjelovitiju pokrivenost zadatka traženja DNS poddomena.

Cons:

  • Budite oprezni s amass.netdomains - pokušat će kontaktirati svaku IP adresu u identificiranoj infrastrukturi i dobiti nazive domena iz obrnutih DNS pretraživanja i TLS certifikata. Ovo je tehnika "visokog profila", može otkriti vaše obavještajne aktivnosti u organizaciji koja se istražuje.
  • Velika potrošnja memorije, može potrošiti do 2 GB RAM-a u različitim postavkama, što vam neće omogućiti pokretanje ovog alata u oblaku na jeftinom VDS-u.

Web alati ili odakle početi kao pentester?

Altdns

Altdns — Python alat za sastavljanje rječnika za nabrajanje DNS poddomena. Omogućuje generiranje mnogih varijanti poddomena korištenjem mutacija i permutacija. Za to se koriste riječi koje se često nalaze u poddomenama (na primjer: test, dev, staging), sve mutacije i permutacije primjenjuju se na već poznate poddomene, koje se mogu podnijeti na Altdns unos. Izlaz je popis varijacija poddomena koje mogu postojati, a taj se popis kasnije može koristiti za grubu silu DNS-a.

Pros:

  • Dobro radi s velikim skupovima podataka.

akvaton

akvaton - prije je bio poznatiji kao još jedan alat za pretraživanje poddomena, ali je sam autor od toga odustao u korist spomenutog Amassa. Sada je aquatone prepisan u Go i više je usmjeren na preliminarno izviđanje na web stranicama. Da bi to učinio, aquatone prolazi kroz navedene domene i traži web stranice na različitim portovima, nakon čega prikuplja sve informacije o web stranici i snima screenshot. Pogodno za brzo preliminarno izviđanje web stranica, nakon čega možete odabrati prioritetne ciljeve za napade.

Pros:

  • Izlaz stvara grupu datoteka i mapa koje su prikladne za korištenje pri daljnjem radu s drugim alatima:
    * HTML izvješće s prikupljenim snimkama zaslona i naslovima odgovora grupiranim po sličnosti;

    * Datoteka sa svim URL-ovima na kojima su pronađene web stranice;

    * Datoteka sa statistikom i podacima o stranici;

    * Mapa s datotekama koje sadrže zaglavlja odgovora iz pronađenih ciljeva;

    * Mapa s datotekama koje sadrže tijelo odgovora pronađenih ciljeva;

    * Slike pronađenih web stranica;

  • Podržava rad s XML izvješćima iz Nmapa i Masscana;
  • Koristi Chrome/Chromium bez glave za renderiranje snimaka zaslona.

Cons:

  • Može privući pozornost sustava za otkrivanje upada, pa zahtijeva konfiguraciju.

Screenshot je napravljen za jednu od starih verzija aquatonea (v0.5.0), u kojoj je implementirano DNS pretraživanje poddomena. Starije verzije mogu se pronaći na izdaje stranicu.
Web alati ili odakle početi kao pentester?

MassDNS

MassDNS je još jedan alat za pronalaženje DNS poddomena. Njegova glavna razlika je u tome što postavlja DNS upite izravno mnogim različitim DNS razrjeđivačima i to velikom brzinom.

Pros:

  • Brz - sposoban riješiti više od 350 tisuća imena u sekundi.

Cons:

  • MassDNS može uzrokovati značajno opterećenje DNS rezolvera koji se koriste, što može dovesti do zabrane tih poslužitelja ili pritužbi vašem ISP-u. Osim toga, veliko će opteretiti DNS poslužitelje tvrtke, ako ih imaju i ako su odgovorni za domene koje pokušavate riješiti.
  • Popis razrješivača trenutno je zastario, ali ako odaberete neispravne DNS razrješivače i dodate nove poznate, sve će biti u redu.

Web alati ili odakle početi kao pentester?
Snimka zaslona aquatone v0.5.0

nsec3map

nsec3map je Python alat za dobivanje cjelovitog popisa domena zaštićenih DNSSEC-om.

Pros:

  • Brzo otkriva hostove u DNS zonama s minimalnim brojem upita ako je DNSSEC podrška omogućena u zoni;
  • Uključuje dodatak za Johna Trbosjeka koji se može koristiti za probijanje dobivenih NSEC3 hash vrijednosti.

Cons:

  • Mnoge DNS pogreške se ne obrađuju ispravno;
  • Ne postoji automatska paralelizacija obrade NSEC zapisa - morate ručno podijeliti imenski prostor;
  • Velika potrošnja memorije.

Acunetix

Acunetix — skener web ranjivosti koji automatizira proces provjere sigurnosti web aplikacija. Testira aplikaciju na SQL injekcije, XSS, XXE, SSRF i mnoge druge web ranjivosti. Međutim, kao i bilo koji drugi skener, razne web ranjivosti ne zamjenjuju pentester, budući da on ne može pronaći složene lance ranjivosti ili ranjivosti u logici. Ali pokriva mnogo različitih ranjivosti, uključujući razne CVE-ove, na koje je pentester možda zaboravio, tako da je vrlo praktičan za oslobađanje od rutinskih provjera.

Pros:

  • Niska razina lažno pozitivnih rezultata;
  • Rezultati se mogu izvesti kao izvješća;
  • Obavlja veliki broj provjera raznih ranjivosti;
  • Paralelno skeniranje više hostova.

Cons:

  • Ne postoji algoritam za deduplikaciju (Acunetix će stranice koje su identične funkcionalnosti smatrati različitima, budući da vode na različite URL-ove), ali programeri rade na tome;
  • Zahtijeva instalaciju na zasebnom web poslužitelju, što komplicira testiranje klijentskih sustava s VPN vezom i korištenje skenera u izoliranom segmentu lokalne klijentske mreže;
  • Usluga koja se proučava može stvarati buku, na primjer, slanjem previše vektora napada na obrazac za kontakt na stranici, čime se uvelike kompliciraju poslovni procesi;
  • To je vlasničko rješenje i, prema tome, nije besplatno.

Web alati ili odakle početi kao pentester?

Direarch

Direarch — Python alat za grubo forsiranje direktorija i datoteka na web stranicama.

Pros:

  • Može razlikovati stvarne stranice "200 OK" od stranica "200 OK", ali s tekstom "stranica nije pronađena";
  • Dolazi sa praktičnim rječnikom koji ima dobru ravnotežu između veličine i učinkovitosti pretraživanja. Sadrži standardne staze zajedničke mnogim CMS i tehnološkim skupovima;
  • Vlastiti format rječnika, koji vam omogućuje postizanje dobre učinkovitosti i fleksibilnosti u nabrajanju datoteka i direktorija;
  • Zgodan izlaz - običan tekst, JSON;
  • Može raditi prigušivanje - pauzu između zahtjeva, što je bitno za svaku slabu uslugu.

Cons:

  • Ekstenzije se moraju proslijediti kao niz, što je nezgodno ako trebate proslijediti mnogo ekstenzija odjednom;
  • Kako biste koristili svoj rječnik, trebat će ga malo modificirati u format rječnika Dirsearch za maksimalnu učinkovitost.

Web alati ili odakle početi kao pentester?

wfuzz

wfuzz - Python web aplikacija fuzzer. Vjerojatno jedan od najpoznatijih web fazara. Princip je jednostavan: wfuzz vam omogućuje faziranje bilo kojeg mjesta u HTTP zahtjevu, što omogućuje faziranje GET/POST parametara, HTTP zaglavlja, uključujući Cookie i druga autentifikacijska zaglavlja. U isto vrijeme, također je pogodan za jednostavnu grubu obradu direktorija i datoteka, za što vam je potreban dobar rječnik. Također ima fleksibilan sustav filtriranja, s kojim možete filtrirati odgovore s web stranice prema različitim parametrima, što vam omogućuje postizanje učinkovitih rezultata.

Pros:

  • Višenamjenska - modularna struktura, montaža traje nekoliko minuta;
  • Prikladan mehanizam za filtriranje i rasplinjavanje;
  • Možete fazno definirati bilo koju HTTP metodu, kao i bilo koje mjesto u HTTP zahtjevu.

Cons:

  • U razvoju.

Web alati ili odakle početi kao pentester?

ffuf

ffuf — web fuzzer u Go-u, stvoren prema "slici i prilici" wfuzza, omogućuje brute datoteke, direktorije, URL staze, nazive i vrijednosti GET/POST parametara, HTTP zaglavlja, uključujući Host zaglavlje za brute force virtualnih hostova. wfuzz se razlikuje od brata po većoj brzini i nekim novim značajkama, na primjer, podržava rječnike u formatu Dirsearch.

Pros:

  • Filtri su slični wfuzz filtrima, omogućuju vam fleksibilnu konfiguraciju brute force;
  • Omogućuje fuzz vrijednosti HTTP zaglavlja, podataka POST zahtjeva i raznih dijelova URL-a, uključujući imena i vrijednosti GET parametara;
  • Možete navesti bilo koju HTTP metodu.

Cons:

  • U razvoju.

Web alati ili odakle početi kao pentester?

razbojnik

razbojnik — Go alat za izviđanje, ima dva načina rada. Prvi se koristi za brute force datoteka i direktorija na web stranici, drugi se koristi za brute force DNS poddomena. Alat inicijalno ne podržava rekurzivno nabrajanje datoteka i direktorija, što, naravno, štedi vrijeme, ali s druge strane, brute force svake nove krajnje točke na web stranici mora se pokrenuti zasebno.

Pros:

  • Velika brzina rada i za grubo pretraživanje DNS poddomena i za grubo pretraživanje datoteka i direktorija.

Cons:

  • Trenutna verzija ne podržava postavljanje HTTP zaglavlja;
  • Prema zadanim postavkama, samo neki od HTTP statusnih kodova (200,204,301,302,307) smatraju se važećim.

Web alati ili odakle početi kao pentester?

Arjun

Arjun - alat za brute force skrivenih HTTP parametara u GET/POST parametrima, kao iu JSON-u. Ugrađeni rječnik ima 25 riječi koje Ajrun provjerava za gotovo 980 sekundi. Trik je u tome što Ajrun ne provjerava svaki parametar posebno, nego provjerava ~30 parametara odjednom i vidi je li se odgovor promijenio. Ako se odgovor promijenio, dijeli tih 1000 parametara na dva dijela i provjerava koji od tih dijelova utječe na odgovor. Dakle, korištenjem jednostavnog binarnog pretraživanja, pronađen je parametar ili nekoliko skrivenih parametara koji su utjecali na odgovor i, prema tome, mogli postojati.

Pros:

  • Velika brzina zbog binarnog pretraživanja;
  • Podrška za GET/POST parametre, kao i parametre u obliku JSON-a;

Dodatak za Burp Suite radi na sličnom principu - param-rudar, koji je također vrlo dobar u pronalaženju skrivenih HTTP parametara. Reći ćemo vam više o tome u nadolazećem članku o Burpu i njegovim dodacima.
Web alati ili odakle početi kao pentester?

LinkFinder

LinkFinder — Python skripta za traženje veza u JavaScript datotekama. Korisno za pronalaženje skrivenih ili zaboravljenih krajnjih točaka/URL-ova u web aplikaciji.

Pros:

  • Brzo;
  • Postoji poseban dodatak za Chrome temeljen na LinkFinderu.

.

Cons:

  • Nezgodan konačni zaključak;
  • Ne analizira JavaScript tijekom vremena;
  • Prilično jednostavna logika za traženje poveznica - ako je JavaScript na neki način zamagljen, ili poveznice inicijalno nedostaju i generiraju se dinamički, tada neće moći ništa pronaći.

Web alati ili odakle početi kao pentester?

JSParser

JSParser je Python skripta koja koristi Tornado и JSBeautifier za raščlanjivanje relativnih URL-ova iz JavaScript datoteka. Vrlo korisno za otkrivanje AJAX zahtjeva i sastavljanje popisa API metoda s kojima aplikacija komunicira. Učinkovito radi u kombinaciji s LinkFinderom.

Pros:

  • Brzo parsiranje JavaScript datoteka.

Web alati ili odakle početi kao pentester?

sqlmap

sqlmap je vjerojatno jedan od najpoznatijih alata za analizu web aplikacija. Sqlmap automatizira pretraživanje i rad SQL injekcija, radi s nekoliko SQL dijalekata i ima veliki broj različitih tehnika u svom arsenalu, u rasponu od izravnih navodnika do složenih vektora za vremenske SQL injekcije. Osim toga, ima mnogo tehnika za daljnju eksploataciju za razne DBMS-ove, tako da je koristan ne samo kao skener za SQL injekcije, već i kao moćan alat za iskorištavanje već pronađenih SQL injekcija.

Pros:

  • Veliki broj različitih tehnika i vektora;
  • Mali broj lažno pozitivnih rezultata;
  • Mnoštvo opcija finog podešavanja, razne tehnike, ciljna baza podataka, tamper skripte za zaobilaženje WAF-a;
  • Sposobnost stvaranja izlaznog dumpa;
  • Mnogo različitih operativnih mogućnosti, na primjer, za neke baze podataka - automatsko učitavanje/istovar datoteka, dobivanje mogućnosti izvršavanja naredbi (RCE) i drugo;
  • Podrška za izravno povezivanje s bazom podataka pomoću podataka dobivenih tijekom napada;
  • Možete poslati tekstualnu datoteku s rezultatima Burpa kao ulaz - nema potrebe za ručnim sastavljanjem svih atributa naredbenog retka.

Cons:

  • Teško je prilagoditi, na primjer, pisanje nekih vlastitih čekova zbog oskudne dokumentacije za to;
  • Bez odgovarajućih postavki, izvodi nepotpun skup provjera, što može dovesti u zabludu.

Web alati ili odakle početi kao pentester?

NoSQLMap

NoSQLMap — Python alat za automatizaciju pretraživanja i iskorištavanja NoSQL injekcija. Pogodan je za korištenje ne samo u NoSQL bazama podataka, već i izravno prilikom revizije web aplikacija koje koriste NoSQL.

Pros:

  • Kao i sqlmap, ne samo da pronalazi potencijalnu ranjivost, već i provjerava mogućnost njezine eksploatacije za MongoDB i CouchDB.

Cons:

  • Ne podržava NoSQL za Redis, Cassandra, razvoj je u tijeku u tom smjeru.

oxml_xxe

oxml_xxe - alat za ugradnju XXE XML exploita u različite vrste datoteka koje u nekom obliku koriste XML format.

Pros:

  • Podržava mnoge uobičajene formate kao što su DOCX, ODT, SVG, XML.

Cons:

  • Podrška za PDF, JPEG, GIF nije u potpunosti implementirana;
  • Stvara samo jednu datoteku. Za rješavanje ovog problema možete koristiti alat docem, koji može stvoriti velik broj korisnih datoteka na različitim mjestima.

Gore navedeni uslužni programi odlično testiraju XXE prilikom učitavanja dokumenata koji sadrže XML. Ali također imajte na umu da se rukovatelji XML formata mogu pronaći u mnogim drugim slučajevima, na primjer, XML se može koristiti kao format podataka umjesto JSON-a.

Stoga preporučamo da obratite pozornost na sljedeće spremište koje sadrži veliki broj različitih korisnih opterećenja: PayloadsAllTheThings.

tplmap

tplmap - Python alat za automatsko prepoznavanje i iskorištavanje ranjivosti ubacivanja predložaka na strani poslužitelja; ima postavke i oznake slične sqlmapu. Koristi nekoliko različitih tehnika i vektora, uključujući slijepo ubrizgavanje, a također ima tehnike za izvršavanje koda i učitavanje/učitavanje proizvoljnih datoteka. Osim toga, u svom arsenalu ima tehnike za desetak različitih mehanizama za predloške i neke tehnike za traženje ubacivanja koda nalik eval() u Python, Ruby, PHP, JavaScript. Ako je uspješan, otvara se interaktivna konzola.

Pros:

  • Veliki broj različitih tehnika i vektora;
  • Podržava mnoge mehanizme za renderiranje predložaka;
  • Puno operativnih tehnika.

CeWL

CeWL - generator rječnika u Rubyju, stvoren za izdvajanje jedinstvenih riječi s određene web stranice, prati veze na web stranici do određene dubine. Sastavljeni rječnik jedinstvenih riječi kasnije se može koristiti za brute force lozinke na uslugama ili brute force datoteke i direktorije na istoj web stranici ili za napad na rezultirajuće hashove koristeći hashcat ili Johna Trbosjeka. Korisno pri sastavljanju "ciljanog" popisa potencijalnih zaporki.

Pros:

  • Jednostavan za korištenje.

Cons:

  • Morate biti oprezni s dubinom pretraživanja kako ne biste uhvatili dodatnu domenu.

Weakpass

Weakpass - usluga koja sadrži mnoge rječnike s jedinstvenim lozinkama. Izuzetno koristan za različite zadatke vezane uz probijanje lozinki, u rasponu od jednostavnog online bruteforcea računa na ciljnim servisima, do offline bruteforce primljenih hashova korištenjem haskat ili John The Ripper. Sadrži oko 8 milijardi lozinki duljine od 4 do 25 znakova.

Pros:

  • Sadrži i specifične rječnike i rječnike s najčešćim lozinkama - možete odabrati određeni rječnik za vlastite potrebe;
  • Rječnici se ažuriraju i nadopunjuju novim lozinkama;
  • Rječnici su razvrstani po učinkovitosti. Možete odabrati opciju i za brzi bruteforce na mreži i za detaljan odabir lozinki iz opsežnog rječnika s najnovijim curenjem podataka;
  • Postoji kalkulator koji pokazuje vrijeme koje je potrebno da se brukiraju lozinke na vašoj opremi.

Web alati ili odakle početi kao pentester?

U zasebnu skupinu želimo uvrstiti alate za CMS provjere: WPScan, JoomScan i AEM hacker.

AEM_haker

AEM haker je alat za prepoznavanje ranjivosti u aplikacijama Adobe Experience Manager (AEM).

Pros:

  • Može identificirati AEM aplikacije s popisa URL-ova dostavljenih na njegov ulaz;
  • Sadrži skripte za dobivanje RCE učitavanjem JSP ljuske ili iskorištavanjem SSRF-a.

JoomScan

JoomScan — Perl alat za automatiziranje otkrivanja ranjivosti prilikom postavljanja Joomla CMS-a.

Pros:

  • Sposobnost pronalaska konfiguracijskih nedostataka i problema s administrativnim postavkama;
  • Navodi verzije Joomla i povezane ranjivosti, slično za pojedinačne komponente;
  • Sadrži više od 1000 exploita za Joomla komponente;
  • Ispis završnih izvješća u tekstualnom i HTML formatu.

Web alati ili odakle početi kao pentester?

WPScan

WPScan - alat za skeniranje WordPress stranica, ima ranjivosti u svom arsenalu i za samu WordPress tražilicu i za neke dodatke.

Pros:

  • Sposoban za popis ne samo nesigurnih WordPress dodataka i tema, već i za dobivanje popisa korisnika i TimThumb datoteka;
  • Može provoditi napade brutalnom silom na WordPress stranice.

Cons:

  • Bez odgovarajućih postavki, izvodi nepotpun skup provjera, što može dovesti u zabludu.

Web alati ili odakle početi kao pentester?

Općenito, različiti ljudi preferiraju različite alate za rad: svi su dobri na svoj način, a ono što se jednoj osobi sviđa možda uopće ne odgovara drugoj. Ako mislite da smo nepravedno zanemarili neki dobar alat, napišite o tome u komentarima!

Izvor: www.habr.com

Dodajte komentar