Шпенглер: Эксплойты могут показать уровень уязвимости Linux
Многие полагают, что Linux является абсолютно безопасной системой. Но Брэд Шпенглер с проекта grsecurity уверен - это мнение ошибочно. Для того, чтобы доказать это, он разработал десяток успешно работающих эксплойтов для ядра. Выступая на саммите безопасности Linux в рамках конференции LinuxCon на этой неделе, Шпенглер рассказал, как его усилия привели к тому, что Linux стал более безопасным, хотя его подход, заключающийся в разработке эксплойтов для ядра операционной системы, может кому-то показаться подозрительным. Так, он поведал, как создал целую систему эксплойтов для ядра Linux под названием Enlightenment ("Просвещение"), которая впоследствии привлекла внимание Агентства Национальной Безопасности США. Шпенглер говорит, что Просвещение может отключить политику контроля доступа Linux, включая такие функции, как Security-Enhanced Linux (SELinux) и AppArmor - что не может не доказывать состоятельность его точки зрения."Однако контроль доступа - не краеугольный камень в безопасности. Такой прием актуален, когда угроза уже известна, и его следует использовать только в качестве последней линии защиты".Шпенглер сообщил, что за последний год он написал одиннадцать эксплойтов для ядра, и он чувствует, что они помогли сделать Linux более безопасным. Сначала было написано семь эксплойтов, которые ставили под удар сохранность данных пользователей Red Hat Entrerprise Linux, однако Red Hat отреагировала на работу Шпенглера лишь после восьмой найденной им уязвимости, выпустив патч и залатав все обнаруженные прорехи в безопасности.
"Только публичные эксплойты производят изменения в общественном понимании уровня существующей безопасности".АНБ, тем не менее, может иметь другой взгляд на ситуацию. Шпенглер сказал, что агентство США, изначально помогавшее в разработке SELinux, отреагировало на один из его эксплойтов, связавшись не со Шпенглером, а с его работодателем, чтобы, по его словам, попытаться усложнить ему жизнь.
"Но АНБ это удалось, поскольку я выпустил еще пять эксплойтов и продолжаю работать в том же месте. Тут цель оправдывает средства: в конце концов, SELinux стал лучшим продуктом, чем был".Но улучшение безопасности заключается не только в работе разработчиков типа Шпенглера, пишущих эксплойты. Наоборот, Брэд полагает, что есть еще целый ряд задач, над которыми нужно работать и пользователям и администраторам Linux, чтобы создавать более безопасные системы, и все они основаны на идее того, что лучший способ вести дела со взломщиками – это создавать враждебное и непредсказуемое для них окружение. В первую очередь, необходимо использовать перемешивание слоев адресного пространства (ASLR) - технику для произвольного переразмещения совместно используемых объектов в памяти. Шпенглер объяснил, что ASLR усложняет возможность эксплойтов полагаться на жестко запрограммированное пространство ячеек памяти. Помимо этого необходимо устранить в ядре т.н. «информационную утечку». Одна такая утечка происходит в функции slabinfo, которая сообщает размер блоков памяти. Шпенглер полагает, что такая функция может быть потенциально полезной для взломщиков. Следует также помнить, что в ядре Linux важные данные должны быть защищены лучше. Поэтому сделать так, чтобы объекты ядра, включая таблицу системных вызовов syscall, были помечены как read-only для предотвращения взлома.
"Мы должны предотвратить возможность получения злоумышленного доступа к памяти". "Главная задача - обезопасить ядро, поскольку все яйца находятся в одной корзине и эта корзина и есть ядро".
© Root.UA