Вышедшая на прошлой неделе версия Windows Vista Beta 2 содержит новое средство защиты от эксплойтов, основанных на переполнении буфера. Каждый раз при включении ПК функция Address Space Layout Randomization (ASLR) загружает важные системные файлы в разные области памяти, что, по мнению Microsoft, затрудняет исполнение вредоносного года. «Это не панацея, и это не исключает необходимости писать безопасный код, — пишет старший менеджер программы безопасности Microsoft Майкл Говард в блоге, в котором рассказывает о новой функции. — Но в сочетании с другими технологиями… это полезное средство защиты, так как оно позволяет Windows-систеам выглядеть незнакомыми для вредоносного ПО, что затрудняет автоматические атаки». Эксплойты переполнения буфера это вредоносный код, который пытается использовать типичную ошибку в программировании, называемую переполнением буфера. При атаках этого типа записываемые в память данные выходят за пределы выделенного буфера и занимают смежные с ним ячейки. Это может привести к сбою процесса или допустить выполнение подготовленного злоумышленником кода. ASLR изобрела не Microsoft. Эта функция уже используется в нескольких операционных системах open source, включая OpenBSD, а также в патчах для Linux PaX и Exec Shield. При определенных видах атак злоумышленники пытаются заставить системные функции Windows, такие как socket() в wsock32.dll, открыть сетевой сокет. Новая функция перемещает эти системные файлы, делая их местонахождение непредсказуемым. В Windows Vista Beta 2 файл DLL или EXE может находиться по любому из 256 адресов. «У злоумышленника один шанс из 256 угадать правильный адрес», — пишет Говард. В системах open source рандомизация, похоже, работает хорошо, констатирует старший специалист Cybertrust Расс Купер. Вопрос в том, как именно Microsoft реализовала ASLR и является ли эта рандомизация в принципе предсказуемой. «Я подозреваю, что в первую очередь станут искать именно это — что-нибудь, что указывает на выбор местонахождения или может служить подсказкой». Можно попытаться опробовать и все 256 ячеек памяти. Однако это, скорее, приведет к сбою в работе ПК, чем позволит взломать его, считает Купер. «Такая защита хороша, когда главное — не допустить исполнения вредоносного ПО, а не гарантировать бесперебойную работу системы». Отзывы об ASLR В мире безопасности Microsoft заслужила одобрение за работу по ASLR для Vista. «Дистанционное использование переполнений значительно усложнилось, — пишет в сообщении в списке почтовой рассылки BugTraq исследователь из Next Generation Security Software Дэвид Личфилд (David Litchfield). Но и скептики тоже есть. Некто под псевдонимом c0ntex в ответе Личфилду уверяет, что ASLR «уже много лет элементарно обходится в Linux». Тот факт, что Microsoft добавила ASLR лишь в последнюю опытную версию Windows Vista, еще один признак неготовности последователя Windows ХР к широкому применению. «Мы довольно поздно ввели в игру функцию ASLR, но решили, что добавить ее в бета-2 и сделать разрешенной по умолчанию важно для понимания того, как это будет работать в реальности», — пишет Говард. По утверждению Microsoft, ASLR вместе с другими усовершенствованиями Vista поднимает планку безопасности будущей ОС. Компания называет Vista, которая должна поступить в продажу в январе, самой безопасной версией Windows на сегодняшний день. Кроме ASLR, Говард указывает на опцию для обнаружения переполнения буфера в Visual C++; средство проверки исключений (exception checker) в Vista; функцию сокрытия указателя (pointer obfuscation) и поддержку функции NX (No-Execute) процессора, которая не позволяет исполнять данные как программы. «В свете всего этого ASLR рассматривается всего лишь как одна из многих мер защиты», — пишет Говард. Взято с http://news.com.com/Vista+plays+hide-and-seek+with+hackers/2100-7355_3-6079101.html