<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite svoju **kompaniju reklamiranu na HackTricks-u** ili da **preuzmete HackTricks u PDF formatu** proverite [**PLANOVE ZA PRIJATELJSTVO**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitteru** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
Ako ste zainteresovani za **karijeru u hakovanju** i hakovanje onoga što se ne može hakovati - **zapošljavamo!** (_potrebno je tečno poznavanje poljskog jezika, kako pismeno tako i usmeno_).
> U ovoj metodologiji pretpostavljamo da ćete napasti domen (ili poddomen) i samo to. Stoga, trebalo bi primeniti ovu metodologiju na svaki otkriveni domen, poddomen ili IP sa nepoznatim web serverom unutar opsega.
* [ ] Počnite sa **identifikacijom** korišćenih **tehnologija** web servera. Potražite **tričarije** koje treba imati na umu tokom ostatka testa ako uspešno identifikujete tehnologiju.
* [ ] Počnite sa **spideringom** web stranice: Vreme je da **pronađete** sve moguće **datoteke, fascikle** i **parametre koji se koriste**. Takođe, proverite **specijalna otkrića**.
* [ ]_Imajte na umu da svaki put kada se otkrije nova fascikla tokom brute-forcinga ili spideringa, treba je spiderovati._
* [ ]**Brute-Force direktorijuma**: Pokušajte da brute force-ujete sve otkrivene fascikle tražeći nove **datoteke** i **direktorijume**.
* [ ]_Imajte na umu da svaki put kada se otkrije nova fascikla tokom brute-forcinga ili spideringa, treba je Brute-Force-ovati._
* [ ]**Provera rezervnih kopija**: Testirajte da li možete pronaći **rezervne kopije** otkrivenih datoteka dodavanjem uobičajenih ekstenzija za rezervne kopije.
* [ ] Kada ste **identifikovali** sve moguće **krajnje tačke** koje prihvataju **korisnički unos**, proverite sve vrste **ranjivosti** povezane sa tim.
**HTTP zaglavlja i kolačići odgovora** mogu biti veoma korisni za **identifikaciju** korišćenih **tehnologija** i/ili **verzije**. **Nmap skeniranje** može identifikovati verziju servera, ali mogu biti korisni i alati [**whatweb**](https://github.com/urbanadventurer/WhatWeb)**,** [**webtech** ](https://github.com/ShielderSec/webtech)ili [**https://builtwith.com/**](https://builtwith.com)**:**
Ako veb aplikacija koristi neku od dobro poznatih **tehnologija/platformi navedenih ranije** ili **bilo koju drugu**, ne zaboravite da **pretražite Internet** za nove trikove (i obavestite me!).
Ako je **izvorni kod** aplikacije dostupan na **githubu**, osim što ćete sami izvršiti **White box test** aplikacije, postoji **neke informacije** koje bi mogle biti **korisne** za trenutno **Black-Box testiranje**:
* Da li postoji neka **zanimljiva informacija na githubu** (rešeni i nerešeni) **problemi**? Ili u **istoriji commitova** (možda neka **lozinka uneta unutar starog commita**)?
> U ovom trenutku već biste trebali imati neke informacije o web serveru koji koristi klijent (ako su dostupni podaci) i neke trikove na umu tokom testa. Ako imate sreće, možda ste čak pronašli CMS i pokrenuli neki skener.
* **Otpremite fajlove** putem WebDav-a u **ostale** pronađene foldere unutar web stranice. Možda imate dozvole za otpremanje fajlova u drugim folderima.
Koristite [**testssl.sh**](https://github.com/drwetter/testssl.sh) za provere **ranjivosti** (U programima za Bug Bounty verovatno ove vrste ranjivosti neće biti prihvaćene) i koristite [**a2sv** ](https://github.com/hahwul/a2sv) za ponovnu proveru ranjivosti:
Pokrenite neku vrstu **spidera** unutar veba. Cilj spajdera je da **pronađe što više putanja** kao moguće iz testirane aplikacije. Stoga, pretraživanje veba i spoljni izvori treba da se koriste kako bi se pronašlo što više validnih putanja.
* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML spider, LinkFinder u JS fajlovima i spoljni izvori (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
* [**meg**](https://github.com/tomnomnom/meg) (go): Ovaj alat nije spider ali može biti koristan. Možete samo naznačiti fajl sa hostovima i fajl sa putanjama i meg će dohvatiti svaku putanju na svakom hostu i sačuvati odgovor.
* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): HTML spider sa mogućnostima JS renderovanja. Međutim, izgleda da nije održavan, prekompajlirana verzija je stara i trenutni kod se ne kompajlira.
* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): HTML spider, sa mogućnostima JS lepote sposoban da traži nove putanje u JS fajlovima. Takođe bi bilo vredno pogledati i [JSScanner](https://github.com/dark-warlord14/JSScanner), koji je omotač za LinkFinder.
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): Za izdvajanje krajnjih tačaka u HTML izvornom kodu i ugrađenim JS fajlovima. Korisno za lovce na bagove, timove crvenih šešira, infosec ninje.
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): Python 2.7 skript koji koristi Tornado i JSBeautifier za parsiranje relativnih URL-ova iz JavaScript fajlova. Korisno za lako otkrivanje AJAX zahteva. Izgleda da nije održavan.
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): Dajući fajl (HTML) izvući će URL-ove iz njega koristeći pametne regularne izraze za pronalaženje i izdvajanje relativnih URL-ova iz ružnih (minifikovanih) fajlova.
* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, nekoliko alata): Sakuplja interesantne informacije iz JS fajlova koristeći nekoliko alata.
* [**page-fetch**](https://github.com/detectify/page-fetch) (go): Učitava stranicu u headless pretraživaču i ispisuje sve učitane URL-ove za učitavanje stranice.
* [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder): Ovo je alat koji se koristi za otkrivanje krajnjih tačaka za dati cilj.
* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** Otkrijte linkove sa wayback mašine (takođe preuzimajući odgovore u wayback i tražeći više linkova
* [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go): Pretražujte (čak i popunjavanjem formi) i takođe pronađite osetljive informacije koristeći specifične regexe.
* [**SpiderSuite**](https://github.com/3nock/SpiderSuite): Spider Suite je napredni višefunkcionalni GUI web sigurnosni Crawler/Spider dizajniran za profesionalce u oblasti sajber sigurnosti.
* [**jsluice**](https://github.com/BishopFox/jsluice) (go): To je Go paket i [komandno-linijski alat](https://github.com/BishopFox/jsluice/blob/main/cmd/jsluice) za izdvajanje URL-ova, putanja, tajni i drugih interesantnih podataka iz izvornog koda JavaScript-a.
* [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge je jednostavno **Burp Suite proširenje** za **izdvajanje parametara i krajnjih tačaka** iz zahteva kako bi se kreirala prilagođena lista reči za fuzzing i enumeraciju.
Počnite **brute-forcing** od korenskog foldera i budite sigurni da **brute-forceujete****sve****pronađene direktorijume** koristeći **ovu metodu** i sve direktorijume **otkrivene** pomoću **Spideringa** (možete ovo brute-forcing raditi **rekurzivno** i dodavati na početak korišćene liste reči imena pronađenih direktorijuma).\
* **Dirb** / **Dirbuster** - Uključen u Kali, **star** (i **spor**) ali funkcionalan. Dozvoljava auto-potpisane sertifikate i rekurzivnu pretragu. Previše spor u poređenju sa drugim opcijama.
* [**Provera pokvarenih linkova**](https://github.com/stevenvachon/broken-link-checker): Pronađite pokvarene linkove unutar HTML-ova koji mogu biti podložni preuzimanju
* **Rezervne kopije fajlova**: Kada pronađete sve fajlove, potražite rezervne kopije svih izvršnih fajlova ("_.php_", "_.aspx_"...). Uobičajene varijacije za nazivanje rezervne kopije su: _file.ext\~, #file.ext#, \~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp i file.old._ Možete koristiti alat [**bfac**](https://github.com/mazen160/bfac) **ili** [**backup-gen**](https://github.com/Nishantbhagat57/backup-gen)**.**
* **Otkrijte nove parametre**: Možete koristiti alate poput [**Arjun**](https://github.com/s0md3v/Arjun)**,** [**parameth**](https://github.com/maK-/parameth)**,** [**x8**](https://github.com/sh1yo/x8) **i** [**Param Miner**](https://github.com/PortSwigger/param-miner) **za otkrivanje skrivenih parametara. Ako možete, možete pokušati da pronađete** skrivene parametre na svakom izvršnom veb fajlu.
* _Arjun svi podrazumevani wordlistovi:_ [https://github.com/s0md3v/Arjun/tree/master/arjun/db](https://github.com/s0md3v/Arjun/tree/master/arjun/db)
* **Komentari:** Proverite komentare svih fajlova, možete pronaći **kredencijale** ili **skrivenu funkcionalnost**.
* Ako igrate **CTF**, "obična" prevara je **sakriti****informacije** unutar komentara na **desnoj** strani **stranice** (koristeći **stotine****razmaka** kako ne biste videli podatke ako otvorite izvorni kod pretraživačem). Druga mogućnost je koristiti **nekoliko novih linija** i **sakriti informacije** u komentaru na **dnu** veb stranice.
* **API ključevi**: Ako **pronađete bilo koji API ključ** postoji vodič koji pokazuje kako koristiti API ključeve različitih platformi: [**keyhacks**](https://github.com/streaak/keyhacks)**,** [**zile**](https://github.com/xyele/zile.git)**,** [**truffleHog**](https://github.com/trufflesecurity/truffleHog)**,** [**SecretFinder**](https://github.com/m4ll0k/SecretFinder)**,** [**RegHex**](https://github.com/l4yton/RegHex\)/)**,** [**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,** [**EarlyBird**](https://github.com/americanexpress/earlybird)
* Google API ključevi: Ako pronađete bilo koji API ključ koji izgleda kao **AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik možete koristiti projekat [**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner) da proverite koje API-jeve ključ može pristupiti.
* **S3 Bucketi**: Dok spideringa, proverite da li je bilo koji **poddomen** ili bilo koji **link** povezan sa nekim **S3 bucketom**. U tom slučaju, [**proverite** dozvole **bucket-a**](buckets/).
* Ako pronađete **API endpointe** trebalo bi ih [testirati](web-api-pentesting.md). Ovo nisu fajlovi, ali će verovatno "izgledati kao" fajlovi.
* **JS fajlovi**: U delu o spideringu pomenuti su neki alati koji mogu izvući putanje iz JS fajlova. Takođe, bilo bi interesantno **pratiti svaki pronađeni JS fajl**, jer u nekim situacijama, promena može ukazivati da je potencijalna ranjivost uneta u kod. Možete koristiti na primer [**JSMon**](https://github.com/robre/jsmon)**.**
* Takođe biste trebali proveriti pronađene JS fajlove sa [**RetireJS**](https://github.com/retirejs/retire.js/) ili [**JSHole**](https://github.com/callforpapers-source/jshole) da biste videli da li su ranjivi.
* U nekoliko situacija će vam biti potrebno **razumeti korišćene regularne izraze**, ovo će biti korisno: [https://regex101.com/](https://regex101.com)
* Takođe biste mogli **pratiti fajlove gde su otkrivene forme**, jer promena u parametru ili pojava nove forme može ukazivati na potencijalno novu ranjivu funkcionalnost.
Ako bilo koja stranica **odgovori** sa tim **kodom**, verovatno je loše konfigurisan proxy. **Ako pošaljete HTTP zahtev kao: `GET https://google.com HTTP/1.1`** (sa host zaglavljem i ostalim uobičajenim zaglavljima), proxy će pokušati da pristupi _**google.com**_**i otkrićete SSRF.**
Ako pokrenuti server traži autentikaciju **Windows**-a ili pronađete prijavu koja traži vaše **kredencijale** (i traži **ime domena**), možete izazvati **otkrivanje informacija**.\
**Pošaljite** **zaglavlje**: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` i zbog toga kako **NTLM autentikacija funkcioniše**, server će odgovoriti sa internim informacijama (verzija IIS-a, verzija Windows-a...) unutar zaglavlja "WWW-Authenticate".\
Moguće je **ubaciti sadržaj** unutar **Preusmeravanja**. Taj sadržaj **neće biti prikazan korisniku** (jer će pretraživač izvršiti preusmeravanje), ali nešto bi moglo biti **sakriveno** unutra.
Možete koristiti alate poput [https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io) da pratite stranice za modifikacije koje bi mogle uneti ranjivosti.
Ako vas zanima **hakerska karijera** i hakovanje neuhvatljivog - **zapošljavamo!** (_potrebno je tečno poznavanje poljskog jezika u pisanju i govoru_).
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}
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ako želite da vidite **vašu kompaniju reklamiranu na HackTricks-u** ili **preuzmete HackTricks u PDF formatu** proverite [**PLANOVE ZA PRIJATELJSTVO**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitteru** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**