Информационные технологииStfw.Ru 🔍
🕛

Microsoft укрепила защиту ядра Windows 7 от переполнения пула

Инженеры Microsoft укрепили защиту новой версии Windows с помощью функции безопасного отключения (от англ. safe unlinking), которая в значительной степени усложняет задачу атакующим по испол
Инженеры Microsoft укрепили защиту новой версии Windows с помощью функции "безопасного отключения" (от англ. safe unlinking), которая в значительной степени усложняет задачу атакующим по использованию обнаруженных багов.



Новая функция теперь является частью ядра Windows 7, которая отвечает за распределение порций памяти. Перед перемещением фрагментов памяти функция выполняет серию проверок, чтобы предотвратить использование популярной среди хакеров техники переполнения пула.



"Простая проверка блокирует, пожалуй, самый распространенный способ переполнения пула" - объяснил в групповом блоге Питер Бек (Peter Beck), член команды Security Science в компании Microsoft. "Это вовсе не означает, что выполнить переполнение пула стало невозможным, однако задача атакующего в существенной степени осложняется."



В течение последних пяти лет Microsoft планомерно добавляла различного рода механизмы наподобие Data Execution Prevention (DEP) и Address Space Layout Randomization (ASLR) к режиму пользователя Windows с целью усложнить задачу атакующим по использованию ошибок в браузерах и иных приложениях. В связи с тем, что число бюллетеней безопасности, так или иначе связанных с ядром Windows, возросло с 5% в 2007 до почти 10% в 2008 году, Microsoft решила, что пришло время обеспечить ядру дополнительную защиту.



Переполнение пула для ядра - это почти то же самое, что переполнение буфера для приложений. Атаки осуществляются путем манипуляций со сдвоенными списками записей в памяти, в которых каждый блок указывает на предыдущий и последующий блок в списке. Путем создания ссылок в памяти на нужный фрагмент кода атакующий может повысить свои привилегии в ОС.



Безопасное отключение призвано обезвредить такие эксплойты путем перераспределения блока только после выполнения проверки на целостность новой структуры памяти. Если проверка не выполнена, Windows возвратит фатальную ошибку. Схожие проверки были представлены для режима пользователя в Windows XP SP2, в Windows Vista они были расширены.



При условии, что большинство эксплойтов для Windows сосредоточено на динамической памяти, новую функцию пока нельзя рассматривать в таком же качестве, как, к примеру, ASLR и DEP. Тем не менее, сложно найти причину, чтобы не добавлять эту функцию, особенно принимая во внимание слова Бека, что на производительность это никоим образом не скажется.



"Очень разумное решение" - говорит Чарли Миллер (Charlie Miller), ведущий аналитик компании Independent Security Evaluators, которая выполняет поиск уязвимостей в Windows, OS X и Linux. "Думаю, что компания стремится быть впереди всех."

Также по теме:
Новые программы для Windows, Linux и Android.