Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Ubuntu Vivid – Privilage Escalation za pomocą rotacji logów
W deweloperskim wydaniu Ubuntu Vivid 15.04 pojawił się bug umożliwiający eskalację uprawnień za pomocą skryptów crona do rotacji logów.
Zabawa z cyklu – znajdźcie różnicę z dwóch listingów umożliwiającą eskalację uprawnień do linuksowego roota.
/etc/cron.daily/upstart z Ubuntu Vivid 15.04 (dev-branch)
[ -x /sbin/initctl ] || exit 0 for session in /run/user/*/upstart/sessions/* do env $(cat $session) /sbin/initctl emit rotate-logs >/dev/null 2>&1 || true done
/etc/cron.daily/upstart z Ubuntu Trusty 14.04
[ -x /sbin/initctl ] || exit 0 initctl emit rotate-logs
Suma takich czynników jak:
- katalog /run/user/[uid]/upstart/session z prawami zapisu dla użytkownika [uid],
- skrypt /etc/cron.daily/upstart uruchamiany z prawami użytkownika root,
- brak walidacji danych wprowadzanych przez użytkownika w czasie odczytu plików z katalogu sessions,
może sprawić, że użytkownik nieuprzywilejowany będzie mógł utworzyć skrypt powłoki w katalogu sessions, za pomocą którego będzie mógł wykonać polecenie z prawami root.
Szybki PoC takiej eskalacji uprawnień.
–j23