Translated ['generic-methodologies-and-resources/external-recon-methodol

This commit is contained in:
Translator 2024-10-16 10:38:00 +00:00
parent 07c96247c4
commit 123d6973d6

View file

@ -17,7 +17,7 @@ Learn & practice GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" d
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
If you are interested in **hacking career** and hack the unhackable - **we are hiring!** (_fluent polish written and spoken required_).
If you are interested in **hacking career** and hack the unhackable - **we are hiring!** (_вимагається вільне володіння польською мовою в усній та письмовій формі_).
{% embed url="https://www.stmcyber.com/careers" %}
@ -29,23 +29,23 @@ If you are interested in **hacking career** and hack the unhackable - **we are h
1. Знайти придбання основної компанії, це дасть нам компанії в межах обсягу.
2. Знайти ASN (якщо є) кожної компанії, це дасть нам діапазони IP, що належать кожній компанії.
3. Використовувати зворотні whois запити для пошуку інших записів (назви організацій, домени...) пов'язаних з першим (це можна робити рекурсивно).
4. Використовувати інші техніки, такі як фільтри shodan `org` і `ssl`, щоб шукати інші активи (трик `ssl` можна робити рекурсивно).
3. Використати зворотні whois запити для пошуку інших записів (назви організацій, домени...) пов'язаних з першим (це можна зробити рекурсивно).
4. Використати інші техніки, такі як фільтри shodan `org` та `ssl`, для пошуку інших активів (трик `ssl` можна зробити рекурсивно).
### **Acquisitions**
По-перше, нам потрібно знати, які **інші компанії належать основній компанії**.\
Один з варіантів - відвідати [https://www.crunchbase.com/](https://www.crunchbase.com), **шукати** **основну компанію** і **натиснути** на "**придбання**". Там ви побачите інші компанії, придбані основною.\
Інший варіант - відвідати сторінку **Wikipedia** основної компанії та шукати **придбання**.
Перш за все, нам потрібно знати, які **інші компанії належать основній компанії**.\
Один з варіантів - відвідати [https://www.crunchbase.com/](https://www.crunchbase.com), **пошукати** основну **компанію** і **натиснути** на "**придбання**". Там ви побачите інші компанії, придбані основною.\
Інший варіант - відвідати сторінку **Вікіпедії** основної компанії та знайти **придбання**.
> Добре, на цьому етапі ви повинні знати всі компанії в межах обсягу. Давайте з'ясуємо, як знайти їх активи.
### **ASNs**
Номер автономної системи (**ASN**) - це **унікальний номер**, призначений **автономній системі** (AS) **Управлінням присвоєння номерів Інтернету (IANA)**.\
Номер автономної системи (**ASN**) - це **унікальний номер**, присвоєний **автономній системі** (AS) **Управлінням Інтернету (IANA)**.\
**AS** складається з **блоків** **IP-адрес**, які мають чітко визначену політику доступу до зовнішніх мереж і адмініструються однією організацією, але можуть складатися з кількох операторів.
Цікаво дізнатися, чи **компанія має призначений ASN**, щоб знайти її **діапазони IP**. Було б цікаво провести **тест на вразливість** проти всіх **хостів** в межах **обсягу** та **шукати домени** в цих IP.\
Цікаво дізнатися, чи **призначила компанія будь-який ASN**, щоб знайти її **діапазони IP**. Було б цікаво провести **тест на вразливість** проти всіх **хостів** в межах **обсягу** та **шукати домени** в цих IP.\
Ви можете **шукати** за назвою компанії, за **IP** або за **доменом** на [**https://bgp.he.net/**](https://bgp.he.net)**.**\
**Залежно від регіону компанії, ці посилання можуть бути корисними для збору додаткових даних:** [**AFRINIC**](https://www.afrinic.net) **(Африка),** [**Arin**](https://www.arin.net/about/welcome/region/)**(Північна Америка),** [**APNIC**](https://www.apnic.net) **(Азія),** [**LACNIC**](https://www.lacnic.net) **(Латинська Америка),** [**RIPE NCC**](https://www.ripe.net) **(Європа). В будь-якому випадку, ймовірно, вся** корисна інформація **(діапазони IP та Whois)** вже з'являється за першим посиланням.
```bash
@ -96,12 +96,12 @@ 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
```
Для цього адміністратор повинен вручну увімкнути PTR.\
Для цього, адміністратор повинен вручну увімкнути PTR.\
Ви також можете використовувати онлайн-інструмент для цієї інформації: [http://ptrarchive.com/](http://ptrarchive.com)
### **Зворотний Whois (loop)**
У **whois** ви можете знайти багато цікавої **інформації**, такої як **назва організації**, **адреса**, **електронні листи**, номери телефонів... Але що ще цікавіше, так це те, що ви можете знайти **більше активів, пов'язаних з компанією**, якщо ви виконаєте **зворотні запити whois за будь-яким з цих полів** (наприклад, інші реєстрації whois, де з'являється та сама електронна адреса).\
Всередині **whois** ви можете знайти багато цікавої **інформації**, такої як **назва організації**, **адреса**, **електронні листи**, номери телефонів... Але що ще цікавіше, так це те, що ви можете знайти **більше активів, пов'язаних з компанією**, якщо ви виконаєте **зворотні whois запити за будь-яким з цих полів** (наприклад, інші реєстрації whois, де з'являється та ж електронна адреса).\
Ви можете використовувати онлайн-інструменти, такі як:
* [https://viewdns.info/reversewhois/](https://viewdns.info/reversewhois/) - **Безкоштовно**
@ -119,7 +119,7 @@ dnsrecon -r 157.240.221.35/24 -n 8.8.8.8 #Using google dns
### **Трекери**
Якщо ви знайдете **той самий ID того самого трекера** на 2 різних сторінках, ви можете припустити, що **обидві сторінки** керуються **однією командою**.\
Якщо ви знайдете **той самий ID того ж трекера** на 2 різних сторінках, ви можете припустити, що **обидві сторінки** управляються **однією командою**.\
Наприклад, якщо ви бачите той самий **ID Google Analytics** або той самий **ID Adsense** на кількох сторінках.
Є кілька сторінок і інструментів, які дозволяють вам шукати за цими трекерами та іншими:
@ -139,9 +139,9 @@ python3 favihash.py -f https://target/favicon.ico -t targets.txt -s
```
![favihash - виявлення доменів з однаковим хешем значка фавікону](https://www.infosecmatter.com/wp-content/uploads/2020/07/favihash.jpg)
Простими словами, favihash дозволить нам виявити домени, які мають однаковий хеш значка фавікону з нашим об'єктом.
Простими словами, favihash дозволить нам виявити домени, які мають однаковий хеш значка фавікону, як у нашої цілі.
Більше того, ви також можете шукати технології, використовуючи хеш значка фавікону, як пояснено в [**цьому блозі**](https://medium.com/@Asm0d3us/weaponizing-favicon-ico-for-bugbounties-osint-and-what-not-ace3c214e139). Це означає, що якщо ви знаєте **хеш значка фавікону вразливої версії веб-технології**, ви можете шукати в shodan і **знайти більше вразливих місць**:
Більше того, ви також можете шукати технології, використовуючи хеш фавікону, як пояснено в [**цьому блозі**](https://medium.com/@Asm0d3us/weaponizing-favicon-ico-for-bugbounties-osint-and-what-not-ace3c214e139). Це означає, що якщо ви знаєте **хеш значка фавікону вразливої версії веб-технології**, ви можете шукати в shodan і **знайти більше вразливих місць**:
```bash
shodan search org:"Target" http.favicon.hash:116323821 --fields ip_str,port --separator " " | awk '{print $1":"$2}'
```
@ -201,7 +201,7 @@ You could access the **TLS certificate** of the main web page, obtain the **Orga
Check for some [domain takeover](../../pentesting-web/domain-subdomain-takeover.md#domain-takeover). Maybe some company is **using some a domain** but they **lost the ownership**. Just register it (if cheap enough) and let know the company.
If you find any **domain with an IP different** from the ones you already found in the assets discovery, you should perform a **basic vulnerability scan** (using Nessus or OpenVAS) and some [**port scan**](../pentesting-network/#discovering-hosts-from-the-outside) with **nmap/masscan/shodan**. Depending on which services are running you can find in **this book some tricks to "attack" them**.\
_Зверніть увагу, що іноді домен розміщений на IP, який не контролюється клієнтом, тому це не в межах обсягу, будьте обережні._
_Зверніть увагу, що іноді домен розміщений на IP, який не контролюється клієнтом, тому він не входить до сфери дії, будьте обережні._
<img src="../../.gitbook/assets/i3.png" alt="" data-size="original">\
**Bug bounty tip**: **sign up** for **Intigriti**, a premium **bug bounty platform created by hackers, for hackers**! Join us at [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) today, and start earning bounties up to **$100,000**!
@ -226,7 +226,7 @@ dnsrecon -a -d tesla.com
```
### **OSINT**
Найшвидший спосіб отримати багато піддоменів - це пошук у зовнішніх джерелах. Найбільш використовувані **інструменти** такі (для кращих результатів налаштуйте API ключі):
Найшвидший спосіб отримати багато піддоменів - це пошук у зовнішніх джерелах. Найбільш використовувані **інструменти** такі:
* [**BBOT**](https://github.com/blacklanternsecurity/bbot)
```bash
@ -370,7 +370,7 @@ grep -E "tesla.com. [0-9]+ IN A .+" /tmp/results.txt
```
gobuster dns -d mysite.com -t 50 -w subdomains.txt
```
* [**shuffledns**](https://github.com/projectdiscovery/shuffledns) є обгорткою навколо `massdns`, написаною на go, яка дозволяє вам перераховувати дійсні піддомени, використовуючи активний брутфорс, а також вирішувати піддомени з обробкою диких символів та простим підтримкою вводу-виводу.
* [**shuffledns**](https://github.com/projectdiscovery/shuffledns) є обгорткою навколо `massdns`, написаною на go, яка дозволяє вам перераховувати дійсні піддомени, використовуючи активний брутфорс, а також вирішувати піддомени з обробкою підстановочних знаків та простим підтримкою вводу-виводу.
```
shuffledns -d example.com -list example-subdomains.txt -r resolvers.txt
```
@ -386,7 +386,7 @@ aiodnsbrute -r resolvers -w wordlist.txt -vv -t 1024 domain.com
Після того, як ви знайшли піддомени, використовуючи відкриті джерела та брутфорс, ви можете згенерувати варіації знайдених піддоменів, щоб спробувати знайти ще більше. Для цієї мети корисні кілька інструментів:
* [**dnsgen**](https://github.com/ProjectAnte/dnsgen)**:** Задані домени та піддомени генерують перестановки.
* [**dnsgen**](https://github.com/ProjectAnte/dnsgen)**:** Задано домени та піддомени, генерує перестановки.
```bash
cat subdomains.txt | dnsgen -
```
@ -424,9 +424,9 @@ puredns resolve adobe.brute --write adobe.valid
```
echo www | subzuf facebook.com
```
### **Процес виявлення піддоменів**
### **Робочий процес виявлення піддоменів**
Перегляньте цей блог-пост, який я написав про те, як **автоматизувати виявлення піддоменів** з домену, використовуючи **робочі процеси Trickest**, щоб мені не потрібно було вручну запускати купу інструментів на моєму комп'ютері:
Перегляньте цей блог-пост, який я написав про те, як **автоматизувати виявлення піддоменів** з домену, використовуючи **Trickest workflows**, щоб мені не потрібно було вручну запускати купу інструментів на моєму комп'ютері:
{% embed url="https://trickest.com/blog/full-subdomain-discovery-using-workflow/" %}
@ -434,7 +434,7 @@ echo www | subzuf facebook.com
### **VHosts / Віртуальні хости**
Якщо ви знайшли IP-адресу, що містить **одну або кілька веб-сторінок**, що належать піддоменам, ви можете спробувати **знайти інші піддомени з веб-сайтами на цій IP-адресі**, шукаючи в **OSINT-джерелах** домени на IP або **брутфорсити доменні імена VHost на цій IP-адресі**.
Якщо ви знайшли IP-адресу, що містить **одну або кілька веб-сторінок**, що належать піддоменам, ви можете спробувати **знайти інші піддомени з веб-сайтами на цій IP-адресі**, шукаючи в **OSINT джерелах** домени на IP або **брутфорсити доменні імена VHost на цій IP-адресі**.
#### OSINT
@ -462,7 +462,7 @@ VHostScan -t example.com
### **CORS Brute Force**
Іноді ви можете знайти сторінки, які повертають заголовок _**Access-Control-Allow-Origin**_ лише тоді, коли дійсний домен/піддомен встановлений у заголовку _**Origin**_. У цих сценаріях ви можете зловживати цією поведінкою, щоб **виявити** нові **піддомени**.
Іноді ви знайдете сторінки, які повертають заголовок _**Access-Control-Allow-Origin**_ лише тоді, коли дійсний домен/піддомен встановлений у заголовку _**Origin**_. У цих сценаріях ви можете зловживати цією поведінкою, щоб **виявити** нові **піддомени**.
```bash
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
```
@ -514,13 +514,13 @@ _Зверніть увагу, що іноді субдомен розміщен
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
```
### **Скріншоти**
### **Скриншоти**
Тепер, коли ви виявили **всі веб-сервери**, що входять до сфери (серед **IP-адрес** компанії та всіх **доменів** і **піддоменів**), ви, напевно, **не знаєте, з чого почати**. Тож давайте спростимо і просто почнемо з того, щоб зробити скріншоти всіх з них. Просто **подивившись** на **головну сторінку**, ви можете знайти **незвичайні** кінцеві точки, які більш **схильні** до того, щоб бути **вразливими**.
Тепер, коли ви виявили **всі веб-сервери**, що входять до сфери (серед **IP-адрес** компанії та всіх **доменів** і **піддоменів**), ви, напевно, **не знаєте, з чого почати**. Тож давайте спростимо і просто почнемо з того, щоб зробити скриншоти всіх з них. Просто **подивившись** на **головну сторінку**, ви можете знайти **незвичайні** кінцеві точки, які більш **схильні** до того, щоб бути **вразливими**.
Для реалізації запропонованої ідеї ви можете використовувати [**EyeWitness**](https://github.com/FortyNorthSecurity/EyeWitness), [**HttpScreenshot**](https://github.com/breenmachine/httpscreenshot), [**Aquatone**](https://github.com/michenriksen/aquatone), [**Shutter**](https://shutter-project.org/downloads/third-party-packages/), [**Gowitness**](https://github.com/sensepost/gowitness) або [**webscreenshot**](https://github.com/maaaaz/webscreenshot)**.**
Більше того, ви можете використовувати [**eyeballer**](https://github.com/BishopFox/eyeballer), щоб переглянути всі **скріншоти** і дізнатися, **що, ймовірно, міститиме вразливості**, а що ні.
Більше того, ви можете використовувати [**eyeballer**](https://github.com/BishopFox/eyeballer), щоб переглянути всі **скриншоти** і дізнатися, **що, ймовірно, міститиме вразливості**, а що ні.
## Публічні хмарні активи
@ -544,7 +544,7 @@ cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 a
## Електронні листи
З **доменами** та **піддоменами** в межах сфери у вас, по суті, є все, що вам **потрібно для початку пошуку електронних листів**. Ось **API** та **інструменти**, які найкраще працювали для мене, щоб знайти електронні листи компанії:
З **доменами** та **піддоменами** в межах сфери у вас, по суті, є все, що вам **потрібно, щоб почати шукати електронні листи**. Це **API** та **інструменти**, які найкраще працювали для мене, щоб знайти електронні листи компанії:
* [**theHarvester**](https://github.com/laramies/theHarvester) - з API
* API [**https://hunter.io/**](https://hunter.io/) (безкоштовна версія)
@ -573,13 +573,13 @@ cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 a
### Витоки Github
Облікові дані та API можуть бути витікали в **публічних репозиторіях** **компанії** або **користувачів**, які працюють на цю компанію в GitHub.\
Ви можете використовувати **інструмент** [**Leakos**](https://github.com/carlospolop/Leakos), щоб **завантажити** всі **публічні репозиторії** **організації** та її **розробників** і автоматично запустити [**gitleaks**](https://github.com/zricethezav/gitleaks) на них.
Ви можете використовувати **інструмент** [**Leakos**](https://github.com/carlospolop/Leakos), щоб **завантажити** всі **публічні репозиторії** **організації** та її **розробників** та автоматично запустити [**gitleaks**](https://github.com/zricethezav/gitleaks) на них.
**Leakos** також можна використовувати для запуску **gitleaks** проти всього **тексту**, наданого **URL-адресами**, оскільки іноді **веб-сторінки також містять секрети**.
#### Dorks Github
#### Dork Github
Перевірте також цю **сторінку** на предмет потенційних **github dorks**, які ви також могли б шукати в організації, яку ви атакуєте:
Перевірте також цю **сторінку** на предмет потенційних **dork'ів github**, які ви також могли б шукати в організації, яку ви атакуєте:
{% content-ref url="github-leaked-secrets.md" %}
[github-leaked-secrets.md](github-leaked-secrets.md)
@ -587,14 +587,14 @@ cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 a
### Витоки Pastes
Іноді зловмисники або просто працівники **публікують вміст компанії на сайті паст**. Це може або не може містити **конфіденційну інформацію**, але це дуже цікаво шукати.\
Ви можете використовувати інструмент [**Pastos**](https://github.com/carlospolop/Pastos), щоб шукати більш ніж на 80 сайтах паст одночасно.
Іноді зловмисники або просто працівники **публікують вміст компанії на сайті для вставок**. Це може або не може містити **конфіденційну інформацію**, але це дуже цікаво шукати.\
Ви можете використовувати інструмент [**Pastos**](https://github.com/carlospolop/Pastos), щоб шукати більш ніж на 80 сайтах для вставок одночасно.
### Dorks Google
### Dork Google
Старі, але золоті dorks Google завжди корисні для знаходження **викритої інформації, якої там не повинно бути**. Єдина проблема в тому, що [**google-hacking-database**](https://www.exploit-db.com/google-hacking-database) містить кілька **тисяч** можливих запитів, які ви не можете виконати вручну. Тож ви можете взяти свої улюблені 10 або ви можете використовувати **інструмент, такий як** [**Gorks**](https://github.com/carlospolop/Gorks), **щоб запустити їх усі**.
Старі, але золоті dork Google завжди корисні для знаходження **викритої інформації, якої там не повинно бути**. Єдина проблема в тому, що [**google-hacking-database**](https://www.exploit-db.com/google-hacking-database) містить кілька **тисяч** можливих запитів, які ви не можете виконати вручну. Тож ви можете взяти свої улюблені 10 або ви можете використовувати **інструмент, такий як** [**Gorks**](https://github.com/carlospolop/Gorks) **для їх виконання**.
_Зверніть увагу, що інструменти, які очікують запустити всю базу даних, використовуючи звичайний браузер Google, ніколи не закінчаться, оскільки Google заблокує вас дуже-дуже швидко._
_Зверніть увагу, що інструменти, які очікують виконати всю базу даних, використовуючи звичайний браузер Google, ніколи не закінчаться, оскільки Google заблокує вас дуже-дуже швидко._
### **Шукання вразливостей**
@ -618,11 +618,11 @@ _Зверніть увагу, що інструменти, які очікуют
**Більшість вразливостей**, виявлених мисливцями за помилками, знаходяться всередині **веб-додатків**, тому на цьому етапі я хотів би поговорити про **методологію тестування веб-додатків**, і ви можете [**знайти цю інформацію тут**](../../network-services-pentesting/pentesting-web/).
Я також хочу зробити особливе посилання на розділ [**Автоматизовані сканери веб-відкритих джерел**](../../network-services-pentesting/pentesting-web/#automatic-scanners), оскільки, якщо ви не повинні очікувати, що вони знайдуть вам дуже чутливі вразливості, вони зручні для впровадження їх у **робочі процеси, щоб отримати деяку початкову веб-інформацію.**
Я також хочу зробити особливе посилання на розділ [**Автоматизовані сканери веб-відкритого коду**](../../network-services-pentesting/pentesting-web/#automatic-scanners), оскільки, якщо ви не повинні очікувати, що вони знайдуть вам дуже чутливі вразливості, вони стануть у нагоді для реалізації їх у **робочих процесах, щоб отримати деяку початкову веб-інформацію.**
## Резюме
> Вітаємо! На цьому етапі ви вже виконали **всі основні перерахування**. Так, це основне, оскільки можна виконати ще багато перерахувань (пізніше побачимо більше трюків).
> Вітаємо! На цьому етапі ви вже виконали **всі основні перерахування**. Так, це базове, оскільки можна виконати ще багато перерахувань (пізніше побачимо більше трюків).
Отже, ви вже:
@ -631,7 +631,7 @@ _Зверніть увагу, що інструменти, які очікуют
3. Знайшли всі **домени**, що належать компаніям
4. Знайшли всі **піддомени** доменів (чи є якісь піддоменні захоплення?)
5. Знайшли всі **IP-адреси**і **не з CDN**) в межах сфери.
6. Знайшли всі **веб-сервери** та зробили **скріншот** з них (чи є щось незвичайне, що варто глибше розглянути?)
6. Знайшли всі **веб-сервери** та зробили **скриншот** з них (чи є щось незвичайне, що варто детальніше розглянути?)
7. Знайшли всі **потенційні публічні хмарні активи**, що належать компанії.
8. **Електронні листи**, **витоки облікових даних** та **витоки секретів**, які можуть дати вам **велику перемогу дуже легко**.
9. **Пентестинг всіх веб-сайтів, які ви знайшли**
@ -651,7 +651,7 @@ _Зверніть увагу, що інструменти, які очікуют
<figure><img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
Якщо ви зацікавлені в **кар'єрі в хакерстві** та зломі незламного - **ми наймаємо!** (_вимагається вільне володіння польською мовою в письмовій та усній формі_).
Якщо вас цікавить **кар'єра в хакерстві** та зламати незламне - **ми наймаємо!** (_вимагається вільне володіння польською мовою в письмовій та усній формі_).
{% embed url="https://www.stmcyber.com/careers" %}