| ||
Откройте, полиция!Как защитить Windows от "внутренних врагов" или занятия политикой. Полная версия статьи, опубликованной в декабрьском номере журнала Домашний компьютер. Михаил Петров Безопасность Windows… Сколько копий было сломано вокруг нее! Несмотря на все ухищрения, система по-прежнему похожа на распахнутую дверь, в которую может войти любой. Однако защита, применительно к Windows, может быть направлена не только против внешнего врага — Хакера, но и против врага внутреннего… Имя ему — Невежественный Юзер. Как же обезопасить Windows от происков этого опасного субъекта? Если вы — системный администратор [1], то я уверен, что ваш день проходит в перебежках от одного компьютера к другому. И по какому-либо серьезному делу зовут вас очень, очень нечасто… В основном же с ума сводят мелочи типа «Ой, а я программу удалила!!!» (ooops, I did it again в секретарской аранжировке) или «Где мой ворд?» (где? — собрал вещи и уехал к папе в Сиэтл!). Это выводит из себя, не правда ли? Обычно утомленный подобными стенаниями сисадмин бросается ставить различные «защитные» программы, не пускающие работающего пользователя за пределы необходимых ему функций Windows (например, Word+Excel+вывод на печать — и все). Таких утилиток в Сети — видимо-невидимо. Установить и настроить их несложно, если у вас три компьютера. А если триста тридцать три? Политики и гражданеМожет быть, этот факт вас удивит, но фирма Microsoft позаботилась о подобном типе безопасности еще при создании Windows 95 и ввела так называемые «Системные правила», или «Системные политики» (System Policies). Суть их в том, что при наличии определенных параметров, прописанных в реестре, включаются ограничения на те или иные действия пользователя, при этом ограничения могут распределяться централизованно — с сервера. Во всех последующих версиях Windows — как линейки 9x, так и NT/2000 — технология совершенствовалась, хотя суть оставалась неизменной. Поэтому здесь будет рассмотрена связка Windows 98 (как клиента) и Windows NT 4 (как сервера), с описанием мелких отличий Windows NT Workstation и Windows 2000 Server/Professional. Сразу стоит сказать, что для корректной работы политик сеть Windows NT должна поддерживать доменную организацию. Работают политики следующим образом. Windows при загрузке ищет в реестре записи, относящиеся к настройкам безопасности, и выставляет ограничения для пользователя в соответствии с теми параметрами, которые обнаружила. Эти ограничения остаются в силе до перезагрузки, потом процесс повторяется. Если во время сеанса поменять соответствующие политикам ключи реестра, после перезагрузки система будет работать уже с новыми параметрами. Каким же образом записи о настройках политик попадают в реестр? Создаются и изменяются они с помощью программы, называемой «Редактор системных правил» (далее — poledit, как он, в общем-то, и зовется). Программа эта представляет собой, в сущности, редактор реестра, но интерфейс, по сравнению с regedit, имеет несравненно более дружелюбный. Если последний позволяет редактировать любое значение в любом месте, то poledit сводит в одно окно параметры из самых различных ветвей, группируя их по воздействию на пользователя. Например, настройки сети собраны в одном разделе, настройки рабочего стола в другом, настройки программ — в третьем. Все это подписано по-русски и позволяет вносить изменения с помощью привычных для нас элементов — чекбоксов, радиокнопок, раскрывающихся списков, а не изменением не всегда внятных (точнее, практически всегда невнятных) значений ключей с помощью regedit. Мы настраиваем безопасность, поэтому ветви будут сгруппированы по принципу причастности к ограничениям возможностей пользователя. Но с помощью poledit вы можете также свести в одно окно сколь угодно большое число настроек из реестра. Делается это с помощью так называемых «шаблонов». Шаблон — это текстовый файл, в котором на особом языке (очень, кстати сказать, похожем на язык описания ресурсов Visual Studio) размечены все ветви, нуждающиеся в изменении, и способы их редактирования. Язык относительно несложен, его описание приведено в Resource Kit Help, поэтому при желании вы можете сами создавать шаблоны для настройки необходимых мест в реестре. В качестве «примера для подражания» в состав poledit входит десяток шаблонов, с помощью которых можно «подкрутить» Internet Explorer, Outlook Express, Netmeeting и настроить другие функции системы, не связанные с безопасностью. Но это все относится к реестру машины, на которой запущен poledit, и действовать настройки и ограничения будут локально, а как заставить все триста тридцать три вышеупомянутых компьютера принять эти изменения? Для этого poledit может создавать «экспортный» вариант политик в виде самостоятельного файла с расширением .pol. Файл этот будет уже откомпилирован в формат реестра, но сразу стоит сказать, что из-за различий в архитектуре файл, созданный в Windows 9x, не будет работать в NT, и наоборот. Как же этот .pol-файл попадает на другие машины? Windows во время процедуры входа в сеть ищет на сервере каталог NETLOGON. Если таковой существует (а он должен существовать) [2], и доступ на чтение открыт, то в нем ищется файл config.pol (если клиентом является Windows 9x) или NTconfig.pol (если клиент — Windows NT 4). Если файл нашелся, то Windows импортирует содержащиеся в нем настройки в свой реестр и продолжает загрузку, уже руководствуясь новыми политиками. Если нет — остаются в действии политики старые. Т.е., если после того, как машины импортировали его себе в реестр, файл config.pol из NETLOGON'а убрать, то политики на машинах-клиентах по прежнему будут действовать. Для того, чтобы отменить заданные установки, вам необходимо создать «очищенный» файл config.pol и дождаться, пока все машины его снова импортируют. Несколько отступает от этой схемы дуэт Windows 2000 Server/Professional. В соответствии с идеологией Microsoft, все настройки для рабочих станций и пользователей будут храниться в определенном уголке Active Directory, так что нет необходимости даже беспокоиться о файлах и расширениях — Windows все сделает за вас. Где же обитает такая замечательная программа, как «Редактор системных правил»? На дистрибутивных дисках Windows 9x poledit входит в состав Resource Kit. Например, на CD Windows 98 ее можно найти по такому пути: БУКВА-КОМПАКТ-ДИСКА:\tools\reskit\netadmin\poledit. В принципе, программой можно пользоваться, и не инсталлируя, но «политкорректно» будет установить редактор через «Установку и удаление программ» (Установка Windows —> Установить с диска…). Вам будет предложено два пункта: «Политики групп» и «Редактор системных правил». Отмечайте оба. После этого у вас в «Служебных программах» меню «Пуск» появится пункт «Редактор системных правил». Если нет возможности обратиться к оригинальному диску Windows 98, то, как вариант, вы можете скачать английскую версию poledit с ftp-сервера Microsoft. В Windows NT 4 (и Server, и Workstation) устанавливать poledit не нужно — он уже присутствует в группе «Администрирование (общее)» (Administrative Tools (Common)). В Windows 2000 технология ушла далеко вперед. Как практически все другие настройки, управление политиками производится с помощью Консоли Управления (Microsoft Management Console). Оснастка, отвечающая за политики, зовется gpedit.mmc или — если добавлять ее в mmc — «Групповая политика». Кроме того, в меню «Администрирование» сервера имеются целых три пункта, относящихся к политикам: «Локальная политика безопасности», «Политика безопасности домена» и «Политика безопасности контроллера домена». Выбирайте, что нужнее. Политический выборИ вот тут начинается самое интересное — процесс настройки. Сразу должен предупредить: процесс настройки политик являет собой дело небезопасное. На этапе тренировки вы можете — случайно или намеренно — довести систему до полного ступора: вас ограничат с ног до головы, а вы даже не сможете снова запустить редактор политик. Поэтому перед сеансом настройки не поленитесь выйти в DOS (не запустить сеанс DOS, а именно выйти в DOS) и скопировать в безопасное место файлы user.dat и system.dat. Если у вас многопользовательская конфигурация, то user.dat необходимо взять из соответствующего вашему логину подкаталога папки Profiles. Предохранились? Тогда вперед! С помощью poledit можно либо открыть реестр, дабы изменить настройки безопасности текущего компьютера, либо же открыть файл политик, предназначенных для распространения по сети — config.pol. В порядке эксперимента стоит ограничиться собственным компьютером и текущим сеансом. Открыв реестр («Файл» —> «Открыть реестр»), вы сможете узнать, как выглядите вы и ваш компьютер с точки зрения Windows (рис. 1).
Объект «Стандартный пользователь» будет содержать в себе настройки безопасности вашего сеанса, которые будут храниться в реестре под ветвью HKEY_CURRENT_USER и записываться в файл user.dat. «Стандартный компьютер», соответственно, будет содержать в себе настройки системы, хранить их в ветви HKEY_LOCAL_MACHINE и записывать в system.dat. Прежде всего, думаю, стоит поиграть с правами пользователя. Выбрав «Стандартного пользователя», мы узрим окно (рис. 2), к которому стремились с самого начала.
Вы видите дерево в классическом «проводниковом» стиле, каждый из пунктов которого означает какую-либо настройку. В нижней части окна вы сможете задавать параметры для настройки из верхней части (если таковые имеются). Несколько необычно выглядит чекбокс перед пунктом «Сделать недоступными средства редактирования реестра». Он не отмечен, но и не пуст, затененный тонкой сеточкой. Это «третье состояние» чекбокса существует только во время редактирования .pol-файла и означает, что параметр, хранящийся в реестре рабочей станции, не должен изменяться при импортировании политики в реестр. Был включен — включенным и останется, был отключен — соответственно, отключен будет и дальше. Пройдясь по пунктам настроек, вы поймете, что не зря потратили время, ибо теперь в ваших руках — полная власть над системой. К примеру, вы можете скрыть диски в «Моем компьютере» — пытается пользователь зайти на диск C:, дабы стереть лишние неаккуратно лежащие в корне файлы типа io.sys, заходит в «Мой компьютер»… ан диска-то этого и нет, как, впрочем, и всех остальных… Можно также запретить сохранять какие либо изменения в конфигурации при выходе — старался человек, старался, делал в системе синие буквы на зеленом фоне, а компьютер все это безобразие просто возьмет и не запомнит — или отключить возможность настройки экрана, чтобы сделать предыдущую ситуацию невозможной в принципе. И это только цветочки. Ягодки преподносит настройка «Только разрешенные приложения Windows» В список — сначала совершенно пустой — разрешенных к запуску приложений, появляющийся при щелчке по кнопке «Показать», вы вносите лишь те программы, которые на вашем компьютере имеют право запускаться (рис. 3).
После перезагрузки на попытку запустить программу, не внесенную в список, система отреагирует сообщением (рис. 4), потрясающим неискушенного пользователя до глубины души, особенно в том случае, если никакой другой сети, кроме электрической, у пользователя нет. Но Windows до таких мелочей не снисходит, в любом случае отправляя незадачливого юзера на поиски Святого Граа… то есть Системного Администратора.
Главное при создании списка разрешенных к запуску программ — не забыть включить в него для страховки poledit.exe и regedit.exe, иначе ситуация ваша станет практически безнадежной — при попытке запустить poledit для изменения сего магического списка «допущенных к телу компьютера» Windows заботливо отошлет вас к администратору. Однако способ выйти из положения все же есть: с помощью Проводника вам необходимо найти poledit.exe и переименовать его… в одну из разрешенных к запуску программ (например, word.exe), после чего и запустить — простодушное детище Большого Билла привыкло верить на слово. Ну а если вы от большого ума не внесли в список ни одной программы — тогда пожалуйте в DOS, ручками возвращать на старое место user.dat и system.dat. Помимо этого, необходимо позаботиться и о том, чтобы в число разрешенных программ попали резидентные — например, не включив в список internat.exe, вы останетесь без индикатора раскладки клавиатуры. Вообще же, на этапе загрузки ОС вы получите столько вышеупомянутых сообщений, сколько резидентов пропустили при составлении своего списка. При этом подсказки, какую же конкретно программу не удалось запустить, от системы вы не дождетесь, посему стоит хорошенько проверить ветви реестра HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Run и HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Run, а также папку «Автозагрузка» и выяснить, что за приложения и с какими именами там запускаются. Разобравшись со «стандартным пользователем», вы можете перейти и к «стандартному компьютеру», который устроен совершенно идентично [3]. Следует лишь помнить, что при изменении системных настроек следует быть еще более внимательным. Например, если вы включите опцию «Требовать проверки пароля сетью», то получите чрезвычайно полезное ограничение: при попытке обойти с помощью кнопочки «Esc» окно ввода пароля при загрузке Windows 9х вход в систему, в отличие от обычного запуска, не состоится — компьютер упорно будет требовать от вас логина и пароля. С одной стороны, это неплохо — опять же, уровень безопасности растет — но если у вас вдруг отключен сервер (или его никогда не было по причине того, что компьютер банально не подключен к сети) — в Windows вы уже не войдете… Политику — в массы!Если вы уже достаточно потренировались «на кошечках» и горите желанием нести идею политик в массы сослуживцев, создайте с помощью все того же poledit новый файл («Файл» —> «Создать»). Отредактировав в этом файле ограничения для «пользователя» и «компьютера», сохраните файл под именем config.pol в сетевом ресурсе NETLOGON. Запустив любой компьютер в сети и попытавшись сделать что-либо недозволенное, вы убедитесь в том, что системные политики, в отличие от их государственных коллег, работают. Но вот загвоздка: созданные вами незамысловатые системные политики политеса не знают и будут действовать одинаково на всех пользователей сети — в результате ваш любимый босс точно так же не сможет запустить на своем компьютере «Косынку» или «Сапера», как и его подчиненные. Вам это надо? То-то и оно. Однако в poledit заложена возможность дипломатического решения данной проблемы путем создания разнообразных политик — для различных пользователей, их групп и отдельных компьютеров.
Посмотрите на рис. 5: в poledit для гибкости настройки были созданы пользователь "megamix", компьютер под названием "worker" и две группы — "users" и "lamers". Соответственно, компьютер worker при импорте применит политики не «Стандартного компьютера», а заданные в одноименном объекте и лишь ему предназначенные. Так же поступит и пользователь по имени megamix и все пользователи, входящие в группы users и lamers — все они получат причитающиеся им правила. единственно, на что следует обратить внимание — названия этих субъектов, разумеется, должны совпадать с соответствующим названиями в Windows NT. Ну, вот и все. Политики работают, облегчая вашу жизнь и предохраняя компьютеры от Самого Страшного Врага… Но если вдруг завтра с утра вас побьют коллеги — я не виноват. [1] — Кстати, к домашним компьютерам это тоже относится — ведь если у вас в семье больше одного компьютера или больше двух владеющих им людей, вам просто придется стать системным администратором. [2] — NETLOGON — это общий ресурс, который создается без вашего участия при инсталляции сервера. Если это NT 4, то физически это каталог СИСТЕМНЫЙ-ДИСК: \winnt \system32 \repl \import. Если это 2000-й — то путь будет несколько другой: СИСТЕМНЫЙ-ДИСК: \winnt \sysvol \sysvol \ИМЯ.ВАШЕГО.ДОМЕНА \scripts. [3] — Наглядное доказательство того, что компьютер произошел от человека. Источник - SoftТерра, http://www.softerra.ru
| ||
Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com |