.. | ||
buckets | ||
drupal | ||
electron-desktop-apps | ||
php-tricks-esp | ||
tomcat | ||
403-and-401-bypasses.md | ||
aem-adobe-experience-cloud.md | ||
angular.md | ||
apache.md | ||
artifactory-hacking-guide.md | ||
bolt-cms.md | ||
cgi.md | ||
code-review-tools.md | ||
dotnetnuke-dnn.md | ||
drupal.md | ||
flask.md | ||
git.md | ||
golang.md | ||
grafana.md | ||
graphql.md | ||
gwt-google-web-toolkit.md | ||
h2-java-sql-database.md | ||
iis-internet-information-services.md | ||
imagemagick-security.md | ||
jboss.md | ||
jira.md | ||
joomla.md | ||
jsp.md | ||
laravel.md | ||
moodle.md | ||
nextjs.md | ||
nginx.md | ||
nodejs-express.md | ||
prestashop.md | ||
put-method-webdav.md | ||
python.md | ||
README.md | ||
rocket-chat.md | ||
special-http-headers.md | ||
spring-actuators.md | ||
symphony.md | ||
tomcat.md | ||
uncovering-cloudflare.md | ||
vmware-esx-vcenter....md | ||
waf-bypass.md | ||
web-api-pentesting.md | ||
werkzeug.md | ||
wordpress.md |
80,443 - Pentesting Web Metodologija
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Obuka AWS Red Team Ekspert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Obuka GCP Red Team Ekspert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
#### Dobijte perspektivu hakera o vašim veb aplikacijama, mreži i oblaku
Pronađite i prijavite kritične, eksploatabilne ranjivosti sa stvarnim poslovnim uticajem. Koristite naših 20+ prilagođenih alata za mapiranje napada, pronalaženje bezbednosnih problema koji vam omogućavaju da eskalirate privilegije, i koristite automatizovane eksploate za prikupljanje suštinskih dokaza, pretvarajući vaš trud u uverljive izveštaje.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
Osnovne informacije
Veb servis je naj češći i opsežan servis i postoji mnogo različitih tipova ranjivosti.
Podrazumevani port: 80 (HTTP), 443(HTTPS)
PORT STATE SERVICE
80/tcp open http
443/tcp open ssl/https
nc -v domain.com 80 # GET / HTTP/1.0
openssl s_client -connect domain.com:443 # GET / HTTP/1.0
Web API Guidance
{% content-ref url="web-api-pentesting.md" %} web-api-pentesting.md {% endcontent-ref %}
Methodology summary
U ovoj metodologiji pretpostavljamo da ćete napasti domen (ili poddomen) i samo to. Dakle, trebali biste primeniti ovu metodologiju na svaki otkriveni domen, poddomen ili IP sa neodređenim web serverom unutar opsega.
- Počnite sa identifikovanjem tehnologija koje koristi web server. Potražite trikove koje treba imati na umu tokom ostatka testa ako uspešno identifikujete tehnologiju.
- Da li postoji neka poznata ranjivost verzije tehnologije?
- Koristite neku poznatu tehnologiju? Ima li nekog korisnog trika za izvlačenje više informacija?
- Da li postoji neki specijalizovani skener koji treba pokrenuti (kao što je wpscan)?
- Pokrenite skeneri opšte namene. Nikada ne znate da li će pronaći nešto ili ako će pronaći neku zanimljivu informaciju.
- Počnite sa početnim proverama: robots, sitemap, 404 greška i SSL/TLS sken (ako je HTTPS).
- Počnite sa spidering web stranice: Vreme je da pronađete sve moguće fajlove, foldere i parametre koji se koriste. Takođe, proverite za posebna otkrića.
- Imajte na umu da svaki put kada se otkrije novi direktorijum tokom brute-forcinga ili spideringa, treba ga spiderovati.
- Brute-Forcing direktorijuma: Pokušajte da brute-forcujete sve otkrivene foldere tražeći nove fajlove i direktorijume.
- Imajte na umu da svaki put kada se otkrije novi direktorijum tokom brute-forcinga ili spideringa, treba ga Brute-Forcovati.
- Proveravanje rezervnih kopija: Testirajte da li možete pronaći rezervne kopije otkrivenih fajlova dodajući uobičajene ekstenzije rezervnih kopija.
- Brute-Force parametri: Pokušajte da pronađete skrivene parametre.
- Kada ste identifikovali sve moguće endpointe koji prihvataju korisnički unos, proverite sve vrste ranjivosti povezane s tim.
- Pratite ovu kontrolnu listu
Server Version (Vulnerable?)
Identify
Proverite da li postoje poznate ranjivosti za verziju servera koja se koristi.
HTTP zaglavlja i kolačići odgovora mogu biti veoma korisni za identifikaciju tehnologija i/ili verzije koja se koristi. Nmap sken može identifikovati verziju servera, ali takođe mogu biti korisni alati whatweb, webtech ili https://builtwith.com/:
whatweb -a 1 <URL> #Stealthy
whatweb -a 3 <URL> #Aggresive
webtech -u <URL>
webanalyze -host https://google.com -crawl 2
Search for ranjivosti web aplikacije verzije
Proverite da li postoji neki WAF
- https://github.com/EnableSecurity/wafw00f
- https://github.com/Ekultek/WhatWaf.git
- https://nmap.org/nsedoc/scripts/http-waf-detect.html
Web tehnološke trikove
Neki trikovi za pronalazak ranjivosti u različitim poznatim tehnologijama koje se koriste:
- AEM - Adobe Experience Cloud
- Apache
- Artifactory
- Buckets
- CGI
- Drupal
- Flask
- Git
- Golang
- GraphQL
- H2 - Java SQL baza podataka
- IIS trikovi
- JBOSS
- Jenkins
- Jira
- Joomla
- JSP
- Laravel
- Moodle
- Nginx
- PHP (php ima mnogo zanimljivih trikova koji se mogu iskoristiti)
- Python
- Spring Actuators
- Symphony
- Tomcat
- VMWare
- Web API Pentesting
- WebDav
- Werkzeug
- Wordpress
- Electron Desktop (XSS do RCE)
Uzmite u obzir da isti domen može koristiti različite tehnologije na različitim portovima, folderima i poddomenama.
Ako web aplikacija koristi neku poznatu tehnologiju/platformu navedenu ranije ili bilo koju drugu, ne zaboravite da pretražujete Internet za nove trikove (i javite mi!).
Pregled izvornog koda
Ako je izvorni kod aplikacije dostupan na github, pored izvođenja sopstvenog White box testa aplikacije, postoji neka informacija koja bi mogla biti korisna za trenutni Black-Box testiranje:
- Da li postoji Change-log ili Readme ili Verzija fajl ili bilo šta sa informacijama o verziji dostupnim putem weba?
- Kako i gde su sačuvane akreditivi? Da li postoji neka (dostupna?) datoteka sa akreditivima (korisničkim imenima ili lozinkama)?
- Da li su lozinke u običnom tekstu, kriptovane ili koji hash algoritam se koristi?
- Da li se koristi neki glavni ključ za kriptovanje nečega? Koji algoritam se koristi?
- Možete li pristupiti bilo kojoj od ovih datoteka iskorišćavajući neku ranjivost?
- Da li postoji neka zanimljiva informacija na github-u (rešeni i nerešeni) problemi? Ili u istoriji commit-a (možda neka lozinka uvedena unutar starog commita)?
{% content-ref url="code-review-tools.md" %} code-review-tools.md {% endcontent-ref %}
Automatski skeneri
Automatski skeneri opšte namene
nikto -h <URL>
whatweb -a 4 <URL>
wapiti -u <URL>
W3af
zaproxy #You can use an API
nuclei -ut && nuclei -target <URL>
# https://github.com/ignis-sec/puff (client side vulns fuzzer)
node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi2rVUN/?query=FUZZ"
CMS skeneri
Ako se koristi CMS, ne zaboravite da pokrenete skener, možda će se pronaći nešto sočno:
Clusterd: JBoss, ColdFusion, WebLogic, Tomcat, Railo, Axis2, Glassfish
CMSScan: WordPress, Drupal, Joomla, vBulletin vebsajtovi za bezbednosne probleme. (GUI)
VulnX: Joomla, Wordpress, Drupal, PrestaShop, Opencart
CMSMap: (W)ordpress, (J)oomla, (D)rupal ili (M)oodle
droopscan: Drupal, Joomla, Moodle, Silverstripe, Wordpress
cmsmap [-f W] -F -d <URL>
wpscan --force update -e --url <URL>
joomscan --ec -u <URL>
joomlavs.rb #https://github.com/rastating/joomlavs
U ovom trenutku već biste trebali imati neke informacije o web serveru koji koristi klijent (ako su dostupni podaci) i neke trikove koje treba imati na umu tokom testa. Ako imate sreće, možda ste čak pronašli CMS i pokrenuli neki skener.
Korak-po-korak otkrivanje web aplikacija
Od ovog trenutka počinjemo da komuniciramo sa web aplikacijom.
Početne provere
Podrazumevane stranice sa zanimljivim informacijama:
- /robots.txt
- /sitemap.xml
- /crossdomain.xml
- /clientaccesspolicy.xml
- /.well-known/
- Takođe proverite komentare na glavnim i sekundarnim stranicama.
Prisiljavanje grešaka
Web serveri mogu nepredvidivo reagovati kada im se šalju čudni podaci. Ovo može otvoriti ranjivosti ili otkriti osetljive informacije.
- Pristupite lažnim stranicama kao što su /whatever_fake.php (.aspx,.html,.etc)
- Dodajte "[]", "]]", i "[[" u vrednosti kolačića i vrednosti parametara da biste izazvali greške
- Generišite grešku tako što ćete dati unos kao
/~randomthing/%s
na kraj URL-a - Pokušajte sa različitim HTTP metodama kao što su PATCH, DEBUG ili pogrešnim kao FAKE
Proverite da li možete da otpremite fajlove (PUT metod, WebDav)
Ako otkrijete da je WebDav omogućen ali nemate dovoljno dozvola za otpremanje fajlova u root folder, pokušajte da:
- Brute Force kredencijale
- Otpremite fajlove putem WebDav u ostale pronađene foldere unutar web stranice. Možda imate dozvole za otpremanje fajlova u drugim folderima.
SSL/TLS ranjivosti
- Ako aplikacija ne prisiljava korisnika na HTTPS u bilo kojem delu, onda je ranjiva na MitM
- Ako aplikacija šalje osetljive podatke (lozinke) koristeći HTTP. Tada je to visoka ranjivost.
Koristite testssl.sh za proveru ranjivosti (U Bug Bounty programima verovatno ove vrste ranjivosti neće biti prihvaćene) i koristite a2sv za ponovnu proveru ranjivosti:
./testssl.sh [--htmlfile] 10.10.10.10:443
#Use the --htmlfile to save the output inside an htmlfile also
# You can also use other tools, by testssl.sh at this momment is the best one (I think)
sslscan <host:port>
sslyze --regular <ip:port>
Information about SSL/TLS vulnerabilities:
- https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/
- https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/
Spidering
Pokrenite neku vrstu spider unutar veba. Cilj spider-a je da pronađe što više puteva iz testirane aplikacije. Stoga, web crawling i spoljašnji izvori treba da se koriste za pronalaženje što više validnih puteva.
- gospider (go): HTML spider, LinkFinder u JS datotekama i spoljašnji izvori (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
- hakrawler (go): HML spider, sa LinkFinder-om za JS datoteke i Archive.org kao spoljašnjim izvorom.
- dirhunt (python): HTML spider, takođe označava "sočne datoteke".
- evine (go): Interaktivni CLI HTML spider. Takođe pretražuje u Archive.org.
- meg (go): Ovaj alat nije spider, ali može biti koristan. Možete jednostavno naznačiti datoteku sa hostovima i datoteku sa putevima, a meg će preuzeti svaki put na svakom hostu i sačuvati odgovor.
- urlgrab (go): HTML spider sa mogućnostima renderovanja JS-a. Međutim, izgleda da nije održavan, prekompajlirana verzija je stara i trenutni kod se ne kompajlira.
- gau (go): HTML spider koji koristi spoljne provajdere (wayback, otx, commoncrawl).
- ParamSpider: Ovaj skript će pronaći URL-ove sa parametrima i navesti ih.
- galer (go): HTML spider sa mogućnostima renderovanja JS-a.
- LinkFinder (python): HTML spider, sa JS beautify mogućnostima sposobnim za pretragu novih puteva u JS datotekama. Takođe bi bilo korisno pogledati JSScanner, koji je omotač LinkFinder-a.
- goLinkFinder (go): Za ekstrakciju krajnjih tačaka u HTML izvoru i ugrađenim javascript datotekama. Korisno za lovce na greške, red timere, infosec nindže.
- JSParser (python2.7): Python 2.7 skript koji koristi Tornado i JSBeautifier za parsiranje relativnih URL-ova iz JavaScript datoteka. Korisno za lako otkrivanje AJAX zahteva. Izgleda da nije održavan.
- relative-url-extractor (ruby): Dajući datoteku (HTML) iz nje će izvući URL-ove koristeći pametnu regularnu ekspresiju za pronalaženje i ekstrakciju relativnih URL-ova iz ružnih (minify) datoteka.
- JSFScan (bash, nekoliko alata): Prikupi zanimljive informacije iz JS datoteka koristeći nekoliko alata.
- subjs (go): Pronađi JS datoteke.
- page-fetch (go): Učitaj stranicu u headless pretraživaču i ispiši sve URL-ove učitane za učitavanje stranice.
- Feroxbuster (rust): Alat za otkrivanje sadržaja koji kombinuje nekoliko opcija prethodnih alata.
- Javascript Parsing: Burp ekstenzija za pronalaženje puteva i parametara u JS datotekama.
- Sourcemapper: Alat koji, dajući .js.map URL, dobijate beautified JS kod.
- xnLinkFinder: Ovaj alat se koristi za otkrivanje krajnjih tačaka za dati cilj.
- waymore: Otkrijte linkove iz wayback mašine (takođe preuzimajući odgovore u wayback i tražeći više linkova).
- HTTPLoot (go): Crawlujte (čak i popunjavanjem obrazaca) i takođe pronađite osetljive informacije koristeći specifične regex-e.
- SpiderSuite: Spider Suite je napredni GUI web sigurnosni crawler/spider dizajniran za profesionalce u sajber bezbednosti.
- jsluice (go): To je Go paket i alat komandne linije za ekstrakciju URL-ova, puteva, tajni i drugih zanimljivih podataka iz JavaScript izvornog koda.
- ParaForge: ParaForge je jednostavna Burp Suite ekstenzija za ekstrakciju parametara i krajnjih tačaka iz zahteva za kreiranje prilagođene rečnika za fuzzing i enumeraciju.
- katana (go): Sjajan alat za ovo.
- Crawley (go): Ispiši svaki link koji može pronaći.
Brute Force directories and files
Započnite brute-forcing iz root foldera i budite sigurni da brute-force-ujete sve direktorijume pronađene koristeći ovu metodu i sve direktorijume otkrivene putem Spidering-a (možete ovo brute-forcing rekurzivno i dodati na početak korišćenog rečnika imena pronađenih direktorijuma).
Alati:
- Dirb / Dirbuster - Uključeno u Kali, staro (i sporo) ali funkcionalno. Dozvoljava automatski potpisane sertifikate i rekurzivnu pretragu. Previše sporo u poređenju sa drugim opcijama.
- Dirsearch (python): Ne dozvoljava automatski potpisane sertifikate, ali dozvoljava rekurzivnu pretragu.
- Gobuster (go): Dozvoljava automatski potpisane sertifikate, nema rekurzivnu pretragu.
- Feroxbuster - Brz, podržava rekurzivnu pretragu.
- wfuzz
wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ
- ffuf - Brz:
ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ
- uro (python): Ovo nije spider, već alat koji, dajući listu pronađenih URL-ova, briše "duplikate" URL-ova.
- Scavenger: Burp ekstenzija za kreiranje liste direktorijuma iz burp istorije različitih stranica.
- TrashCompactor: Uklanja URL-ove sa duplim funkcionalnostima (na osnovu js uvoza).
- Chamaleon: Koristi wapalyzer za otkrivanje korišćenih tehnologija i odabir rečnika za korišćenje.
Preporučeni rečnici:
- https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/bf_directories.txt
- Dirsearch uključeni rečnik
- http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10
- Assetnote wordlists
- https://github.com/danielmiessler/SecLists/tree/master/Discovery/Web-Content
- raft-large-directories-lowercase.txt
- directory-list-2.3-medium.txt
- RobotsDisallowed/top10000.txt
- https://github.com/random-robbie/bruteforce-lists
- https://github.com/google/fuzzing/tree/master/dictionaries
- https://github.com/six2dez/OneListForAll
- https://github.com/random-robbie/bruteforce-lists
- https://github.com/ayoubfathi/leaky-paths
- /usr/share/wordlists/dirb/common.txt
- /usr/share/wordlists/dirb/big.txt
- /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
Napomena da svaki put kada se otkrije novi direktorijum tokom brute-forcing-a ili spidering-a, treba ga Brute-Force-ovati.
What to check on each file found
- Broken link checker: Pronađite pokvarene linkove unutar HTML-a koji mogu biti podložni preuzimanju.
- Backup datoteke: Kada pronađete sve datoteke, potražite backup svih izvršnih datoteka (".php", ".aspx"...). Uobičajene varijacije za imenovanje backup-a su: file.ext~, #file.ext#, ~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp i file.old. Takođe možete koristiti alat bfac ili backup-gen.
- Otkrijte nove parametre: Možete koristiti alate kao što su Arjun, parameth, x8 i Param Miner za otkrivanje skrivenih parametara. Ako možete, mogli biste pokušati da pretražujete skrivene parametre u svakoj izvršnoj web datoteci.
- Arjun svi podrazumevani rečnici: https://github.com/s0md3v/Arjun/tree/master/arjun/db
- Param-miner “params” : https://github.com/PortSwigger/param-miner/blob/master/resources/params
- Assetnote “parameters_top_1m”: https://wordlists.assetnote.io/
- nullenc0de “params.txt”: https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773
- Komentari: Proverite komentare svih datoteka, možete pronaći akreditive ili skrivenu funkcionalnost.
- Ako se igrate CTF, "uobičajen" trik je da sakrijete informacije unutar komentara na desnoj strani stranice (koristeći stotine razmaka tako da ne vidite podatke ako otvorite izvorni kod u pretraživaču). Druga mogućnost je da koristite nekoliko novih redova i sakrijete informacije u komentaru na dnu web stranice.
- API ključevi: Ako pronađete bilo koji API ključ postoji vodič koji ukazuje kako koristiti API ključeve različitih platformi: keyhacks, zile, truffleHog, SecretFinder, RegHex, DumpsterDive, EarlyBird.
- Google API ključevi: Ako pronađete bilo koji API ključ koji izgleda kao AIzaSyA-qLheq6xjDiEIRisP_ujUseYLQCHUjik možete koristiti projekat gmapapiscanner da proverite koje API-je ključ može pristupiti.
- S3 Buckets: Tokom spidering-a proverite da li je neki subdomen ili neki link povezan sa nekim S3 bucket-om. U tom slučaju, proverite dozvole bucket-a.
Special findings
Dok obavljate spidering i brute-forcing mogli biste pronaći zanimljive stvari koje treba da primetite.
Zanimljive datoteke
- Potražite linkove ka drugim datotekama unutar CSS datoteka.
- Ako pronađete .git datoteku, neka informacija može biti ekstraktovana.
- Ako pronađete .env informacije kao što su API ključevi, lozinke baza podataka i druge informacije mogu se pronaći.
- Ako pronađete API krajnje tačke trebalo bi ih takođe testirati. Ove nisu datoteke, ali će verovatno "izgledati kao" njih.
- JS datoteke: U sekciji spidering pomenuti su nekoliko alata koji mogu ekstraktovati putanju iz JS datoteka. Takođe, bilo bi zanimljivo pratiti svaku pronađenu JS datoteku, jer u nekim slučajevima, promena može ukazivati na to da je potencijalna ranjivost uvedena u kod. Možete koristiti, na primer, JSMon.
- Takođe biste trebali proveriti otkrivene JS datoteke sa RetireJS ili JSHole da biste saznali da li su ranjive.
- Javascript Deobfuscator i Unpacker: https://lelinhtinh.github.io/de4js/, https://www.dcode.fr/javascript-unobfuscator.
- Javascript Beautifier: http://jsbeautifier.org/, http://jsnice.org/.
- JsFuck deobfuscation (javascript sa karakterima:"[]!+" https://ooze.ninja/javascript/poisonjs/).
- TrainFuck:
+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.
- U nekoliko slučajeva biće potrebno da razumete regularne izraze koji se koriste, ovo će biti korisno: https://regex101.com/.
- Takođe možete pratiti datoteke u kojima su obrasci otkriveni, jer promena u parametru ili pojava novog obrasca može ukazivati na potencijalnu novu ranjivu funkcionalnost.
403 Forbidden/Basic Authentication/401 Unauthorized (bypass)
{% content-ref url="403-and-401-bypasses.md" %} 403-and-401-bypasses.md {% endcontent-ref %}
502 Proxy Error
Ako neka stranica odgovori sa tim kodom, verovatno je to loše konfigurisani proxy. Ako pošaljete HTTP zahtev kao: GET https://google.com HTTP/1.1
(sa host header-om i drugim uobičajenim header-ima), proxy će pokušati da pristupi google.com i pronašli ste SSRF.
NTLM Authentication - Info disclosure
Ako server koji radi traži autentifikaciju je Windows ili pronađete prijavu koja traži vaše akreditive (i traži ime domena), možete izazvati otkrivanje informacija.
Pošaljite header: “Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”
i zbog načina na koji NTLM autentifikacija funkcioniše, server će odgovoriti sa internim informacijama (IIS verzija, Windows verzija...) unutar header-a "WWW-Authenticate".
Možete automatizovati ovo koristeći nmap plugin "http-ntlm-info.nse".
HTTP Redirect (CTF)
Moguće je staviti sadržaj unutar Redirekcije. Ovaj sadržaj neće biti prikazan korisniku (jer će pretraživač izvršiti redirekciju), ali nešto bi moglo biti sakriveno unutra.
Web Vulnerabilities Checking
Sada kada je izvršena sveobuhvatna enumeracija web aplikacije, vreme je da proverite mnogo mogućih ranjivosti. Možete pronaći kontrolnu listu ovde:
{% content-ref url="../../pentesting-web/web-vulnerabilities-methodology.md" %} web-vulnerabilities-methodology.md {% endcontent-ref %}
Pronađite više informacija o web ranjivostima na:
- https://six2dez.gitbook.io/pentest-book/others/web-checklist
- https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web_application_security_testing/configuration_and_deployment_management_testing.html
- https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection
Monitor Pages for changes
Možete koristiti alate kao što su https://github.com/dgtlmoon/changedetection.io za praćenje stranica zbog modifikacija koje bi mogle umetnuti ranjivosti.
#### Get a hacker's perspective on your web apps, network, and cloud
Find and report critical, exploitable vulnerabilities with real business impact. Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
HackTricks Automatic Commands
Protocol_Name: Web #Protocol Abbreviation if there is one.
Port_Number: 80,443 #Comma separated if there is more than one.
Protocol_Description: Web #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for Web
Note: |
https://book.hacktricks.xyz/pentesting/pentesting-web
Entry_2:
Name: Quick Web Scan
Description: Nikto and GoBuster
Command: nikto -host {Web_Proto}://{IP}:{Web_Port} &&&& gobuster dir -w {Small_Dirlist} -u {Web_Proto}://{IP}:{Web_Port} && gobuster dir -w {Big_Dirlist} -u {Web_Proto}://{IP}:{Web_Port}
Entry_3:
Name: Nikto
Description: Basic Site Info via Nikto
Command: nikto -host {Web_Proto}://{IP}:{Web_Port}
Entry_4:
Name: WhatWeb
Description: General purpose auto scanner
Command: whatweb -a 4 {IP}
Entry_5:
Name: Directory Brute Force Non-Recursive
Description: Non-Recursive Directory Brute Force
Command: gobuster dir -w {Big_Dirlist} -u {Web_Proto}://{IP}:{Web_Port}
Entry_6:
Name: Directory Brute Force Recursive
Description: Recursive Directory Brute Force
Command: python3 {Tool_Dir}dirsearch/dirsearch.py -w {Small_Dirlist} -e php,exe,sh,py,html,pl -f -t 20 -u {Web_Proto}://{IP}:{Web_Port} -r 10
Entry_7:
Name: Directory Brute Force CGI
Description: Common Gateway Interface Brute Force
Command: gobuster dir -u {Web_Proto}://{IP}:{Web_Port}/ -w /usr/share/seclists/Discovery/Web-Content/CGIs.txt -s 200
Entry_8:
Name: Nmap Web Vuln Scan
Description: Tailored Nmap Scan for web Vulnerabilities
Command: nmap -vv --reason -Pn -sV -p {Web_Port} --script=`banner,(http* or ssl*) and not (brute or broadcast or dos or external or http-slowloris* or fuzzer)` {IP}
Entry_9:
Name: Drupal
Description: Drupal Enumeration Notes
Note: |
git clone https://github.com/immunIT/drupwn.git for low hanging fruit and git clone https://github.com/droope/droopescan.git for deeper enumeration
Entry_10:
Name: WordPress
Description: WordPress Enumeration with WPScan
Command: |
?What is the location of the wp-login.php? Example: /Yeet/cannon/wp-login.php
wpscan --url {Web_Proto}://{IP}{1} --enumerate ap,at,cb,dbe && wpscan --url {Web_Proto}://{IP}{1} --enumerate u,tt,t,vp --passwords {Big_Passwordlist} -e
Entry_11:
Name: WordPress Hydra Brute Force
Description: Need User (admin is default)
Command: hydra -l admin -P {Big_Passwordlist} {IP} -V http-form-post '/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log In&testcookie=1:S=Location'
Entry_12:
Name: Ffuf Vhost
Description: Simple Scan with Ffuf for discovering additional vhosts
Command: ffuf -w {Subdomain_List}:FUZZ -u {Web_Proto}://{Domain_Name} -H "Host:FUZZ.{Domain_Name}" -c -mc all {Ffuf_Filters}
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.