Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лабораторна робота № 12
Адміністрування безпеки операційної системи WINDOWS 2k.
Мета роботи: розглянути прийоми та способи адміністрування в ОС WINDOWS 2k з допомогою вбудованих та програмних засобів.
Кількість годин на виконання 2
Години на самостійну роботу 4
Вимоги до лабораторної бази та перелік необхідного програмного забезпечення
Для проведення лабораторних досліджень необхідна ПЕОМ класу IBM PC з наступної мінімальної конфігурації:
На комп'ютері має бути встановлена операційна система (ОС) WINDOWS NT/XP/2000/2003, але деякі програми можуть застосовуватися у середовищі ОС WINDOWS 95/98/Millenium. Також комп'ютери повинні бути з'єднані у локальну мережу.
Додаткове прикладне програмне забезпечення:
Искусство администрирования заключается в грамотном использовании всех настроек операционной системы, а также в своевременном проведении обновлений системного программного обеспечения с целью повысить уровень защиты программного обеспечения.
Как известно, свои функции администратор ОС Windows 2k может реализовать с помощью набора системных утилит группы "Администрирование" ("Administrative Tools"), доступ к которым можно получить через "Пуск\Настройки\Панель управления" ("Control Panel"). Рассмотрим содержимое этих утилит для ОС Windows XP Professional.
Основной утилитой администрирования является "Управление компьютером" ("Computer Management"), которая содержит три группы настроек:
Второй по значимости в системе безопасности ОС Windows 2k является утилита "Локальная политика безопасности" ("Local Security Policy"), предназначенная для администрирования характеристик паролей, срока их действия, правил их обновления и т. д. .
Остальные утилиты либо выполняют специфические настройки, либо являются дубликатами разделов в уже описанных утилитах. Например, утилита "Просмотр событий" ("Event Viewer") предоставляет доступ для просмотра системных журналов и дублирует настройку с аналогичным названием в утилите "Управление компьютером".
Любой администратор, прежде всего, должен просмотреть вышеперечисленные настройки на предмет их соответствия требуемому уровню безопасности компьютерной системы и, если необходимо, изменить их.
Конечно, настройки уровня безопасности строго индивидуальны для каждой компьютерной системы и, в конечном счете, зависят от многих факторов. Однако, существуют некоторые рекомендованные стандарты, которые также необходимо учитывать. Эти стандарты находят отражение в разработанных шаблонах безопасности.
Шаблоны безопасности для администратора Windows 2k
Существует множество рекомендаций по настройкам, позволяющих повысить уровень безопасности операционной системы. Одни касаются разрешений файловой системы, вторые настроек подсистемы аудита и управления учетными записями, третьи настроек реестра. К примеру, для повышения уровня защиты стека протоколов TCP/ IP Windows 2000 от DoS-атак транспортного уровня (Q315669) разработчики Microsoft рекомендуют изменить пять параметров реестра. Суммарные рекомендации насчитывают не одну сотню страниц, а применение их вручную может отнять довольно много времени даже у опытного администратора. В Windows 2k, входит набор инструментов, называемый Security Configuration Tool Set, позволяющий объединить множество настроек операционной системы, относящихся к безопасности, в единый файл шаблона безопасности (security template). При помощи сформированных шаблонов можно автоматизировать проверку и настройку безопасности локальных компьютеров. Можно также применять их как часть политики безопасности предприятия к компьютерам в сети при помощи групповых политик (Group Policy).
Шаблон безопасности представляет собой обыкновенный текстовый файл с расширением *.inf, находящийся в папке %WinRoot%\=security\templates и содержащий настройки следующих групп параметров операционной системы.
В стандартную поставку Windows 2k несколько шаблонов, используемых для настройки системы на различные уровни безопасности.
При установке операционной системы применяется набор настроек по умолчанию (Defltwk.inf, Defltsv.inf, Defltdc.inf, в зависимости от роли компьютера рабочая станция, сервер или контроллер домена). Данные шаблоны сохраняются в папке %SystemRoot%\inf, а тот из них, который применялся на этапе установки, сохраняется под именем
SystemRoot%\security\templates\setup security.inf.
В случае обновления операционной системы Windows 2k шаблоны безопасности не изменяются, и настройки системы сохраняются от предыдущей версии системы. Для таких систем желательно использовать шаблоны Basic. Данные шаблоны идентичны шаблонам по умолчанию, за исключением того, что в них отсутствуют ограничения на членство в группах и настройка пользовательских прав.
Если Windows 2k устанавливается на существующую систему Windows 9х, то применяются шаблоны безопасности по умолчанию. Однако если в системе была включена поддержка профилей пользователей и файловая система конвертируется в NTFS, все локальные пользователи становятся членами группы «Администраторы». В связи с этим после установки необходимо настроить членство в данной группе.
Дополнительно в стандартную поставку входят следующие шаблоны:
Для формирования или модификации шаблонов можно использовать обычный текстовый редактор. Более удобный способ предоставляет графическая утилита Security Templates, оформленная в виде специальной консоли управления Microsoft (Microsoft Management Console - MMC) и входящая в стандартную поставку системы. Для работы с оснасткой ее необходимо:
В эту же утилиту можно попасть и по-другому: в группе утилит "Администрирование" ("Administrative Tools") выбираем утилиту "Локальная политика безопасности" ("Local Security Policy").
В древовидном списке отображаются шаблоны безопасности (по умолчанию находящиеся в папке %SystemRoot%\security\templates) и группы параметров. В правой части окна непосредственно сами параметры и их значения.
В зависимости от группы, используются различные подходы к настройке параметров. В группах Account Policies, Local Policies, Event Log и System Services применяется стандартный набор параметров, которые могут в данном шаблоне не определяться (Not definded) или принимать то или иное значение.
Набор параметров, используемых для конфигурации системы в группе Local Polices\Security Options, может быть расширен.
Дополнительно в шаблон входит ряд параметров реестра, не настраиваемых при помощи утилиты "Шаблон безопасности" ("Security Templates"). К ним относятся настройки безопасности стека TCP/IP, Windows Sockets, запрет генерации имен файлов в формате 8.3, запрет автозапуска, запрет генерации хешей LM и настройка параметров NTLM Security Support Provider, требущих использования 128-битного ключа шифрования. Следует помнить, что данные настройки после удаления шаблона не будут отменены.
Таким образом, шаблоны безопасности представляют собой мощное средство контроля и настройки основных параметров безопасности операционной системы. Шаблоны безопасности могут применяться как на выделенной машине, так и на уровне домена и организационных подразделений Active Directory. К сожалению, шаблоны не предоставляют возможности работы с настройками дополнительных параметров безопасности (таких, к примеру, как Encrypted File System), однако набор конфигурируемых при их помощи параметров на сегодня вполне достаточен.
Сформированный шаблон может применяться для анализа текущего состояния операционной системы, а также для ее конфигурации в соответствии с настройками шаблона. Для этого можно использовать утилиту командной строки secedit.exe с различными опциями:
secedit /analyze /DB файл_базы [/ CFG файл_шаблона] [/log файл_журнала] [/verbose] [/quiet],
где
файл_базы - обязательный параметр, указывающий на имя файла базы данных, на основе которой осуществляется анализ системы безопасности. Если файла базы в системе нет, необходимо указать имя файла шаблона;
файл_шаблона указывает на файл шаблона безопасности, который будет импортироваться в базу данных и использоваться для анализа конфигурации;
файл_журнала задает имя файла, в котором будет сохранен отчет об анализе. По умолчанию %SystemRoot%\ Security\ Logs\Scesrv.log;
verbose - вывод подробного отчета о процессе анализа;
quiet отменяет вывод на экран и запись в файл журнала. Результаты анализа сохраняются в базе данных.
secedit / configure [/DB файл базы] [/CFG файл шаблона] [/overwrite] [/areas area1 area2...]
[/log файл журнала] [/verbose] [/quiet]
overwrite перезаписывает все настройки в базе данных настройками из шаблона безопасности;
areas указывает группы настроек, которые будут применятся к системе в конкретном сеансе. Данный параметр может принимать следующие значения: SECURITYPOLICY, GROUP_MGMT, USER_RIGHTS, REGKEYS, FILESTORE, SERVICES.
Также для анализа и конфигурации системы на основе шаблона безопасности можно использовать графический интерфейс оснастки консоли управления Security Configuration and Analysis, входящей в стандартную поставку системы. Для работы с оснасткой ее необходимо:
запустить консоль управления (mmc.exe);
выбрать пункт меню Console > Add/Remove Snap-in;
нажать кнопку Add;
выбрать Security Configuration and Analysis.
Функциональность ее схожа с функциональностью утилиты secedit, за исключением графического пользовательского интерфейса. Кроме того, данная утилита предоставляет возможность просмотреть результаты анализа состояния системы, выполненного при помощи утилиты secedit в режиме quiet без вывода сообщений.
Как известно, в ОС Windows 2k ведутся три основные системные журнала:
В настройках подсистемы аудита размер журналов равен 10 Мбайт, а хранятся они в файлах с расширением *. evt. События в журналах не перезаписываются, что требует от администратора постоянного внимания к текущему состоянию журналов, их резервному копированию и очистке. Для автоматизации этого процесса можно воспользоваться программами на языках сценариев из Microsoft Script Center. Включен аудит доступа к объектам, что может привести к генерации большого количества записей в журнале безопасности.
При работе в локальной сети администратор имеет возможность удаленного администрирования любого компьютера, при условии, что на нем создана его учетная запись с правами администратора.
Дело в том, что для организации сетевого обмена информацией Microsoft предлагает «Службу доступа к файлам и принтерам» на основе протокола SMB (Server Message Block) - Блок сообщений сервера.
Взаимодействие «клиент-сервер» в SMB построено по принципу «запрос-ответ», при этом клиент инициирует запрос, а сервер возвращает клиенту результат операции (правда, иногда и сервер может инициализировать запросы).
Протокол SMB функционирует в сетях NetBEUI, TCP/IP, IPX/SPX и других. До Windows 2000 сервис SMB в качестве сеансового протокола мог использовать исключительно NetBIOS. Хотя NetBIOS устарел и имеет много недостатков, однако, даже в Windows 2000 ради совместимости со старыми версиями поддержка NetBIOS полностью сохранена. Поэтому, прежде чем установить соединение SMB, компьютеры сначала открывают друг с другом сеанс NetBIOS, организуя своеобразный виртуальный канал связи.
NetBIOS - сетевой сервис, обеспечивающий удаленный доступ к файловой системе другого компьютера. По сути, этот сервис стал наиболее популярен в свете использования общих ресурсов локальной сети - быстрый и простой, обеспечивающий подключение сетевого диска, как своего собственного - вот его плюсы, поэтому сегодня практически каждая локальная сеть построена на его использовании.
Если обратиться к истории, то NetBIOS как прикладной программный интерфейс (API) был разработан компанией IBM в 1984 г. NetBIOS API представляет собой расширение системного BIOS для взаимодействия с сетевыми ресурсами, однако в нем не предусматривается протокол низкого уровня для передачи данных по сети. В 1985 г. IBM представила такой протокол; объединение этого протокола и NetBIOS API получило название NetBEUI (NetBIOS Extended User Interface). NetBEUI рассчитан на небольшие немаршрутизируемые локальные сети (количество узлов не более 255).
Мы остановимся только на сетях TCP/IP, поскольку даже Microsoft считает их приоритетными в современной сетевой архитектуре. Реализация NetBIOS в сетях TCP/IP, известна как NBT (NetBIOS over TCP/IP) и зависимости от обстоятельств может использовать как дейтаграммы UDP, так и соединения TCP.
В сетях NetBIOS каждому узлу присваивается имя (количество символов в имени ограничено 15), причем имена узлов образуют плоское пространство имен. Шестнадцатый байт имени характеризует тип сервиса, предоставляемый хостом. Рабочие группы/домены тоже имеют соответствующие имена NetBIOS, где также указываются типы сервисов.
Если рассматривать NetBIOS как сервис, то ему, как известно, выделяются порты в качестве идентификаторов. Стандартными портами сервиса NetBIOS являются порты с номерами 135, 139 или 153 (реже другие). В принципе, несложно путем сканирования сети определить наличие открытых портов на удаленном компьютере, что означает рабочее состояние и готовность к соединению со стороны соответствующих сетевых сервисов.
Особенностью сервиса NetBIOS заключается в том, что с его помощью можно подключиться к ресурсам удаленного компьютера, причем зачастую без необходимости прохождения процедуры аутентификации путем ввода логина и пароля на доступ. Дело в том, что с помощью данного сервиса для первых версий Windows NT мог быть реализован "нулевой сеанс" подключения ("null session"). Это приводило к бесконтрольному пользованию ресурсами компьютера.
Начиная с пакета SP3, для ОС Windows 2k предлагается механизм, препятствующий утечке важной информации с помощью "нулевых" соединений без отключения протокола SMB.(если в ней есть необходимость). Этот механизм назван "RestrectAnonymous" и вводится следующими действиями:
Ключ: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA
Параметр: RestrictAnjnymous
Тип: REG_DWORD
Значение: (1 или 2 - для Windows 2000 - включен, 0 - выключен)
Тем не менее, даже в этом случае через сеть можно получить немало сведений об удаленном компьютере.
Использование утилиты NET
Эта утилита является штатной утилитой ОС Windows 2k и размещается в папке %WinRoot%\System32 в виде файла net.exe. В принципе, это многофунциональная сетевая утилита, рассмотрение всех возможностей которой выходит за рамки данной лабораторной работы. Остановимся лишь на тех ее вариантах использования, которые позволяют на расстоянии получить информацию о компьютерной системе:
NET/? - получение информации о режимах работы утилиты;
NET VIEW / domain - показывает список всех доступных доменов в сети
NET VIEW / domain: [имя домена] - список всех компьютеров в домене.
NET VIEW \\ [ IP-адрес ] или NET VIEW \\ [ сетевое имя компьютера ] - выводит список общих и скрытых ресурсов заданного удаленного компьютера.
Таким, образом, с помощью утилиты NET.EXE мы можем выполнить первичный мониторинг любого домена локальной сети.
Определения логина пользователя на удаленном компьютере
Еще большие возможности предоставляет утилита nbtstat.exe, размещающаяся в той же папке %WinRoot%\System32. Для ее запуска формируется командная строка следующего вида:
nbtstat [-a компьютер] [-A IP-адрес] [-c] [-n] [-R] [-r] [-S] [-s] [интервал]
где опции имеют следующие значения:
-a вывести таблицу имён удаленного компьютера по имени.
-A вывести таблицу имён удаленного компьютера по IP-адресу.
-c вывести удаленный кэш имён, включая адреса IP.
-n вывести локальные имена NetBIOS.
-r вывести имена, найденные передачей и через WINS.
-R произвести чистку и перезагрузить удаленный кэш таблицы имён.
-S вывести таблицу сеансов с целевым адресом IP.
-s вывести преобразования таблицы сеансов.
Например, после команды
NBTSTAT -A 192.168.202.33
будет получена таблица NetBIOS-имен для заданного компьютера в виде:
Name Type Status
--------------------------------------------------------------------------
DATARAT <00> UNIQUE Registered
R9LABS <00> GROUP Registered
DATARAT <20> UNIQUE Registered
DATARAT <03> UNIQUE Registered
GHOST <03> UNIQUE Registered
DATARAT <01> UNIQUE Registered
MAC Address = 00-00-00-00-00-00
В первой колонке таблицы находятся имена доменов или компьютеров. Цифры во второй колонке - номер службы NetBIOS, а буквы в третьей - ее тип: UNIQUE (U - имя может иметь только один IP-адрес) или GROUP (G- группа, имя может существовать со многими IP-адресами) В четвертой колонке - название служб NetBIOS.
Таким образом, анализ полученных данных позволяет выяснить, что компьютер (00 UNIQUE) DATARAT находится в домене (00 GROUP) R9LABS. Служба рассылки сообщений (Messenger Service - 03) позволяет выяснить имя пользователя, который в данный момент работает на компьютере DATARAT - “GHOST” и сетевую службу, которая в данный момент функционирует: File Server Service (файловая служба сервера - 20). Кроме того выводится MAC-адрес сетевого адаптера.
Для использования утилиты nbtstat не требуется открытия “нулевого сеанса”, но она имеет два существенных недостатка: невозможность сканирования более чем по одному узлу одновременно и несколько сложную форму выдачи результатов.
Применение программы PWLTOOLS
Многие программы используют встроенные возможности, реализованные с помощью утилиты NETSTAT.EXE. Например, уже известная нам по лабораторной работе № 3 программа PwlTools имеет и сетевые возможности, доступ к которым мы получаем через пункт "Net tools" меню "Tools".
В открывшемся окне нажатием кнопки "SCAN" получаем вначале перечень компьютеров, подключенных к локальной сети, а затем для выбранного компьютера нажатием одноименной кнопки запускаем утилиту "NBTSTAT". После чего в нижнем окне получаем требуемую информацию.
Получение полного перечня всех пользователей удаленного компьютера
Итак, мы знаем, под каким логином зарегистрирован в данный момент пользователь на удаленном компьютере. Теперь с помощью утилит User2sid и Sid2user (автор - Евгений Рудный), мы можем получить полный список пользователей.
Первая из этих утилит User2sid позволяет по известному логину пользователя получить идентификатор защиты SID (Security ID) данного компьютера в локальной сети, указав его IP-адрес или сетевое имя:
User2sid\\[IP-адрес компьютера] ["Логин пользователя"] или
User2sid\\[ сетевое имя компьютера] ["Логин пользователя"]
Например, команда
User2sid \\192.168.202.33 “User_name”
позволит получить следующий SID:
S-1-5-21-8915387-1645822062-1819828000-513
Вторая утилита Sid2user, решает обратную задачу: по известному SID компьютера и RID пользователя получить его логин:
Sid2user \\[IP-адрес компьютера] [SID компьютера] или
User2sid\\[ сетевое имя компьютера] [SID компьютера]
Поскольку известно, что RID администратора равно 500, то можно получить его имя, добавив код 500 вместо 513 в конец кода SID (без первых двух символов):
Sid2user \\ 192.168.202.33 5 21 8915387 1645822062 1819828000 500
В результате станет известно, под каким логином на удаленном компьютере зарегистрирован администратор, даже если учетная запись “Administrator” была переименована. Подобным же образом может быть определено имя, под которым существует какой-либо другой пользователь удаленного компьютера.
Как известно, все создаваемые администратором учетные записи пользователей имеют код RID начиная с 1000, причем при удалении учетной записи, его номер уже никогда снова не используется. Знание этой особенности позволяет постепенно выяснить имена всех зарегистрированных пользователей на удаленном компьютере. Следует отметить, что для использования утилит User2sid и Sid2user абсолютно не играет роли, включен или выключен режим RestrictAnonymous, лишь бы был открыт порт 139 или 445.
В целях более быстрого сканирования подмножества RID с помощью утилиты Sid2user можно воспользоваться операторами оболочки (консоли) Windows 2k:
For /L %I IN (1000,1,1050) DO Sid2user \\ 192.168.202.33 5 21 8915387 1645822062 1819828000 %I >> users.txt
Как видим, в этой консольной команде не только осуществляется автоматический перебор всех RID пользователей в диапазоне от 1000 до 1050 с шагом 1, но и результат перенаправляется для записи в файл users.txt, просматривая который мы и увидим результат.
Генерация состояния DoS
При невозможности или недостатке времени для подбора паролей взломщик может воспользоваться недостатками операционной системы Windows для того, чтобы парализовать работу как отдельных компьютеров, так и целых сетей.
Такие атаки, приводящие к генерации состояния DoS (denial of service) были чрезвычайно популярны в 1997-1998 годах. Достаточно упомянуть такие известные WEB-узлы как Yahoo, eBuy, Buy.com, CNN.com ZDNet, которые в результате DoS-атаки оказались неработоспособными. Большинство подобных атак базировались на использовании изъяна в основном протоколе Internet (TCP/IP), в частности на способе обработки системных запросов SYN.
Как известно, заветная цель любого взломщика - получить в атакуемой ОС права администратора. При DoS-атаках они ее реализуют путем инициализации перезагрузки компьютера. Для этого используются следующие приемы:
Для защиты от DoS-атак рекомендуется выполнять своевременное обновление ОС за счет сервис-пакетов, а также проводить различного рода тестирования на предмет устойчивости ОС к DoS-атакам с помощью специальных программ.
Например, для Windows 9x существует универсальное средство защиты в виде модуля обновления Dial-Up-Networking Update. Заслуживающими внимания для всех ОС Windows являются пакеты DDOSPing компании Foundstone (www.foundstone.com), Zombie Zapper от группы Razor (razor.bindview.com) и find_ddos, разработанный центром NIPC (National Infrastructure Protection Center - www.nipc.gov).
Контрольные вопросы:
Задание на дом:
Примечание. Для запуска утилиты FileMon.exe необходимо на данном компьютере иметь права администратора, а, кроме того, путем запуска \SYS\INSTALL.BAT должен быть скопирован соответствующий драйвер.