.. | ||
buckets | ||
drupal | ||
electron-desktop-apps | ||
php-tricks-esp | ||
tomcat | ||
403-and-401-bypasses.md | ||
aem-adobe-experience-cloud.md | ||
angular.md | ||
apache.md | ||
artifactory-hacking-guide.md | ||
bolt-cms.md | ||
cgi.md | ||
code-review-tools.md | ||
dotnetnuke-dnn.md | ||
drupal.md | ||
flask.md | ||
git.md | ||
golang.md | ||
grafana.md | ||
graphql.md | ||
gwt-google-web-toolkit.md | ||
h2-java-sql-database.md | ||
iis-internet-information-services.md | ||
imagemagick-security.md | ||
jboss.md | ||
jira.md | ||
joomla.md | ||
jsp.md | ||
laravel.md | ||
moodle.md | ||
nextjs.md | ||
nginx.md | ||
nodejs-express.md | ||
prestashop.md | ||
put-method-webdav.md | ||
python.md | ||
README.md | ||
rocket-chat.md | ||
special-http-headers.md | ||
spring-actuators.md | ||
symphony.md | ||
tomcat.md | ||
uncovering-cloudflare.md | ||
vmware-esx-vcenter....md | ||
waf-bypass.md | ||
web-api-pentesting.md | ||
werkzeug.md | ||
wordpress.md |
80,443 - Pentesting Web Methodology
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Отримайте перспективу хакера на ваші веб-додатки, мережу та хмару
Знайдіть і повідомте про критичні, експлуатовані вразливості з реальним бізнес-імпактом. Використовуйте наші 20+ спеціальних інструментів для картографування атакуючої поверхні, знаходження проблем безпеки, які дозволяють вам підвищити привілеї, і використовуйте автоматизовані експлойти для збору важливих доказів, перетворюючи вашу важку працю на переконливі звіти.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
Основна інформація
Веб-сервіс є найпоширенішим і найширшим сервісом, і існує багато різних типів вразливостей.
Порт за замовчуванням: 80 (HTTP), 443(HTTPS)
PORT STATE SERVICE
80/tcp open http
443/tcp open ssl/https
nc -v domain.com 80 # GET / HTTP/1.0
openssl s_client -connect domain.com:443 # GET / HTTP/1.0
Web API Guidance
{% content-ref url="web-api-pentesting.md" %} web-api-pentesting.md {% endcontent-ref %}
Методологія
У цій методології ми будемо припускати, що ви збираєтеся атакувати домен (або піддомен) і тільки його. Тому ви повинні застосовувати цю методологію до кожного виявленого домену, піддомену або IP з невизначеним веб-сервером у межах обсягу.
- Почніть з ідентифікації технологій, що використовуються веб-сервером. Шукайте поради, які слід пам'ятати під час решти тесту, якщо вам вдасться успішно ідентифікувати технологію.
- Чи є якісь відомі вразливості версії технології?
- Використовується якась відомий технології? Якась корисна порада для отримання додаткової інформації?
- Чи є якісь спеціалізовані сканери для запуску (наприклад, wpscan)?
- Запустіть сканери загального призначення. Ви ніколи не знаєте, чи знайдуть вони щось або чи знайдуть якусь цікаву інформацію.
- Розпочніть з початкових перевірок: robots, sitemap, 404 помилка та сканування SSL/TLS (якщо HTTPS).
- Розпочніть павукоподібне сканування веб-сторінки: час знайти всі можливі файли, папки та параметри, що використовуються. Також перевірте на особливі знахідки.
- Зверніть увагу, що щоразу, коли під час брутфорсингу або павукоподібного сканування виявляється новий каталог, його слід просканувати.
- Брутфорсинг каталогів: спробуйте брутфорсити всі виявлені папки, шукаючи нові файли та каталоги.
- Зверніть увагу, що щоразу, коли під час брутфорсингу або павукоподібного сканування виявляється новий каталог, його слід брутфорсити.
- Перевірка резервних копій: перевірте, чи можете ви знайти резервні копії виявлених файлів, додаючи загальні розширення резервних копій.
- Брутфорсинг параметрів: спробуйте знайти приховані параметри.
- Як тільки ви ідентифікували всі можливі кінцеві точки, що приймають введення користувача, перевірте всі види вразливостей, пов'язаних з цим.
- Слідуйте цьому контрольному списку
Версія сервера (вразлива?)
Ідентифікація
Перевірте, чи є відомі вразливості для версії сервера, що працює.
HTTP заголовки та куки відповіді можуть бути дуже корисними для ідентифікації технологій та/або версії, що використовуються. Сканування Nmap може ідентифікувати версію сервера, але також можуть бути корисні інструменти whatweb, webtech або https://builtwith.com/:
whatweb -a 1 <URL> #Stealthy
whatweb -a 3 <URL> #Aggresive
webtech -u <URL>
webanalyze -host https://google.com -crawl 2
Search for вразливості веб-додатку версії
Перевірте, чи є WAF
- https://github.com/EnableSecurity/wafw00f
- https://github.com/Ekultek/WhatWaf.git
- https://nmap.org/nsedoc/scripts/http-waf-detect.html
Веб-технічні трюки
Декілька трюків для пошуку вразливостей у різних відомих технологіях:
- AEM - Adobe Experience Cloud
- Apache
- Artifactory
- Buckets
- CGI
- Drupal
- Flask
- Git
- Golang
- GraphQL
- H2 - Java SQL database
- IIS tricks
- JBOSS
- Jenkins
- Jira
- Joomla
- JSP
- Laravel
- Moodle
- Nginx
- PHP (php має багато цікавих трюків, які можуть бути використані)
- Python
- Spring Actuators
- Symphony
- Tomcat
- VMWare
- Web API Pentesting
- WebDav
- Werkzeug
- Wordpress
- Electron Desktop (XSS до RCE)
Зверніть увагу, що один і той же домен може використовувати різні технології на різних портах, папках та піддоменах.
Якщо веб-додаток використовує будь-яку відому технологію/платформу, зазначену раніше, або будь-яку іншу, не забудьте пошукати в Інтернеті нові трюки (і дайте мені знати!).
Огляд вихідного коду
Якщо вихідний код додатку доступний на github, окрім виконання вашого власного тесту White box додатку, є деяка інформація, яка може бути корисною для поточного Black-Box тестування:
- Чи є Change-log або Readme або Version файл або щось з інформацією про версію, доступною через веб?
- Як і де зберігаються облікові дані? Чи є якийсь (доступний?) файл з обліковими даними (іменами користувачів або паролями)?
- Чи є паролі у звичайному тексті, зашифровані або який алгоритм хешування використовується?
- Чи використовується якийсь майстер-ключ для шифрування чогось? Який алгоритм використовується?
- Чи можете ви отримати доступ до будь-яких з цих файлів, експлуатуючи якусь вразливість?
- Чи є якась цікава інформація в github (вирішені та не вирішені) проблеми? Або в історії комітів (можливо, якийсь пароль, введений у старому коміті)?
{% content-ref url="code-review-tools.md" %} code-review-tools.md {% endcontent-ref %}
Автоматичні сканери
Загальні автоматичні сканери
nikto -h <URL>
whatweb -a 4 <URL>
wapiti -u <URL>
W3af
zaproxy #You can use an API
nuclei -ut && nuclei -target <URL>
# https://github.com/ignis-sec/puff (client side vulns fuzzer)
node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi2rVUN/?query=FUZZ"
CMS сканери
Якщо використовується CMS, не забудьте запустити сканер, можливо, буде знайдено щось цікаве:
Clusterd: JBoss, ColdFusion, WebLogic, Tomcat, Railo, Axis2, Glassfish
CMSScan: WordPress, Drupal, Joomla, vBulletin вебсайти на предмет проблем безпеки. (GUI)
VulnX: Joomla, Wordpress, Drupal, PrestaShop, Opencart
CMSMap: (W)ordpress, (J)oomla, (D)rupal або (M)oodle
droopscan: Drupal, Joomla, Moodle, Silverstripe, Wordpress
cmsmap [-f W] -F -d <URL>
wpscan --force update -e --url <URL>
joomscan --ec -u <URL>
joomlavs.rb #https://github.com/rastating/joomlavs
На цьому етапі ви вже повинні мати деяку інформацію про веб-сервер, що використовується клієнтом (якщо надані дані) та деякі хитрощі, які слід пам'ятати під час тестування. Якщо вам пощастить, ви навіть знайшли CMS і запустили сканер.
Покрокове виявлення веб-додатків
З цього моменту ми почнемо взаємодіяти з веб-додатком.
Початкові перевірки
За замовчуванням сторінки з цікавою інформацією:
- /robots.txt
- /sitemap.xml
- /crossdomain.xml
- /clientaccesspolicy.xml
- /.well-known/
- Також перевірте коментарі на основних та вторинних сторінках.
Виклик помилок
Веб-сервери можуть поводитися несподівано, коли їм надсилаються дивні дані. Це може відкрити вразливості або розкрити чутливу інформацію.
- Доступ до фальшивих сторінок на кшталт /whatever_fake.php (.aspx,.html,.тощо)
- Додайте "[]", "]]" та "[[" у значеннях cookie та значеннях параметрів, щоб створити помилки
- Генеруйте помилку, вводячи
/~randomthing/%s
в кінці URL - Спробуйте різні HTTP методи такі як PATCH, DEBUG або неправильні, як FAKE
Перевірте, чи можете ви завантажувати файли (PUT verb, WebDav)
Якщо ви виявили, що WebDav увімкнено, але у вас недостатньо прав для завантаження файлів у кореневу папку, спробуйте:
- Брутфорсити облікові дані
- Завантажити файли через WebDav у інші знайдені папки на веб-сторінці. У вас можуть бути права на завантаження файлів в інших папках.
Вразливості SSL/TLS
- Якщо додаток не змушує користувача використовувати HTTPS в жодній частині, то він вразливий до MitM
- Якщо додаток надсилає чутливі дані (паролі) за допомогою HTTP. Тоді це висока вразливість.
Використовуйте testssl.sh для перевірки на вразливості (в програмах Bug Bounty, ймовірно, такі вразливості не будуть прийняті) та використовуйте a2sv для повторної перевірки вразливостей:
./testssl.sh [--htmlfile] 10.10.10.10:443
#Use the --htmlfile to save the output inside an htmlfile also
# You can also use other tools, by testssl.sh at this momment is the best one (I think)
sslscan <host:port>
sslyze --regular <ip:port>
Information about SSL/TLS vulnerabilities:
- https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/
- https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/
Spidering
Запустіть якийсь spider всередині вебу. Мета spider'а - знайти якомога більше шляхів з протестованого додатку. Тому слід використовувати веб-краулінг та зовнішні джерела, щоб знайти якомога більше дійсних шляхів.
- gospider (go): HTML spider, LinkFinder у JS файлах та зовнішні джерела (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
- hakrawler (go): HML spider, з LinkFinder для JS файлів та Archive.org як зовнішнє джерело.
- dirhunt (python): HTML spider, також вказує на "соковиті файли".
- evine (go): Інтерактивний CLI HTML spider. Він також шукає в Archive.org.
- meg (go): Цей інструмент не є spider'ом, але може бути корисним. Ви можете просто вказати файл з хостами та файл з шляхами, і meg отримає кожен шлях на кожному хості та збере відповідь.
- urlgrab (go): HTML spider з можливостями рендерингу JS. Однак, виглядає так, що він не підтримується, попередньо скомпільована версія стара, а поточний код не компілюється.
- gau (go): HTML spider, який використовує зовнішні постачальники (wayback, otx, commoncrawl).
- ParamSpider: Цей скрипт знайде URL з параметрами та виведе їх.
- galer (go): HTML spider з можливостями рендерингу JS.
- LinkFinder (python): HTML spider, з можливостями beautify для JS, здатний шукати нові шляхи в JS файлах. Також варто звернути увагу на JSScanner, який є обгорткою для LinkFinder.
- goLinkFinder (go): Для витягування кінцевих точок як з HTML джерела, так і з вбудованих javascript файлів. Корисно для шукачів помилок, червоних команд, інфосек ніндзя.
- JSParser (python2.7): Скрипт python 2.7, що використовує Tornado та JSBeautifier для парсингу відносних URL з JavaScript файлів. Корисно для легкого виявлення AJAX запитів. Виглядає так, що не підтримується.
- relative-url-extractor (ruby): Дано файл (HTML), він витягне URL з нього, використовуючи хитрі регулярні вирази для знаходження та витягування відносних URL з непривабливих (мінімізованих) файлів.
- JSFScan (bash, кілька інструментів): Збирає цікаву інформацію з JS файлів, використовуючи кілька інструментів.
- subjs (go): Знайти JS файли.
- page-fetch (go): Завантажити сторінку в безголовому браузері та вивести всі URL, завантажені для завантаження сторінки.
- Feroxbuster (rust): Інструмент для виявлення вмісту, що поєднує кілька опцій попередніх інструментів.
- Javascript Parsing: Розширення Burp для знаходження шляхів та параметрів у JS файлах.
- Sourcemapper: Інструмент, який, given the .js.map URL, отримає вам beautified JS код.
- xnLinkFinder: Це інструмент, що використовується для виявлення кінцевих точок для заданої цілі.
- waymore: Виявляє посилання з wayback machine (також завантажуючи відповіді в wayback та шукаючи більше посилань).
- HTTPLoot (go): Краулінг (навіть заповнюючи форми) та також знаходження чутливої інформації, використовуючи специфічні regex.
- SpiderSuite: Spider Suite - це розширений багатофункціональний GUI веб-безпековий краулер/spider, розроблений для фахівців з кібербезпеки.
- jsluice (go): Це пакет Go та інструмент командного рядка для витягування URL, шляхів, секретів та інших цікавих даних з вихідного коду JavaScript.
- ParaForge: ParaForge - це просте розширення Burp Suite для витягування параметрів та кінцевих точок з запиту для створення користувацького списку слів для фуззингу та перерахунку.
- katana (go): Чудовий інструмент для цього.
- Crawley (go): Друкує кожне посилання, яке може знайти.
Brute Force directories and files
Почніть brute-forcing з кореневої папки та переконайтеся, що ви brute-force всі знайдені каталоги, використовуючи цей метод та всі каталоги, виявлені за допомогою Spidering (ви можете виконати цей brute-forcing рекурсивно та додати на початку використаного списку слів назви знайдених каталогів).
Інструменти:
- Dirb / Dirbuster - Включено в Kali, старий (і повільний), але функціональний. Дозволяє авто-підписані сертифікати та рекурсивний пошук. Занадто повільний у порівнянні з іншими варіантами.
- Dirsearch (python): Не дозволяє авто-підписані сертифікати, але дозволяє рекурсивний пошук.
- Gobuster (go): Дозволяє авто-підписані сертифікати, не має рекурсивного пошуку.
- Feroxbuster - Швидкий, підтримує рекурсивний пошук.
- wfuzz
wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ
- ffuf - Швидкий:
ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ
- uro (python): Це не spider, а інструмент, який, given the list of found URLs, видалить "дубльовані" URL.
- Scavenger: Розширення Burp для створення списку каталогів з історії burp різних сторінок.
- TrashCompactor: Видаляє URL з дублікатами функціональностей (на основі js імпортів).
- Chamaleon: Використовує wapalyzer для виявлення використовуваних технологій та вибору списків слів для використання.
Рекомендовані словники:
- https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/bf_directories.txt
- Dirsearch включений словник
- http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10
- Assetnote wordlists
- https://github.com/danielmiessler/SecLists/tree/master/Discovery/Web-Content
- raft-large-directories-lowercase.txt
- directory-list-2.3-medium.txt
- RobotsDisallowed/top10000.txt
- https://github.com/random-robbie/bruteforce-lists
- https://github.com/google/fuzzing/tree/master/dictionaries
- https://github.com/six2dez/OneListForAll
- https://github.com/random-robbie/bruteforce-lists
- https://github.com/ayoubfathi/leaky-paths
- /usr/share/wordlists/dirb/common.txt
- /usr/share/wordlists/dirb/big.txt
- /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
Зверніть увагу, що щоразу, коли під час brute-forcing або spidering виявляється новий каталог, його слід brute-force.
What to check on each file found
- Broken link checker: Знайти зламані посилання всередині HTML, які можуть бути схильні до захоплення.
- Резервні копії файлів: Після того, як ви знайшли всі файли, шукайте резервні копії всіх виконуваних файлів (".php", ".aspx"...). Загальні варіації для назви резервної копії: file.ext~, #file.ext#, ~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp та file.old. Ви також можете використовувати інструмент bfac або backup-gen.
- Виявлення нових параметрів: Ви можете використовувати інструменти, такі як Arjun, parameth, x8 та Param Miner для виявлення прихованих параметрів. Якщо зможете, спробуйте шукати приховані параметри в кожному виконуваному веб-файлі.
- Arjun всі стандартні списки слів: https://github.com/s0md3v/Arjun/tree/master/arjun/db
- Param-miner “params” : https://github.com/PortSwigger/param-miner/blob/master/resources/params
- Assetnote “parameters_top_1m”: https://wordlists.assetnote.io/
- nullenc0de “params.txt”: https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773
- Коментарі: Перевірте коментарі всіх файлів, ви можете знайти облікові дані або приховану функціональність.
- Якщо ви граєте в CTF, "звичайний" трюк - це сховати інформацію всередині коментарів праворуч від сторінки (використовуючи сотні пробілів, щоб ви не бачили дані, якщо відкриєте вихідний код у браузері). Інша можливість - використовувати кілька нових рядків та сховати інформацію в коментарі внизу веб-сторінки.
- API ключі: Якщо ви знайдете будь-який API ключ, є посібник, який вказує, як використовувати API ключі різних платформ: keyhacks, zile, truffleHog, SecretFinder, RegHex, DumpsterDive, EarlyBird.
- Google API ключі: Якщо ви знайдете будь-який API ключ, що виглядає як AIzaSyA-qLheq6xjDiEIRisP_ujUseYLQCHUjik, ви можете використовувати проект gmapapiscanner, щоб перевірити, до яких API ключ може отримати доступ.
- S3 Buckets: Під час spidering перевірте, чи є якийсь субдомен або будь-яке посилання, пов'язане з якимось S3 bucket. У такому випадку, перевірте дозволи на bucket.
Special findings
Під час виконання spidering та brute-forcing ви можете знайти цікаві речі, на які вам слід звернути увагу.
Цікаві файли
- Шукайте посилання на інші файли всередині CSS файлів.
- Якщо ви знайдете файл .git, можна витягнути деяку інформацію.
- Якщо ви знайдете .env, можна знайти інформацію, таку як API ключі, паролі бази даних та іншу інформацію.
- Якщо ви знайдете API кінцеві точки, ви також повинні їх протестувати. Це не файли, але, ймовірно, "виглядатимуть" як вони.
- JS файли: У розділі spidering згадувалися кілька інструментів, які можуть витягувати шляхи з JS файлів. Також було б цікаво моніторити кожен знайдений JS файл, оскільки в деяких випадках зміна може вказувати на те, що потенційна вразливість була введена в код. Ви можете використовувати, наприклад, JSMon.
- Вам також слід перевірити виявлені JS файли за допомогою RetireJS або JSHole, щоб дізнатися, чи є вони вразливими.
- Javascript Deobfuscator and Unpacker: https://lelinhtinh.github.io/de4js/, https://www.dcode.fr/javascript-unobfuscator.
- Javascript Beautifier: http://jsbeautifier.org/, http://jsnice.org/.
- JsFuck deobfuscation (javascript with chars:"[]!+" https://ooze.ninja/javascript/poisonjs/).
- TrainFuck:
+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.
- У кількох випадках вам потрібно буде зрозуміти регулярні вирази, які використовуються, це буде корисно: https://regex101.com/.
- Ви також можете моніторити файли, в яких були виявлені форми, оскільки зміна параметра або поява нової форми може вказувати на потенційно нову вразливу функціональність.
403 Forbidden/Basic Authentication/401 Unauthorized (bypass)
{% content-ref url="403-and-401-bypasses.md" %} 403-and-401-bypasses.md {% endcontent-ref %}
502 Proxy Error
Якщо будь-яка сторінка відповідає з цим кодом, це, ймовірно, погано налаштований проксі. Якщо ви надішлете HTTP запит, як: GET https://google.com HTTP/1.1
(з заголовком хоста та іншими загальними заголовками), проксі спробує доступитися google.com і ви знайдете SSRF.
NTLM Authentication - Info disclosure
Якщо працюючий сервер запитує аутентифікацію Windows або ви знаходите вхід, що запитує ваші облікові дані (і запитує ім'я домену), ви можете спровокувати розкриття інформації.
Надішліть заголовок: “Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”
і через те, як працює NTLM аутентифікація, сервер відповість внутрішньою інформацією (версія IIS, версія Windows...) у заголовку "WWW-Authenticate".
Ви можете автоматизувати це, використовуючи nmap плагін "http-ntlm-info.nse".
HTTP Redirect (CTF)
Можливо вставити вміст всередину Redirection. Цей вміст не буде показаний користувачу (оскільки браузер виконає редирекцію), але щось може бути сховане там.
Web Vulnerabilities Checking
Тепер, коли було виконано всебічну нумерацію веб-додатку, настав час перевірити на багато можливих вразливостей. Ви можете знайти контрольний список тут:
{% content-ref url="../../pentesting-web/web-vulnerabilities-methodology.md" %} web-vulnerabilities-methodology.md {% endcontent-ref %}
Знайдіть більше інформації про веб вразливості на:
- https://six2dez.gitbook.io/pentest-book/others/web-checklist
- https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web_application_security_testing/configuration_and_deployment_management_testing.html
- https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection
Monitor Pages for changes
Ви можете використовувати інструменти, такі як https://github.com/dgtlmoon/changedetection.io, щоб моніторити сторінки на предмет модифікацій, які можуть вставити вразливості.
Отримайте перспективу хакера на ваші веб-додатки, мережу та хмару
Знайдіть та повідомте про критичні, експлуатовані вразливості з реальним бізнес-імпактом. Використовуйте наші 20+ спеціальних інструментів для картографування атакуючої поверхні, знаходження проблем безпеки, які дозволяють вам підвищити привілеї, та використовуйте автоматизовані експлойти для збору важливих доказів, перетворюючи вашу важку працю на переконливі звіти.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
HackTricks Automatic Commands
Protocol_Name: Web #Protocol Abbreviation if there is one.
Port_Number: 80,443 #Comma separated if there is more than one.
Protocol_Description: Web #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for Web
Note: |
https://book.hacktricks.xyz/pentesting/pentesting-web
Entry_2:
Name: Quick Web Scan
Description: Nikto and GoBuster
Command: nikto -host {Web_Proto}://{IP}:{Web_Port} &&&& gobuster dir -w {Small_Dirlist} -u {Web_Proto}://{IP}:{Web_Port} && gobuster dir -w {Big_Dirlist} -u {Web_Proto}://{IP}:{Web_Port}
Entry_3:
Name: Nikto
Description: Basic Site Info via Nikto
Command: nikto -host {Web_Proto}://{IP}:{Web_Port}
Entry_4:
Name: WhatWeb
Description: General purpose auto scanner
Command: whatweb -a 4 {IP}
Entry_5:
Name: Directory Brute Force Non-Recursive
Description: Non-Recursive Directory Brute Force
Command: gobuster dir -w {Big_Dirlist} -u {Web_Proto}://{IP}:{Web_Port}
Entry_6:
Name: Directory Brute Force Recursive
Description: Recursive Directory Brute Force
Command: python3 {Tool_Dir}dirsearch/dirsearch.py -w {Small_Dirlist} -e php,exe,sh,py,html,pl -f -t 20 -u {Web_Proto}://{IP}:{Web_Port} -r 10
Entry_7:
Name: Directory Brute Force CGI
Description: Common Gateway Interface Brute Force
Command: gobuster dir -u {Web_Proto}://{IP}:{Web_Port}/ -w /usr/share/seclists/Discovery/Web-Content/CGIs.txt -s 200
Entry_8:
Name: Nmap Web Vuln Scan
Description: Tailored Nmap Scan for web Vulnerabilities
Command: nmap -vv --reason -Pn -sV -p {Web_Port} --script=`banner,(http* or ssl*) and not (brute or broadcast or dos or external or http-slowloris* or fuzzer)` {IP}
Entry_9:
Name: Drupal
Description: Drupal Enumeration Notes
Note: |
git clone https://github.com/immunIT/drupwn.git for low hanging fruit and git clone https://github.com/droope/droopescan.git for deeper enumeration
Entry_10:
Name: WordPress
Description: WordPress Enumeration with WPScan
Command: |
?What is the location of the wp-login.php? Example: /Yeet/cannon/wp-login.php
wpscan --url {Web_Proto}://{IP}{1} --enumerate ap,at,cb,dbe && wpscan --url {Web_Proto}://{IP}{1} --enumerate u,tt,t,vp --passwords {Big_Passwordlist} -e
Entry_11:
Name: WordPress Hydra Brute Force
Description: Need User (admin is default)
Command: hydra -l admin -P {Big_Passwordlist} {IP} -V http-form-post '/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log In&testcookie=1:S=Location'
Entry_12:
Name: Ffuf Vhost
Description: Simple Scan with Ffuf for discovering additional vhosts
Command: ffuf -w {Subdomain_List}:FUZZ -u {Web_Proto}://{Domain_Name} -H "Host:FUZZ.{Domain_Name}" -c -mc all {Ffuf_Filters}
{% hint style="success" %}
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.