Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Секреты Windows: статьи о реестре, rundll32.exe, программах Обзор команд rundll32.exe. Обход групповых политик


Возможно, не все читатели знают, что это за программа — rundll32.exe.

Программа rundll32.exe является стандартной программой всех операционных систем семейства Windows. Она предназначена для выполнения внешних функций, описанных в библиотеках, драйверах или ActiveX-объектах.

Синтаксис использования программы довольно прост: rundll32.exe «библиотека», «функция» «параметры».

Запятую между библиотекой и функцией можно не указывать, хотя, следуя сложившейся традиции, в этой статье мы все-таки будем ее указывать. Хуже от этого не будет.

Важно Название функции, которую будет вызывать программа rundll32.exe, зависит от регистра. То есть, функции MessageBox и messageBox, в понимании программы rundll32.exe, являются разными функциями. Все остальное от регистра не зависит.

Групповые политики

Групповые политики — как много смысла вложила корпорация Microsoft в эту фразу! Наверное, с точки зрения Microsoft групповые политики являются таблеткой, которая предназначена для излечения администраторов безопасности от головной боли, связанной с постоянными заботами о работе подопечных им компьютеров.

Если что-то нужно настроить, это делается при помощи групповых политик. Если что-то нужно ограничить, то на помощь опять таки приходят групповые политики. Нужно признать, что это действительно очень мощное средство настройки компьютера и ограничения пользователей, которые вечно лезут туда, куда не нужно.

Однако перед тем, как с чистой совестью воспользоваться групповыми политиками операционных систем семейства Windows, не поленитесь прочитать эту статью. Из нее вы узнаете о тех политиках, которые лучше не применять.

Если сказать очень простым языком, то групповые политики, это набор параметров реестра, предназначенных для переопределения стандартных настроек работы операционной системы и различных программ. Все параметры групповых политик хранятся в ветвях реестра HKEY_CURRENT_USER\Software\Policies и HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies (а также тех же ветвях, но корневого раздела HKEY_LOCAL_MACHINE).

Доступ на запись к этим ветвям разрешен только администраторам и учетной записи локальной системы, поэтому обычный пользователь изменить параметры, описанные в них, не сможет.

Изменить состояние отдельных групповых политик очень просто. Для этого предназначена оснастка Редактор объектов групповой политики (консоль gpedit.msc). Если открыть эту оснастку и перейти к разделам "Конфигурация компьютера/Административные шаблоны" или "Конфигурация пользователя/Административные шаблоны", то можно начинать редактировать групповые политики.

Но групповые политики, это не просто содержимое набора ветвей реестра. Немаловажной частью групповых политик являются файлы с именем registry.pol. Эти файлы хранятся в каталогах %systemroot%\system32\GroupPolicy\Machine и %systemroot%\system32\GroupPolicy\User.

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

Более того, кроме локальных групповых политик (которые мы с вами рассмотрели), еще существуют групповые политики домена и организационной единицы. Но в такие дебри мы заходить не будем — не о том статья.

Итак, после того, как мы рассмотрели кратчайшее описание групповых политик и их применения, давайте перейдет к сути статьи. То есть, ниже будут описаны групповые политики, перед применением которых нужно подумать над таким вопросом, поможет ли данная политика достигнуть тех целей, которые вы поставили перед собой.

Административные шаблоны/Компоненты Windows/Internet Explorer/Панель управления обозревателем

С помощью политик данного раздела можно скрыть определенные элементы диалога Свойства: Интернет. Это достигается изменением параметров REG_DWORD типа ветви HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel. Данный диалог отображается при помощи команды Свойства обозревателя меню Сервис браузера Internet Explorer 7.0.

Отключить вкладку «Конфиденциальность» Данная политика позволяет изменить значение параметра PrivacyTab. Если значение данного параметра равно 1, то из диалога Свойства: Интернет будет скрыта вкладка Конфиденциальность.

Если с помощью данной политики вы решили запретить возможность изменения параметров блокирования всплывающих окон, тогда мне придется вас огорчить. При помощи команды rundll32.exe inetcpl.cpl, DisplayPopupWindowManagementDialog все равно можно будет отобразить весьма работоспособный диалог Параметры блокирования всплывающих окон, которому абсолютно все равно, скрыта вкладка Конфиденциальность или нет. Более того, программистам Microsoft это может показать невероятным, но данному диалогу также абсолютно все равно, установлено ли значение параметров REG_DWORD типа DisablePopupFilterLevel, NoPopupManagement и RestrictPopupExceptionList, расположенных в ветви реестра HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Restrictions. Данные параметры устанавливаются при помощи политик Отключить управление уровнем фильтрации всплывающих окон, Отключить управление всплывающими окнами и Отключить управление списком разрешенных всплывающих окон раздела "Административные шаблоны/Компоненты Windows/Internet Explorer".

Отключить вкладку «Общие» Данная политика позволяет изменить значение параметра GeneralTab. Если значение этого параметра равно 1, то из диалога Свойства: Интернет будет скрыта вкладка Общие.

Данная политика вам не поможет, если вы хотите, чтобы пользователям было запрещено открывать диалог Выбор языка. Этот диалог все равно можно будет открыть при помощи команды rundll32.exe inetcpl.cpl, OpenLanguageDialog. Хорошо хоть, что с помощью параметра Languages, который устанавливается политикой Отключить изменение параметров языка раздела "Административные шаблоны/Компоненты Windows/Internet Explorer", можно запретить изменение языков даже с помощью данной команды rundll32.exe. Вот только плохо другое — эту политику все равно можно обойти. Но уже при помощи команды rundll32.exe inetcpl.cpl, ShowLanguageDialog.

Если же вашей целью был запрет отображения диалога Удаление истории обзора, тогда вы также ошиблись с выбором — данный диалог все равно можно будет открыть при помощи команды rundll32.exe inetcpl.cpl, ShowDeleteBrowsingHistoryDialog. Не поможет вам в этом и параметр DisableDeleteBrowsingHistory, который изменяется политикой "Отключить возможность «Удаление записей в журнале обозревателя»" раздела "Административные шаблоны/Компоненты Windows/Internet Explorer".

Отключить вкладку «Содержание» Данная политика позволяет изменить значение параметра ContentTab. Если значение этого параметра равно 1, то из диалога Свойства: Интернет будет скрыта вкладка Содержание.

Несмотря на это, можно будет открыть диалог Сертификаты. Для этого достаточно будет воспользоваться командой rundll32.exe CRYPTUI.dll, CryptUIStartCertMgr. Или командой rundll32.exe wintrust.dll, OpenPersonalTrustDBDialog. Ну, в крайнем случае, командой rundll32.exe IEAKENG.dll, ModifyAuthCode. Кроме того, данный диалог можно будет открыть даже в том случае, если параметру REG_DWORD типа Certificates присвоено значение 1 (как и параметру CertifSite). Данный параметр изменяется политикой Отключить изменение параметров сертификатов раздела "Административные шаблоны/Компоненты Windows/Internet Explorer".

Также это не поможет вам запретить пользователям отображение диалога Ограничение доступа. Данный диалог все равно будет можно отобразить при помощи команды rundll32.exe IEAKENG.dll, ModifyRatings или команды rundll32.exe MSRATING.dll, RatingSetupUI. Ну или команды rundll32.exe MSRATING.dll, ClickedOnRAT. А с помощью команды rundll32.exe MSRATING.dll, RatingEnable можно будет включить ограничение доступа, если в данный момент оно отключено. Ну а с помощью команды rundll32.exe MSRATING.dll, ClickedOnPRF "путь к файлу правил PICS" можно будет установить новые правила PICS. Более того, также запретить отображение диалога Ограничение доступа вам не поможет и параметр Ratings, который изменяет политика Отключить изменение параметров оценок раздела "Административные шаблоны/Компоненты Windows/Internet Explorer".

А с помощью команды rundll32.exe inetcpl.cpl, ShowFeedOptionsDialog можно отобразить диалог Параметры веб-каналов.

Отключить вкладку «Безопасность» Данная политика позволяет изменить значение параметра SecurityTab. Если значение этого параметра равно 1, то из диалога Свойства: Интернет будет скрыта вкладка Безопасность.

Хорошая политика. Вот только команде rundll32.exe IEAKENG.dll, ModifyZones на нее абсолютно наплевать. Собственно, также данной команде абсолютно все равно, установлена ли политика Отключить вкладку «Конфиденциальность», ведь эта команда отображает сразу две вкладки: вкладку Безопасность и вкладку Конфиденциальность. И обе эти вкладки ни в грош не ставят групповые политики.

Отключить вкладку «Дополнительно» Данная политика позволяет изменить значение параметра AdvancedTab. Если значение этого параметра равно 1, то из диалога Свойства: Интернет будет скрыта вкладка Дополнительно.

И давайте сразу же опишем еще одну политику — Запретить сброс параметров Internet Explorer. Данная политика находится в дочернем разделе Вкладка «Дополнительно» и изменяет значение параметра REG_DWORD типа DisableRIED. Если значение данного параметра равно 1, тогда кнопка Сброс, расположенная на вкладке Дополнительно диалога Свойства: Интернет, будет неактивна.

Как и следовало ожидать, обе эти политики неспособны как следует запретить возможность сброса параметров настройки Internet Explorer. По прежнему сброс параметров браузера можно будет выполнить при помощи команды rundll32.exe inetcpl.cpl, ResetIEtoDefaults.

Политика “Запретить доступ к Панели управления” раздела Конфигурация пользователя/Административные шаблоны/Панель управления

С помощью данной политики можно изменить значение параметра REG_DWORD типа NoControlPanel, расположенного в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Если значение данного параметра равно 1, тогда пользователю будет запрещено отображать папку Панель управления, а вместе с ней и любые апплеты (файлы с расширением .cpl)…

…любые кроме описанных ниже.

  • Апплет joy.cpl. Данный апплет отображает диалог Игровые устройства. Его также можно будет отобразить — с помощью команды rundll32.exe joy.cpl, ShowJoyCPL.
  • Апплет telephon.cpl. Данный апплет отображает диалог Телефон и модем. Этот диалог и дальше будет отображаться при помощи команды rundll32.exe TAPI32.dll, internalConfig или команды rundll32.exe TAPI32.dll, LOpenDialAsst.
  • Диалог Настройка доступа программ и умолчаний. Данный диалог также будет запрещено отображать. Но только не для команды rundll32.exe appwiz.cpl, RunSPADW.
Другие политики

И напоследок давайте рассмотрим еще несколько политик, ограничения которых можно обойти при помощи команды rundll32.exe.

Политика Удалить команды «Подключить сетевой диск» и «Отключить сетевой диск» раздела Конфигурация пользователя/Административные шаблоны/Компоненты Windows/Проводник Windows. Данная политика изменяет значение параметра REG_DWORD типа NoNetConnectDisconnect, расположенного в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Если значение данного параметра равно 1, тогда команды Подключить сетевой диск и Отключить сетевой диск не будут отображаться в меню Сервис проводника.

Однако это отнюдь не говорит о том, что их нельзя использовать.

Например, вы все равно сможете подключить сетевой диск при помощи команды rundll32.exe shell32.dll, SHHelpShortcuts_RunDLL Connect.

Политика Удаление команд «Завершение работы», «Перезагрузка», «Сон», «Гибернация» и запрет доступа к ним раздела Конфигурация пользователя/Административные шаблоны/Меню «Пуск» и панель задач Данная политика изменяет значение параметра REG_DWORD типа NoClose, расположенного в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Если значение данного параметра равно 1, тогда указанные в названии политики команды не будут отображаться в меню Пуск и в диалоге завершения работы компьютера.

Как правильно указано в описании данной политики, она не запрещает завершение работы операционной системы программными методами, однако еще нужно получить доступ к подобным программам, а если администратор компьютера не захотел специально для вас устанавливать такие программы?

Ну что ж, тогда остается только сказать что-нибудь хорошее об администраторе и вспомнить про старую пословицу — «Браузеру Internet Explorer закон не писан». Вспомнили? Тогда вводим команду rundll32.exe IEAKENG.dll, DoReboot и на вопрос Выполнить перезагрузку сейчас? жмем Да.

Политика Запретить добавление принтеров раздела Конфигурация пользователя/Административные шаблоны/Панель управления/Принтеры

Данная политика изменяет значение параметра REG_DWORD типа NoAddPrinter, расположенного в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Если значение данного параметра равно 1, тогда добавление локального принтера (мастер Установка принтера) при помощи папки Принтеры будет запрещено.

Ну или почти запрещено — если закрыть глаза на команду rundll32 printui.dll,PrintUIEntry /il. Кстати, если у вас будет свободное время, введите команду rundll32 printui.dll,PrintUIEntry /?. На все это тоже закрывать глаза?

Политика Удалить команду «Свойства папки» из меню «Сервис» раздела Конфигурация пользователя/Административные шаблоны/Компоненты Windows/Проводник Windows Данная политика изменяет значение параметра REG_DWORD типа NoFolderOptions, расположенного в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Если значение данного параметра равно 1, тогда указанная в названии политики команда не будет отображаться ни в меню Сервис, ни в виде значка папки Панели управления. Однако этот не говорит о том, что диалог Свойства папки отобразить будет нельзя.

Конечно же, его можно отобразить, однако не так, как вы подумали — не с помощью команд rundll32.exe, а с помощью ActiveX-объектов. Например, даже если диалог Свойства папки будет запрещено отображать, вы можете создать ветвь реестра HKEY_CLASSES_ROOT\txtfile\ShellEx\PropertySheetHandlers\{6D5313C0-8C62-11D1-B2CD-006097DF8C11}, после чего диалог Свойства текстовых файлов станет содержать на три вкладки больше. И, как это не странно, как раз на вкладки Общие, Вид и Поиск диалога Свойства папки.

И это не единственный способ использования ActiveX-объектов для обхода групповых политик. И об этом мы тоже поговорим, но только в одной из следующих статей.

Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=23

В избранное