Nmap Opsomming (ESP)
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
- Kyk na die subskripsie planne!
- Sluit aan by die đŹ Discord groep of die telegram groep of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
nmap -sV -sC -O -n -oA nmapscan 192.168.0.1/24
Parameters
IPs to scan
<ip>,<net/mask>: Gee die ips direk aan-iL <ips_file>: list_IPs-iR <number>: Aantal ewekansige Ips, jy kan moontlike Ips uitsluit met--exclude <Ips>of--excludefile <file>.
Equipment discovery
By default Nmap launches a discovery phase consisting of: -PA80 -PS443 -PE -PP
-sL: Dit is nie-invasief, dit lys die teikens deur DNS versoeke te maak om name op te los. Dit is nuttig om te weet of byvoorbeeld www.prueba.es/24 al die Ips ons teikens is.-Pn: No ping. Dit is nuttig as jy weet dat hulle almal aktief is (indien nie, kan jy baie tyd verloor, maar hierdie opsie gee ook vals negatiewe wat sĂȘ dat hulle nie aktief is nie), dit voorkom die discovery-fase.-sn: No port scan. Nadat die verkenningsfase voltooi is, skandeer dit nie poorte nie. Dit is relatief stil en laat ân klein netwerk-skan toe. Met voorregte stuur dit ân ACK (-PA) na 80, ân SYN(-PS) na 443 en ân echo request en ân Timestamp request; sonder voorregte voltooi dit altyd verbindings. As die teiken die netwerk is, gebruik dit slegs ARP(-PR). As dit saam met ân ander opsie gebruik word, word slegs die pakkette van die ander opsie gelaai.-PR: Ping ARP. Word standaard gebruik wanneer rekenaars in ons netwerk ontleed word; dit is vinniger as om pings te gebruik. As jy nie ARP-pakkette wil gebruik nie, gebruik--send-ip.-PS <ports>: Stuur SYN-pakkette waarna, as dit met SYN/ACK beantwoord word, dit oop is (antwoord met RST om die verbinding nie te beĂ«indig nie); as dit met RST antwoord is dit toe en as dit nie antwoord nie is dit onbereikbaar. Indien geen voorregte bestaan nie, word ân volle verbinding outomaties gebruik. As geen poorte gegee word nie, word dit na 80 gestuur.-PA <ports>: Soos hierbo maar met ACK; die kombinasie van albei gee beter resultate.-PU <ports>: Die doel is die teenoorgestelde; hulle word na poorte gestuur wat verwag word toe te wees. Sommige firewalls kontroleer slegs TCP-verbindinge. As dit toe is, antwoord dit met port unreachable; as dit met ander ICMP antwoord of nie antwoord nie, word dit as destination unreachable gelaat.-PE, -PP, -PM: ICMP PINGS: echo reply, timestamp en addresmask. Hulle word gestuur om te bepaal of die teiken aktief is.-PY<ports>: Stuur SCTP INIT probes na 80 standaard; INIT-ACK (open) of ABORT (closed) of niks of ICMP unreachable (inactive) kan geantwoord word.-PO <protocols>: ân Protokol word in die hoofstukke aangedui, standaard 1(ICMP), 2(IGMP) en 4(Encap IP). Vir ICMP, IGMP, TCP (6) en UDP (17) word die protokolhoofstukke gestuur; vir die res slegs die IP-hoofstuk. Die doel is dat weens misvormde hoofstukke Protocol unreachable of antwoorde van dieselfde protokol teruggestuur kan word om te weet of dit op is.-n: No DNS-R: DNS always
Port scanning techniques
-sS: Maak nie die verbinding klaar nie, so dit laat geen spoor nie; baie goed indien dit gebruik kan word (voorregte). Dit is die standaard.-sT: Voltooi die verbinding, dus laat dit ân spoor, maar dit kan sekerlik gebruik word. Standard sonder voorregte.-sU: Stadiger, vir UDP. Meesal: DNS(53), SNMP(161,162), DHCP(67 en 68), (-sU53,161,162,67,68): open(reply), closed(port unreachable), filtered (ander ICMP), open/filtered (niks). In geval van open/filtered, stuur -sV baie versoeke om enige van die weergawes wat nmap ondersteun te identifiseer en kan die werklike toestand opspoor. Dit verhoog die tyd aansienlik.-sY: SCTP-protokol probeer nie ân verbinding tot stand te bring nie, dus is daar geen logs nie; werk soos -PY-sN,-sX,-sF: Null, Fin, Xmas; dit kan sommige firewalls binnedring en inligting uittrek. Hulle is gebaseer op die feit dat standaard-konforme masjiene met RST op alle versoeke sonder SYN, RST of ACK vlagte moet reageer: open/filtered (niks), closed (RST), filtered (ICMP unreachable). Onbetroubaar op Windows, Cisco, BSDI en OS/400. Op Unix wel.-sM: Maimon scan: Stuur FIN en ACK vlagte, gebruiklik vir BSD; tans sal dit alles as closed teruggee.-sA, sW: ACK en Window; word gebruik om firewalls te detecteer, om te weet of poorte gefilter is of nie. Die -sW onderskei tussen open/closed aangesien die oop poorte met ân ander window waarde reageer: open (RST met window anders as 0), closed (RST window = 0), filtered (ICMP unreachable of niks). Nie alle masjiene werk so nie, so as alles toe is, werk dit nie; as ân paar oop is, werk dit goed; as baie oop en min toe is, werk dit andersom.-sI: Idle scan. Vir gevalle waarin ân aktiewe firewall is maar ons weet dit filter nie na ân sekere IP nie (of wanneer ons net anonimiteit wil hĂȘ) kan ons die zombie scanner gebruik (dit werk vir alle poorte). Om moontlike zombies te vind kan ons die script ipidseq of die exploit auxiliary/scanner/ip/ipidseq gebruik. Hierdie scanner is gebaseer op die IPID nommer van IP-pakkette.--badsum: Stuur die checksum verkeerd; rekenaars sou die pakkette verwerp, maar firewalls kan iets antwoord â dit word gebruik om firewalls te detecteer.-sZ: âWeirdâ SCTP scanner; wanneer probes met cookie echo fragments gestuur word, behoort hulle verwerp te word as oop of met ABORT te reageer as toe. Dit kan deur firewalls gaan wat init nie deurlaat nie; die nadeel is dat dit nie tussen filtered en open onderskei nie.-sO: Protocol IP scan. Stuur slegte en leĂ« hoofstukke waarin soms nie eers die protokol onderskei kan word nie. As ICMP unreachable protocol kom, is dit closed; as unreachable port kom, is dit open; as ân ander fout kom, filtered; as niks kom, open|filtered.-b <server>: FTPhost â> Word gebruik om ân gasheer vanaf ân ander een te skandeer; dit gebeur deur aan die ftp van ân ander masjien te koppel en te vra dat dit lĂȘers na die poorte stuur wat jy wil skandeer vanaf daardie masjien; volgens die antwoorde sal ons weet of hulle oop is of nie. [<user>:<password>@]<server>[:<port>] Die meeste ftp-servers laat dit nie meer toe nie en daarom is dit van min praktiese nut.
Focus Analysis
-p: Word gebruik om poorte te spesifiseer om te skandeer. Om alle 65,535 poorte te kies: -p- of -p all. Nmap het ân interne klassifikasie gebaseer op populariteit. Standaard gebruik dit die top 1000 poorte. Met -F (fast scan) ontleed dit die top 100. Met âtop-ports
-sV Weergawe-skandering; intensiteit kan van 0 tot 9 gereguleer word, standaard is 7.
âversion-intensity
-O OS detection
âosscan-limit Vir behoorlike host-ontleding is minstens een oop poort en een toe poort nodig. As hierdie voorwaarde nie voldoen word en ons het dit gestel, sal dit nie OS-voorspelling probeer nie (bespaar tyd).
âosscan-guess Wanneer OS-detectie nie perfek is nie, laat dit harder probeer.
Scripts
âscript
Om default scripts te gebruik, gebruik -sC of âscript=default
Besikbare tipes: auth, broadcast, default, discovery, dos, exploit, external, fuzzer, intrusive, malware, safe, version, en vuln
- Auth: voer alle beskikbare authentication scripts uit
- Default: voer basiese default tool scripts uit
- Discovery: haal inligting van die teiken of slagoffer
- External: script om eksterne bronne te gebruik
- Intrusive: gebruik scripts wat as intrusive teen die teiken of slagoffer beskou word
- Malware: kontroleer vir verbindings wat deur kwaadwillige kode of backdoors oopgemaak is
- Safe: voer nie-intrusiewe scripts uit
- Vuln: ontdek die mees bekende kwetsbaarhede
- All: voer absoluut alle beskikbare NSE-extension scripts uit
Om na scripts te soek:
nmap âscript-help=âhttp-*â -> Those starting with http-
nmap âscript-help=ânot intrusiveâ -> All except those
nmap âscript-help=âdefault or safeâ -> Those in either or both
nmap âscript-help=âdefault and safeâ â> Those in both
nmap âscript-help=â(default or safe or intrusive) and not http-*â
âscript-args
âscript-args-file
âscript-help
âscript-trace â> Gee inligting oor hoe die script vorder
âscript-updatedb
Om ân script te gebruik, tik net: nmap âscript Script_Name target â> Wanneer jy die script gebruik, sal beide die script en die skandeerder uitgevoer word, so skandeerder-opsies kan ook bygevoeg word. Ons kan âsafe=1â byvoeg om slegs safe ones uit te voer.
Time Control
Nmap kan tydswaardes in sekondes, minute, ms wysig: âhost-timeout argumente 900000ms, 900, 900s, en 15m doen almal dieselfde.
Nmap verdeel die totale aantal hosts om te skandeer in groepe en analiseer hierdie groepe in blokke, so dit beweeg nie na die volgende blok totdat almal geanaliseer is nie (en die gebruiker ontvang geen opdaterings totdat die blok geanaliseer is nie). Op hierdie wyse is dit meer optimaal vir Nmap om groot groepe te gebruik. Standaard gebruik dit in ân class C 256.
Dit kan verander word met âmin-hostgroup
Jy kan die aantal parallelle skandeerders beheer maar dit is beter om dit nie te doen nie (Nmap het reeds outomatiese beheer gebaseer op netwerkstatus): âmin-parallelism
Ons kan die RTT-timeout wijzig, maar dit is gewoonlik nie nodig nie: âmin-rtt-timeout , âmax-rtt-timeout , âinitial-rtt-timeout
Ons kan die aantal probeer wysig: âmax-retries
Ons kan die skanderingstyd van ân host wysig: âhost-timeout
Ons kan die tyd tussen elke toets wysig om dit stadiger te maak: âscan-delay ; âmax-scan-delay
Ons kan die aantal pakkette per sekonde wysig: âmin-rate
Baie poorte neem lank om te antwoord wanneer gefilter of toe; as ons slegs in oop een belangstel, kan ons vinniger gaan met: âdefeat-rst-ratelimit
Om te definieer hoe aggressief ons wil hĂȘ Nmap moet wees: -T paranoid|sneaky|polite|normal|aggressive|insane
-T (0-1)
-T0 â> Skandeer slegs 1 poort op ân slag en wag 5 minute totdat die volgende begin
-T1 en T2 â> Baie soortgelyk maar wag slegs 15 en 0.4s onderskeidelik tussen elke toets
-T3 â> Standaardwerking, sluit parallelle skandering in
-T4 â> âmax-rtt-timeout 1250ms âmin-rtt-timeout 100ms âinitial-rtt-timeout 500ms âmax-retries 6 âmax-scan-delay 10ms
-T5 â> âmax-rtt-timeout 300ms âmin-rtt-timeout 50ms âinitial-rtt-timeout 250ms âmax-retries 2 âhost-timeout 15m âmax-scan-delay 5ms
Firewall/IDS
Hulle laat nie toegang tot poorte toe en ontleed pakkette nie.
-f Om pakkette te fragmenteer; standaard fragmenteer dit in 8 bytes na die header; om daardie grootte te spesifiseer gebruik ons ..mtu (met dit, moenie -f gebruik nie), die offset moet ân veelvoud van 8 wees. Version scanners en scripts ondersteun nie fragmentasie nie
-D decoy1,decoy2,ME Nmap stuur skanderings maar met ander IP-adresse as oorsprong; op hierdie manier hide dit jou. As jy ME in die lys plaas, sal Nmap jou daar plaas; dit is beter om 5 of 6 voor jou te plaas om jou heeltemal te mask.
Random IPs kan gegenereer word met RND:
Om ewekansige IPs te gebruik: nmap -D RND:10 Target_IP
-S IP Vir wanneer Nmap nie jou IP vang nie; jy moet dit gee. Dien ook om hulle te laat dink ân ander teiken skandeer hulle.
-e
Baie bestuurders laat ingangspoorte oop vir alles om korrek te werk en dit is vir hulle makliker as om ân ander oplossing te vind. Dit kan DNS-poorte of FTP-poorte wees⊠om hierdie kwetsbaarheid te vind het Nmap: âsource-port
âdata
âdata-string
âdata-length
Om die IP-pakket volledig te konfigureer gebruik âip-options
As jy die opsies in gestuurde en ontvangde pakkette wil sien, spesifiseer âpacket-trace. Vir meer inligting en voorbeelde van die gebruik van IP-options met Nmap, sien http://seclists.org/nmap-dev/2006/q3/52.
âttl
ârandomize-hosts Om die aanval minder opvallend te maak
âspoof-mac <MAC address, prefix, or vendor name> Om die MAC te verander voorbeelde: Apple, 0, 01:02:03:04:05:06, deadbeefcafe, 0020F2, en Cisco
âproxies
-sP Om hosts in ons netwerk te ontdek deur ARP
Baie bestuurders skep ân firewall-reel wat alle pakkette vanaf ân bepaalde poort deurlaat (soos 20,53 en 67); ons kan vir Nmap sĂȘ om ons pakkette vanaf hierdie poorte te stuur: nmap âsource-port 53 IP
Outputs
-oN file Normale output
-oX file XML output
-oS file Script kiddies output
-oG file Greppable output
-oA file Alles behalwe -oS
-v level verbositeit
-d level debugging
âreason Rede van host en status
âstats-every time Elke daardie tyd vertel dit ons hoe dit gaan
âpacket-trace Om te sien watter pakkette uitgegaan het; filters kan gespesifiseer word soos: âversion-trace of âscript-trace
âopen wys open, open|filtered en unfiltered
âresume file Gee ân opsomming uit
Miscellaneous
-6 Laat IPv6 toe
-A is dieselfde as -O -sV -sC âtraceroute
Run time
Terwyl Nmap loop kan ons opsies verander:
v / V Verhoog / verlaag die verbositeitsvlak
d / D Verhoog / verlaag die debuggingvlak
p / P Skakel packet tracing aan / af
? Druk ân runtime-interaksie helpskerm
Vulscan
Nmap script wat weergawes van dienste wat in ân offline databasis gevind is (gedownload vanaf ander belangrike bronne) vergelyk en moontlike kwetsbaarhede teruggee
Die DBs wat dit gebruik is:
- Scipvuldb.csv | http://www.scip.ch/en/?vuldb
- Cve.csv | http://cve.mitre.org
- Osvdb.csv | http://www.osvdb.org
- Securityfocus.csv | http://www.securityfocus.com/bid/
- Securitytracker.csv | http://www.securitytracker.com
- Xforce.csv | http://xforce.iss.net
- Exploitdb.csv | http://www.exploit-db.com
- Openvas.csv | http://www.openvas.org
Om af te laai en in die Nmap-lĂȘergids te installeer:
wget http://www.computec.ch/projekte/vulscan/download/nmap_nse_vulscan-2.0.tar.gz && tar -czvf nmap_nse_vulscan-2.0.tar.gz vulscan/ && sudo cp -r vulscan/ /usr/share/nmap/scripts/
Jy sal ook die DB-pakkette moet aflaai en byvoeg by /usr/share/nmap/scripts/vulscan/
Gebruik:
Om alles te gebruik: sudo nmap -sV âscript=vulscan HOST_TO_SCAN
Om ân spesifieke DB te gebruik: sudo nmap -sV âscript=vulscan âscript-args vulscandb=cve.csv HOST_TO_SCAN
Speed Up Nmap Service scan x16
According to this post you can speed up the nmap service analysis by modifying all the totalwaitms values in /usr/share/nmap/nmap-service-probes to 300 and tcpwrappedms to 200.
Moreover, probes which do not have a specifically defined servicewaitms use a default value of 5000. Therefore, we can either add values to each of the probes, or we can compile nmap ourselves and change the default value in service_scan.h.
If you donât want to change the values of totalwaitms and tcpwrappedms at all in the /usr/share/nmap/nmap-service-probes file, you can edit the parsing code such that these values in the nmap-service-probes file are completely ignored.
Build a static Nmap for restricted environments
In hardened or minimal Linux environments (containers, appliances), dynamically linked Nmap binaries often fail due to missing runtime loaders or shared libraries (e.g., /lib64/ld-linux-x86-64.so.2, libc.so). Building your own statically linked Nmap and bundling NSE data allows execution without installing system packages.
High-level approach
- Use a clean amd64 Ubuntu builder via Docker.
- Build OpenSSL and PCRE2 as static libraries.
- Build Nmap linking statically and using the included libpcap/libdnet to avoid dynamic deps.
- Bundle NSE scripts and data directories with the binary.
Discover target architecture (example)
uname -a
# If building from macOS/ARM/etc., pin the builder arch:
docker run --rm --platform=linux/amd64 -v "$(pwd)":/out -w /tmp ubuntu:22.04 bash -lc 'echo ok'
Stap 1 â Berei toolchain voor
set -euo pipefail
export DEBIAN_FRONTEND=noninteractive
apt-get update && apt-get install -y --no-install-recommends \
build-essential ca-certificates curl bzip2 xz-utils pkg-config perl python3 file git \
automake autoconf libtool m4 zlib1g-dev
Stap 2 â Bou statiese OpenSSL (1.1.1w)
OSSL="1.1.1w"
curl -fsSLO "https://www.openssl.org/source/openssl-$OSSL.tar.gz"
tar xzf "openssl-$OSSL.tar.gz" && cd "openssl-$OSSL"
./Configure no-shared no-zlib linux-x86_64 -static --prefix=/opt/ossl
make -j"$(nproc)" && make install_sw
cd /tmp
Stap 3 â Bou statiese PCRE2 (10.43)
PCRE2=10.43
curl -fsSLO "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-$PCRE2/pcre2-$PCRE2.tar.bz2"
tar xjf "pcre2-$PCRE2.tar.bz2" && cd "pcre2-$PCRE2"
./configure --disable-shared --enable-static --prefix=/opt/pcre2
make -j"$(nproc)" && make install
cd /tmp
Stap 4 â Bou statiese Nmap (7.98)
NMAP=7.98
curl -fsSLO "https://nmap.org/dist/nmap-$NMAP.tar.bz2"
tar xjf "nmap-$NMAP.tar.bz2" && cd "nmap-$NMAP"
export CPPFLAGS="-I/opt/ossl/include -I/opt/pcre2/include"
export LDFLAGS="-L/opt/ossl/lib -L/opt/pcre2/lib -static -static-libstdc++ -static-libgcc"
export LIBS="-lpcre2-8 -ldl -lpthread -lz"
./configure \
--with-openssl=/opt/ossl \
--with-libpcre=/opt/pcre2 \
--with-libpcap=included \
--with-libdnet=included \
--without-zenmap --without-ndiff --without-nmap-update
# Avoid building shared libpcap by accident
sed -i -e "s/^shared: /shared: #/" libpcap/Makefile || true
make -j1 V=1 nmap
strip nmap
Belangrike punte
- -static, -static-libstdc++, -static-libgcc dwing statiese koppeling af.
- Deur âwith-libpcap=included/âwith-libdnet=included te gebruik, word system-shared libs vermy.
- sed-aanpassing neutraliseer ân shared libpcap target indien teenwoordig.
Stap 5 â Bundel binary en NSE data
mkdir -p /out/nmap-bundle/nmap-data
cp nmap /out/nmap-bundle/nmap-linux-amd64-static
cp -r scripts nselib /out/nmap-bundle/nmap-data/
cp nse_main.lua nmap-services nmap-protocols nmap-service-probes \
nmap-mac-prefixes nmap-os-db nmap-payloads nmap-rpc \
/out/nmap-bundle/nmap-data/ 2>/dev/null || true
tar -C /out -czf /out/nmap-linux-amd64-static-bundle.tar.gz nmap-bundle
Verifikasie en operasionele notas
- Gebruik file op die artefak om te bevestig dat dit staties gelink is.
- Hou die NSE-data by die binary om script-pariteit op hosts sonder Nmap geĂŻnstalleer te verseker.
- Selfs met ân statiese binary kan uitvoering deur AppArmor/seccomp/SELinux geblokkeer word; DNS/egress moet steeds werk.
- Deterministiese builds verminder voorsieningskettingrisiko in vergelyking met die aflaai van onduidelike âstaticâ binaries.
One-liner (Dockerized)
Bou, bundel en druk artefak-inligting
```bash docker run --rm --platform=linux/amd64 -v "$(pwd)":/out -w /tmp ubuntu:22.04 bash -lc ' set -euo pipefail export DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y --no-install-recommends \ build-essential ca-certificates curl bzip2 xz-utils pkg-config perl python3 file git \ automake autoconf libtool m4 zlib1g-devOSSL=â1.1.1wâ; curl -fsSLO âhttps://www.openssl.org/source/openssl-$OSSL.tar.gzâ
&& tar xzf âopenssl-$OSSL.tar.gzâ && cd âopenssl-$OSSLâ
&& ./Configure no-shared no-zlib linux-x86_64 -static âprefix=/opt/ossl
&& make -jâ$(nproc)â && make install_sw && cd /tmp
PCRE2=10.43; curl -fsSLO âhttps://github.com/PCRE2Project/pcre2/releases/download/pcre2-$PCRE2/pcre2-$PCRE2.tar.bz2â
&& tar xjf âpcre2-$PCRE2.tar.bz2â && cd âpcre2-$PCRE2â
&& ./configure âdisable-shared âenable-static âprefix=/opt/pcre2
&& make -jâ$(nproc)â && make install && cd /tmp
NMAP=7.98; curl -fsSLO âhttps://nmap.org/dist/nmap-$NMAP.tar.bz2â
&& tar xjf ânmap-$NMAP.tar.bz2â && cd ânmap-$NMAPâ
&& export CPPFLAGS=â-I/opt/ossl/include -I/opt/pcre2/includeâ
&& export LDFLAGS=â-L/opt/ossl/lib -L/opt/pcre2/lib -static -static-libstdc++ -static-libgccâ
&& export LIBS=â-lpcre2-8 -ldl -lpthread -lzâ
&& ./configure âwith-openssl=/opt/ossl âwith-libpcre=/opt/pcre2 âwith-libpcap=included âwith-libdnet=included âwithout-zenmap âwithout-ndiff âwithout-nmap-update
&& sed -i -e âs/^shared: /shared: #/â libpcap/Makefile || true
&& make -j1 V=1 nmap && strip nmap
mkdir -p /out/nmap-bundle/nmap-data
&& cp nmap /out/nmap-bundle/nmap-linux-amd64-static
&& cp -r scripts nselib /out/nmap-bundle/nmap-data/
&& cp nse_main.lua nmap-services nmap-protocols nmap-service-probes nmap-mac-prefixes nmap-os-db nmap-payloads nmap-rpc /out/nmap-bundle/nmap-data/ 2>/dev/null || true
&& tar -C /out -czf /out/nmap-linux-amd64-static-bundle.tar.gz nmap-bundle
&& echo â===== OUTPUT =====â; ls -lah /out; echo â===== FILE TYPE =====â; file /out/nmap-bundle/nmap-linux-amd64-static || true
â
</details>
## Verwysings
- [Samestelling van 'n statiese Nmap-binarie vir take in beperkte omgewings](https://www.pentestpartners.com/security-blog/compiling-static-nmap-binary-for-jobs-in-restricted-environments/)
- [Static Nmap Binary Generator (helper tool)](https://github.com/0x5ubt13/static_nmap_binary_generator)
- [OpenSSL-bronne](https://www.openssl.org/source/)
- [PCRE2-vrystellings](https://github.com/PCRE2Project/pcre2/releases)
- [Nmap-bron tarballs](https://nmap.org/dist/)
> [!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>
HackTricks

