Лабораторные работы / Отчёт по лабораторной работе №4
.docxМинистерство цифрового развития связи и массовых коммуникаций
Ордена Трудового Красного Знамени
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
СВЯЗИ И ИНФОРМАТИКИ»
Кафедра «Информационная безопасность»
Отчёт по лабораторной работе №4
по дисциплине «Методы и средства защиты информации в компьютерных сетях»
Вариант №2
Выполнили: студенты группы БСТ2104
Ягудин Р.
Эренбург А.
Кривоносов Я.
Антонов С.
Проверили: ассистент Рыбаков С.Ю.
ассистент Раковский Д.И.
Москва, 2024 г.
СОДЕРЖАНИЕ
№ стр.
Цель работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Ход работы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Создание и настройка ОС Microsoft Windows 10 в ВМ . . . . . . . . . . . . 3
Установка Registry Explorer на ВМ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Исследование системной информации с использованием Registry Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Цель работы
Развитие практических навыков по работе с реестром Windows, включая создание значений для настройки штатных компонентов ОС, сбор и исследование информации о системе, пользователях и их активности на машине.
Ход работы
Создание и настройка ОС Microsoft Windows 10 в ВМ
Скачаем и установим на ВМ ОС Microsoft Windows 10, выделим 2 ГБ оперативной памяти и 50 ГБ дискового пространства, а также установим уникальные обои на рабочий стол.
Рисунок 1 – Настройки ВМ
Рисунок 2 – Рабочий стол ВМ
Установка Registry Explorer на ВМ
Переходим на сайт https://ericzimmerman.github.io/#!index.md и устанавливаем Registry Explorer для работы с реестром
Рисунок 3 – Переход на сайт https://ericzimmerman.github.io/#!index.md и установка Registry Explorer
Рисунок 4 – Установленный Registry Explorer
Исследование системной информации с использованием Registry Explorer
Исходя из варианта, выбранного в соответствии с таблицей 4.2, выполним необходимые действия в системе через реестр и с помощью необходимых веток и ключей узнаем информацию об исследуемой системе, используя установленный Registry Explorer. Исходные данные варианта представлены в табл.1.
Таблица 1 – Исходные данные для выполнения лабораторной работы
Вариант |
Действия |
2 |
CompName – BKScomp2; Time Zone – UTC +02:00; DefaultUserName - BKSstud2; DefaultPassword – qwerty2; Run - "FullPath\Google.exe* /backgroud"; Shimcache - systeminfo.exe, gpupdate.exe, ipconfig.exe + 2 на выбор; Schedule Task - запуск блокнота (notepad) в опр. время; OpenSavePidlMRU – BKSevil3.txt, BKSevil4.pdf; bam – systeminfo.exe, gpupdate.exe, ipconfig.exe; RecentDocs - 2test.txt, 2test.pdf, 2test.zip; RunMRU - winver, perfmon; WordWheelQuery - C:\Temp\evil2\evil\evil2.txt |
Переходим в ключ «ComputerName», который содержится в ветке «HKLM\SYSTEM\CurrentControlSet\Control\ComputerName». Здесь содержится информация об имени компьютера, который пользователь задает на старте установки операционной системы. В соответствии с вариантом необходимо изменить имя компьютера и зафиксировать изменения. Переименование имени компьютера производим через настройки Windows в разделе «Система». Результат представлен на рис.5.
Рисунок 5 – Переименование имени компьютера
На рис. 6 показано изменение имени компьютера в редакторе реестра
Рисунок 6 – Изменение имени компьютера в редакторе реестра
Переходим в ветку «CurrentVersion» по пути «HKLM\SOFTWARE\Microsoft\ Windows NT\CurrentVersion. Здесь содержится информация об операционной системе, где представлены такие параметры, как:
Версия
Билд
Тип установки
Системная директория.
А также следующие значения ключей:
SystemRoot – корень установки ОС
CurrentVersion – текущая версия ОС
BuildLab –билд, время 12 релиза ОС
CompositionEditionID – версия выпуска ОС
InstalationType – тип установки ОС
Используя данную ветку, получаем следующие характеристики системы:
Windows 10 Home, билд 19041, релиз 6 декабря 2019 года, версия 6.3, клиентская установка. Информация получена из рис.7.
Рисунок 7 – Информация об операционной системе
Переходим в ключ «TimeZoneKeyName», который содержится в ветке «HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\». Здесь содержится информация о временной зоне, в которой географически находится компьютер. Через параметры настройки даты и времени изменим временную зону согласно варианту и зафиксируем изменения через реестр.
На рис.8 показано время до изменения параметров
Рисунок 8 – Время до изменения параметров
На рис.9 отображено изменение часового пояса согласно варианту через параметры операционной системы
Рисунок 9 – Изменение часового пояса через параметры операционной системы
На рис.10 отображено изменённое время в редакторе реестра
Рисунок 10 – Изменённое время
Переходим в ветку «ProfileList» по пути «SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList». Здесь находится информация о текущих пользователях, для которых были созданы учетные записи.
Зафиксируем четыре профиля пользователей, которые имеют свой SID (Security ID) и путь к домашнему каталогу. Результат представлен на рис.11.
Рисунок 11 – Список профилей пользователей
С помощью редактирования подраздела «SOFTWARE\Microsoft\ Windows NT\CurrentVersion\Winlogon» создадим пользователя для автоматического входа в систему (без ввода пароля) согласно варианту. Для этого, надо создать три строковых параметра – DefaultUserName (имя пользователя), DefaultPassword (пароль), AutoAdminLogon (установить в 1), зафиксировать настройки и перезагрузить компьютер. После выполнения данных действий зайдём в систему под учетной записью созданного пользователя и зафиксируем его появление в ветке «ProfileList». Результаты представлены на рис.12-13.
Рисунок 12 – Установка параметров в папке Winlogon
Рисунок 13 – Появление созданного пользователя в списке профилей пользователей
Переходим в ветку «Run(RunOnce)» по пути «SOFTWARE\Microsoft\ Windows\CurrentVersion\Run(RunOnce)». Здесь хранятся значения, которые содержат пути к исполняемым файлам программ, которые должны быть запущены после загрузки операционной системы.
Создадим строковой параметр в ветке «Run» в HKLM и зададим значения имени программы и её расположения согласно варианту. Перезагрузим компьютер и зафиксируем факт запуска программы на момент входа в систему под своей учетной записью. Результат представлен на рис.14.
Рисунок 14 – Заполнение значений, которые содержат пути к исполняемым файлам программ, которые должны быть запущены после загрузки операционной системы
Вывод: злоумышленники используют данные ключи для запуска вредоносного ПО и закрепления в системе, в ключах могут быть указаны не только сами файлы или скрипты, но и параметры их запуска. Полученные из ключей данные помогают понять, удалось ли злоумышленнику закрепиться в системе, какие права доступа у него есть и что было запущено хотя бы один раз.
Переходим в ветку «Services» по пути «HKLM\SYSTEM\ CurrentControlSet\Services\». Здесь указывается имя службы, время ее последнего запуска (является временем последнего изменения значения ключа), режим запуска, группу и полный путь до запускаемого приложения/драйвера/другое со всеми параметрами запуска, требуемые привилегии для корректной работы службы, динамически подключаемые библиотеки и следующие режимы запуска:
Manual – ручной запуск
Boot – во время загрузки компьютера
System – этап инициализации ввода и вывода – только драйверы
Automatic – SCN – только службы
Опишем некоторые службы, найденные в реестре
На рис.15 представлена информация о службе BthEnum — драйвера шины Bluetooth. BthEnum взаимодействует с диспетчером Plug and Play (PnP) для создания и уничтожения объектов устройств, используемых для включения служб Bluetooth. BthEnum создает PDO для каждой службы, которую поддерживает подключенное удаленное устройство. Например, когда пользователь подключает мышь с поддержкой Bluetooth, Windows обнаружит, что мышь поддерживает службу HID Bluetooth, и создает PDO для службы HID, что приводит к загрузке HidBth диспетчером PnP.
Рисунок 15 – Информация о службе BthEnum
На рис.16 представлена информация о службе ebdrv — драйвер, используемый для обеспечения работы сетевых адаптеров Broadcom NetXtreme II с поддержкой 10-гигабитного Ethernet. Служба ebdrv действует как ядро уровня драйвера, взаимодействует с системой через сетевой стек Windows, используется для обработки пакетов данных, отправляемых и принимаемых через сетевые интерфейсы, подключенные адаптерами Broadcom.
Рисунок 16 – Информация о службе ebdrv
На рис.17 предоставлена информация о службе GPIOClx0101 — это служба в Windows 10, которая представляет собой драйвер расширения класса GPIO драйвера устройства. Этот драйвер служит для взаимодействия с универсальными шинами ввода-вывода (GPIO, ввод/вывод общего назначения), обеспечивая стандартный интерфейс для управления аппаратными выводами ввода-вывода; выступает в роли промежуточного звена между датчиками системы и драйверами аппаратных устройств, обеспечивая унифицированный доступ к функциональности GPIO-контроллеров.
Рисунок 17 – Информация о службе GPIOClx0101
На рис.18 представлена информация о службе ItSas35i, которая обеспечивает взаимодействие операционной системы с контроллерами SAS (Serial Attached SCSI), используемыми для подключения высокоскоростных устройств хранения данных, таких как жесткие диски и твердотельные накопители. Помимо этого, служба ItSas35i работает как низкоуровневый компонент, отвечающий за передачу команд и данных между ОС и устройствами, подключенными через интерфейс SAS, и поддерживающий функции управления устройствами, такие как инициализация, обработка запросов ввода-вывода, обнаружение ошибок и восстановление.
Рисунок 18 – Информация о службе ItSas35i
Переходим в ветку «Tcpip\Parameters\Interfaces» по пути «SYSTEM\ CurrentControlSet\services\Tcpip\Parameters\Interfaces». Здесь находятся интерфейсы и связанная с ними конфигурация IP-адресов, а также следующие значения ключей:
DhcpIPAddress – IP адрес dhcp сервера
DhcpSubnetMask – маска подсети, заданная для конкретного диапазона IP адресов
DhcpDomain – домен, который обслуживает dhcp сервер
DhcpDefaultGateway – IP адрес шлюза
DhcpGatewayHardwareCount – число шлюзов
IPAddress – IP адрес, присвоенный dhcp сервером
С помощью информации, представленной в реестре, опишем сетевой интерфейс.
Описание интерфейса: dhcp сервер имеет адрес 10.0.2.15, обслуживает домен fritz.box и диапазон адресов в соответствии с маской 255.255.255.0. Шлюзом по умолчанию, через который dhcp распространяет сетевые настройки для компьютеров, является маршрутизатор с IP 10.0.2.2. Значение IPAddress отсутствует, что означает, что интерфейсу на момент исследования реестра не был присвоен сетевой адрес. Информация предоставлена из рис.19.
Рисунок 19 – Информация об интерфейсе
Переходим в ветку «Network list» по пути «SOFTWARE\Microsoft\ Windows NT\CurrentVersion\NetworkList». Здесь представлена информация обо всех предыдущих интернет-соединениях.
Подключимся ко второй сети Wi-Fi и зафиксируем факт появления соответствующей записи об этом в реестре. Для этого, зайдём в настройки ВМ, поставим второй адаптер и установим новую сеть NAT. Результаты представлены на рис.20-21.
Рисунок 20 – Установка второго адаптера и сети NAT
Рисунок 21 – Фиксирование появления второй Wi-Fi сети
Переходим в ветку «AppCompatCache» – Shimcache по пути «SYSTEM\CurrentControlSet\Control\SessionManager\AppCompatCache». Здесь находится Shimcache – важный криминалистический артефакт, хранящий информацию о всех когда-либо исполненных файлах и скриптах с учетом необходимых настроек. Он содержит имена файлов, их пути, даты и время последних изменений. Анализ записей позволяет определить, были ли файлы запущены в системе. Shimcache хранит информацию не только о локальных дисках, но и о съемных носителях и путях UNC.
Согласно варианту запустим требуемые исполняемые файлы (один с системного диска, второй со съемного носителя) и зафиксируем появление информации об этом в реестре. Результат представлен на рис.22.
Рисунок 22 – Записи Shimcache в реестре Windows
Переходим в ветку «Tasks» по пути «HKLM\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\Schedule\TaskCache\Tasks». Здесь содержится путь к исполняемому файлу или динамической библиотеке, а также время создания, начала и окончания запланированного задания.
Используя планировщик заданий, создадим запланированную задачу согласно варианту и зафиксируем факт её исполнения и появления в реестре. Результат представлен на рис.23-25.
Рисунок 23 – Создание задачи NotePad в планировщике заданий
Рисунок 24 – Запущенный NotePad
Рисунок 25 – Появление в реестре задачи NotePad
Переходим в ветку «Terminal Server» по пути «SYSTEM\CurrentControlSet\Control\Terminal Server». Здесь представлены настройки для службы удаленного рабочего стола. В данной ветке стоит обратить внимание на значения следующих ключей:
fDenyTSConnections – если ключу задано значение единицы, то удаленное управление компьютером невозможно
fSingleSessionPerUser – значение в ключе определяет количество пользователей, которые одновременно могут удаленно управлять компьютером
AllowRemoteRPC – если значение ключа установлено в единицу, то возможен удаленный вызов процедур на компьютере.
На рис.26 представлены настройки удаленного рабочего стола, где возможность вызова удаленных процедур отключена, а функция удаленного рабочего стола включена, причем на компьютер может зайти только один пользователь.
Рисунок 26 – Настройки удалённого рабочего стола
Для подключения нужно узнать IP-адрес компьютера. Сделаем это с помощью командной стоки. Результат представлен на рис.27.
Рисунок 27 – IP-адрес компьютера
Нажимаем Win+R и выполним команду mstsc для реализации попытки подключения. Результат представлен на рис.28.
Рисунок 28 – Попытка удаленного подключения к компьютеру
В результате видим, что подключение выполнить не удалось. Сообщение об ошибке представлено на рис.29.
Рисунок 29 – Ошибка подключения к компьютеру
Переходим в ключ «Installer», содержащийся в «SOFTWARE\Policies\ Microsoft\Windows\Installer». Здесь находится параметр запрета пользователям, не являющимися локальными администраторами, устанавливать обновления. Если значение параметра установлено в единицу, то обновления приложений, использующих установщик Windows, могут устанавливать только администраторы и пользователи с правами администратора.
С помощью редактора реестра установим значение ключа DisableUAPatching в единицу, что даёт невозможность обновления системных компонентов под непривилегированной учетной записью. Результат представлен на рис.30.
Рисунок 30 – Изменение параметра DisableUAPatching в ключе Installer
Переходим в ветку «LastVistedPidlMRU» по пути «SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVistedPidl MRU». В этой ветке будут отображаться записи о приложениях, использовавшихся для открытия и сохранения файлов. Здесь также сохраняется информация о последних открытых папках и файлах.
Открываем приложение и воспользуемся диалогом открытия/сохранения. Запускаем любое приложение, которое имеет функцию открытия или сохранения файлов (например Paint.exe), вернёмся в редактор реестра и обновим содержимое раздела LastVisitedPidlMRU. Результат представлен на рис.31.
Рисунок 31 – Запись в LastVistedPidlMRU
Переходим в ветку «OpenSavePidlMRU» по пути «SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU». Ветка отслеживает файлы, доступ к которым осуществляется через диалоговое окно открытия/сохранения.
Согласно варианту создадим несколько файлов определённых названий и разрешений и откроем их через окно открытия/сохранения соответствующих редакторов, а также зафиксируем появление записи об этом в реестре. Результаты представлены на рис.32-33.
Рисунок 32 – Создание файлов
Рисунок 33 – Записи в OpenSavePidlMRU
Переходим в ветку «bam\UserSettings\<userSID>» по пути «HKCU\System\ControlSet001\Services\bam\UserSettings\<userSID>». Ветка отслеживает все исполняемые файлы и время их крайнего исполнения пользователем в формате UTC
Согласно варианту запустим требуемое(-ые) приложение(-я) и зафиксируем факт появления информации об этом в реестре. Результат представлен на рис.34.
Рисунок 34 – Появление информации о запущенных приложениях в реестре
Переходим в ветку «RecentDocs», которая находится в «SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs». Ветка отслеживает недавнее взаимодействие пользователя с файлами различных разрешений.
Согласно варианту создадим файлы различных разрешений и зафиксируем взаимодействие с ними в этой ветке реестра. Результаты представлены на рис.35-36.
Рисунок 35 – Отображение файлов
Рисунок 36 – Отображение файлов
Переходим в ветку «RunMRU» по пути «SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU». Здесь – отслеживание команд, который пользователь запускает через окошко Run (Win+R).
Согласно варианту вызовем через диалоговое окно Run различные оснастки для управления компонентами операционной системы Windows и зафиксируем их появление в реестре. Результат представлен на рис.37.
Рисунок 37 – Список команд, введенных в окошко Run
Переходим в ветки «TypedPaths» и «TypedURLs» по пути «HKCU\SOFTWARE\Microsoft\Internet Explorer». Ветки содержат пути и URL, введённые вручную в адресную строку Internet Explorer.
Произведём поиск в Internet Explorer для различных URL адресов и зафиксируем факт появления информации об этом в реестре. Результат представлен на рис.38.
Рисунок 38 – Записи о недавно введенных URL-адресах.
Откроем редактор реестра и перейдём к разделу Domain Profile по пути «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile».
Отключим брандмауэр для профиля домен. Для этого, найдём параметр EnableFirewall и поменяем его значение с 1 на 0. Результат представлен на рис.39.
Рисунок 39 - Изменение статуса активности фаервола
Перейдём к разделу «FirewallRules» для редактирования правил брандмауэра по пути «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules», после чего создадим новое правило для открытия порта:
v2.30|Action=Allow|Active=TRUE|Dir=In|
Protocol=TCP|LPort=8080|Name=OpenPortRule|Desc=Allow|
где:
Action: Allow для разрешения трафика (или Block для блокировки)
Active: TRUE, чтобы правило было активным
Dir: In для входящего трафика (или Out для исходящего)
Protocol: TCP (можно указать UDP при необходимости)
LPort: номер порта, который требуется открыть (например, 8080)
Name: имя правила, которое мы задаём
Desc: описание правила для наглядности
Рисунок 39 - Создание правила в фаерволе и его нахождение в реестре
Вывод
В результате выполнения данной лабораторной работы были получены практические навыки по работе с реестром Windows, включая создание значений для настройки штатных компонентов ОС, сбор и исследование информации о системе, пользователях и их активности на машине.
