hacktricks/network-services-pentesting/pentesting-web
2024-11-09 13:54:55 +00:00
..
buckets Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
drupal Translated ['binary-exploitation/libc-heap/README.md', 'binary-exploitat 2024-09-23 23:34:33 +00:00
electron-desktop-apps Translated ['binary-exploitation/libc-heap/README.md', 'binary-exploitat 2024-09-19 16:39:54 +00:00
php-tricks-esp Translated ['README.md', 'generic-methodologies-and-resources/python/byp 2024-11-09 13:54:55 +00:00
tomcat Translated ['README.md', 'crypto-and-stego/hash-length-extension-attack. 2024-09-04 13:34:45 +00:00
403-and-401-bypasses.md Translated ['README.md', 'generic-methodologies-and-resources/python/byp 2024-11-09 13:54:55 +00:00
aem-adobe-experience-cloud.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
angular.md Translated to Serbian 2024-02-10 13:11:20 +00:00
apache.md Translated ['network-services-pentesting/pentesting-web/apache.md', 'pen 2024-08-19 11:12:07 +00:00
artifactory-hacking-guide.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
bolt-cms.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
cgi.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
code-review-tools.md Translated ['network-services-pentesting/pentesting-web/code-review-tool 2024-09-27 11:27:55 +00:00
dotnetnuke-dnn.md Translated ['crypto-and-stego/cryptographic-algorithms/unpacking-binarie 2024-07-19 04:51:32 +00:00
drupal.md Translated ['README.md', 'binary-exploitation/arbitrary-write-2-exec/aw2 2024-05-05 22:40:09 +00:00
flask.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
git.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
golang.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
grafana.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
graphql.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
gwt-google-web-toolkit.md Translated to Serbian 2024-02-10 13:11:20 +00:00
h2-java-sql-database.md Translated ['README.md', 'binary-exploitation/format-strings/README.md', 2024-11-09 13:26:54 +00:00
iis-internet-information-services.md Translated ['README.md', 'crypto-and-stego/hash-length-extension-attack. 2024-09-04 13:34:45 +00:00
imagemagick-security.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
jboss.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
jira.md Translated ['binary-exploitation/libc-heap/README.md', 'binary-exploitat 2024-09-23 23:34:33 +00:00
joomla.md Translated ['network-services-pentesting/pentesting-web/drupal/README.md 2024-08-21 09:10:01 +00:00
jsp.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
laravel.md Translated ['binary-exploitation/basic-stack-binary-exploitation-methodo 2024-07-18 22:15:30 +00:00
moodle.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
nextjs.md Translated ['network-services-pentesting/pentesting-web/nextjs.md', 'pen 2024-08-18 15:54:46 +00:00
nginx.md Translated ['README.md', 'generic-methodologies-and-resources/python/byp 2024-11-09 13:54:55 +00:00
nodejs-express.md Translated to Serbian 2024-02-10 13:11:20 +00:00
prestashop.md Translated ['network-services-pentesting/pentesting-web/drupal/README.md 2024-08-21 09:10:01 +00:00
put-method-webdav.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
python.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
README.md Translated ['README.md', 'generic-methodologies-and-resources/python/byp 2024-11-09 13:54:55 +00:00
rocket-chat.md Translated ['generic-methodologies-and-resources/pentesting-methodology. 2024-08-31 16:27:44 +00:00
special-http-headers.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
spring-actuators.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
symphony.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
tomcat.md Translated ['README.md', 'crypto-and-stego/hash-length-extension-attack. 2024-09-04 13:34:45 +00:00
uncovering-cloudflare.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-07-19 11:41:39 +00:00
vmware-esx-vcenter....md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:15:49 +00:00
waf-bypass.md Translated to Serbian 2024-02-10 13:11:20 +00:00
web-api-pentesting.md Translated ['mobile-pentesting/android-app-pentesting/apk-decompilers.md 2024-11-05 18:08:36 +00:00
werkzeug.md Translated ['README.md', 'generic-methodologies-and-resources/python/byp 2024-11-09 13:54:55 +00:00
wordpress.md Translated ['network-services-pentesting/pentesting-web/drupal/README.md 2024-08-21 09:10:01 +00:00

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
{% endhint %}

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čke površine, pronalaženje sigurnosnih 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 najviše uobičajen 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 za pokretanje (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 spideringom 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

Web tehnološke trikove

Neki trikovi za pronalazak ranjivosti u različitim poznatim tehnologijama koje se koriste:

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žite 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 veba?
  • 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 unesena 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 veb sajtovi 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 uneti /~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:

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 pretraživanje 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 ninje.
  • 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-forcujete sve direktorijume pronađene koristeći ovu metodu i sve direktorijume otkrivene od strane 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 rekurzivno pretraživanje. Previše sporo u poređenju sa drugim opcijama.
  • Dirsearch (python): Ne dozvoljava automatski potpisane sertifikate, ali dozvoljava rekurzivno pretraživanje.
  • Gobuster (go): Dozvoljava automatski potpisane sertifikate, nema rekurzivno pretraživanje.
  • Feroxbuster - Brz, podržava rekurzivno pretraživanje.
  • 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:

Napomena da svaki put kada se otkrije novi direktorijum tokom brute-forcing-a ili spidering-a, treba ga Brute-Forcovati.

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.
  • Otkrivanje novih parametara: 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-jeve 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

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 odgovara 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 (verzija IIS-a, verzija Windows-a...) 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:

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 uvesti ranjivosti.

Dobijte perspektivu hakera na vaše web aplikacije, mrežu i cloud

Pronađite i prijavite kritične, eksploatabilne ranjivosti sa stvarnim poslovnim uticajem. Koristite naših 20+ prilagođenih alata za mapiranje napadačke površine, pronalaženje sigurnosnih 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" %}

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
{% endhint %}