Ну вот мы и подошли к одной из самых интересных и обширных, на мой взгляд, тем - конфигурирование параметров реестра Windows. Можно смело сказать что реестр, одно из коренных отличий конфигурирования Windows от других операционных систем, является как одной из блестящих идей Microsoft, так и одним из наиболее опасных и уязвимых мест в системе. Однако, возможность конфигурации практически любого параметра системы через единую базу данных, имеющую чёткую и ясную (может быть не для всех :)) структуру, а также частичный механизм само восстановления, стоит некоторой доли риска от опасности повреждения или внесения ложных данных. При условии правильной конфигурации и защиты, этот риск не больше чем у систем с файловой структурой конфигурации. Сам реестр, в конечном счёте, как вы понимаете тоже является набором файлов в определённом формате, такой файл называется ещё hive. Файлы всех разделов кроме HKEY_CURRENT_USER, хранятся в директории - %SystemRoot%\System32\Config.
И так из чего-же состоит реестр:
Первый подраздел это - HKEY_CLASSES_ROOT. В нем хранится информация, во-первых, о том какие действия ассоциированы с тем или иным расширением файла - т.е. какой исполняемый код и с какими параметрами будет вызван при обращении к файлу; во-вторых, информация о конфигурации COM, VB аппликаций, а так-же других (практически всех) объектов или связанных с ними классов. Данный раздел отражает информацию из двух других ветвей реестра, а именно: HKEY_LOCAL_MACHINE\SOFTWARE\Classes (в версиях WinNT 4.0 и ранее, только от сюда) и HKEY_CURRENT_USER\SOFTWARE\Classes. Нужно отметить, что если данные в этих двух разделах входят в конфликт, то используются значения из раздела - HKEY_CURRENT_USER\SOFTWARE\Classes.
Второй подраздел - HKEY_CURRENT_USER. Хранит информацию о настройках активного пользователя. Реально не является записью в реестре, а только линком на соответствующую ветвь (SID этого пользователя) в HKEY_USERS. Предназначен для облегчения доступа к профилю текущего пользователя. Эта запись создаётся каждый раз, при входе пользователя в систему. Если профиль недоступен (например, первый вход) он будет создан на основании профиля по умолчанию (.DEFAULT)
Третий подраздел - HKEY_LOCAL_MACHINE. Пожалуй самый важный из разделов реестра. В нем хранится вся информация о конфигурации аппаратного и программного обеспечения компьютера, а так-же раздел SAM где в зашифрованном виде хранятся пароли локальных пользователей - пожалуй единственный раздел куда по умолчанию отсутствует доступ даже администратору. Следует так-же отметить что тут хранится та самая "последняя известная хорошая конфигурация реестра", которую предлагается загрузить в случае повреждения или неудачной загрузки. Отсюда становится ясно, что эта версия хранит не полную копию реестра, а только ту часть которая необходима для успешной загрузки системы до момента подключения пользователя.
Четвёртый подраздел - HKEY_USERS Содержит профили: активного консольного пользователя (именно на эту ветвь указывает подраздел - HKEY_CURRENT_USER), .DEFAULT - его предназначение описывалось выше, три раздела со стандартными SID: S−1−5−18, S−1−5−19, S−1−5−20, это: LocalSystem, LocalService и NetworkService соответственно. Они необходимы для запуска соответствующих служб системы. Кроме того здесь есть классы для каждого из SID-ов. Могут быть так-же и дополнительные SID что свидетельствует о том что на машине запущены приложения или сервисы с правами других (не консольного) пользователей, например при помощи run as.
Пятый подраздел - HKEY_CURRENT_CONFIG. Последний раздел, он не содержит не каких данных, а является собственно указателем на HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles. Здесь содержится профиль аппаратного обеспечения данного компьютера.
На этом мы закончим общее рассмотрение этой увлекательной структуры - Windows registry (надеюсь, нам удастся продолжить его в другом издании, на другом гораздо более серьёзном уровне). Теперь можно приступить к основной цели этого раздела.
Конфигурация параметров безопасности системы в реестре:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows \System\ DisableCMD (DWORD) – Позволяет запретить интерактивное использование или запуск bat файлов командным интерпретатором cmd.exe Может принимать следующие значения 0 – разрешено всё, 1 – запрещён интерактивный режим а так-же запуск скриптов, 2 – запрещён интерактивный режим, но не запуск bat скриптов. Установите в 1 для всех учётных записей (помните, HKEY_CURRENT_USER – только текущий профиль) , которые не требуют запуска bat файлов. 2 – для всех остальных.
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\ CurrentVersion\Policies\System\ DisableRegistryTools (DWORD) – Позволяет запретить использование инструментов редактирования реестра, например regedit.exe, regedt32.exe. Установите в 1 для всех учётных записей.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ SecurePipeServers\winreg\AllowedPaths\ Machine (Multi-String – не используйте regedit в Win2K, только regedt32 во-избежания повреждения данных в этом формате) - Содержит список ветвей реестра которые доступны удалённо. Если вы не используете сервисы требующие удалённый доступ к данным в реестре – очистите этот ключ, в противном случае, постарайтесь минимизировать количество строк в нем.
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\ Task Scheduler5.0\ для пользователя,
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\ Task Scheduler5.0\ для всей системы
"Property Pages" (DWORD) – Позволяет регулировать использование встроенного scheduler Windows – этот сервис имеет много уязвимостей и в общем случае его лучше остановить. Но, если ваш сервер использует управление заданиями через него, то как минимум уменьшите доступ к его настройкам. И так, установка этого ключа в 1 – запретит доступ к к свойствам уже существующих заданий.
"Allow Browse" (DWORD) – Запрещает редактирование команды запускаемой заданием, блокирует кнопку "Browse" в свойствах Task Scheduler. Установите в 1 для активизации ограничения.
Execution (DWORD) – Блокирует возможность ручного запуска задания пользователем. Установите в 1 для активизации ограничения.
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\ Installer DisableMSI (DWORD) – Позволяет заблокировать установку программ через Windows installer service (сам сервисе тоже лучше остановить). Может принимать значения: 0 - разрешено всем, 1 - разрешено только администратору или 2 - запрещено всем. Я рекомендую устанавливать значение 2 для стабильных систем, с редко производимыми обновлениями.
HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\Policies\System\ DisableTaskMgr (DWORD) – При установке этого параметра в 1-у Task Manager будет заблокирован от запуска. Однако это не влияет на другие подобные утилиты сторонних производителей (Procexp и т.п.)
HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\Policies\System\ ScreenSaverGracePeriod (REG_SZ) - Устанавливает период между срабатыванием хранителя экрана и закрытием на пароль (если эта опция активизирована) сервера. Обычно существует некоторый промежуток времени, после срабатывания хранителя экрана, в течении которого не требуется введение пароля для возвращения к рабочему столу. Установите это время в 0 и эта задержка будет удалена. Теперь вы уверенны, что если вы видите хранитель - доступ к консоли заблокирован.
HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\Policies\Explorer\ CDRAutoRun (DWORD) – Параметр регулирует автозапуск дисков CD-R(W) или DVD-R(W). Поскольку автоматический запуск приложения с такого диска потенциально опасен, к тому-же если в этот момент активный пользователь имеет права администратора, программа может получить неограниченные права над сервером. Установите значение в 0, для отключения автоматического запуска.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Explorer\BitBucket NukeOnDelete (DWORD) – Этот ключ позволяет отключить перенос в корзину удаляемого файла, т.е. производит действия при нажатии Del как при Shift-Del. Дело в том что незадачливый пользователь может стереть секретную информацию не полностью, что позволит злоумышленнику произвести полное восстановление данных, без лишних усилий и не прибегая ко специальным средствам. Установите значение в 1 для немедленного уничтожения стираемой информации. По поводу стирания секретной информации нужно заметить следующее, используйте специальное программное обеспечение для полного уничтожения данных с диска. В противном случае, файлы будут лишь помеченными как удалённые и доступны к полному или частичному восстановлению до того момента как физическое пространство на диске, занимаемое стёртой информацией, не будет перезаписано другими данными.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS EfsConfiguration (DWORD) – Этот параметр позволяет включить или отключить использование EFS. Если вы не предполагаете использовать данный метод криптования на вашей машине - установите значение ключа в 1, в противном случае в 0.
HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\Policies\Explorer\ для пользователя,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\ CurrentVersion\Policies\Explorer\ для всей системы, NoDriveAutoRun (DWORD) - позволяет контролировать на каких из дисков будет разрешена функция AutoPlay. Параметр может принимать следующие значения: A: 1, B: 2, C: 4, D: 8, E: 16, F: 32, G: 64, H: 128, I: 256, J: 512, K: 1024, L: 2048, M: 4096, N: 8192, O: 16384, P: 32768, Q: 65536, R: 131072, S: 262144, T: 524288, U:1048576, V: 2097152, W: 4194304, X: 8388608, Y: 16777216, Z: 33554432, ALL: 67108863. Наиболее безопасный вариант, это полный запрет - 67108863.
HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\Policies\Explorer\ для пользователя,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\ CurrentVersion\Policies\Explorer\ для всей системы, NoDriveTypeAutoRun (DWORD) – Позволяет управлять функцией авто-запуска в зависимости от типа устройства. Значение является битовой маской и состоит из следующих компонент:
0 Неизвестное устройство,
1 Не корневая директория,
2 Съёмные устройства (Floppy, ZIP),
3 Жёсткие диски,
4 Сетевые диски,
5 CD-ROM диски,
6 RAM диски,
7 Резервировано.
По умолчанию активны жёсткие диски и CD-ROM. Как и в приведущем случае рекомендуется полное отключение - 255 (0хFF).
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Explorer\BitBucket\ NoRecycleFiles (DWORD) - Запрещает перемещение файлов или директорий удалённых с помощью Windows Explorer в корзину. Для активизации установить в 1.
HKEY_CLASSES_ROOT\...\ NeverShowExt (DWORD) - Данный ключ добавляется в те разделы HKCR, файловые расширения которых необходимо спрятать не взирая на требования пользователя "показывать расширения файлов" - так называемые супер скрытые расширения. Такой подход может позволить злоумышленнику обмануть пользователя и заставить его открыть (а практически запустить) файл с опасным кодом под видом безобидного файла. Например файл pic.jpg.shs, будет выглядеть как обычная картинка pic.jpg. И так, удалите все встречающиеся в этом разделе ключи NeverShowExt.
На этом я пожалуй приостановлюсь до следующего раза. На последок хочу ещё раз напомнить, что все изменения связанные с разделом реестра HKEY_CURRENT_USER должны быть выполнены для всех учётных записей требующих установки параметров безопасности.
Cледующий раз:
Работаем с registry, продолжение…
Если ваши советы и комментарии интересны всем, буду рад увидеть их здесь. С личными просьбами и предложениями, добро пожаловать на e-mail
8 comments:
полезненько......
Как всегда на высоте!
Немного медленно грузится сайт, может потому что я из израиля Но главное что не зря ждал, интересно.
Да тут и добавить то нечего, спасибо всё толково.
Хорошая статья. Действительно было интересно почитать. Не часто такое и встречается та.Наверное стоит подписаться на ваше RSS
Nice brief and this fill someone in on helped me alot in my college assignement. Gratefulness you as your information.
Hello. And Bye.
Я это уже на другом сайте видел, но все равно спасибо.
Post a Comment