Добавить в корзинуПозвонить
Найти в Дзене

Девять лет с дырой в кармане: как AppArmor подставил миллионы серверов

Привет! Представьте себе, что вы построили неприступную крепость. У вас есть рвы с крокодилами, двухметровые стены и суровый вышибала на входе по имени AppArmor. Этот парень — настоящий бюрократ: он проверяет каждую бумажку у любой программы. «Тебе в папку /etc нельзя, тебе только в /tmp, и вообще, не дыши на системные вызовы», — говорит он. И вот вы, спокойный и гордый своей безопасностью, уходите спать, не зная, что в 2017 году кто-то по ошибке оставил ключ от задней двери прямо под ковриком. Компания Qualys выкатила отчет под кодовым названием CrackArmor, который звучит как приговор для 12,6 миллиона корпоративных серверов. Выяснилось, что наш доблестный страж AppArmor страдает легкой формой амнезии и тяжелой формой доверчивости. Оказывается, обычный пользователь, у которого прав не больше, чем у фикуса в офисе, может подойти к магическим файлам в /sys/kernel/security/apparmor/ и начать ими манипулировать. Это классическая комедия ошибок в духе «запутанного заместителя». Представьт

Привет! Представьте себе, что вы построили неприступную крепость. У вас есть рвы с крокодилами, двухметровые стены и суровый вышибала на входе по имени AppArmor. Этот парень — настоящий бюрократ: он проверяет каждую бумажку у любой программы. «Тебе в папку /etc нельзя, тебе только в /tmp, и вообще, не дыши на системные вызовы», — говорит он. И вот вы, спокойный и гордый своей безопасностью, уходите спать, не зная, что в 2017 году кто-то по ошибке оставил ключ от задней двери прямо под ковриком.

Компания Qualys выкатила отчет под кодовым названием CrackArmor, который звучит как приговор для 12,6 миллиона корпоративных серверов. Выяснилось, что наш доблестный страж AppArmor страдает легкой формой амнезии и тяжелой формой доверчивости. Оказывается, обычный пользователь, у которого прав не больше, чем у фикуса в офисе, может подойти к магическим файлам в /sys/kernel/security/apparmor/ и начать ими манипулировать.

Это классическая комедия ошибок в духе «запутанного заместителя». Представьте, что вы просите шерифа подписать приказ об освобождении всех бандитов из тюрьмы, а он, не глядя, ставит печать, потому что вы принесли ему кофе. Злоумышленник использует доверенные инструменты вроде Sudo или Postfix, чтобы «уговорить» ядро Linux подменить или вовсе удалить профили безопасности. Бац — и обычный смертный превращается в бога системы с правами root.

Самое пикантное в этой истории — исторический контекст. Ошибка закралась в ядро версии 4.11 еще девять лет назад. С тех пор она тихо сидела в Ubuntu, Debian и SUSE, наблюдая, как вы обновляете железо и софт. Это как если бы вы купили сейф в 2017 году, а сегодня узнали, что его можно открыть обычной зубочисткой, если нажать на левый угол под углом 45 градусов.

Но получить контроль над сервером — это только половина беды. Веселье начинается, когда хакер решает просто все сломать. Можно загрузить такой профиль, который заблокирует SSH, и админ будет бегать вокруг сервера, как обезьяна вокруг монолита, не в силах подключиться. А если начать удалять сложные вложенные профили, ядро Linux впадает в ступор, ловит переполнение стека и уходит в глубокий нокаут (Kernel Panic).

Что делать нам, простым любителям пингвинов? Пока CVE еще даже не присвоили (ядерщики обычно не торопятся с бюрократией), Qualys уже вовсю демонстрирует рабочие эксплойты за закрытыми дверями. Рецепт один: как только увидите в обновлениях свежее ядро — хватайте его, не глядя. А пока поглядывайте за каталогом /sys/kernel/security/apparmor/. Если там кто-то начинает шуршать без вашего ведома — значит, ваш «вышибала» уже начал принимать взятки кофе и пончиками.