Безопасность >>>
Часть III. Операционные системы и приложения
Глава 9. Прошлое и настоящее сетевых операционных систем
|
Извечной и зловещей мечтой вирусов является
абсолютное мировое господство, и, как ни ужасны
методы, коими они в настоящее время пользуются,
им нельзя отказать в настойчивости,
изобретательности и способности
к самопожертвованию во имя великой цели.
А.Стругацкий, Б.Стругацкий Сказка о тройке
|
В предыдущей части книги были рассмотрены протоколы TCP/IP и показаны их слабые стороны с точки зрения безопасности. Эти протоколы (соответственно и изъяны в них) являются в большей степени независимыми от конкретной их реализации в операционных системах или программах, то есть любая из них в той или иной степени небезопасна. При этом неудачная реализация протоколов еще больше усиливает заложенную в них уязвимость.
Однако протоколы никогда не являлись непосредственной целью атаки кракера. Его действия всегда направлены на определенный компьютер с конкретной реализаций протоколов TCP/IP, с конкретной операционной системой и конкретным набором приложений, поэтому нетрудно предположить, что хакеры также занимаются исследованием особенностей разных ОС и приложений. Ясно, что такие атаки будут специфичными не только для конкретных ОС и программ, но и для их версий и диалектов, хотя и в этом случае можно выделить некоторые общие механизмы атак, классифицировать их и те уязвимости ОС, которые делают подобные атаки возможными.
Пришло время рассмотреть сетевые операционные системы, составляющие большинство в сегодняшней Сети, - семейства UNIX и Windows.
Internet - это сеть UNIX-машин. Такое утверждение является не совсем справедливым в наше время, когда успех и конкурентоспособность операционной системы напрямую зависят от того, насколько легко они интегрируются в Сеть. Однако сеть Internet (вернее, ее прадед - ARPANET) возникла именно из необходимости связать между собой UNIX-компьютеры, которые были самыми распространенными и прогрессивными в то время. (Кстати, UNIX-идеология наложила свой отпечаток и на все основные сетевые протоколы.) Мы ни в коем случае не хотим принизить значение принципов построения UNIX для развития операционных систем, но общеизвестно, что у этой ОС в ее классическом варианте слишком много проблем с безопасностью, причем проблемы настолько глубоки, что корректное и надежное их искоренение приведет к перерождению UNIX как таковой - это будет новая операционная система. Много пролито слез по этому поводу: "Ах, если бы разработчики UNIX уделили больше внимания безопасности". Но не следует забывать, что все концепции UNIX прорабатывались в начале 70-х годов, когда практически не было никакой теории компьютерной безопасности, а создатели и вовсе делали ее "под себя", не подозревая, насколько теснее (появятся сети) и опаснее (появятся кракеры) станет компьютерный мир через несколько лет.
Следовательно, современные операционные системы (Novell Netware, Windows NT) оказываются в заведомо более выгодном положении - они разрабатывались, во-первых, с учетом ошибок UNIX и современной ситуации с безопасностью сетей, а во-вторых, сразу придерживались четкой концепции клиент - сервер, при которой, в частности, клиенту еще надо доказать, что он тот, за кого себя выдает. Из сказанного читатель может сделать вывод, что современные системы являются более безопасными, чем добрая старая UNIX. К сожалению, нет. И вряд ли кто-то может дать четкий ответ, какая же из ОС является более, а какая менее безопасной.
Да, у UNIX есть серьезные изъяны по части безопасности, и именно на UNIX были осуществлены самые громкие компьютерные атаки, однако она используется в качестве сетевой ОС с момента зарождения Сети, и опыт ее использования позволяет говорить о том, какого рода атаки на нее возможны, а какие - нет. Исследователями написаны, а администраторами изучены сотни статей и книг относительно механизмов безопасности UNIX и способов их нарушения, построены соответствующие классификации. Все это позволяет предположить, что никаких сюрпризов UNIX больше не преподнесет.
С новыми операционными системами ситуация в корне противоположная. Да, в них заложены концепции, согласующиеся с современным состоянием теории безопасности, - и мощные модели разграничения доступа, и надежная подсистема аутентификации, и аудит. Однако именно молодость делает ОС "темными лошадками", которые активно исследуются как хакерами, так и кракерами (а репутация фирм-производителей и агрессивная маркетинговая политика только активизируют их усилия). Похоже, что операционные системы, не совместимые с UNIX, несмотря на печальный опыт своей предшественницы, начинают проходить тот же самый путь и совершать те же самые ошибки в обеспечении безопасности (на другом витке спирали, естественно). И до окончательного вывода о качествах этих ОС еще далеко. Сравните - червь Морриса появился спустя 15 лет после выпуска UNIX и спустя 5 лет после включения в нее поддержки TCP/IP. А выход Windows NT 4.0 состоялся в 1996 году.
Описанию подсистемы безопасности, уязвимых мест, механизмов атак и защиты от них в двух самых популярных на сегодняшний день ОС - UNIX (различные версии) и Windows NT (версия 4.0) - и посвящена эта глава.
Классификация пользователей и типовых сценариев атак в UNIX
Начало, или До червя
Технология переполнения буфера
Червь
После червя
Современная ситуация
Причины существования уязвимостей в UNIX-системах
Windows NT
Как защитить свой хост
Средства автоматизированного контроля безопасности
|