80,443 - Pentesting Web Methodology
Reading time: 19 minutes
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Podstawowe informacje
Usługa webowa jest najczęstszą i najbardziej rozbudowaną usługą, a także występuje wiele różnych typów podatności.
Domyślne porty: 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
Wytyczne Web API
Podsumowanie metodologii
W tej metodologii zakładamy, że będziesz atakować jedną domenę (lub subdomenę) i tylko ją. Zatem powinieneś stosować tę metodologię dla każdej odkrytej domeny, subdomeny lub adresu IP z nieokreślonym serwerem WWW w zakresie.
- Zacznij od identyfikacji technologii używanych przez serwer WWW. Szukaj trików, które warto mieć na uwadze w trakcie dalszego testu, jeśli uda się zidentyfikować technologię.
- Czy istnieje jakaś known vulnerability dla wersji danej technologii?
- Czy używana jest jakaś well known tech? Jakieś useful trick pozwalające wydobyć więcej informacji?
- Czy są jakieś specialised scanner do uruchomienia (jak wpscan)?
- Uruchom general purposes scanners. Nigdy nie wiadomo, czy coś znajdą lub czy wyciągną interesujące informacje.
- Zacznij od initial checks: robots, sitemap, błąd 404 oraz SSL/TLS scan (jeśli HTTPS).
- Rozpocznij spidering strony: czas znaleźć wszystkie możliwe files, folders i parameters being used. Sprawdź także special findings.
- Uwaga: za każdym razem gdy odkryjesz nowy katalog podczas brute-forcingu lub spideringu, powinien on zostać spiderowany.
- Directory Brute-Forcing: Spróbuj brute-force wszystkich odkrytych folderów w poszukiwaniu nowych files i directories.
- Uwaga: za każdym razem gdy odkryjesz nowy katalog podczas brute-forcingu lub spideringu, powinien on zostać Brute-Forced.
- Backups checking: Sprawdź, czy możesz znaleźć backups discovered files poprzez dopisanie typowych rozszerzeń kopii zapasowych.
- Brute-Force parameters: Spróbuj znaleźć ukryte parametry (hidden parameters).
- Gdy identified wszystkie możliwe endpoints akceptujące user input, sprawdź wszystkie rodzaje vulnerabilities związanych z nimi.
- Postępuj zgodnie z tą listą kontrolną
Wersja serwera (podatna?)
Identyfikacja
Sprawdź, czy dla uruchomionej wersji serwera istnieją known vulnerabilities.
HTTP headers oraz cookies odpowiedzi mogą być bardzo przydatne do identyfikacji używanych technologies i/lub version. Nmap scan może zidentyfikować wersję serwera, ale przydatne mogą być też narzędzia whatweb, webtech lub https://builtwith.com/:
whatweb -a 1 <URL> #Stealthy
whatweb -a 3 <URL> #Aggresive
webtech -u <URL>
webanalyze -host https://google.com -crawl 2
Szukaj dla vulnerabilities of the web application version
Sprawdź, czy jest WAF
- https://github.com/EnableSecurity/wafw00f
- https://github.com/Ekultek/WhatWaf.git
- https://nmap.org/nsedoc/scripts/http-waf-detect.html
Triki technologii webowych
Kilka trików do znajdowania podatności w różnych dobrze znanych technologiach używanych:
- AEM - Adobe Experience Cloud
- Apache
- Artifactory
- Buckets
- CGI
- Drupal
- Flask
- Git
- Golang
- GraphQL
- H2 - Java SQL database
- ISPConfig
- IIS tricks
- Microsoft SharePoint
- JBOSS
- Jenkins
- Jira
- Joomla
- JSP
- Laravel
- Moodle
- Nginx
- PHP (php has a lot of interesting tricks that could be exploited)
- Python
- Spring Actuators
- Symphony
- Tomcat
- VMWare
- Web API Pentesting
- WebDav
- Werkzeug
- Wordpress
- Electron Desktop (XSS to RCE)
Weź pod uwagę, że ta sama domena może używać różnych technologii na różnych portach, w różnych folderach i na różnych subdomenach.
Jeśli aplikacja webowa używa którejkolwiek znanej technologii/platformy wymienionych wcześniej lub jakiejkolwiek innej, nie zapomnij wyszukać w Internecie nowych trików (i daj mi znać!).
Source Code Review
Jeżeli kod źródłowy aplikacji jest dostępny w github, oprócz przeprowadzenia przez Ciebie testu White box aplikacji istnieją pewne informacje, które mogą być przydatne dla bieżącego Black-Box testing:
- Czy istnieje plik Change-log or Readme or Version lub coś z version info accessible przez web?
- Jak i gdzie są zapisane credentials? Czy istnieje jakiś (dostępny?) file z credentials (usernames or passwords)?
- Czy passwords są w plain text, encrypted czy jaki hashing algorithm jest używany?
- Czy używa jakiegoś master key do szyfrowania czegoś? Jaki algorithm jest używany?
- Czy możesz access any of these files wykorzystując jakąś podatność?
- Czy na github są jakieś interesujące informacje (solved and not solved) w issues? Albo w commit history (może jakieś password introduced inside an old commit)?
Source code Review / SAST Tools
Automatic scanners
Automatyczne skanery ogólnego przeznaczenia
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"
Skanery CMS
Jeśli używany jest CMS, nie zapomnij uruchomić skanera, może uda się znaleźć coś ciekawego:
Clusterd: JBoss, ColdFusion, WebLogic, Tomcat, Railo, Axis2, Glassfish
CMSScan: WordPress, Drupal, Joomla, vBulletin witryny pod kątem problemów z bezpieczeństwem. (GUI)
VulnX: Joomla, Wordpress, Drupal, PrestaShop, Opencart
CMSMap: (W)ordpress, (J)oomla, (D)rupal lub (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
Na tym etapie powinieneś już mieć pewne informacje o serwerze webowym używanym przez klienta (jeśli przekazano jakieś dane) oraz kilka sztuczek, o których warto pamiętać podczas testu. Jeśli masz szczęście, znalazłeś nawet CMS i uruchomiłeś jakiś skaner.
Step-by-step Web Application Discovery
Od tego momentu zaczniemy wchodzić w interakcję z aplikacją webową.
Initial checks
Default pages with interesting info:
- /robots.txt
- /sitemap.xml
- /crossdomain.xml
- /clientaccesspolicy.xml
- /.well-known/
- Sprawdź także komentarze na stronach głównych i pomocniczych.
Forcing errors
Serwery WWW mogą zachowywać się nieprzewidywalnie, gdy wysyłane są do nich nietypowe dane. To może skutkować ujawnieniem luki lub ujawnienia wrażliwych informacji.
- Uzyskaj dostęp do fałszywych stron jak /whatever_fake.php (.aspx,.html,.etc)
- Dodaj "[]", "]]", and "[[" w wartościach cookie i wartościach parametrów aby wywołać błędy
- Wygeneruj błąd, podając wejście jako
/~randomthing/%s
na końcu URL - Spróbuj różnych metod HTTP, np. PATCH, DEBUG lub błędnych typu FAKE
Sprawdź, czy możesz wysyłać pliki (PUT verb, WebDav)
Jeśli okaże się, że WebDav jest włączony, ale nie masz wystarczających uprawnień do wysyłania plików w katalogu root, spróbuj:
- Brute Force credentials
- Upload files przez WebDav do pozostałych znalezionych folderów na stronie. Możesz mieć uprawnienia do uploadu plików w innych folderach.
SSL/TLS vulnerabilites
- Jeśli aplikacja nigdzie nie wymusza użycia HTTPS, to jest podatna na MitM
- Jeśli aplikacja wysyła dane wrażliwe (hasła) przez HTTP, to jest to poważna luka.
Użyj testssl.sh do sprawdzenia luki (W programach Bug Bounty prawdopodobnie tego rodzaju luki nie będą akceptowane) oraz użyj a2sv aby ponownie sprawdzić luki:
./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>
Informacje o podatnościach SSL/TLS:
- https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/
- https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/
Spidering
Uruchom jakiś rodzaj spidera na stronie. Celem spidera jest znalezienie jak największej liczby paths z testowanej aplikacji. Dlatego warto użyć web crawlingu oraz zewnętrznych źródeł, aby odnaleźć jak najwięcej poprawnych paths.
- gospider (go): HTML spider, LinkFinder w plikach JS oraz zewnętrzne źródła (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
- hakrawler (go): HML spider, z LinkFinder dla plików JS i Archive.org jako źródłem zewnętrznym.
- dirhunt (python): HTML spider, dodatkowo wskazuje "juicy files".
- evine (go): Interaktywny CLI HTML spider. Przeszukuje też Archive.org.
- meg (go): To narzędzie nie jest spiderem, ale może być przydatne. Wskaż plik z hostami i plik z pathami, a meg pobierze każdą ścieżkę na każdym hoście i zapisze odpowiedź.
- urlgrab (go): HTML spider z możliwością renderowania JS. Wygląda na to, że jest nieutrzymywany, dostępna prekompilowana wersja jest stara, a bieżący kod nie kompiluje się.
- gau (go): HTML spider korzystający z zewnętrznych dostawców (wayback, otx, commoncrawl).
- ParamSpider: Skrypt znajdzie URL-e z parametrami i je wylistuje.
- galer (go): HTML spider z możliwością renderowania JS.
- LinkFinder (python): HTML spider z funkcjami beautify dla JS, potrafi wyszukiwać nowe ścieżki w plikach JS. Warto też rzucić okiem na JSScanner, który jest wrapperem dla LinkFinder.
- goLinkFinder (go): Do wyciągania endpointów zarówno z HTML, jak i osadzonego javascriptu. Przydatny dla bug hunterów, red teamerów, infosec ninja.
- JSParser (python2.7): Skrypt w Python 2.7 używający Tornado i JSBeautifier do parsowania względnych URL-i z plików JavaScript. Przydatny do odkrywania żądań AJAX. Wygląda na nieutrzymywany.
- relative-url-extractor (ruby): Dając plik (HTML) wyciąga URL-e używając sprytnego regexa do znajdowania i ekstrakcji względnych URL-i z nieładnych (minified) plików.
- JSFScan (bash, kilka narzędzi): Zbiera interesujące informacje z plików JS używając kilku narzędzi.
- subjs (go): Znajduje pliki JS.
- page-fetch (go): Ładuje stronę w headless browser i wypisuje wszystkie URL-e załadowane przez stronę.
- Feroxbuster (rust): Narzędzie do discovery treści łączące kilka opcji poprzednich narzędzi.
- Javascript Parsing: Rozszerzenie Burp do znajdowania path i parametrów w plikach JS.
- Sourcemapper: Narzędzie, które podając URL do .js.map pobierze dla Ciebie beautified kod JS.
- xnLinkFinder: Narzędzie używane do odkrywania endpointów dla danego targetu.
- waymore: Odkrywa linki z wayback machine (również pobierając odpowiedzi w wayback i szukając dalszych linków).
- HTTPLoot (go): Crawl (nawet z wypełnianiem formularzy) i również wyszukuje wrażliwe informacje używając specyficznych regexów.
- SpiderSuite: Spider Suite to zaawansowany, wielofunkcyjny GUI web security Crawler/Spider zaprojektowany dla profesjonalistów cyberbezpieczeństwa.
- jsluice (go): Pakiet Go i narzędzie wiersza poleceń do ekstrakcji URL-i, ścieżek, sekretów i innych interesujących danych z kodu źródłowego JavaScript.
- ParaForge: ParaForge to proste Burp Suite extension do ekstrakcji parametów i endpointów z requestów w celu tworzenia niestandardowych wordlist do fuzzingu i enumeracji.
- katana (go): Świetne narzędzie do tego zadania.
- Crawley (go): Wypisuje każdy link, który jest w stanie znaleźć.
Brute Force directories and files
Zacznij brute-forcing od katalogu root i upewnij się, że przeprowadzasz brute-forcing wszystkich katalogów znalezionych używając tej metody oraz wszystkich katalogów odkrytych przez Spidering (możesz wykonywać brute-forcing rekursywnie i dopisywać na początku używanej wordlisty nazwy znalezionych katalogów).
Narzędzia:
- Dirb / Dirbuster - Dołączone w Kali, stare (i wolne) ale funkcjonalne. Pozwalają na certyfikaty auto-signed i wyszukiwanie rekursywne. Zbyt wolne w porównaniu z innymi opcjami.
- Dirsearch (python): Nie pozwala na certyfikaty auto-signed, ale pozwala na wyszukiwanie rekursywne.
- Gobuster (go): Pozwala na certyfikaty auto-signed, nie ma jednak wyszukiwania rekursywnego.
- Feroxbuster - Fast, supports recursive search.
- wfuzz
wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ
- ffuf - Fast:
ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ
- uro (python): To nie jest spider, ale narzędzie, które z listy znalezionych URL-i usuwa "zduplikowane" URL-e.
- Scavenger: Burp Extension do tworzenia listy katalogów z historii Burp dla różnych stron.
- TrashCompactor: Usuwa URL-e o zduplikowanych funkcjonalnościach (na podstawie importów js).
- Chamaleon: Używa wapalyzer do wykrywania użytych technologii i dobiera do nich odpowiednie wordlisty.
Recommended dictionaries:
- https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/bf_directories.txt
- Dirsearch included dictionary
- 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
Zauważ, że za każdym razem gdy podczas brute-forcingu lub spideringu odkryty zostanie nowy katalog, powinien on być poddany Brute-Forcingowi.
What to check on each file found
- Broken link checker: Znajdź broken links w HTML-ach, które mogą być podatne na takeover.
- File Backups: Po znalezieniu plików, szukaj backupów plików wykonywalnych (".php", ".aspx"...). Typowe warianty nazewnictwa backupu to: file.ext~, #file.ext#, ~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp oraz file.old. Możesz też użyć narzędzia bfac lub backup-gen.
- Discover new parameters: Możesz użyć narzędzi takich jak Arjun, parameth, x8 oraz Param Miner do odkrywania ukrytych parametrów. Jeśli możesz, spróbuj wyszukać ukryte parametry w każdym wykonywalnym pliku webowym.
- Arjun all default wordlists: 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
- Comments: Sprawdź komentarze we wszystkich plikach — możesz znaleźć w nich credentials lub ukrytą funkcjonalność.
- Jeśli bierzesz udział w CTF, "popularny" trik to ukrycie informacji w komentarzach po prawej stronie strony (używając setek spacji, żeby nie widzieć danych przy otwarciu źródła w przeglądarce). Inną możliwością jest użycie kilku nowych linii i ukrycie informacji w komentarzu na dole strony.
- API keys: Jeśli znajdziesz jakikolwiek API key, istnieją projekty pokazujące jak wykorzystać API keys dla różnych platform: keyhacks, zile, truffleHog, SecretFinder, RegHex, DumpsterDive, EarlyBird
- Google API keys: Jeśli znajdziesz API key zaczynający się od AIzaSyA-qLheq6xjDiEIRisP_ujUseYLQCHUjik możesz użyć projektu gmapapiscanner aby sprawdzić, do których API klucz ma dostęp.
- S3 Buckets: Podczas spideringu sprawdź, czy któryś subdomain lub któryś link jest powiązany z jakimś S3 bucket. W takim przypadku sprawdź uprawnienia bucketu.
Special findings
Podczas spideringu i brute-forcingu możesz trafić na interesujące znaleziska, na które warto zwrócić uwagę.
Interesujące pliki
- Szukaj linków do innych plików wewnątrz plików CSS.
- Jeśli znajdziesz plik .git można wydobyć pewne informacje
- Jeśli znajdziesz .env, można odszukać takie informacje jak api keys, hasła do db i inne dane.
- Jeśli znajdziesz API endpoints, powinieneś je też przetestować. To nie są pliki, ale prawdopodobnie "będą wyglądać" jak pliki.
- JS files: W sekcji spideringu wspomniano kilka narzędzi do ekstrakcji ścieżek z plików JS. Warto także monitorować każdy znaleziony plik JS, bo w niektórych przypadkach zmiana może wskazywać, że potencjalna podatność została wprowadzona do kodu. Możesz użyć np. JSMon.
- Również sprawdź odkryte pliki JS za pomocą RetireJS lub JSHole w celu wykrycia podatności.
- 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://enkhee-osiris.github.io/Decoder-JSFuck/)
- TrainFuck:
+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.
- W wielu przypadkach trzeba będzie zrozumieć wyrażenia regularne używane w kodzie. Przydatne strony to: https://regex101.com/ lub https://pythonium.net/regex
- Możesz także monitorować pliki, w których wykryto formularze, ponieważ zmiana parametrów lub pojawienie się nowego formularza może wskazywać na potencjalnie nową, podatną funkcjonalność.
403 Forbidden/Basic Authentication/401 Unauthorized (bypass)
502 Proxy Error
Jeśli jakaś strona odpowiada tym kodem, prawdopodobnie mamy do czynienia z źle skonfigurowanym proxy. Jeśli wyślesz żądanie HTTP takie jak: GET https://google.com HTTP/1.1
(z nagłówkiem host i innymi standardowymi nagłówkami), proxy spróbuje uzyskać dostęp do google.com i w ten sposób znajdziesz SSRF.
NTLM Authentication - Info disclosure
Jeżeli serwer proszący o autoryzację jest Windows lub natrafisz na login proszący o Twoje credentials (i proszący o nazwę domeny), możesz sprowokować ujawnienie informacji.
Wyślij nagłówek: “Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”
i z uwagi na to jak działa NTLM authentication, serwer odpowie wewnętrznymi informacjami (wersja IIS, wersja Windows...) w nagłówku "WWW-Authenticate".
Możesz zautomatyzować to za pomocą pluginu nmap "http-ntlm-info.nse".
HTTP Redirect (CTF)
Możliwe jest umieszczenie treści wewnątrz Redirectu. Ta treść nie będzie widoczna dla użytkownika (ponieważ przeglądarka wykona przekierowanie), ale coś może być w ten sposób ukryte.
Web Vulnerabilities Checking
Po wykonaniu kompleksowej enumeracji aplikacji webowej czas na sprawdzenie wielu możliwych podatności. Checklistę znajdziesz tutaj:
Web Vulnerabilities Methodology
Znajdź więcej informacji o web vulns w:
- 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
Możesz użyć narzędzi takich jak https://github.com/dgtlmoon/changedetection.io do monitorowania stron pod kątem modyfikacji, które mogą wprowadzić podatności.
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.wiki/en/network-services-pentesting/pentesting-web/index.html
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}
tip
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.