Linux Forensics
Reading time: 17 minutes
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Prikupljanje Početnih Informacija
Osnovne Informacije
Prvo, preporučuje se da imate neki USB sa dobro poznatim binarnim datotekama i bibliotekama (možete jednostavno preuzeti ubuntu i kopirati foldere /bin, /sbin, /lib, i /lib64), zatim montirajte USB i modifikujte env varijable da koristite te binarne datoteke:
export PATH=/mnt/usb/bin:/mnt/usb/sbin
export LD_LIBRARY_PATH=/mnt/usb/lib:/mnt/usb/lib64
Kada konfigurišete sistem da koristi dobre i poznate binarne datoteke, možete početi sa ekstrakcijom nekih osnovnih informacija:
date #Date and time (Clock may be skewed, Might be at a different timezone)
uname -a #OS info
ifconfig -a || ip a #Network interfaces (promiscuous mode?)
ps -ef #Running processes
netstat -anp #Proccess and ports
lsof -V #Open files
netstat -rn; route #Routing table
df; mount #Free space and mounted devices
free #Meam and swap space
w #Who is connected
last -Faiwx #Logins
lsmod #What is loaded
cat /etc/passwd #Unexpected data?
cat /etc/shadow #Unexpected data?
find /directory -type f -mtime -1 -print #Find modified files during the last minute in the directory
Sumnjive informacije
Dok prikupljate osnovne informacije, trebali biste proveriti čudne stvari kao što su:
- Root procesi obično se pokreću sa niskim PIDS, pa ako pronađete root proces sa velikim PID-om, možete posumnjati
- Proverite registrovane prijave korisnika bez shel-a unutar
/etc/passwd
- Proverite hash-eve lozinke unutar
/etc/shadow
za korisnike bez shel-a
Dump memorije
Da biste dobili memoriju pokrenutog sistema, preporučuje se korišćenje LiME.
Da biste ga kompilirali, morate koristiti isti kernel koji koristi žrtvinska mašina.
tip
Zapamtite da ne možete instalirati LiME ili bilo šta drugo na žrtvinskoj mašini jer će to napraviti nekoliko promena na njoj
Dakle, ako imate identičnu verziju Ubuntua, možete koristiti apt-get install lime-forensics-dkms
U drugim slučajevima, morate preuzeti LiME sa github-a i kompilirati ga sa ispravnim kernel header-ima. Da biste dobili tačne kernel header-e žrtvinske mašine, možete jednostavno kopirati direktorijum /lib/modules/<kernel version>
na vašu mašinu, a zatim kompilirati LiME koristeći ih:
make -C /lib/modules/<kernel version>/build M=$PWD
sudo insmod lime.ko "path=/home/sansforensics/Desktop/mem_dump.bin format=lime"
LiME podržava 3 formata:
- Raw (svaki segment spojен zajedno)
- Padded (isto kao raw, ali sa nulama u desnim bitovima)
- Lime (preporučeni format sa metapodacima)
LiME se takođe može koristiti za slanje dump-a putem mreže umesto da se čuva na sistemu koristeći nešto poput: path=tcp:4444
Disk Imaging
Isključivanje
Prvo, potrebno je da isključite sistem. Ovo nije uvek opcija jer ponekad sistem može biti produkcioni server koji kompanija ne može priuštiti da isključi.
Postoje 2 načina za isključivanje sistema, normalno isključivanje i "isključivanje povlačenjem kabla". Prvi način će omogućiti da se procesi završe kao obično i da se fajl sistem sinkronizuje, ali će takođe omogućiti mogućem malware-u da uništi dokaze. Pristup "isključivanja povlačenjem kabla" može doneti neke gubitke informacija (neće se mnogo informacija izgubiti jer smo već uzeli sliku memorije) i malware neće imati priliku da uradi bilo šta povodom toga. Stoga, ako sumnjate da može biti malware, jednostavno izvršite sync
komandu na sistemu i povucite kabl.
Uzimanje slike diska
Važno je napomenuti da pre nego što povežete svoj računar sa bilo čim vezanim za slučaj, morate biti sigurni da će biti montiran kao samo za čitanje kako biste izbegli modifikaciju bilo kojih informacija.
#Create a raw copy of the disk
dd if=<subject device> of=<image file> bs=512
#Raw copy with hashes along the way (more secure as it checks hashes while it's copying the data)
dcfldd if=<subject device> of=<image file> bs=512 hash=<algorithm> hashwindow=<chunk size> hashlog=<hash file>
dcfldd if=/dev/sdc of=/media/usb/pc.image hash=sha256 hashwindow=1M hashlog=/media/usb/pc.hashes
Disk Image pre-analysis
Imaging a disk image with no more data.
#Find out if it's a disk image using "file" command
file disk.img
disk.img: Linux rev 1.0 ext4 filesystem data, UUID=59e7a736-9c90-4fab-ae35-1d6a28e5de27 (extents) (64bit) (large files) (huge files)
#Check which type of disk image it's
img_stat -t evidence.img
raw
#You can list supported types with
img_stat -i list
Supported image format types:
raw (Single or split raw file (dd))
aff (Advanced Forensic Format)
afd (AFF Multiple File)
afm (AFF with external metadata)
afflib (All AFFLIB image formats (including beta ones))
ewf (Expert Witness Format (EnCase))
#Data of the image
fsstat -i raw -f ext4 disk.img
FILE SYSTEM INFORMATION
--------------------------------------------
File System Type: Ext4
Volume Name:
Volume ID: 162850f203fd75afab4f1e4736a7e776
Last Written at: 2020-02-06 06:22:48 (UTC)
Last Checked at: 2020-02-06 06:15:09 (UTC)
Last Mounted at: 2020-02-06 06:15:18 (UTC)
Unmounted properly
Last mounted on: /mnt/disk0
Source OS: Linux
[...]
#ls inside the image
fls -i raw -f ext4 disk.img
d/d 11: lost+found
d/d 12: Documents
d/d 8193: folder1
d/d 8194: folder2
V/V 65537: $OrphanFiles
#ls inside folder
fls -i raw -f ext4 disk.img 12
r/r 16: secret.txt
#cat file inside image
icat -i raw -f ext4 disk.img 16
ThisisTheMasterSecret
Pretraživanje poznatog Malware-a
Izmenjeni sistemski fajlovi
Linux nudi alate za osiguranje integriteta sistemskih komponenti, što je ključno za uočavanje potencijalno problematičnih fajlova.
- RedHat-bazirani sistemi: Koristite
rpm -Va
za sveobuhvatnu proveru. - Debian-bazirani sistemi:
dpkg --verify
za inicijalnu verifikaciju, a zatimdebsums | grep -v "OK$"
(nakon instalacijedebsums
saapt-get install debsums
) za identifikaciju bilo kakvih problema.
Malware/Rootkit detektori
Pročitajte sledeću stranicu da biste saznali o alatima koji mogu biti korisni za pronalaženje malware-a:
Pretraživanje instaliranih programa
Da biste efikasno pretražili instalirane programe na Debian i RedHat sistemima, razmotrite korišćenje sistemskih logova i baza podataka zajedno sa ručnim proverama u uobičajenim direktorijumima.
- Za Debian, proverite
/var/lib/dpkg/status
i/var/log/dpkg.log
da biste dobili detalje o instalacijama paketa, koristećigrep
za filtriranje specifičnih informacija. - RedHat korisnici mogu upititi RPM bazu podataka sa
rpm -qa --root=/mntpath/var/lib/rpm
da bi prikazali instalirane pakete.
Da biste otkrili softver instaliran ručno ili van ovih menadžera paketa, istražite direktorijume kao što su /usr/local
, /opt
, /usr/sbin
, /usr/bin
, /bin
, i /sbin
. Kombinujte liste direktorijuma sa sistemskim komandama specifičnim za identifikaciju izvršnih fajlova koji nisu povezani sa poznatim paketima, poboljšavajući vaše pretraživanje svih instaliranih programa.
# Debian package and log details
cat /var/lib/dpkg/status | grep -E "Package:|Status:"
cat /var/log/dpkg.log | grep installed
# RedHat RPM database query
rpm -qa --root=/mntpath/var/lib/rpm
# Listing directories for manual installations
ls /usr/sbin /usr/bin /bin /sbin
# Identifying non-package executables (Debian)
find /sbin/ -exec dpkg -S {} \; | grep "no path found"
# Identifying non-package executables (RedHat)
find /sbin/ –exec rpm -qf {} \; | grep "is not"
# Find exacuable files
find / -type f -executable | grep <something>
Oporavak obrisanih pokrenutih binarnih fajlova
Zamislite proces koji je izvršen iz /tmp/exec i zatim obrisan. Moguće je da se izvuče.
cd /proc/3746/ #PID with the exec file deleted
head -1 maps #Get address of the file. It was 08048000-08049000
dd if=mem bs=1 skip=08048000 count=1000 of=/tmp/exec2 #Recorver it
Inspekcija lokacija za automatsko pokretanje
Zakazani zadaci
cat /var/spool/cron/crontabs/* \
/var/spool/cron/atjobs \
/var/spool/anacron \
/etc/cron* \
/etc/at* \
/etc/anacrontab \
/etc/incron.d/* \
/var/spool/incron/* \
#MacOS
ls -l /usr/lib/cron/tabs/ /Library/LaunchAgents/ /Library/LaunchDaemons/ ~/Library/LaunchAgents/
Hunt: Cron/Anacron zloupotreba putem 0anacron i sumnjivih stubova
Napadači često uređuju 0anacron stub prisutan u svakom /etc/cron.*/ direktorijumu kako bi osigurali periodičnu izvršavanje.
# List 0anacron files and their timestamps/sizes
for d in /etc/cron.*; do [ -f "$d/0anacron" ] && stat -c '%n %y %s' "$d/0anacron"; done
# Look for obvious execution of shells or downloaders embedded in cron stubs
grep -R --line-number -E 'curl|wget|/bin/sh|python|bash -c' /etc/cron.*/* 2>/dev/null
Hunt: SSH hardening rollback and backdoor shells
Promene u sshd_config i sistemskim korisničkim ljusakama su uobičajene nakon eksploatacije kako bi se očuvala pristup.
# Root login enablement (flag "yes" or lax values)
grep -E '^\s*PermitRootLogin' /etc/ssh/sshd_config
# System accounts with interactive shells (e.g., games → /bin/sh)
awk -F: '($7 ~ /bin\/(sh|bash|zsh)/ && $1 ~ /^(games|lp|sync|shutdown|halt|mail|operator)$/) {print}' /etc/passwd
Hunt: Cloud C2 markers (Dropbox/Cloudflare Tunnel)
- Dropbox API beacons obično koriste api.dropboxapi.com ili content.dropboxapi.com preko HTTPS sa Authorization: Bearer tokenima.
- Hunt u proxy/Zeek/NetFlow za neočekivani Dropbox izlaz sa servera.
- Cloudflare Tunnel (
cloudflared
) pruža rezervni C2 preko izlaznog 443.
ps aux | grep -E '[c]loudflared|trycloudflare'
systemctl list-units | grep -i cloudflared
Usluge
Putanje gde se zlonamerni softver može instalirati kao usluga:
- /etc/inittab: Poziva skripte inicijalizacije kao što su rc.sysinit, usmeravajući dalje na skripte za pokretanje.
- /etc/rc.d/ i /etc/rc.boot/: Sadrže skripte za pokretanje usluga, pri čemu se potonja nalazi u starijim verzijama Linux-a.
- /etc/init.d/: Koristi se u određenim verzijama Linux-a kao što je Debian za čuvanje skripti za pokretanje.
- Usluge se takođe mogu aktivirati putem /etc/inetd.conf ili /etc/xinetd/, u zavisnosti od Linux varijante.
- /etc/systemd/system: Direktorijum za skripte menadžera sistema i usluga.
- /etc/systemd/system/multi-user.target.wants/: Sadrži linkove do usluga koje treba pokrenuti u višekorisničkom režimu.
- /usr/local/etc/rc.d/: Za prilagođene ili usluge trećih strana.
- ~/.config/autostart/: Za automatske aplikacije specifične za korisnika, koje mogu biti skriveno mesto za zlonamerni softver usmeren na korisnike.
- /lib/systemd/system/: Podrazumevani fajlovi jedinica na sistemskom nivou koje obezbeđuju instalirani paketi.
Kernel moduli
Linux kernel moduli, često korišćeni od strane zlonamernog softvera kao komponenti rootkita, učitavaju se prilikom pokretanja sistema. Direktorijumi i fajlovi kritični za ove module uključuju:
- /lib/modules/$(uname -r): Sadrži module za verziju kernel-a koja se trenutno koristi.
- /etc/modprobe.d: Sadrži konfiguracione fajlove za kontrolu učitavanja modula.
- /etc/modprobe i /etc/modprobe.conf: Fajlovi za globalne postavke modula.
Druge lokacije za automatsko pokretanje
Linux koristi razne fajlove za automatsko izvršavanje programa prilikom prijavljivanja korisnika, potencijalno skrivajući zlonamerni softver:
- /etc/profile.d/*, /etc/profile, i /etc/bash.bashrc: Izvršavaju se za bilo koju prijavu korisnika.
- ~/.bashrc, ~/.bash_profile, ~/.profile, i ~/.config/autostart: Fajlovi specifični za korisnika koji se pokreću prilikom njihove prijave.
- /etc/rc.local: Izvršava se nakon što su sve sistemske usluge pokrenute, označavajući kraj prelaska na višekorisničko okruženje.
Istraži logove
Linux sistemi prate aktivnosti korisnika i događaje sistema kroz razne log fajlove. Ovi logovi su ključni za identifikaciju neovlašćenog pristupa, infekcija zlonamernim softverom i drugih bezbednosnih incidenata. Ključni log fajlovi uključuju:
- /var/log/syslog (Debian) ili /var/log/messages (RedHat): Zabeležavaju poruke i aktivnosti na sistemskom nivou.
- /var/log/auth.log (Debian) ili /var/log/secure (RedHat): Beleže pokušaje autentifikacije, uspešne i neuspešne prijave.
- Koristite
grep -iE "session opened for|accepted password|new session|not in sudoers" /var/log/auth.log
za filtriranje relevantnih događaja autentifikacije. - /var/log/boot.log: Sadrži poruke o pokretanju sistema.
- /var/log/maillog ili /var/log/mail.log: Logovi aktivnosti email servera, korisni za praćenje usluga vezanih za email.
- /var/log/kern.log: Čuva poruke kernela, uključujući greške i upozorenja.
- /var/log/dmesg: Sadrži poruke drajvera uređaja.
- /var/log/faillog: Beleži neuspele pokušaje prijave, pomažući u istragama bezbednosnih proboja.
- /var/log/cron: Loguje izvršenja cron poslova.
- /var/log/daemon.log: Prati aktivnosti pozadinskih usluga.
- /var/log/btmp: Dokumentuje neuspele pokušaje prijave.
- /var/log/httpd/: Sadrži Apache HTTPD greške i logove pristupa.
- /var/log/mysqld.log ili /var/log/mysql.log: Logovi aktivnosti MySQL baze podataka.
- /var/log/xferlog: Beleži FTP prenose fajlova.
- /var/log/: Uvek proverite neočekivane logove ovde.
tip
Linux sistemski logovi i audit pod-sistemi mogu biti onemogućeni ili obrisani tokom upada ili incidenta sa zlonamernim softverom. Pošto logovi na Linux sistemima obično sadrže neke od najkorisnijih informacija o zlonamernim aktivnostima, napadači ih rutinski brišu. Stoga, prilikom ispitivanja dostupnih log fajlova, važno je tražiti praznine ili neuredne unose koji bi mogli ukazivati na brisanje ili manipulaciju.
Linux održava istoriju komandi za svakog korisnika, smeštenu u:
- ~/.bash_history
- ~/.zsh_history
- ~/.zsh_sessions/*
- ~/.python_history
- ~/.*_history
Pored toga, komanda last -Faiwx
pruža listu prijava korisnika. Proverite je za nepoznate ili neočekivane prijave.
Proverite fajlove koji mogu dodeliti dodatne privilegije:
- Pregledajte
/etc/sudoers
za neočekivane privilegije korisnika koje su možda dodeljene. - Pregledajte
/etc/sudoers.d/
za neočekivane privilegije korisnika koje su možda dodeljene. - Istražite
/etc/groups
da identifikujete bilo kakva neobična članstva u grupama ili dozvole. - Istražite
/etc/passwd
da identifikujete bilo kakva neobična članstva u grupama ili dozvole.
Neke aplikacije takođe generišu svoje logove:
- SSH: Istražite ~/.ssh/authorized_keys i ~/.ssh/known_hosts za neovlašćene udaljene konekcije.
- Gnome Desktop: Pogledajte ~/.recently-used.xbel za nedavno pristupane fajlove putem Gnome aplikacija.
- Firefox/Chrome: Proverite istoriju pretraživača i preuzimanja u ~/.mozilla/firefox ili ~/.config/google-chrome za sumnjive aktivnosti.
- VIM: Pregledajte ~/.viminfo za detalje o korišćenju, kao što su putanje pristupnih fajlova i istorija pretrage.
- Open Office: Proverite nedavni pristup dokumentima koji mogu ukazivati na kompromitovane fajlove.
- FTP/SFTP: Pregledajte logove u ~/.ftp_history ili ~/.sftp_history za prenose fajlova koji bi mogli biti neovlašćeni.
- MySQL: Istražite ~/.mysql_history za izvršene MySQL upite, što može otkriti neovlašćene aktivnosti u bazi podataka.
- Less: Analizirajte ~/.lesshst za istoriju korišćenja, uključujući pregledane fajlove i izvršene komande.
- Git: Istražite ~/.gitconfig i projekat .git/logs za promene u repozitorijumima.
USB logovi
usbrip je mali komad softvera napisan u čistom Python 3 koji analizira Linux log fajlove (/var/log/syslog*
ili /var/log/messages*
u zavisnosti od distribucije) za konstruisanje tabela istorije USB događaja.
Zanimljivo je znati sve USB uređaje koji su korišćeni i biće korisnije ako imate autorizovanu listu USB uređaja da pronađete "događaje kršenja" (korišćenje USB uređaja koji nisu na toj listi).
Instalacija
pip3 install usbrip
usbrip ids download #Download USB ID database
Primeri
usbrip events history #Get USB history of your curent linux machine
usbrip events history --pid 0002 --vid 0e0f --user kali #Search by pid OR vid OR user
#Search for vid and/or pid
usbrip ids download #Downlaod database
usbrip ids search --pid 0002 --vid 0e0f #Search for pid AND vid
Više primera i informacija unutar github-a: https://github.com/snovvcrash/usbrip
Pregled korisničkih naloga i aktivnosti prijavljivanja
Istražite /etc/passwd, /etc/shadow i bezbednosne logove za neobična imena ili naloge koji su kreirani i ili korišćeni u bliskoj blizini poznatih neovlašćenih događaja. Takođe, proverite moguće sudo brute-force napade.
Pored toga, proverite datoteke kao što su /etc/sudoers i /etc/groups za neočekivane privilegije dodeljene korisnicima.
Na kraju, potražite naloge sa bez lozinki ili lako pogađanim lozinkama.
Istraživanje fajl sistema
Analiza struktura fajl sistema u istraživanju malvera
Kada istražujete incidente sa malverom, struktura fajl sistema je ključni izvor informacija, otkrivajući kako redosled događaja tako i sadržaj malvera. Međutim, autori malvera razvijaju tehnike za ometanje ove analize, kao što su modifikovanje vremenskih oznaka fajlova ili izbegavanje fajl sistema za skladištenje podataka.
Da biste se suprotstavili ovim anti-forenzičkim metodama, važno je:
- Sprovesti temeljnu analizu vremenskih linija koristeći alate kao što su Autopsy za vizualizaciju vremenskih linija događaja ili Sleuth Kit's
mactime
za detaljne podatke o vremenskim linijama. - Istražiti neočekivane skripte u sistemskom $PATH, koje mogu uključivati shell ili PHP skripte koje koriste napadači.
- Istražiti
/dev
za atipične fajlove, jer tradicionalno sadrži specijalne fajlove, ali može sadržati i fajlove povezane sa malverom. - Pretražiti skrivene fajlove ili direktorijume sa imenima kao što su ".. " (tačka tačka razmak) ili "..^G" (tačka tačka kontrola-G), koji mogu prikrivati zlonamerni sadržaj.
- Identifikovati setuid root fajlove koristeći komandu:
find / -user root -perm -04000 -print
Ovo pronalazi fajlove sa povišenim dozvolama, koje napadači mogu zloupotrebiti. - Pregledati vremenske oznake brisanja u inode tabelama kako bi se uočila masovna brisanja fajlova, što može ukazivati na prisustvo rootkita ili trojana.
- Inspektovati uzastopne inode za obližnje zlonamerne fajlove nakon identifikacije jednog, jer su možda postavljeni zajedno.
- Proveriti uobičajene binarne direktorijume (/bin, /sbin) za nedavno modifikovane fajlove, jer bi ovi mogli biti izmenjeni od strane malvera.
# List recent files in a directory:
ls -laR --sort=time /bin```
# Sort files in a directory by inode:
ls -lai /bin | sort -n```
```
<div class="mdbook-alerts mdbook-alerts-tip">
<p class="mdbook-alerts-title">
<span class="mdbook-alerts-icon"></span>
tip
</p>
Imajte na umu da **napadač** može **modifikovati** **vreme** kako bi **datoteke izgledale** **legitimno**, ali ne može **modifikovati** **inode**. Ako otkrijete da **datoteka** pokazuje da je kreirana i modifikovana u **isto vreme** kao i ostale datoteke u istoj fascikli, ali je **inode** **neočekivano veći**, onda su **vremenske oznake te datoteke modifikovane**.
</div>
## Uporedite datoteke različitih verzija datotečnog sistema
### Sažetak uporedbe verzija datotečnog sistema
Da bismo uporedili verzije datotečnog sistema i precizirali promene, koristimo pojednostavljene `git diff` komande:
- **Da pronađete nove datoteke**, uporedite dve fascikle:
<div class="codeblock_filename_container"><span class="codeblock_filename_inner hljs">bash</span></div>
```bash
git diff --no-index --diff-filter=A path/to/old_version/ path/to/new_version/
```
- **Za izmenjen sadržaj**, navedite promene ignorišući specifične linije:
<div class="codeblock_filename_container"><span class="codeblock_filename_inner hljs">bash</span></div>
```bash
git diff --no-index --diff-filter=M path/to/old_version/ path/to/new_version/ | grep -E "^\+" | grep -v "Installed-Time"
```
- **Da biste otkrili obrisane fajlove**:
<div class="codeblock_filename_container"><span class="codeblock_filename_inner hljs">bash</span></div>
```bash
git diff --no-index --diff-filter=D path/to/old_version/ path/to/new_version/
```
- **Opcije filtriranja** (`--diff-filter`) pomažu u sužavanju na specifične promene kao što su dodati (`A`), obrisani (`D`) ili izmenjeni (`M`) fajlovi.
- `A`: Dodati fajlovi
- `C`: Kopirani fajlovi
- `D`: Obrisani fajlovi
- `M`: Izmenjeni fajlovi
- `R`: Preimenovani fajlovi
- `T`: Promene tipa (npr., fajl u symlink)
- `U`: Neusaglašeni fajlovi
- `X`: Nepoznati fajlovi
- `B`: Pokvareni fajlovi
## Reference
- [https://cdn.ttgtmedia.com/rms/security/Malware%20Forensics%20Field%20Guide%20for%20Linux%20Systems_Ch3.pdf](https://cdn.ttgtmedia.com/rms/security/Malware%20Forensics%20Field%20Guide%20for%20Linux%20Systems_Ch3.pdf)
- [https://www.plesk.com/blog/featured/linux-logs-explained/](https://www.plesk.com/blog/featured/linux-logs-explained/)
- [https://git-scm.com/docs/git-diff#Documentation/git-diff.txt---diff-filterACDMRTUXB82308203](https://git-scm.com/docs/git-diff#Documentation/git-diff.txt---diff-filterACDMRTUXB82308203)
- **Knjiga: Malware Forensics Field Guide for Linux Systems: Digital Forensics Field Guides**
- [Red Canary – Patching for persistence: How DripDropper Linux malware moves through the cloud](https://redcanary.com/blog/threat-intelligence/dripdropper-linux-malware/)
<div class="mdbook-alerts mdbook-alerts-tip">
<p class="mdbook-alerts-title">
<span class="mdbook-alerts-icon"></span>
tip
</p>
Učite i vežbajte 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;">\
Učite i vežbajte 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;">
Učite i vežbajte 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>Podržite HackTricks</summary>
- Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
- **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitteru** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
- **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
</div>