TGViewer
purple shift purple shift @purpleshift · 3.05K subscribers
Post #110 2.34K
Чтобы избежать раздачи рутового доступа кому попало, в операционке Linux привилегии суперпользователя разделяются на отдельные единицы, которые называют «возможностями» (capabilities). Такие root-права дают исполняемым файлам ограниченные разрешения, даже если файл исполняется как root.

Обычно capabilities ограничены по умолчанию: если их устанавливает непривилегированный пользователь, такие права связываются с пользовательским пространством имён (namespace) – и не могут применяться за пределами этого namespace.

Однако эксплоит Game Over(lay) использует две уязвимости в системе OverlayFS (CVE-2023-2640 и CVE-2023-32629), чтобы обойти это ограничение. Эксплоит заставляет систему скопировать файл с ограниченными правами в другое место – где права не ограничены. После этого пользователь без привилегий может выполнить такой файл с рутовыми правами.

Как устроена атака:

OverlayFS – это объединенная файловая система, которая даёт пользователю общее представление разных каталогов в виде «слоев». Это позволяет обмениваться данными и модифицировать их, не изменяя оригинальный контент.

Система устроена так:
– нижний слой (lowedir): монтируется только для чтения,
– верхний слой (upperdir): позволяет записывать модификации,
– рабочий слой (workdir): для управления рабочим каталогом контейнеризованных процессов,
– объединенный слой (merged): доступен пользователю как объединенное представление файловой системы.

Оригинальные файлы хранятся в нижнем слое, только на чтение. При модификации файла или его метаданных активируется механизм Copy-on-Write (CoW), который копирует файл на верхний слой, оставляя оригинал на нижнем.

В некоторых версиях Ubuntu система OverlayFS не проводит валидацию при копировании файлов между слоями. Это позволяет заменить ограниченные root-права на неограниченные одной строчкой команд:
unshare -rm sh -c "mkdir l u w m && cp /u*/b*/p*3 l/; setcap cap_setuid+eip l/python3;mount -t overlay overlay -o rw,lowerdir=l,upperdir=u,workdir=w m && touch m/*; u/python3 -c 'import os;os.setuid(0);os.system(\"bash\")'";rm -rf l u w m


Результат выполнения можно увидеть на скриншоте выше. Разберём атаку по шагам:

unshare -rm создаёт и монтирует новое пространство имён (namespace) пользователя, которому будут предоставлены рутовые права,

mkdir создаёт четыре каталога (l, u, w, m) для «ловушки» OverlayFS.

cp копирует бинарный файл python3 в каталог l, нижний уровень (только чтение). Путь /u*/b*/p*3 обфусцирует реальный путь /usr/bin/python3.

setcap cap_setuid+eip назначает файлу ограниченные рутовые права (capabilities), позволяя ему вызов setuid(0). Эта возможность работает только внутри пользовательского namespace.

mount создаёт OverlayFS с каталогами l (нижний слой), u (верхний слой), w (рабочий слой) и m (объединенный слой). В нижнем слое лежит python3 (с ограниченными правами).

touch модифицирует метаданные файла через каталог m, активируя Copy-on-Write. В уязвимых версиях Ubuntu это приводит к копированию файла python3 в каталог u, где у бинарника будут неограниченные права (за пределами namespace).

Теперь файл python3 можно запустить для повышения привилегий через os.setuid(0) и создать рутовый shell, используя os.system("bash").

Последняя команда rm зачищает каталоги «ловушки».

Как избежать атаки:

Уязвимостям подвержены версии ядра от v5.4 до v6.3. Информацию по обновлениям смотрите здесь: CVE-2023-2640 и CVE-2023-32629.

Также рекомендуется ограничить возможность создания namespace для непривилегированных пользователей:
echo kernel.unprivileged_userns_clone=0 | sudo tee /etc/sysctl.d/99-disable-unpriv-userns.conf


Как детектировать атаку:

– Отслеживайте нестандартное использование unshare, особенно с флагами namespace.
– Выявляйте shell-процессы с подозрительными аргументами, которые предполагают установку рутовых прав (capabilities) и монтирования с перекрывающимися слоями.
– Мониторьте подозрительные родительские shell-процессы, которые могут означать повышение привилегий.
  • 🔥 16
  • 👍 7
  • ❤ 1
  • 🤩 1
  • 🗿 1
More from @purpleshift
  1. Sep 28, 2026В ходе расследования серии кибератак наши эксперты обнаружили новую русcкоговорящую дестру…
  2. Sep 23, 2026В конце 2024 года мы рассказывали о том, как детектировать атаки на основе компрометации г…
  3. Sep 21, 2026В конце лета число подписчиков нашего канала перевалило за 3 тысячи. Мы конечно же поздрав…
  4. Sep 16, 2026«Мир стоит на кодах и шифрах, Джон. Многомиллионные охранные системы в банках и простеньки…
  5. Sep 11, 2026Финал соревнований VolgaCTF 2026 пройдёт с 16 по 18 сентября в Самаре. И на этом мероприят…
  6. Sep 7, 2026В начале августа мы рассказали, что хакерская группировка Labooboo (Toy Ghouls, Bearlyfy,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →