External Recon Methodology

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Αν σας ενδιαφέρει η καριέρα στο χάκινγκ και να χακεύετε το αχακέυτο - σας προσλαμβάνουμε! (απαιτείται άριστη γνώση γραπτού και προφορικού Πολωνικού).

Ανακαλύψεις Περιουσιακών Στοιχείων

Σας είπαν ότι όλα όσα ανήκουν σε μια εταιρεία εμπίπτουν στο πεδίο εφαρμογής και θέλετε να διαπιστώσετε πραγματικά τι ανήκει σε αυτήν την εταιρεία.

Ο στόχος αυτής της φάσης είναι να αποκτήσουμε όλες τις εταιρείες που ανήκουν στην κύρια εταιρεία και στη συνέχεια όλα τα περιουσιακά στοιχεία αυτών των εταιρειών. Για να το επιτύχουμε, θα κάνουμε τα εξής:

  1. Βρείτε τις εξαγορές της κύριας εταιρείας, αυτό θα μας δώσει τις εταιρείες εντός του πεδίου εφαρμογής.

  2. Βρείτε το ASN (εάν υπάρχει) κάθε εταιρείας, αυτό θα μας δώσει τις IP εύρους που ανήκουν σε κάθε εταιρεία.

  3. Χρησιμοποιήστε αναστρεφόμενες αναζητήσεις whois για να αναζητήσετε άλλες καταχωρήσεις (ονόματα οργανισμών, domains...) που σχετίζονται με την πρώτη (αυτό μπορεί να γίνει αναδρομικά).

  4. Χρησιμοποιήστε άλλες τεχνικές όπως τα φίλτρα shodan org και ssl για να αναζητήσετε άλλα περιουσιακά στοιχεία (το κόλπος με το ssl μπορεί να γίνει αναδρομικά).

Εξαγορές

Καταρχάς, πρέπει να μάθουμε ποιες άλλες εταιρείες ανήκουν στην κύρια εταιρεία. Μια επιλογή είναι να επισκεφθείτε το https://www.crunchbase.com/, αναζητήστε την κύρια εταιρεία και κάντε κλικ στο "εξαγορές". Εκεί θα δείτε άλλες εταιρείες που έχουν εξαγοραστεί από την κύρια. Μια άλλη επιλογή είναι να επισκεφθείτε τη σελίδα της Wikipedia της κύριας εταιρείας και να αναζητήσετε εξαγορές.

Εντάξει, σε αυτό το σημείο πρέπει να γνωρίζετε όλες τις εταιρείες εντός του πεδίου εφαρμογής. Ας δούμε πώς μπορούμε να βρούμε τα περιουσιακά τους στοιχεία.

ASNs

Ένα αυτόνομο αριθμό συστήματος (ASN) είναι ένας μοναδικός αριθμός που ανατίθεται σε ένα αυτόνομο σύστημα (AS) από την Αρχή Ανατιθέμενων Αριθμών Διαδικτύου (IANA). Ένα AS αποτελείται από μπλοκ διευθύνσεων IP που έχουν ορισμένη πολιτική για την πρόσβαση σε εξωτερικά δίκτυα και διοικείται από μία μόνο οργάνωση αλλά μπορεί να αποτελείται από πολλούς φορείς.

Είναι ενδιαφέρον να βρούμε αν η εταιρεία έχει ανατεθεί κάποιο ASN για να βρούμε τα εύρη IP της. Θα ήταν ενδιαφέρον να πραγματοποιήσουμε ένα τεστ ευπαθειών εναντίον όλων των οικοδεσποζόμενων στο πεδίο εφαρμογής και να αναζητήσουμε domains μέσα σε αυτές τις IPs. Μπορείτε να αναζητήσετε με το όνομα της εταιρείας, με την IP ή με το domain στο https://bgp.he.net/. Ανάλογα με την περιοχή της εταιρείας αυτοί οι σύνδεσμοι μπορεί να είναι χρήσιμοι για να συγκεντρώσετε περισσότερα δεδομένα: AFRINIC (Αφρική), Arin(Βόρεια Αμερική), APNIC (Ασία), LACNIC (Λατινική Αμερική), RIPE NCC (Ευρώπη). Πάντως, πιθανότατα όλες οι χρήσιμες πληροφορίες (εύρη IP και Whois) εμφανίζονται ήδη στον πρώτο σύνδεσμο.

#You can try "automate" this with amass, but it's not very recommended
amass intel -org tesla
amass intel -asn 8911,50313,394161

Επιπλέον, η υπο-ενότητα απαρίθμησης του BBOT συγκεντρώνει αυτόματα και περιλαμβάνει συνοπτικά τους ASNs στο τέλος της σάρωσης.

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: +----------+---------------------+--------------+----------------+----------------------------+-----------+

Μπορείτε να βρείτε τις εύρεσης IP ενός οργανισμού χρησιμοποιώντας επίσης το http://asnlookup.com/ (διαθέτει δωρεάν API). Μπορείτε να βρείτε την IP και το ASN ενός domain χρησιμοποιώντας το http://ipv4info.com/.

Αναζήτηση ευπαθειών

Σε αυτό το σημείο γνωρίζουμε όλα τα περιουσιακά στοιχεία εντός του πεδίου εφαρμογής, οπότε αν σας επιτρέπεται μπορείτε να εκτελέσετε κάποιο σαρωτή ευπαθειών (Nessus, OpenVAS) σε όλους τους υπολογιστές. Επίσης, μπορείτε να εκτελέσετε κάποια σάρωση θυρών ή να χρησιμοποιήσετε υπηρεσίες όπως shodan για να βρείτε ανοιχτές θύρες και ανάλογα με αυτό που βρείτε θα πρέπει να εξετάσετε σε αυτό το βιβλίο πώς να εκτελέσετε ελέγχους ασφαλείας σε πιθανές υπηρεσίες που εκτελούνται. Επίσης, αξίζει να σημειωθεί ότι μπορείτε επίσης να ετοιμάσετε κάποιες λίστες προεπιλεγμένων ονομάτων χρήστη και κωδικών πρόσβασης και να προσπαθήσετε να εκτελέσετε επίθεση με brute force σε υπηρεσίες με το https://github.com/x90skysn3k/brutespray.

Domains

Γνωρίζουμε όλες τις εταιρείες εντός του πεδίου εφαρμογής και τα περιουσιακά τους στοιχεία, είναι ώρα να βρούμε τα domains εντός του πεδίου εφαρμογής.

Παρακαλώ, σημειώστε ότι στις παρακάτω προτεινόμενες τεχνικές μπορείτε επίσης να βρείτε υποτομές και αυτές οι πληροφορίες δεν πρέπει να υποτιμηθούν.

Καταρχάς, θα πρέπει να αναζητήσετε τον κύριο domain(s) κάθε εταιρείας. Για παράδειγμα, για την Tesla Inc. θα είναι το tesla.com.

Αντίστροφη αναζήτηση DNS

Αφού έχετε βρει όλες τις εύρεσης IP των domains μπορείτε να προσπαθήσετε να εκτελέσετε αντίστροφες αναζητήσεις DNS σε αυτά τα IPs για να βρείτε περισσότερα domains εντός του πεδίου εφαρμογής. Δοκιμάστε να χρησιμοποιήσετε κάποιον διακομιστή DNS του θύματος ή κάποιον γνωστό διακομιστή DNS (1.1.1.1, 8.8.8.8)

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

Αντίστροφη Αναζήτηση Whois (loop)

Μέσα σε ένα whois μπορείτε να βρείτε πολλές ενδιαφέρουσες πληροφορίες όπως το όνομα της οργάνωσης, διεύθυνση, emails, αριθμούς τηλεφώνου... Αλλά ακόμα πιο ενδιαφέρον είναι ότι μπορείτε να βρείτε περισσότερα περιουσιακά στοιχεία που σχετίζονται με την εταιρεία αν εκτελέσετε αντίστροφες αναζητήσεις whois με βάση αυτά τα πεδία (για παράδειγμα άλλα καταχωρημένα whois όπου εμφανίζεται το ίδιο email). Μπορείτε να χρησιμοποιήσετε online εργαλεία όπως:

Μπορείτε να αυτοματοποιήσετε αυτήν την εργασία χρησιμοποιώντας το DomLink (απαιτεί ένα κλειδί API του whoxy). Μπορείτε επίσης να εκτελέσετε ορισμένες αυτόματες ανακαλύψεις αντίστροφης αναζήτησης whois με το amass: amass intel -d tesla.com -whois

Σημειώστε ότι μπορείτε να χρησιμοποιήσετε αυτήν την τεχνική για να ανακαλύψετε περισσότερα ονόματα domain κάθε φορά που βρίσκετε ένα νέο domain.

Trackers

Αν βρείτε τον ίδιο αριθμό ταυτοποίησης του ίδιου tracker σε 2 διαφορετικές σελίδες, μπορείτε να υποθέσετε ότι και οι δύο σελίδες διαχειρίζονται από την ίδια ομάδα. Για παράδειγμα, αν δείτε τον ίδιο αριθμό ταυτοποίησης Google Analytics ή τον ίδιο αριθμό ταυτοποίησης Adsense σε αρκετές σελίδες.

Υπάρχουν μερικές σελίδες και εργαλεία που σας επιτρέπουν να αναζητήσετε με βάση αυτούς τους trackers και περισσότερα:

Favicon

Ξέρατε ότι μπορούμε να βρούμε σχετικά domains και sub domains στον στόχο μας αναζητώντας τον ίδιο κωδικό hash του εικονιδίου favicon; Αυτό ακριβώς κάνει το favihash.py εργαλείο που δημιούργησε ο @m4ll0k2. Εδώ είναι πώς να το χρησιμοποιήσετε:

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

Απλά ειπωμένο, το favihash θα μας επιτρέψει να ανακαλύψουμε domains που έχουν τον ίδιο κωδικό hash με το εικονίδιο favicon όπως το στόχο μας.

Επιπλέον, μπορείτε επίσης να αναζητήσετε τεχνολογίες χρησιμοποιώντας τον κωδικό hash του favicon όπως εξηγείται στο αυτό το blog post. Αυτό σημαίνει ότι αν γνωρίζετε τον hash του favicon μιας ευάλωτης έκδοσης μιας τεχνολογίας ιστού μπορείτε να αναζητήσετε αν υπάρχει στο shodan και να βρείτε περισσότερα ευάλωτα σημεία:

shodan search org:"Target" http.favicon.hash:116323821 --fields ip_str,port --separator " " | awk '{print $1":"$2}'

Έτσι μπορείτε να υπολογίσετε το hash του favicon ενός ιστότοπου:

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

Πνευματική Ιδιοκτησία / Μοναδική συμβολοσειρά

Αναζητήστε μέσα στις ιστοσελίδες συμβολοσειρές που θα μπορούσαν να κοινοποιούνται σε διαφορετικές ιστοσελίδες στον ίδιο οργανισμό. Η συμβολοσειρά πνευματικής ιδιοκτησίας θα μπορούσε να είναι ένα καλό παράδειγμα. Στη συνέχεια αναζητήστε αυτήν τη συμβολοσειρά στο Google, σε άλλους περιηγητές ή ακόμη και στο Shodan: shodan search http.html:"Συμβολοσειρά πνευματικής ιδιοκτησίας"

Χρόνος CRT

Είναι συνηθισμένο να υπάρχει ένας προγραμματισμένος χρόνος όπως

# /etc/crontab
37 13 */10 * * certbot renew --post-hook "systemctl reload nginx"

Ανανέωση πιστοποιητικών τομέα

Για να ανανεώσετε όλα τα πιστοποιητικά τομέα στον διακομιστή. Αυτό σημαίνει ότι ακόμη και αν ο Φορέας Πιστοποίησης που χρησιμοποιείται για αυτό δεν ορίζει τον χρόνο που δημιουργήθηκε στον Χρόνο Ισχύος, είναι δυνατόν να βρείτε τους τομείς που ανήκουν στην ίδια εταιρεία στα αρχεία καταγραφής διαφάνειας πιστοποιητικών. Δείτε αυτό το άρθρο για περισσότερες πληροφορίες.

Πληροφορίες DMARC για τα Email

Μπορείτε να χρησιμοποιήσετε μια ιστοσελίδα όπως η https://dmarc.live/info/google.com ή ένα εργαλείο όπως το https://github.com/Tedixx/dmarc-subdomains για να βρείτε τομείς και υποτομείς που μοιράζονται τις ίδιες πληροφορίες dmarc.

Παθητική Κατάληψη

Φαίνεται ότι είναι συνηθισμένο για ανθρώπους να αναθέτουν υποτομείς σε διευθύνσεις IP που ανήκουν σε παρόχους νέφους και σε κάποιο σημείο χάνουν αυτήν τη διεύθυνση IP αλλά ξεχνούν να αφαιρέσουν τον εγγραφή DNS. Επομένως, απλά εκκινώντας ένα VM σε ένα νέφος (όπως το Digital Ocean) θα αναλάβετε πραγματικά κάποιους υποτομείς.

Αυτή η ανάρτηση εξηγεί μια ιστορία γι' αυτό και προτείνει ένα σενάριο που εκκινά ένα VM στο DigitalOcean, λαμβάνει τη διεύθυνση IPv4 της νέας μηχανής, και ψάχνει στο Virustotal για εγγραφές υποτομέων που το δείχνουν.

Άλλοι τρόποι

Σημειώστε ότι μπορείτε να χρησιμοποιήσετε αυτήν την τεχνική για να ανακαλύψετε περισσότερα ονόματα τομέων κάθε φορά που βρίσκετε ένα νέο τομέα.

Shodan

Καθώς γνωρίζετε ήδη το όνομα του οργανισμού που κατέχει το χώρο IP. Μπορείτε να αναζητήσετε με βάση αυτά τα δεδομένα στο shodan χρησιμοποιώντας: org:"Tesla, Inc." Ελέγξτε τους εντοπισμένους οικοδεσπότες για νέους αναπάντητους τομείς στο πιστοποιητικό TLS.

Θα μπορούσατε να έχετε πρόσβαση στο πιστοποιητικό TLS της κύριας ιστοσελίδας, να λάβετε το όνομα του οργανισμού και στη συνέχεια να αναζητήσετε αυτό το όνομα μέσα στα πιστοποιητικά TLS όλων των ιστοσελίδων που γνωρίζετε από το shodan με το φίλτρο: ssl:"Tesla Motors" ή να χρησιμοποιήσετε ένα εργαλείο όπως το sslsearch.

Assetfinder

Το Assetfinder είναι ένα εργαλείο που αναζητά σχετικούς τομείς με έναν κύριο τομέα και υποτομείς τους, πολύ εντυπωσιακό.

Αναζήτηση ευπαθειών

Ελέγξτε για κάποια κατάληψη τομέα. Ίσως κάποια εταιρεία να χρησιμοποιεί έναν τομέα αλλά έχασε την ιδιοκτησία. Απλά καταχωρίστε τον (αν είναι αρκετά φθηνός) και ενημερώστε την εταιρεία.

Αν βρείτε κάποιον τομέα με διαφορετική διεύθυνση IP από αυτές που έχετε ήδη βρει στην ανακάλυψη περιουσιακών στοιχείων, πρέπει να πραγματοποιήσετε μια βασική ανίχνευση ευπαθειών (χρησιμοποιώντας το Nessus ή το OpenVAS) και μια σάρωση θύρας με nmap/masscan/shodan. Ανάλογα με τις υπηρεσίες που εκτελούνται, μπορείτε να βρείτε σε αυτό το βιβλίο μερικά κόλπα για "επίθεση" σε αυτές. Σημειώστε ότι μερικές φορές ο τομέας φιλοξενείται μέσα σε μια διεύθυνση IP που δεν ελέγχεται από τον πελάτη, οπότε δεν εμπίπτει στο πεδίο εφαρμογής, προσέξτε.

Υποτομείς

Γνωρίζουμε όλες τις εταιρείες εντός του πεδίου εφαρμογής, όλα τα περιουσιακά στοιχεία κάθε εταιρείας και όλους τους σχετικούς τομείς με τις εταιρείες.

Ήρθε η ώρα να βρούμε όλους τους πιθανούς υποτομείς κάθε εντοπισμένου τομέα.

Σημειώστε ότι μερικά από τα εργαλεία και τεχνικές για την εύρεση τομέων μπορούν επίσης να βοηθήσουν στην εύρεση υποτομέων!

DNS

Ας προσπαθήσουμε να πάρουμε υποτομείς από τα αρχεία DNS. Θα πρέπει επίσης να δοκιμάσουμε τη μεταφορά ζώνης (Αν είναι ευάλωτη, θα πρέπει να το αναφέρετε).

dnsrecon -a -d tesla.com

OSINT

Ο ταχύτερος τρόπος για να αποκτήσετε πολλά subdomains είναι να αναζητήσετε σε εξωτερικές πηγές. Τα πιο χρησιμοποιημένα εργαλεία είναι τα παρακάτω (για καλύτερα αποτελέσματα ρυθμίστε τα κλειδιά API):

# 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"

Υπάρχουν άλλα ενδιαφέροντα εργαλεία/APIs που αν και δεν είναι άμεσα εξειδικευμένα στον εντοπισμό υποτομέων μπορεί να είναι χρήσιμα για τον εντοπισμό υποτομέων, όπως:

# 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 ".[]"
# 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: ανακτά γνωστές διευθύνσεις URL από το AlienVault's Open Threat Exchange, το Wayback Machine και το Common Crawl για οποιοδήποτε δοθέν τομέα.

# Get subdomains from GAUs found URLs
gau --subs tesla.com | cut -d "/" -f 3 | sort -u
  • SubDomainizer & subscraper: Αναζητούν στο web για αρχεία JS και εξάγουν υποτομείς από εκεί.

# 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

Αυτό το έργο προσφέρει δωρεάν όλα τα υποτομέα που σχετίζονται με προγράμματα ανταμοιβής ευρημάτων σφαλμάτων. Μπορείτε να έχετε πρόσβαση σε αυτά τα δεδομένα χρησιμοποιώντας επίσης το chaospy ή ακόμη να έχετε πρόσβαση στο εύρος που χρησιμοποιείται από αυτό το έργο https://github.com/projectdiscovery/chaos-public-program-list

Μπορείτε να βρείτε μια σύγκριση πολλών από αυτά τα εργαλεία εδώ: https://blog.blacklanternsecurity.com/p/subdomain-enumeration-tool-face-off

Δύναμη DNS Brute

Ας προσπαθήσουμε να βρούμε νέους υποτομείς με brute force στους διακομιστές DNS χρησιμοποιώντας πιθανά ονόματα υποτομέων.

Για αυτή την ενέργεια θα χρειαστείτε μερικές κοινές λίστες λέξεων υποτομέων όπως:

Και επίσης IPs καλών διακομιστών DNS. Για να δημιουργήσετε μια λίστα αξιόπιστων διακομιστών DNS μπορείτε να κατεβάσετε τους διακομιστές από https://public-dns.info/nameservers-all.txt και να χρησιμοποιήσετε το dnsvalidator για να τους φιλτράρετε. Ή μπορείτε να χρησιμοποιήσετε: https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt

Τα πιο συνιστώμενα εργαλεία για τη δύναμη DNS brute-force είναι:

  • massdns: Αυτό ήταν το πρώτο εργαλείο που πραγματοποίησε μια αποτελεσματική δύναμη DNS brute-force. Είναι πολύ γρήγορο, αλλά είναι επιρρεπές σε Ϩενεργά θετικά.

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: Αυτό νομίζω χρησιμοποιεί απλά 1 resolver

gobuster dns -d mysite.com -t 50 -w subdomains.txt
  • shuffledns είναι ένα περιτύλιγμα γύρω από το massdns, γραμμένο σε go, που σας επιτρέπει να καταλογογραφήσετε έγκυρους υποτομείς χρησιμοποιώντας ενεργή βία, καθώς και να επιλύσετε υποτομείς με χειρισμό μπαλαντέρ και εύκολη υποστήριξη εισόδου-εξόδου.

shuffledns -d example.com -list example-subdomains.txt -r resolvers.txt
  • puredns: Χρησιμοποιεί επίσης το massdns.

puredns bruteforce all.txt domain.com
  • aiodnsbrute χρησιμοποιεί το asyncio για να εκτελέσει βίαια επίθεση στα ονόματα των domain ασύγχρονα.

aiodnsbrute -r resolvers -w wordlist.txt -vv -t 1024 domain.com

Δεύτερος Γύρος Βίας DNS Brute-Force

Αφού βρείτε υποτομές χρησιμοποιώντας ανοιχτές πηγές και brute-forcing, μπορείτε να δημιουργήσετε τροποποιήσεις των υποτομών που βρέθηκαν για να προσπαθήσετε να βρείτε ακόμη περισσότερες. Πολλά εργαλεία είναι χρήσιμα για αυτόν τον σκοπό:

  • dnsgen: Δεδομένων των τομέων και των υποτομών δημιουργεί παραλλαγές.

cat subdomains.txt | dnsgen -
  • goaltdns: Δεδομένων των domains και subdomains δημιουργεί αναστροφές.

  • Μπορείτε να λάβετε τις αναστροφές του goaltdns wordlist εδώ.

goaltdns -l subdomains.txt -w /tmp/words-permutations.txt -o /tmp/final-words-s3.txt
  • gotator: Δεδομένων των domains και subdomains παράγει περιστροφές. Αν δεν υποδεικνύεται αρχείο περιστροφών, το gotator θα χρησιμοποιήσει το δικό του.

gotator -sub subdomains.txt -silent [-perm /tmp/words-permutations.txt]
  • altdns: Εκτός από τη δημιουργία μεταθέσεων υποτομέων, μπορεί επίσης να προσπαθήσει να τις επιλύσει (αλλά είναι καλύτερο να χρησιμοποιήσετε τα προηγούμενα σχολιασμένα εργαλεία).

  • Μπορείτε να λάβετε τον κατάλογο με τις μεταθέσεις του altdns wordlist εδώ.

altdns -i subdomains.txt -w /tmp/words-permutations.txt -o /tmp/asd3
  • dmut: Ένα άλλο εργαλείο για να πραγματοποιεί περιστροφές, μεταλλάξεις και τροποποιήσεις υποτομέων. Αυτό το εργαλείο θα εκτελέσει βίαιη επίθεση στο αποτέλεσμα (δεν υποστηρίζει wild card dns).

  • Μπορείτε να λάβετε τη λίστα λέξεων περιστροφών του dmut εδώ.

cat subdomains.txt | dmut -d /tmp/words-permutations.txt -w 100 \
--dns-errorLimit 10 --use-pb --verbose -s /tmp/resolvers-trusted.txt
  • alterx: Βασισμένο σε ένα domain, δημιουργεί νέα πιθανά ονόματα subdomains βασισμένα σε καθορισμένα πρότυπα για να δοκιμάσει να ανακαλύψει περισσότερα subdomains.

Έξυπνη δημιουργία περιπτώσεων

  • regulator: Για περισσότερες πληροφορίες διαβάστε αυτήν την ανάρτηση αλλά βασικά θα πάρει τα κύρια μέρη από τα ανακαλυφθέντα subdomains και θα τα ανακατέψει για να βρει περισσότερα subdomains.

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 είναι ένα εργαλείο ανίχνευσης υποτομέων που συνδυάζεται με έναν απλό αλλά αποτελεσματικό αλγόριθμο καθοδήγησης απόκρισης DNS. Χρησιμοποιεί ένα σύνολο παρεχόμενων δεδομένων εισόδου, όπως μια προσαρμοσμένη λίστα λέξεων ή ιστορικά αρχεία DNS/TLS, για να συνθέσει με ακρίβεια περισσότερα αντίστοιχα ονόματα τομέων και να τα επεκτείνει ακόμα περισσότερο σε έναν βρόχο βασισμένο στις πληροφορίες που συλλέγονται κατά τη διάρκεια της σάρωσης DNS.

echo www | subzuf facebook.com

Ροή Ανακάλυψης Υποτομέων

Ελέγξτε αυτή την ανάρτηση στο blog που έγραψα σχετικά με το πώς να αυτοματοποιήσετε την ανακάλυψη υποτομέων από ένα τομέα χρησιμοποιώντας τις διαδικασίες του Trickest ώστε να μην χρειάζεται να εκκινήσετε χειροκίνητα πολλά εργαλεία στον υπολογιστή σας:

VHosts / Εικονικοί Φιλοξενητές

Αν βρήκατε μια διεύθυνση IP που περιέχει μία ή περισσότερες ιστοσελίδες που ανήκουν σε υποτομείς, μπορείτε να προσπαθήσετε να βρείτε άλλους υποτομείς με ιστοσελίδες σε αυτήν την IP ψάχνοντας σε πηγές OSINT για τομείς σε μια IP ή με τον εκφορτωτή VHost ονομάτων τομέα σε αυτήν την IP.

OSINT

Μπορείτε να βρείτε μερικούς VHosts σε IPs χρησιμοποιώντας το HostHunter ή άλλα APIs.

Εκφορτώστε με Βία

Αν υποψιάζεστε ότι κάποιος υποτομέας μπορεί να είναι κρυμμένος σε έναν web εξυπηρετητή, μπορείτε να προσπαθήσετε να τον εκφορτώσετε με βία:

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

Με αυτήν την τεχνική ενδέχεται ακόμα και να έχετε πρόσβαση σε εσωτερικά/κρυφά σημεία πρόσβασης.

Βία CORS

Μερικές φορές θα βρείτε σελίδες που επιστρέφουν μόνο το κεφαλίδα Access-Control-Allow-Origin όταν ένα έγκυρο domain/subdomain έχει οριστεί στο κεφαλίδα Origin. Σε αυτά τα σενάρια, μπορείτε να εκμεταλλευτείτε αυτήν τη συμπεριφορά για να ανακαλύψετε νέα υποτομές.

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

Βίαιη Δύναμη Κάδων

Καθώς αναζητάτε υποτομές, πρέπει να παρατηρείτε αν αυτές δείχνουν σε κάποιον τύπο κάδου, και σε αυτήν την περίπτωση ελέγξτε τα δικαιώματα. Επίσης, αφού θα έχετε γνώση όλων των τομέων εντός του πεδίου εφαρμογής, δοκιμάστε να επιτεθείτε βίαια σε πιθανά ονόματα κάδων και ελέγξτε τα δικαιώματα.

Παρακολούθηση

Μπορείτε να παρακολουθείτε αν νέες υποτομές ενός τομέα δημιουργούνται παρακολουθώντας τα Αρχεία Διαφάνειας Πιστοποίησης sublert κάνει.

Αναζήτηση ευπαθειών

Ελέγξτε για πιθανές καταλήψεις υποτομέων. Αν η υποτομή δείχνει σε κάποιον κάδο S3, ελέγξτε τα δικαιώματα.

Αν βρείτε κάποια υποτομή με διαφορετική IP από αυτές που έχετε ήδη βρει στην ανακάλυψη περιουσιακών στοιχείων, πρέπει να εκτελέσετε μια βασική ανίχνευση ευπαθειών (χρησιμοποιώντας το Nessus ή το OpenVAS) και κάποια σάρωση θυρών με nmap/masscan/shodan. Ανάλογα με τις υπηρεσίες που εκτελούνται, μπορείτε να βρείτε σε αυτό το βιβλίο μερικά κόλπα για "επίθεση" σε αυτές. Σημειώστε ότι μερικές φορές η υποτομή φιλοξενείται μέσα σε μια IP που δεν ελέγχεται από τον πελάτη, οπότε δεν είναι στο πεδίο εφαρμογής, προσέξτε.

IPs

Στα αρχικά στάδια μπορεί να έχετε βρει μερικούς εύροι IP, τομείς και υποτομές. Ήρθε η ώρα να συγκεντρώσετε όλες τις IPs από αυτούς τους εύρους και για τους τομείς/υποτομές (ερωτήσεις DNS).

Χρησιμοποιώντας υπηρεσίες από τα ακόλουθα δωρεάν APIs μπορείτε επίσης να βρείτε προηγούμενες IPs που χρησιμοποιήθηκαν από τομείς και υποτομές. Αυτές οι IPs ενδέχεται ακόμα να ανήκουν στον πελάτη (και ενδέχεται να σας επιτρέψουν να βρείτε παρακάμψεις CloudFlare)

Μπορείτε επίσης να ελέγξετε τους τομείς που δείχνουν σε μια συγκεκριμένη διεύθυνση IP χρησιμοποιώντας το εργαλείο hakip2host

Αναζήτηση ευπαθειών

Σαρώστε όλες τις IPs που δεν ανήκουν σε CDN (καθώς πιθανότατα δεν θα βρείτε κάτι ενδιαφέρον εκεί). Στις υπηρεσίες που ανακαλύφθηκαν ενδέχεται να βρείτε ευπαθείες.

Βρείτε ένα οδηγό σχετικά με το πώς να σαρώσετε τους οικοδεσπότες.

Κυνήγι διακομιστών ιστού

Έχουμε βρει όλες τις εταιρείες και τα περιουσιακά τους στοιχεία και γνωρίζουμε τους εύρους IP, τομείς και υποτομές εντός του πεδίου εφαρμογής. Ήρθε η ώρα να αναζητήσουμε διακομιστές ιστού.

Στα προηγούμενα βήματα πιθανόν να έχετε ήδη εκτελέσει κάποια αναγνώριση των IPs και των τομέων που ανακαλύφθηκαν, οπότε μπορεί να έχετε ήδη βρει όλους τους πιθανούς διακομιστές ιστού. Ωστόσο, αν δεν το έχετε κάνει, τώρα θα δούμε μερικά γρήγορα κόλπα για την αναζήτηση διακομιστών ιστού εντός του πεδίου εφαρμογής.

Παρακαλώ, σημειώστε ότι αυτό θα είναι προσανατολισμένο προς την ανακάλυψη εφαρμογών ιστού, οπότε θα πρέπει να εκτελέσετε την ευπάθεια και τη σάρωση θυρών επίσης (εάν επιτρέπεται από το πεδίο εφαρμογής).

Ένας γρήγορος τρόπος για την ανακάλυψη ανοιχτών θυρών που σχετίζονται με διακομιστές web χρησιμοποιώντας το masscan μπορεί να βρεθεί εδώ. Ένα άλλο φιλικό εργαλείο για την αναζήτηση διακομιστών ιστού είναι το httprobe, fprobe και httpx. Απλά περνάτε μια λίστα τομέων και θα προσπαθήσει να συνδεθεί στη θύρα 80 (http) και 443 (https). Επιπλέον, μπορείτε να υποδείξετε να δοκιμάσει και άλλες θύρες:

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

Στιγμιότυπα Οθονών

Τώρα που έχετε ανακαλύψει όλους τους διακομιστές ιστού που υπάρχουν στο εύρος (μεταξύ των IPs της εταιρείας και όλων των domains και subdomains) πιθανόν να μην ξέρετε από πού να ξεκινήσετε. Έτσι, ας το κάνουμε απλό και ας ξεκινήσουμε απλά παίρνοντας στιγμιότυπα από όλους αυτούς. Απλά με το να ρίξετε μια ματιά στη κύρια σελίδα μπορείτε να βρείτε περίεργα σημεία που είναι πιο ευάλωτα.

Για να εκτελέσετε την προτεινόμενη ιδέα μπορείτε να χρησιμοποιήσετε το EyeWitness, HttpScreenshot, Aquatone, Shutter, Gowitness ή webscreenshot.

Επιπλέον, μπορείτε να χρησιμοποιήσετε το eyeballer για να εκτελέσετε πάνω σε όλα τα στιγμιότυπα και να σας πει τι πιθανόν περιέχει ευπάθειες, και τι όχι.

Δημόσια Περιουσιακά Στοιχεία στο Cloud

Για να βρείτε πιθανά περιουσιακά στοιχεία στο cloud που ανήκουν σε μια εταιρεία θα πρέπει να ξεκινήσετε με μια λίστα λέξεων που ταυτίζουν αυτή την εταιρεία. Για παράδειγμα, για μια εταιρεία κρυπτονομισμάτων μπορείτε να χρησιμοποιήσετε λέξεις όπως: "crypto", "wallet", "dao", "<domain_name>", <"subdomain_names">.

Θα χρειαστείτε επίσης λίστες λέξεων που χρησιμοποιούνται συχνά σε buckets:

Στη συνέχεια, με αυτές τις λέξεις θα πρέπει να δημιουργήσετε παραλλαγές (ελέγξτε το Second Round DNS Brute-Force για περισσότερες πληροφορίες).

Με τις προκύπτουσες λίστες λέξεων μπορείτε να χρησιμοποιήσετε εργαλεία όπως το cloud_enum, CloudScraper, cloudlist ή S3Scanner.

Θυμηθείτε ότι κατά την αναζήτηση Δημόσιων Περιουσιακών Στοιχείων θα πρέπει να ψάξετε για περισσότερα από απλά buckets στο AWS.

Αναζήτηση ευπαθειών

Αν βρείτε πράγματα όπως ανοιχτά buckets ή εκθέτες λειτουργίες cloud θα πρέπει να τα επισκεφθείτε και να δοκιμάσετε να δείτε τι σας προσφέρουν και αν μπορείτε να τα καταχραστείτε.

Emails

Με τα domains και τα subdomains εντός του εύρους έχετε βασικά ό,τι χρειάζεστε για να αρχίσετε την αναζήτηση emails. Αυτά είναι τα APIs και τα εργαλεία που έχουν λειτουργήσει καλύτερα για μένα για την εύρεση emails μιας εταιρείας:

Αναζήτηση ευπαθειών

Τα emails θα είναι χρήσιμα αργότερα για brute-force στις συνδέσεις ιστού και υπηρεσίες auth (όπως το SSH). Επίσης, απαιτούνται για phishings. Επιπλέον, αυτά τα APIs θα σας δώσουν ακόμη περισσότερες πληροφορίες για το άτομο πίσω από το email, το οποίο είναι χρήσιμο για την καμπάνια phishing.

Διαρροές Διαπιστεύσεων

Με τα domains, subdomains και emails μπορείτε να αρχίσετε την αναζήτηση διαρροών διαπιστεύσεων που έχουν διαρρεύσει στο παρελθόν και ανήκουν σε αυτά τα emails:

Αναζήτηση ευπαθειών

Αν βρείτε έγκυρες διαρροές διαπιστεύσεων, αυτό είναι ένα πολύ εύκολο κέρδος.

Διαρροές Μυστικών

Οι διαρροές διαπιστεύσεων σχετίζονται με επιθέσεις σε εταιρείες όπου διέρρευσαν και πωλήθηκαν ευαίσθητες πληροφορίες. Ωστόσο, οι εταιρείες ενδέχεται να επηρεαστούν από άλλες διαρροές των οποίων οι πληροφορίες δεν βρίσκονται σε αυτές τις βάσεις δεδομένων:

Διαρροές στο Github

Διαρροές διαπιστεύσεων και APIs μπορεί να διαρρεύσουν στα δημόσια αποθετήρια της εταιρείας ή των χρηστών που εργάζονται για αυτή την εταιρεία στο github. Μπορείτε να χρησιμοποιήσετε το εργαλείο Leakos για να κατεβάσετε όλα τα δημόσια αποθετήρια μιας οργάνωσης και των προγραμματιστών της και να τρέξετε αυτόματα το gitleaks πάνω σε αυτά.

Το Leakos μπορεί επίσης να χρησιμοποιηθεί για να τρέξετε το gitleaks ξανά σε όλο το κείμενο που παρέχεται με τις URLs που περνάτε σε αυτό, καθώς μερικές φορές οι ιστοσελίδες περιέχουν επίσης μυστικά.

Github Dorks

Ελέγξτε επίσης αυτήν τη σελίδα για πιθανές github dorks που μπορείτε επίσης να αναζητήσετε στον οργανισμό που επιτίθεστε:

pageGithub Dorks & Leaks

Διαρροές σε Παστες

Μερικές φορές οι επιτιθέμενοι ή απλά οι εργαζόμενοι θα δημοσιεύσουν περιεχόμενο της εταιρείας σε μια σελίδα επικόλλησης. Αυτό ενδέχεται να περιέχει ή να μην περιέχει ευαίσθητες πληροφορίες, αλλά είναι πολύ ενδιαφέρον να το αναζητήσετε. Μπορείτε να χρησιμοποιήσετε το εργαλείο Pastos για να αναζητήσετε σε περισσότερες από 80 σελίδες επικόλλησης ταυτόχρονα.

Google Dorks

Οι παλιοί αλλά χρυσοί google dorks είναι πάντα χρήσιμοι για να βρείτε εκτεθειμένες πληροφορίες που δεν θα έπρεπε να υπάρχουν εκεί. Το μόνο πρόβλημα είναι ότι η google-hacking-database περιέχει αρκετές χιλιάδες πιθανές ερωτήσεις που δεν μπορείτε να τρέξετε χειροκίνητα. Έτσι, μπορείτε να επιλέξετε τις 10 αγαπημένες σας ή να χρησιμοποιήσετε ένα εργαλείο όπως το Gorks **για να τις τρέ

Η πλειοψηφία των ευπαθειών που βρίσκουν οι κυνηγοί ευκαιριών βρίσκεται μέσα σε ιστοσελίδες, οπότε σε αυτό το σημείο θα ήθελα να μιλήσω για μια μεθοδολογία δοκιμών ιστοσελίδων, και μπορείτε να βρείτε αυτές τις πληροφορίες εδώ.

Θέλω επίσης να κάνω μια ειδική αναφορά στην ενότητα Εργαλεία Αυτόματης Σάρωσης Ιστού με Ανοιχτό Κώδικα, καθώς, αν και δεν πρέπει να αναμένετε να βρουν πολύ ευαίσθητες ευπαθείες, είναι χρήσιμα για να εφαρμόσετε τα σενάρια σας για να έχετε κάποιες αρχικές πληροφορίες για τον ιστό.

Ανακεφαλαιώνοντας

Συγχαρητήρια! Σε αυτό το σημείο έχετε ήδη εκτελέσει όλη τη βασική απαρίθμηση. Ναι, είναι βασική επειδή μπορεί να γίνει πολύ περισσότερη απαρίθμηση (θα δούμε περισσότερα κόλπα αργότερα).

Έτσι έχετε ήδη:

  1. Βρείτε όλες τις εταιρείες εντός του πεδίου εφαρμογής

  2. Βρείτε όλα τα περιουσιακά στοιχεία που ανήκουν στις εταιρείες (και εκτελέστε μια σάρωση ευπαθειών αν είναι στο πεδίο εφαρμογής)

  3. Βρείτε όλους τους τομείς που ανήκουν στις εταιρείες

  4. Βρείτε όλα τα υποτομείδια των τομέων (κάποια ανάληψη υποτομέα;)

  5. Βρείτε όλες τις IP (από και όχι από CDN) εντός του πεδίου εφαρμογής.

  6. Βρείτε όλους τους διακομιστές ιστού και πάρτε μια στιγμιότυπη εικόνα τους (κάτι περίεργο που αξίζει μια βαθύτερη ματιά;)

  7. Βρείτε όλα τα πιθανά δημόσια περιουσιακά στοιχεία στο cloud που ανήκουν στην εταιρεία.

  8. Emails, διαρροές διαπιστεύσεων, και διαρροές μυστικών που θα μπορούσαν να σας δώσουν μια μεγάλη νίκη πολύ εύκολα.

  9. Δοκιμάστε όλες τις ιστοσελίδες που βρήκατε

Εργαλεία Αυτόματης Πλήρους Αναγνώρισης

Υπάρχουν πολλά εργαλεία εκεί έξω που θα εκτελέσουν μέρος των προτεινόμενων ενεργειών εναντίον ενός συγκεκριμένου πεδίου.

Αναφορές

Αν ενδιαφέρεστε για μια καριέρα στο χάκινγκ και να χακεύετε το αχάκιστο - σας προσλαμβάνουμε! (απαιτείται άριστη γνώση γραπτού και προφορικού Πολωνικού).

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Last updated