80,443 - Pentesting Web Metodologie

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Basiese Inligting

Die webdiens is die mees algemene en omvattende diens en daar bestaan baie verskillende tipes vulnerabilities.

Standaardpoort: 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 Riglyne

Web API Pentesting

Opsomming van metodologie

In hierdie metodologie gaan ons aanvaar dat jy ’n domein (of subdomein) en net daardie gaan aanvall. Daarom moet jy hierdie metodologie toepas op elke ontdekte domein, subdomein of IP met ’n onbepaalde webbediener binne die omvang.

  • Begin deur die identifiseer die tegnologieë wat deur die webbediener gebruik word. Soek vir truuks om in gedagte te hou tydens die res van die toets as jy die tegnologie suksesvol kan identifiseer.
  • Enige bekende kwetsbaarheid in die weergawe van die tegnologie?
  • Gebruik jy enige well known tech? Enige useful trick om meer inligting te onttrek?
  • Is daar ’n specialised scanner om te laat loop (soos wpscan)?
  • Begin met algemene skandeerders. Jy weet nooit of hulle iets gaan vind of interessante inligting nie.
  • Begin met die initiële kontroles: robots, sitemap, 404 fout en SSL/TLS scan (indien HTTPS).
  • Begin met spidering van die webblad: Dit is tyd om alle moontlike lêers, gidse en parameters wat gebruik word te vind. Kontroleer ook vir special findings.
  • Let daarop dat enige tyd ’n nuwe gids ontdek word tydens brute-forcing of spidering, dit geskandeer moet word.
  • Directory Brute-Forcing: Probeer om al die ontdekte gidse te brute-force om nuwe lêers en gidse te vind.
  • Let daarop dat enige tyd ’n nuwe gids ontdek word tydens brute-forcing of spidering, dit brute-geforceer moet word.
  • Backups checking: Toets of jy backups van ontdekte lêers kan vind deur algemene backup-uitbreidings aan te heg.
  • Brute-Force parameters: Probeer om verborge parameters te vind.
  • Sodra jy al die moontlike endpunte wat user input aanvaar geïdentifiseer het, kontroleer vir alle soorte kwetsbaarhede wat daarmee verband hou.
  • Volg hierdie kontrolelys

Serverweergawe (Kwetsbaar?)

Identifiseer

Kontroleer of daar bekende kwesbaarhede is vir die bediener weergawe wat loop.
Die HTTP headers and cookies of the response kan baie nuttig wees om die tegnologieë en/of weergawe te identifiseer wat gebruik word. Nmap scan kan die bedienerweergawe identifiseer, maar dit kan ook nuttig wees om die gereedskap whatweb, webtech of https://builtwith.com/** te gebruik:**

whatweb -a 1 <URL> #Stealthy
whatweb -a 3 <URL> #Aggresive
webtech -u <URL>
webanalyze -host https://google.com -crawl 2

Soek vir vulnerabilities of the web application version

Kyk of daar enige WAF is

Web tech truuks

Sommige truuks om vulnerabilities in verskeie bekende technologies wat gebruik word, te vind:

Neem in ag dat dieselfde domein verskillende tegnologieë op verskillende porte, mappes en subdomeine kan gebruik.
Indien die web application enige bekende tech/platform wat hierbo gelys is of enige ander gebruik, moenie vergeet om nuwe truuks op die internet te soek (en laat my weet!).

Bronkode-oorsig

As die bronkode van die toepassing op github beskikbaar is, benewens om self ’n White box test van die toepassing uit te voer, is daar sommige inligting wat nuttig kan wees vir die huidige Black-Box testing:

  • Is daar ’n Change-log of Readme of Version lêer of enigiets met version info wat via die web toeganklik is?
  • Hoe en waar word die credentials gestoor? Is daar enige (toeganklike?) file met credentials (gebruikersname of wagwoorde)?
  • Is die passwords in plain text, encrypted of watter hashing algorithm word gebruik?
  • Gebruik dit ’n master key om iets te enkripteer? Watter algoritme word gebruik?
  • Kan jy toegang kry tot enige van hierdie files deur ’n vulnerability te exploit?
  • Is daar enige interessante inligting in die github (opgelos en nie-opgelos) issues? Of in die commit history (dalk is daar ’n password wat in ’n ou commit ingesluit is)?

Source code Review / SAST Tools

Outomatiese skandeerders

General purpose automatic scanners

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-skandeerders

As ’n CMS gebruik word, moenie vergeet om ’n skandeerder te laat loop nie — dalk word iets sappigs gevind:

Clusterd: JBoss, ColdFusion, WebLogic, Tomcat, Railo, Axis2, Glassfish
CMSScan: WordPress, Drupal, Joomla, vBulletin webwerwe vir sekuriteitskwessies. (GUI)
VulnX: Joomla, Wordpress, Drupal, PrestaShop, Opencart
CMSMap: (W)ordpress, (J)oomla, (D)rupal of (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

Op hierdie punt behoort jy reeds sekere inligting oor die webbediener wat deur die kliënt gebruik word (indien enige data gegee is) te hê en ’n paar truuks om in gedagte te hou tydens die toets. As jy gelukkig is het jy dalk selfs ’n CMS gevind en ’n scanner laat loop.

Step-by-step Web Application Discovery

Van hier af gaan ons begin om met die webaansoek te interakteer.

Initial checks

Default pages with interesting info:

  • /robots.txt
  • /sitemap.xml
  • /crossdomain.xml
  • /clientaccesspolicy.xml
  • /.well-known/
  • Check also comments in the main and secondary pages.

Forcing errors

Webservers kan onverwag optree wanneer vreemde data na hulle gestuur word. Dit kan vulnerabilities of die openbaarmaking van sensitiewe inligting moontlik maak.

  • Access fake pages like /whatever_fake.php (.aspx,.html,.etc)
  • Add “[]”, “]]”, and “[[” in cookie values and parameter values to create errors
  • Generate error by giving input as /~randomthing/%s at the end of URL
  • Try different HTTP Verbs like PATCH, DEBUG or wrong like FAKE

Check if you can upload files (PUT verb, WebDav)

If you find that WebDav is enabled but you don’t have enough permissions for uploading files in the root folder try to:

  • Brute Force credentials
  • Upload files via WebDav to the rest of found folders inside the web page. You may have permissions to upload files in other folders.

SSL/TLS vulnerabilites

  • If the application isn’t forcing the user of HTTPS in any part, then it’s vulnerable to MitM
  • If the application is sending sensitive data (passwords) using HTTP. Then it’s a high vulnerability.

Use testssl.sh to checks for vulnerabilities (In Bug Bounty-programme sal hierdie soort vulnerabilities waarskynlik nie aanvaar word nie) and use a2sv to recheck the vulnerabilities:

./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>

Inligting oor SSL/TLS kwesbaarhede:

  • https://www.gracefulsecurity.com/tls-ssl-vulnerabilities/
  • https://www.acunetix.com/blog/articles/tls-vulnerabilities-attacks-final-part/

Spidering

Begin ’n soort spider op die web. Die doel van die spider is om soveel paadjies as moontlik te vind van die getoetste toepassing. Daarom moet web crawling en eksterne bronne gebruik word om soveel geldige paadjies as moontlik te vind.

  • gospider (go): HTML spider, LinkFinder in JS files and external sources (Archive.org, CommonCrawl.org, VirusTotal.com).
  • hakrawler (go): HML spider, with LinkFider for JS files and Archive.org as external source.
  • dirhunt (python): HTML spider, also indicates “juicy files”.
  • evine (go): Interactive CLI HTML spider. It also searches in Archive.org
  • meg (go): Hierdie tool is nie ’n spider nie maar kan nuttig wees. Jy kan net ’n lêer met hosts en ’n lêer met paths aandui en meg sal elke path op elke host haal en die response stoor.
  • urlgrab (go): HTML spider with JS rendering capabilities. However, it looks like it’s unmaintained, the precompiled version is old and the current code doesn’t compile
  • gau (go): HTML spider that uses external providers (wayback, otx, commoncrawl)
  • ParamSpider: Hierdie script sal URLs met parameters vind en dit lys.
  • galer (go): HTML spider with JS rendering capabilities.
  • LinkFinder (python): HTML spider, with JS beautify capabilities capable of search new paths in JS files. Dit kan ook die moeite werd wees om na JSScanner te kyk, wat ’n wrapper vir LinkFinder is.
  • goLinkFinder (go): To extract endpoints in both HTML source and embedded javascript files. Useful for bug hunters, red teamers, infosec ninjas.
  • JSParser (python2.7): ’n python 2.7 script wat Tornado en JSBeautifier gebruik om relatiewe URLs uit JavaScript-lêers te parse. Nuttig om AJAX-aanvrae maklik te ontdek. Lyk ononderhou.
  • relative-url-extractor (ruby): Gegee ’n lêer (HTML) sal dit URLs uithaal met ’n netjiese regex om relatiewe URLs uit geminifiseerde lêers te kry.
  • JSFScan (bash, several tools): Versamel interessante inligting uit JS-lêers deur verskeie tools te gebruik.
  • subjs (go): Vind JS-lêers.
  • page-fetch (go): Laai ’n bladsy in ’n headless browser en druk al die urls wat gelaai word om die bladsy te laai.
  • Feroxbuster (rust): Content discovery tool wat verskeie opsies van die vorige tools meng
  • Javascript Parsing: ’n Burp extension om path en params in JS-lêers te vind.
  • BurpJSLinkFinder Enhanced: Burp extension (Jython) wat passief JavaScript responses (deur MIME type en /js paths) analiseer om endpoints/links te onttrek en opsioneel ingebedde secrets met severity te flag.
  • Sourcemapper: ’n tool wat, gegewe die .js.map URL, die beatified JS code vir jou kry
  • xnLinkFinder: Hierdie tool word gebruik om endpoints vir ’n gegewe teiken te ontdek.
  • waymore: Ontdek links vanaf die wayback machine (laai ook die responses in die wayback af en kyk vir meer links)
  • HTTPLoot (go): Crawl (selfs deur forms te vul) en vind ook sensitiewe inligting met spesifieke regexes.
  • SpiderSuite: Spider Suite is ’n gevorderde multi-funksie GUI web security Crawler/Spider ontwerp vir kuberveiligheidsprofessionals.
  • jsluice (go): Dit is ’n Go pakket en command-line tool vir die onttrekking van URLs, paths, secrets, en ander interessante data uit JavaScript source code.
  • ParaForge: ParaForge is ’n eenvoudige Burp Suite extension om parameters en endpoints te onttrek uit requests om ’n pasgemaakte wordlist vir fuzzing en enumerasie te skep.
  • katana (go): ’n uitstekende tool hiervoor.
  • Crawley (go): Druk elke link wat dit kan vind.

Brute Force directories and files

Begin brute-forcing vanaf die wortelgids en wees seker om al die gidse gevind op hierdie wyse te brute-forse en al die gidse ontdek deur die Spidering (jy kan dit rekursief brute-force en die name van die gevonde gidse aan die begin van die gebruikte wordlist voeg).
Tools:

  • Dirb / Dirbuster - Ingesluit in Kali, oud (en stadig) maar funksioneel. Laat self-geteken sertifikate toe en rekursiewe soektog. Te stadig vergelyk met ander opsies.
  • Dirsearch (python): Dit laat nie self-geteken sertifikate toe nie maar laat rekursiewe soektog toe.
  • Gobuster (go): Dit laat self-geteken sertifikate toe, dit het nie rekursiewe soektog nie.
  • 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): Dit is nie ’n spider nie maar ’n tool wat, gegewe ’n lys van gevonde URLs, “gedupliseerde” URLs sal verwyder.
  • Scavenger: Burp Extension om ’n lys gidse te skep vanaf die burp history van verskillende bladsye
  • TrashCompactor: Verwyder URLs met gedupliseerde funksionaliteite (gebaseer op js imports)
  • Chamaleon: Gebruik wapalyzer om gebruikte tegnologieë te detecteer en kies die woordlyste wat gebruik moet word.

Aanbevole woordlyste:

  • 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

Let wel dat enige keer ’n nuwe gids tydens brute-forcing of spidering ontdek word, dit Brute-Forced moet word.

What to check on each file found

  • Broken link checker: Vind gebroke links binne HTML’s wat vatbaar kan wees vir takeovers
  • File Backups: Sodra jy al die lêers gevind het, soek vir backups van al die uitvoerbare lêers (“.php”, “.aspx”…). Algemene variasies vir die naam van ’n backup is: file.ext~, #file.ext#, ~file.ext, file.ext.bak, file.ext.tmp, file.ext.old, file.bak, file.tmp and file.old. Jy kan ook die tool bfac of backup-gen** gebruik.**
  • Discover new parameters: Jy kan tools soos Arjun, parameth, x8 en Param Miner gebruik om versteekte parameters te ontdek. Indien moontlik, probeer om versteekte parameters op elke uitvoerbare web-lêer te soek.
  • 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: Kontroleer die kommentaar in al die lêers, jy kan daar credentials of versteekte funksionaliteit vind.
  • As jy CTF speel, ’n algemene truuk is om inligting in kommentaar regs van die bladsy te versteek (deur honderde spasies te gebruik sodat jy die data nie sien as jy die bronkode in die browser open nie). Ander moontlikheid is om verskeie reëls te gebruik en inligting in ’n kommentaar onderaan die webblad te verberg.
  • API keys: As jy enige API key vind is daar projekte wat aandui hoe om API keys van verskillende platforms te gebruik: keyhacks, zile, truffleHog, SecretFinder, RegHex, DumpsterDive, EarlyBird
  • Google API keys: As jy ’n API key vind wat soos AIzaSyA-qLheq6xjDiEIRisP_ujUseYLQCHUjik lyk, kan jy die projek gmapapiscanner gebruik om te kyk watter APIs die sleutel kan toegang gee.
  • S3 Buckets: Terwyl jy spider, kyk of enige subdomain of enige link verwant is aan ’n S3 bucket. In daardie geval, kontroleer die permisse van die bucket.

Special findings

Terwyl jy die spidering en brute-forcing uitvoer, kan jy interessante dinge vind wat jy moet aandui.

Interessante lêers

  • Kyk vir links na ander lêers binne die CSS lêers.
  • If you find a .git file some information can be extracted
  • As jy ’n .env vind kan inligting soos api keys, dbs wagwoorde en ander inligting gevind word.
  • As jy API endpoints vind behoort jy dit ook te toets. Dit is nie lêers nie, maar sal waarskynlik soos lêers lyk.
  • JS files: In die spidering afdeling is verskeie tools genoem wat paths uit JS-lêers kan onttrek. Dit sal ook interessant wees om elke gevonde JS-lêer te monitor, aangesien in sommige gevalle ’n verandering kan aandui dat ’n potensiële kwesbaarheid in die kode ingesluit is. Jy kan byvoorbeeld JSMon** gebruik.**
  • Jy moet ook ontdekte JS-lêers met RetireJS of JSHole nagaan om te sien of dit kwesbaar is.
  • 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.
  • In baie gevalle sal jy die gewone uitdrukkings (regular expressions) wat gebruik word moet verstaan. Dit sal nuttig wees: https://regex101.com/ of https://pythonium.net/regex
  • Jy kan ook files monitor waar vorms gedetecteer is, aangesien ’n verandering in ’n parameter of die verskyning van ’n nuwe vorm ’n nuwe potensiële kwesbare funksionaliteit kan aandui.

403 Forbidden/Basic Authentication/401 Unauthorized (bypass)

403 & 401 Bypasses

502 Proxy Error

As enige bladsy met daardie kode reageer, is dit waarskynlik ’n sleg gekonfigureerde proxy. As jy ’n HTTP versoek soos: GET https://google.com HTTP/1.1 stuur (met die host header en ander algemene headers), sal die proxy probeer om na google.com te toegang en jy het ’n SSRF gevind.

NTLM Authentication - Info disclosure

Indien die bediener wat vir authentication vra ’n Windows bediener is of jy ’n login vind wat vir jou credentials vra (en om ’n domain name vra), kan jy ’n inligtingslek veroorsaak.
Stuur die header: “Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=” en as gevolg van hoe NTLM authentication werk, sal die bediener met interne inligting (IIS weergawe, Windows weergawe…) in die header “WWW-Authenticate” reageer.
Jy kan dit automaties maak met die nmap pluginhttp-ntlm-info.nse”.

HTTP Redirect (CTF)

Dit is moontlik om inhoud binne ’n Redirection te plaas. Hierdie inhoud sal nie aan die gebruiker gewys word nie (aangesien die blaaier die omleiding sal uitvoer) maar iets kan daarin versteek wees.

Web Vulnerabilities Checking

Nou dat ’n omvattende enumerasie van die web toepassing uitgevoer is, is dit tyd om vir ’n hele paar moontlike kwesbaarhede te kyk. Jy kan die checklist hier vind:

Web Vulnerabilities Methodology

Vind meer inligting oor web kwetsbaarhede in:

  • 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

Jy kan tools soos https://github.com/dgtlmoon/changedetection.io gebruik om bladsye te moniteer vir wysigings wat kwesbaarhede kan inbring.

HackTricks Automatic Commands

HackTricks Automatic Commands ```yaml 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}

</details>

## Verwysings

- [https://github.com/panchocosil/burp-js-linkfinder-enhanced](https://github.com/panchocosil/burp-js-linkfinder-enhanced)

> [!TIP]
> Leer en oefen AWS Hacking:<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> Leer en oefen GCP Hacking: <img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)<img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
> Leer en oefen Azure Hacking: <img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training Azure Red Team Expert (AzRTE)**](https://training.hacktricks.xyz/courses/azrte)<img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
>
> <details>
>
> <summary>Ondersteun HackTricks</summary>
>
> - Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
> - **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
> - **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
>
> </details>