.. | ||
github-leaked-secrets.md | ||
README.md | ||
wide-source-code-search.md |
Eksterne Recon Metodologie
Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kyk na die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling eksklusiewe NFTs
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou hack-truuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.
As jy belangstel in 'n hack-loopbaan en die onhackbare wil hack - ons is aan die werf! (vloeiend in Pools geskrewe en gesproke vereis).
{% embed url="https://www.stmcyber.com/careers" %}
Bate-ontdekkings
So jy is gesê dat alles wat aan 'n maatskappy behoort binne die omvang is, en jy wil uitvind wat hierdie maatskappy eintlik besit.
Die doel van hierdie fase is om al die maatskappye wat deur die hoofmaatskappy besit word te verkry en dan al die bates van hierdie maatskappye. Om dit te doen, gaan ons:
- Vind die verkrygings van die hoofmaatskappy, dit sal ons die maatskappye binne die omvang gee.
- Vind die ASN (indien enige) van elke maatskappy, dit sal ons die IP-reeks besit deur elke maatskappy gee
- Gebruik omgekeerde whois-opsoeke om te soek na ander inskrywings (organisasienames, domeine...) wat verband hou met die eerste een (dit kan rekursief gedoen word)
- Gebruik ander tegnieke soos shodan
org
enssl
filters om te soek na ander bates (diessl
-truk kan rekursief gedoen word).
Verkrygings
Eerstens moet ons weet watter ander maatskappye deur die hoofmaatskappy besit word.
Een opsie is om https://www.crunchbase.com/ te besoek, soek vir die hoofmaatskappy, en klik op "verkrygings". Daar sal jy ander maatskappye sien wat deur die hoofmaatskappy verkry is.
'n Ander opsie is om die Wikipedia-bladsy van die hoofmaatskappy te besoek en te soek na verkrygings.
Ok, op hierdie punt behoort jy al die maatskappye binne die omvang te ken. Laat ons uitvind hoe om hul bates te vind.
ASNs
'n Outonome stelselnommer (ASN) is 'n unieke nommer wat deur die Internet Assigned Numbers Authority (IANA) aan 'n outonome stelsel (AS) toegeken word.
'n AS bestaan uit blokke van IP-adresse wat 'n duidelik gedefinieerde beleid vir toegang tot eksterne netwerke het en deur 'n enkele organisasie geadministreer word, maar uit verskeie operateurs kan bestaan.
Dit is interessant om te vind of die maatskappy enige ASN toegewys het om sy IP-reeks te vind. Dit sal interessant wees om 'n kwesbaarheidstoets uit te voer teen al die gasheer binne die omvang en te soek na domeine binne hierdie IP's.
Jy kan soek op maatskappy naam, op IP of op domein in https://bgp.he.net/.
Afhanklik van die streek van die maatskappy kan hierdie skakels nuttig wees om meer data te versamel: AFRINIC (Afrika), Arin(Noord-Amerika), APNIC (Asië), LACNIC (Latyns-Amerika), RIPE NCC (Europa). Hoe dan ook, waarskynlik verskyn alle nuttige inligting (IP-reeks en Whois) reeds in die eerste skakel.
#You can try "automate" this with amass, but it's not very recommended
amass intel -org tesla
amass intel -asn 8911,50313,394161
Ook, BBOT** se** subdomeinversameling konsolideer outomaties en sommeer ASNs aan die einde van die skandering.
bbot -t tesla.com -f subdomain-enum
...
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS394161 | 8.244.131.0/24 | 5 | TESLA | Tesla Motors, Inc. | US |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS16509 | 54.148.0.0/15 | 4 | AMAZON-02 | Amazon.com, Inc. | US |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS394161 | 8.45.124.0/24 | 3 | TESLA | Tesla Motors, Inc. | US |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS3356 | 8.32.0.0/12 | 1 | LEVEL3 | Level 3 Parent, LLC | US |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
[INFO] bbot.modules.asn: | AS3356 | 8.0.0.0/9 | 1 | LEVEL3 | Level 3 Parent, LLC | US |
[INFO] bbot.modules.asn: +----------+---------------------+--------------+----------------+----------------------------+-----------+
Jy kan die IP-reeks van 'n organisasie ook vind deur http://asnlookup.com/ te gebruik (dit het 'n gratis API).
Jy kan die IP en ASN van 'n domein vind deur http://ipv4info.com/.
Op soek na kwesbaarhede
Op hierdie punt weet ons alle bates binne die omvang, so as jy toegelaat word, kan jy 'n paar kwesbaarheidsskanderings (Nessus, OpenVAS) oor al die gasheerservers uitvoer.
Jy kan ook 'n paar poortskanderings uitvoer of dienste soos shodan gebruik om oop poorte te vind en afhangende van wat jy vind, moet jy hierdie boek deursoek om te sien hoe om verskeie moontlike dienste te pentest.
Dit kan ook die moeite werd wees om te noem dat jy ook 'n paar standaard gebruikersnaam en wagwoorde lyste kan voorberei en probeer om dienste te bruteforce met https://github.com/x90skysn3k/brutespray.
Domeine
Ons ken al die maatskappye binne die omvang en hul bates, dit is tyd om die domeine binne die omvang te vind.
Geliewe daarop te let dat in die volgende voorgestelde tegnieke jy ook subdomeine kan vind en daardie inligting moet nie onderskat word nie.
Eerstens moet jy soek na die hoofdomein(e) van elke maatskappy. Byvoorbeeld, vir Tesla Inc. gaan dit tesla.com wees.
Omgekeerde DNS
Aangesien jy al die IP-reeks van die domeine gevind het, kan jy probeer om omgekeerde DNS-opsoeke op daardie IP's uit te voer om meer domeine binne die omvang te vind. Probeer om 'n DNS-bediener van die slagoffer of 'n bekende DNS-bediener (1.1.1.1, 8.8.8.8) te gebruik.
dnsrecon -r <DNS Range> -n <IP_DNS> #DNS reverse of all of the addresses
dnsrecon -d facebook.com -r 157.240.221.35/24 #Using facebooks dns
dnsrecon -r 157.240.221.35/24 -n 1.1.1.1 #Using cloudflares dns
dnsrecon -r 157.240.221.35/24 -n 8.8.8.8 #Using google dns
Vir hierdie om te werk, moet die administrateur handmatig die PTR aktiveer.
Jy kan ook 'n aanlyn gereedskap gebruik vir hierdie inligting: http://ptrarchive.com/
Omgekeerde Whois (lus)
Binne 'n whois kan jy baie interessante inligting vind soos organisasienaam, adres, e-posadresse, telefoonnommers... Maar wat selfs meer interessant is, is dat jy meer bates wat verband hou met die maatskappy kan vind as jy omgekeerde whois-opsoeke uitvoer deur enige van daardie velde (byvoorbeeld ander whois-registre waar dieselfde e-pos verskyn).
Jy kan aanlyn gereedskap soos gebruik:
- https://viewdns.info/reversewhois/ - Gratis
- https://domaineye.com/reverse-whois - Gratis
- https://www.reversewhois.io/ - Gratis
- https://www.whoxy.com/ - Gratis web, nie gratis API nie.
- http://reversewhois.domaintools.com/ - Nie gratis
- https://drs.whoisxmlapi.com/reverse-whois-search - Nie Gratis (slegs 100 gratis soektogte)
- https://www.domainiq.com/ - Nie Gratis nie
Jy kan hierdie taak outomatiseer met DomLink (vereis 'n whoxy API-sleutel).
Jy kan ook enkele outomatiese omgekeerde whois-ontdekkings doen met amass: amass intel -d tesla.com -whois
Let daarop dat jy hierdie tegniek kan gebruik om meer domeinname te ontdek elke keer as jy 'n nuwe domein vind.
Opvolgers
As jy dieselfde ID van dieselfde opvolger op 2 verskillende bladsye vind, kan jy aanneem dat beide bladsye deur dieselfde span bestuur word.
Byvoorbeeld, as jy dieselfde Google Analytics ID of dieselfde Adsense ID op verskeie bladsye sien.
Daar is bladsye en gereedskap wat jou toelaat om te soek na hierdie opvolgers en meer:
Favicon
Het jy geweet dat ons verwante domeine en subdomeine aan ons teiken kan vind deur te soek na dieselfde favicon-ikoon-hash? Dit is presies wat die favihash.py gereedskap deur @m4ll0k2 doen. Hier is hoe om dit te gebruik:
cat my_targets.txt | xargs -I %% bash -c 'echo "http://%%/favicon.ico"' > targets.txt
python3 favihash.py -f https://target/favicon.ico -t targets.txt -s
Eenvoudig gestel, favihash sal ons in staat stel om domeine te ontdek wat dieselfde favicon-ikoon-hash as ons teiken het.
Verder kan jy ook tegnologieë soek deur die favicon-hash te gebruik soos verduidelik in hierdie blogpos. Dit beteken dat as jy die hash van die favicon van 'n kwesbare weergawe van 'n webtegnologie ken, kan jy soek of dit in shodan is en meer kwesbare plekke vind:
shodan search org:"Target" http.favicon.hash:116323821 --fields ip_str,port --separator " " | awk '{print $1":"$2}'
Dit is hoe jy die favicon hash van 'n webwerf kan bereken:
import mmh3
import requests
import codecs
def fav_hash(url):
response = requests.get(url)
favicon = codecs.encode(response.content,"base64")
fhash = mmh3.hash(favicon)
print(f"{url} : {fhash}")
return fhash
Auteursreg / Unieke string
Soek binne die webbladsye na strings wat oor verskillende webwerwe in dieselfde organisasie gedeel kan word. Die auteursregstring kan 'n goeie voorbeeld wees. Soek dan vir daardie string in Google, in ander blaaier of selfs in Shodan: shodan search http.html:"Auteursregstring"
CRT-tyd
Dit is algemeen om 'n cron-werk soos die volgende te hê:
# /etc/crontab
37 13 */10 * * certbot renew --post-hook "systemctl reload nginx"
Passiewe Oorname
Dit is blykbaar algemeen vir mense om subdomeine toe te ken aan IP-adresse wat aan wolkverskaffers behoort en op 'n stadium daardie IP-adres te verloor, maar vergeet om die DNS-rekord te verwyder. Daarom, deur net 'n VM in 'n wolk (soos Digital Ocean) te skep, sal jy eintlik 'n paar subdomeine oorneem.
Hierdie pos verduidelik 'n storie daaroor en stel 'n skripsie voor wat 'n VM in DigitalOcean skep, die IPv4 van die nuwe masjien kry, en in Virustotal vir subdomeinrekords wat daarna verwys, soek.
Ander metodes
Let daarop dat jy hierdie tegniek kan gebruik om meer domeinname te ontdek elke keer as jy 'n nuwe domein vind.
Shodan
Aangesien jy reeds die naam van die organisasie wat die IP-ruimte besit, ken. Jy kan daarna soek in Shodan deur hierdie data te gebruik: org:"Tesla, Inc."
Kontroleer die gevonde gasheer vir nuwe onverwagte domeine in die TLS-sertifikaat.
Jy kan toegang verkry tot die TLS-sertifikaat van die hoofwebwerf, die Organisasienaam verkry, en dan soek na daardie naam binne die TLS-sertifikate van al die webwerwe wat deur Shodan bekend is met die filter: ssl:"Tesla Motors"
of gebruik 'n instrument soos sslsearch.
Assetfinder
Assetfinder is 'n instrument wat soek na domeine wat verband hou met 'n hoofdomein en hul subdomeine, baie indrukwekkend.
Op soek na kwesbaarhede
Kyk vir 'n domeinoorneem. Dalk gebruik 'n maatskappy 'n domein, maar hulle het die eienaarskap verloor. Registreer dit (as dit goedkoop genoeg is) en laat die maatskappy weet.
As jy enige domein met 'n ander IP as diegene wat jy reeds in die batesontdekking gevind het, vind, moet jy 'n basiese kwesbaarheidsskandering uitvoer (met behulp van Nessus of OpenVAS) en 'n poortskandering met nmap/masscan/shodan. Afhangende van watter dienste besig is, kan jy in hierdie boek 'n paar truuks vind om hulle te "aanval".
Merk op dat die domein soms gehuisves word binne 'n IP wat nie deur die klient beheer word nie, dus dit val nie binne die omvang nie, wees versigtig.
Bugsbounty wenk: teken aan vir Intigriti, 'n premium bugsbountyplatform geskep deur hackers, vir hackers! Sluit vandag by ons aan by https://go.intigriti.com/hacktricks, en begin om belonings tot $100,000 te verdien!
{% embed url="https://go.intigriti.com/hacktricks" %}
Subdomeine
Ons ken al die maatskappye binne die omvang, al die bates van elke maatskappy en al die domeine wat verband hou met die maatskappye.
Dit is tyd om al die moontlike subdomeine van elke gevonde domein te vind.
DNS
Laat ons probeer om subdomeine van die DNS-rekords te kry. Ons moet ook probeer vir Zone Oordrag (As kwesbaar, moet jy dit rapporteer).
dnsrecon -a -d tesla.com
OSINT
Die vinnigste manier om 'n groot aantal subdomeine te verkry, is deur in eksterne bronne te soek. Die mees gebruikte hulpmiddels is die volgende (om beter resultate te kry, stel die API-sleutels in):
# subdomains
bbot -t tesla.com -f subdomain-enum
# subdomains (passive only)
bbot -t tesla.com -f subdomain-enum -rf passive
# subdomains + port scan + web screenshots
bbot -t tesla.com -f subdomain-enum -m naabu gowitness -n my_scan -o .
amass enum [-active] [-ip] -d tesla.com
amass enum -d tesla.com | grep tesla.com # To just list subdomains
# Subfinder, use -silent to only have subdomains in the output
./subfinder-linux-amd64 -d tesla.com [-silent]
# findomain, use -silent to only have subdomains in the output
./findomain-linux -t tesla.com [--quiet]
python3 oneforall.py --target tesla.com [--dns False] [--req False] [--brute False] run
assetfinder --subs-only <domain>
# It requires that you create a sudomy.api file with API keys
sudomy -d tesla.com
vita -d tesla.com
theHarvester -d tesla.com -b "anubis, baidu, bing, binaryedge, bingapi, bufferoverun, censys, certspotter, crtsh, dnsdumpster, duckduckgo, fullhunt, github-code, google, hackertarget, hunter, intelx, linkedin, linkedin_links, n45ht, omnisint, otx, pentesttools, projectdiscovery, qwant, rapiddns, rocketreach, securityTrails, spyse, sublist3r, threatcrowd, threatminer, trello, twitter, urlscan, virustotal, yahoo, zoomeye"
Daar is ander interessante gereedskap/API's wat selfs al is hulle nie direk gespesialiseer in die vind van subdomeine nie, nuttig kan wees om subdomeine te vind, soos:
- Crobat: Gebruik die API https://sonar.omnisint.io om subdomeine te verkry
# Get list of subdomains in output from the API
## This is the API the crobat tool will use
curl https://sonar.omnisint.io/subdomains/tesla.com | jq -r ".[]"
curl https://jldc.me/anubis/subdomains/tesla.com | jq -r ".[]"
- RapidDNS gratis API
# Get Domains from rapiddns free API
rapiddns(){
curl -s "https://rapiddns.io/subdomain/$1?full=1" \
| grep -oE "[\.a-zA-Z0-9-]+\.$1" \
| sort -u
}
rapiddns tesla.com
# Get Domains from crt free API
crt(){
curl -s "https://crt.sh/?q=%25.$1" \
| grep -oE "[\.a-zA-Z0-9-]+\.$1" \
| sort -u
}
crt tesla.com
- gau: haal bekende URL's op van AlienVault se Open Threat Exchange, die Wayback Machine, en Common Crawl vir enige gegewe domein.
# Get subdomains from GAUs found URLs
gau --subs tesla.com | cut -d "/" -f 3 | sort -u
- SubDomainizer & subscraper: Hulle skraap die web vir JS-lêers en onttrek subdomeine daaruit.
# Get only subdomains from SubDomainizer
python3 SubDomainizer.py -u https://tesla.com | grep tesla.com
# Get only subdomains from subscraper, this already perform recursion over the found results
python subscraper.py -u tesla.com | grep tesla.com | cut -d " " -f
# Get info about the domain
shodan domain <domain>
# Get other pages with links to subdomains
shodan search "http.html:help.domain.com"
export CENSYS_API_ID=...
export CENSYS_API_SECRET=...
python3 censys-subdomain-finder.py tesla.com
python3 DomainTrail.py -d example.com
- securitytrails.com het 'n gratis API om te soek na subdomeine en IP-geskiedenis
- chaos.projectdiscovery.io
Hierdie projek bied gratis al die subdomeine wat verband hou met foutjagprogramme aan. Jy kan ook toegang tot hierdie data kry deur chaospy te gebruik of selfs die omvang wat deur hierdie projek gebruik word, te besoek https://github.com/projectdiscovery/chaos-public-program-list
Jy kan 'n vergelyking van baie van hierdie gereedskap hier vind: https://blog.blacklanternsecurity.com/p/subdomain-enumeration-tool-face-off
DNS Brute force
Laat ons probeer om nuwe subdomeine te vind deur DNS-bedieners te kragtig te gebruik met moontlike subdomeinname.
Vir hierdie aksie sal jy 'n paar gewone subdomeinwoordlyste soos nodig hê:
- https://gist.github.com/jhaddix/86a06c5dc309d08580a018c66354a056
- https://wordlists-cdn.assetnote.io/data/manual/best-dns-wordlist.txt
- https://localdomain.pw/subdomain-bruteforce-list/all.txt.zip
- https://github.com/pentester-io/commonspeak
- https://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS
En ook IP-adresse van goeie DNS-oplossers. Om 'n lys van vertroude DNS-oplossers te genereer, kan jy die oplossers aflaai van https://public-dns.info/nameservers-all.txt en dnsvalidator gebruik om hulle te filter. Of jy kan gebruik maak van: https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt
Die mees aanbevole gereedskap vir DNS-kragtig is:
- massdns: Dit was die eerste gereedskap wat 'n effektiewe DNS-kragtig uitgevoer het. Dit is baie vinnig, maar vatbaar vir vals positiewe.
sed 's/$/.domain.com/' subdomains.txt > bf-subdomains.txt
./massdns -r resolvers.txt -w /tmp/results.txt bf-subdomains.txt
grep -E "tesla.com. [0-9]+ IN A .+" /tmp/results.txt
- gobuster: Hierdie een dink ek gebruik net 1 oplosser
gobuster dns -d mysite.com -t 50 -w subdomains.txt
- shuffledns is 'n omhulsel rondom
massdns
, geskryf in go, wat jou toelaat om geldige subdomeine op te som deur aktiewe bruteforce te gebruik, asook om subdomeine op te los met wildcard hantering en maklike in- en uitset-ondersteuning.
shuffledns -d example.com -list example-subdomains.txt -r resolvers.txt
- puredns: Dit maak ook gebruik van
massdns
.
puredns bruteforce all.txt domain.com
- aiodnsbrute maak gebruik van asyncio om domeinname asinkroon te kragtig te ontsluit.
aiodnsbrute -r resolvers -w wordlist.txt -vv -t 1024 domain.com
Tweede DNS Brute-Force Ronde
Nadat subdomeine gevind is deur oop bronne en brute-forcings, kan jy veranderings van die gevonde subdomeine genereer om selfs meer te vind. Verskeie gereedskappe is nuttig vir hierdie doel:
- dnsgen: Gee die domeine en subdomeine permutasies.
cat subdomains.txt | dnsgen -
- goaltdns: Gegee die domeine en subdomeine genereer permutasies.
- Jy kan die goaltdns permutasies woordelys kry hier.
goaltdns -l subdomains.txt -w /tmp/words-permutations.txt -o /tmp/final-words-s3.txt
- gotator: Gee die domeine en subdomeine genereer permutasies. As geen permutasie lêer aangedui word nie, sal gotator sy eie een gebruik.
gotator -sub subdomains.txt -silent [-perm /tmp/words-permutations.txt]
- altdns: Afgesien van die generering van subdomein-permutasies, kan dit ook probeer om hulle op te los (maar dit is beter om die vorige gekommentariseerde gereedskap te gebruik).
- Jy kan die altdns permutasies woordelys kry hier.
altdns -i subdomains.txt -w /tmp/words-permutations.txt -o /tmp/asd3
- dmut: 'n Ander instrument om permutasies, mutasies en verandering van subdomeine uit te voer. Hierdie instrument sal die resultaat kragtig afdwing (dit ondersteun nie dns wild card nie).
- Jy kan die dmut permutasies woordelys kry hier.
cat subdomains.txt | dmut -d /tmp/words-permutations.txt -w 100 \
--dns-errorLimit 10 --use-pb --verbose -s /tmp/resolvers-trusted.txt
- alterx: Gebaseer op 'n domein genereer dit nuwe potensiële subdomeinname gebaseer op aangeduide patrone om te probeer om meer subdomeine te ontdek.
Slim permutasie generasie
- regulator: Vir meer inligting lees hierdie pos maar dit sal basies die hoofdele van die ontdekte subdomeine kry en hulle meng om meer subdomeine te vind.
python3 main.py adobe.com adobe adobe.rules
make_brute_list.sh adobe.rules adobe.brute
puredns resolve adobe.brute --write adobe.valid
- subzuf: subzuf is 'n subdomein-brute-force fuzzer gekoppel met 'n immens eenvoudige maar effektiewe DNS-antwoord-geleide algoritme. Dit maak gebruik van 'n voorsiene stel insetdata, soos 'n op maat gemaakte woordelys of historiese DNS/TLS-rekords, om akkuraat meer ooreenstemmende domeinname te sintetiseer en hulle selfs verder uit te brei in 'n lus gebaseer op inligting wat tydens die DNS-scan ingesamel is.
echo www | subzuf facebook.com
Subdomein Ontdekking Werkvloei
Kyk na hierdie blogpos wat ek geskryf het oor hoe om die subdomein ontdekking te outomatiseer van 'n domein deur die gebruik van Trickest-werkvloei sodat ek nie handmatig 'n klomp gereedskap op my rekenaar hoef te begin nie:
{% embed url="https://trickest.com/blog/full-subdomain-discovery-using-workflow/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
{% embed url="https://trickest.com/blog/full-subdomain-brute-force-discovery-using-workflow/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
VHosts / Virtuele Gasheer
As jy 'n IP-adres gevind het wat een of verskeie webbladsye bevat wat behoort aan subdomeine, kan jy probeer om ander subdomeine met webbladsye op daardie IP te vind deur in OSINT-bronne te kyk vir domeine op 'n IP of deur VHost-domeinname op daardie IP te brute force.
OSINT
Jy kan sommige VHosts in IPs vind deur HostHunter of ander API's te gebruik.
Brute Force
As jy vermoed dat 'n subdomein dalk weggesteek kan wees op 'n webbediener, kan jy probeer om dit met geweld te ontsluit:
ffuf -c -w /path/to/wordlist -u http://victim.com -H "Host: FUZZ.victim.com"
gobuster vhost -u https://mysite.com -t 50 -w subdomains.txt
wfuzz -c -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-20000.txt --hc 400,404,403 -H "Host: FUZZ.example.com" -u http://example.com -t 100
#From https://github.com/allyshka/vhostbrute
vhostbrute.py --url="example.com" --remoteip="10.1.1.15" --base="www.example.com" --vhosts="vhosts_full.list"
#https://github.com/codingo/VHostScan
VHostScan -t example.com
{% hint style="info" %} Met hierdie tegniek kan jy selfs moontlik toegang verkry tot interne/verborge eindpunte. {% endhint %}
CORS Brute Force
Soms sal jy bladsye vind wat slegs die Access-Control-Allow-Origin kop _terugstuur wanneer 'n geldige domein/subdomein in die Origin kop ingestel is. In hierdie scenarios kan jy hierdie gedrag misbruik om nuwe subdomeine te ontdek.
ffuf -w subdomains-top1million-5000.txt -u http://10.10.10.208 -H 'Origin: http://FUZZ.crossfit.htb' -mr "Access-Control-Allow-Origin" -ignore-body
Emmers Brute Force
Terwyl jy op soek is na subdomeine, hou 'n oog dop om te sien of dit na enige soort emmer wys, en in daardie geval kontroleer die regte.
Ook, aangesien jy op hierdie punt al die domeine binne die omvang sal ken, probeer brute force moontlike emmernaam en kontroleer die regte.
Monitering
Jy kan moniter of nuwe subdomeine van 'n domein geskep word deur die Sertifikaat Transparantie Logboeke te monitor met sublert .
Op soek na kwesbaarhede
Kyk vir moontlike subdomein-oorneemaksies.
As die subdomein na 'n S3-emmer wys, kontroleer die regte.
As jy enige subdomein met 'n IP wat verskil van diegene wat jy reeds in die batesontdekking gevind het, moet jy 'n basiese kwesbaarheidsskandering uitvoer (met behulp van Nessus of OpenVAS) en 'n paar poortskandering met nmap/masscan/shodan. Afhangende van watter dienste besig is, kan jy in hierdie boek 'n paar truuks vind om hulle te "aanval".
Merk op dat die subdomein soms gehuisves word binne 'n IP wat nie deur die klient beheer word nie, so dit is nie in die omvang nie, wees versigtig.
IP's
In die aanvanklike stappe het jy dalk 'n paar IP-reeks, domeine en subdomeine gevind.
Dit is tyd om al die IP's van daardie reekse te versamel en vir die domeine/subdomeine (DNS-navrae).
Deur dienste van die volgende gratis API's te gebruik, kan jy ook vorige IP's wat deur domeine en subdomeine gebruik is, vind. Hierdie IP's mag steeds deur die klient besit word (en mag jou in staat stel om CloudFlare-omleidings te vind)
Jy kan ook vir domeine wat na 'n spesifieke IP-adres wys, kyk met die hulpmiddel hakip2host
Op soek na kwesbaarhede
Skandeer alle IP's wat nie aan CDNs behoort nie (aangesien jy waarskynlik niks interessants daar sal vind nie). In die besigheidsdiens wat ontdek is, kan jy dalk kwesbaarhede vind.
Vind 'n gids oor hoe om gasheer te skandeer.
Webbedieners jag
Ons het al die maatskappye en hul bates gevind en ons ken IP-reeks, domeine en subdomeine binne die omvang. Dit is tyd om vir webbedieners te soek.
In die vorige stappe het jy waarskynlik al 'n bietjie rekognisering van die IP's en domeine wat ontdek is uitgevoer, so jy het dalk al die moontlike webbedieners al gevind. Indien nie, gaan ons nou sien na 'n paar vinnige truuks om vir webbedieners te soek binne die omvang.
Let asseblief daarop dat dit georiënteer sal wees vir die ontdekking van webtoepassings, so jy moet ook die kwesbaarheid en poortskandering uitvoer (indien toegelaat deur die omvang).
'n Vinnige metode om oophawens verband houend met webbedieners te ontdek met masscan kan hier gevind word.
'n Ander vriendelike hulpmiddel om vir webbedieners te soek is httprobe, fprobe en httpx. Jy stuur net 'n lys domeine en dit sal probeer om aan te sluit by poort 80 (http) en 443 (https). Daarbenewens kan jy aandui om ander poorte te probeer:
cat /tmp/domains.txt | httprobe #Test all domains inside the file for port 80 and 443
cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 and 8080 and 8443
Skermgrepe
Nou dat jy alle webbedieners in die reikwydte ontdek het (onder die IP's van die maatskappy en al die domeine en subdomeine), weet jy waarskynlik nie waar om te begin nie. So, laat ons dit eenvoudig maak en begin net deur skermskote van almal te neem. Net deur 'n kykie na die hoofbladsy kan jy vreemde eindpunte vind wat meer geneig is om kwesbaar te wees.
Om die voorgestelde idee uit te voer, kan jy EyeWitness, HttpScreenshot, Aquatone, Shutter of webscreenshot** gebruik.
Verder kan jy dan eyeballer gebruik om deur al die skermskote te hardloop om jou te vertel wat waarskynlik kwesbaarhede bevat, en wat nie.
Openbare Wolkmiddels
Om potensiële wolkbates van 'n maatskappy te vind, moet jy begin met 'n lys sleutelwoorde wat daardie maatskappy identifiseer. Byvoorbeeld, vir 'n kriptomaatskappy kan jy woorde soos: "krypto", "beursie", "dao", "<domein_naam>", <"subdomein_name">
gebruik.
Jy sal ook woordlyste van gewone woorde wat in houers gebruik word benodig:
- https://raw.githubusercontent.com/cujanovic/goaltdns/master/words.txt
- https://raw.githubusercontent.com/infosec-au/altdns/master/words.txt
- https://raw.githubusercontent.com/jordanpotti/AWSBucketDump/master/BucketNames.txt
Daarna, met daardie woorde, moet jy permutasies genereer (kyk na die Tweede Ronde DNS Brute-Force vir meer inligting).
Met die resulterende woordlyste kan jy gereedskap soos cloud_enum, CloudScraper, cloudlist of S3Scanner** gebruik.
Onthou dat wanneer jy na Wolkbates soek, jy meer as net houers in AWS moet soek.
Op soek na kwesbaarhede
As jy dinge soos oophouers of blootgestelde wolkfunksies vind, moet jy hulle toegang en probeer sien wat hulle jou bied en of jy dit kan misbruik.
E-posse
Met die domeine en subdomeine binne die reikwydte het jy basies alles wat jy nodig het om te begin soek na e-posse. Dit is die API's en gereedskap wat vir my die beste gewerk het om e-posse van 'n maatskappy te vind:
- theHarvester - met API's
- API van https://hunter.io/ (gratis weergawe)
- API van https://app.snov.io/ (gratis weergawe)
- API van https://minelead.io/ (gratis weergawe)
Op soek na kwesbaarhede
E-posse sal later van pas kom om webaanmeldings en outentiseringsdienste te krag (soos SSH). Dit is ook nodig vir hengel. Verder sal hierdie API's jou selfs meer inligting oor die persoon agter die e-pos gee, wat nuttig is vir die hengelveldtog.
Gelêkte Gelde
Met die domeine, subdomeine, en e-posse kan jy begin soek na gelêkte gelde wat in die verlede aan daardie e-posse behoort het:
Op soek na kwesbaarhede
As jy geldige gelêkte gelde vind, is dit 'n baie maklike wen.
Geheim Gelde
Gelêkte gelde is verwant aan hacks van maatskappye waar sensitiewe inligting gelekte en verkoop is. Maatskappye kan egter ook deur ander lekke geraak word waarvan die inligting nie in daardie databasisse is nie:
Github Gelde
Gelde en API's kan gelekte word in die openbare bewaarplekke van die maatskappy of van die gebruikers wat vir daardie github-maatskappy werk.
Jy kan die gereedskap Leakos gebruik om al die openbare bewaarplekke van 'n organisasie en van sy ontwikkelaars af te laai en gitleaks outomaties daaroor te hardloop.
Leakos kan ook gebruik word om gitleaks te hardloop teen al die teks wat aan hom deurgegee URL's is, aangesien soms webbladsye ook geheime bevat.
Github Dorks
Kyk ook na hierdie bladsy vir potensiële github dorks wat jy ook in die organisasie wat jy aanval, kan soek:
{% content-ref url="github-leaked-secrets.md" %} github-leaked-secrets.md {% endcontent-ref %}
Paste Gelde
Soms sal aanvallers of net werkers maatskappy-inhoud in 'n plakwebwerf publiseer. Dit mag of mag nie sensitiewe inligting bevat nie, maar dit is baie interessant om daarna te soek.
Jy kan die gereedskap Pastos gebruik om in meer as 80 plakwebwerwe gelyktydig te soek.
Google Dorks
Ou maar goud google dorks is altyd nuttig om blootgestelde inligting wat nie daar behoort te wees nie te vind. Die enigste probleem is dat die google-hacking-database verskeie duisende moontlike navrae bevat wat jy nie handmatig kan hardloop nie. So, jy kan jou gunsteling 10 kry of jy kan 'n gereedskap soos Gorks gebruik om hulle almal te hardloop.
Merk op dat die gereedskappe wat verwag om die hele databasis met die gewone Google-blaaier te hardloop, nooit sal eindig nie, aangesien Google jou baie baie gou sal blokkeer.
Op soek na kwesbaarhede
As jy geldige gelêkte gelde of API-tokens vind, is dit 'n baie maklike wen.
Openbare Kodekwesbaarhede
As jy vind dat die maatskappy open-source kode het, kan jy dit ontleed en soek na kwesbaarhede daarin.
Afhanklik van die taal is daar verskillende gereedskappe wat jy kan gebruik:
{% content-ref url="../../network-services-pentesting/pentesting-web/code-review-tools.md" %} code-review-tools.md {% endcontent-ref %}
Daar is ook gratis dienste wat jou toelaat om openbare bewaarplekke te skandeer, soos:
Pentesting Web Metodologie
Die meeste van die kwesbaarhede wat deur foutjagters gevind word, is binne webtoepassings geleë, so op hierdie punt wil ek graag praat oor 'n webtoepassingstoetsmetodologie, en jy kan hierdie inligting hier vind.
Ek wil ook 'n spesiale vermelding maak van die afdeling Web Geoutomatiseerde Skandeerders oopbronhulpmiddels, aangesien, al verwag jy nie dat hulle baie sensitiewe kwesbaarhede vir jou sal vind nie, is hulle handig om te implementeer op werkstrome om 'n aanvanklike webinligting te hê.
Opsomming
Gelukwensing! Op hierdie punt het jy reeds alle basiese opname uitgevoer. Ja, dit is basies omdat baie meer opname gedoen kan word (ons sal later meer truuks sien).
Jy het reeds:
- Al die maatskappye binne die omvang gevind
- Al die bates wat aan die maatskappye behoort, gevind (en 'n paar kwesbaarheidsskanderings uitgevoer indien in die omvang)
- Al die domeine wat aan die maatskappye behoort, gevind
- Al die subdomeine van die domeine gevind (enige subdomeinoorname?)
- Al die IP's (van en nie van CDN's) binne die omvang gevind.
- Al die webbedieners gevind en 'n skermkiekie van hulle geneem (enige iets vreemds wat 'n dieper kykie werd is?)
- Al die potensiële openbare wolkbates wat aan die maatskappy behoort, gevind.
- E-posse, geloofsbriewe-lekke, en geheimlekkasies wat jou 'n groot wen baie maklik kan gee.
- Pentesting van al die webwerwe wat jy gevind het
Volledige Opname Outomatiese Gereedskap
Daar is verskeie gereedskap daar buite wat deel van die voorgestelde aksies teen 'n gegewe omvang sal uitvoer.
- https://github.com/yogeshojha/rengine
- https://github.com/j3ssie/Osmedeus
- https://github.com/six2dez/reconftw
- https://github.com/hackerspider1/EchoPwn - 'n Bietjie oud en nie opgedateer nie
Verwysings
- Alle gratis kursusse van @Jhaddix soos The Bug Hunter's Methodology v4.0 - Recon Edition
Indien jy belangstel in 'n hackingsloopbaan en die onhackbare wil hack - ons is aan die aanstel! (vloeiende Pools geskrewe en gesproke vereis).
{% embed url="https://www.stmcyber.com/careers" %}
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy jou maatskappy geadverteer wil sien in HackTricks of HackTricks in PDF wil aflaai Kyk na die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou hacktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.