Операционные системы - статьи

         

Уязвимость реестр


Злоумышленник может попытаться получить администраторские полномочия различными окольными путями, которые можно перекрыть простым изменением конфигурации и разрешений. Во-первых, в реестре есть несколько ключей, содержащих текст, интерпретируемый системой как команда, которую нужно запустить при регистрации пользователя. По умолчанию списки контроля доступа (Access Control List, ACL) для этих ключей слишком широки. Например, когда пользователь регистрируется в системе, NT проверяет раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run, после чего исполняет каждое текстовое значение, содержащееся в ключе, как команду с привилегиями зарегистрировавшегося пользователя. Непривилегированный пользователь может добавить в этот раздел свои команды и дождаться, когда администратор зарегистрируется в системе. Когда это произойдет, команды, указанные злоумышленником, будут исполнены уже от имени администратора. Команды при этом могут делать все что угодно - от добавления взломщика в группу Administrators до изменения прав доступа к жизненно важным каталогам системы. По умолчанию группа Everyone имеет право Set Value в данном разделе. Очевидно, это право необходимо отменить. Имеются и другие разделы реестра, подвергающие риску систему защиты, хотя способ "взлома" в каждом конкретном случае может оказаться достаточно сложным. Полный список подобных разделов и рекомендации по их защите можно найти в работе признанного эксперта по вопросам безопасности NT Стива Саттона "Windows NT Security Guidelines" (http://www.trustedsystems.com).

Как и в случае с другими мерами по укреплению защиты, выполнение рекомендаций, связанных с повышением безопасности доступа к разделам реестра, может вызвать проблемы совместимости с плохо написанными приложениями, работа которых была рассчитана на незащищенную конфигурацию системы. Такие ситуации особенно часто возникают на рабочих станциях. Я бы рекомендовал в целях повышения безопасности уделить внимание прежде всего серверам и контроллерам доменов, которые должны по определению соответствовать более строгим требованиям в этом отношении, чем рабочие станции, в частности, и потому, что интерактивный запуск приложений на серверах и контроллерах доменов случается значительно реже.
Файлы операционной системы в каталоге \%systemroot% (чаще всего C:\Winnt) с назначенными по умолчанию разрешениями также уязвимы для несанкционированных изменений. Непривилегированные пользователи могут заменить критически важные файлы операционной системы своими версиями, которые система будет исполнять в привилегированном режиме. Список каталогов, которые содержат подобные файлы, и рекомендованные изменения списков контроля доступа приведены в многочисленных публикациях (например, в упоминавшейся выше книге Стива Саттона "Windows NT Security Guidelines").

Защита реестра и каталогов операционной системы начинается с ограничения удаленного доступа к ним. С помощью одного-единственного раздела реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Control\SecurePipeServer\winreg можно указать, кто имеет право удаленного доступа к реестру (независимо от разрешений для конкретных разделов). Дополнительную информацию об ограничении удаленного доступа к реестру можно найти в статье "How to Restrict Access to NT Registry from a Remote Computer" (http://support.microsoft.com/support/kb/ articles/q153/1/83.asp). Важно убедиться, что пользователи не могут получить удаленный доступ к каталогам операционной системы благодаря неосторожно созданным общим ресурсам. Следуя приведенным выше простым рекомендациям, можно ограничить круг лиц, способных внести изменения в реестр и файловую систему.


Содержание раздела