Введение. Как устроен реестр



Внедрение вредоносных программ в автозагрузку

(через реестр и Планировщик Windows)

Введение. Как устроен реестр

3.6.1.1 Что такое реестр? История реестра

Реестр (registry) представляет собой иерархически организованную базу данных, которую ОС использует для запуска приложений, нахождения драйверов устройств plug-and-play и унаследованных устройств, установки профилей пользователей, системных правил и т.д.

Впервые реестр был использован в Windows 95, с тех пор он стал быстрее и лучше защищен от всевозможных ошибок.

Реестр был создан потому, что с файлами INI, которые появились в Windows 3.x пользователям приходилось думать, какой файл INI за что отвечает и как изменить в нужном файле ту или иную настройку. Часто было трудно выяснить месторасположение таких файлов для нужной программы. Кроме того, отсутствовал способ определения того, какая программа связана с конкретным INI файлом. С другой стороны, редактировать такие файлы было намного легче, чем реестр.

Реестр можно рассматривать как записную книжку, которую ведет для собственных нужд Windows - как только системе нужна какая-то информация, то она ищет ее в реестре. Реестр - компонент операционной системы компьютера, который в иерархической базе данных хранит важнейшие установки и информацию об установленных приложениях, аппаратуре, системных сервисах и пользовательских настройках.

 

3.6.1.2 Где расположены файлы реестра?

Реестр хранится в файлах: в файлах SAM, Security, Software, System без расширений и файлах с теми же именами, но расширением *.sav и *.log. Эти файлы находятся в папке Windows\system32\config (там же в Windows XP хранятся и файлы журналов – файлы с расширением *.evt).

*.sav – копии (не меняются) файлов реестра (только Windows XP) на момент окончания установки ОС (для Windows 7 это файлы *.log).

*.log - журнал транзакций (только Windows XP), где регистрируются изменения в реестре (для Windows 7 это *.log1, *.log2, …).

Файл Ntuser.dat и соответствующий *.log хранится в папке с профилем пользователя (в Windows\system32\config хранится userdiff.log).

 

3.6.1.3 Основные функции

Основные функции реестра:

- отслеживает все имеющиеся системные устройства и их параметры, включая информацию о таких ресурсах, как запросы на прерывания (IRQ) и номера каналов прямого доступа памяти (DMA).

- работает как база данных, которая в единообразном (унифицированном) виде хранит параметры функционирование приложений.

- хранит информацию обо всех необходимых драйверах для инсталлированного оборудования. При добавлении нового периферийного устройства Диспетчер устройств помещает конфигурационные данные устройства в реестр.

- предоставляет информацию для запуска всех системных сервисов;

- обеспечивает запуск необходимого приложения при щелчке мышью по ярлыку документа;

- хранит информацию о системных правилах, профилях пользователей и параметрах администрирования.

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

 

 

3.6.1.4 Архитектура реестра. Пять корневых разделов

(шесть разделов было в Windows 95/98 – был отдельно HKEY_DYN_DATA)

Информация, хранящаяся в иерархической базе данных реестра, собрана в разделы (ветви)(key) (аналогичны каталогам (папкам)), которые содержат один или более подразделов (subkey) (подпапки). Каждый подраздел содержит параметры (value):

раздел

подраздел 1 --> параметр

подраздел 2

подраздел 3 --> параметр

Возможность создавать вложенные подразделы позволяет группировать параметры. В результате получается древовидная структура, которую можно просмотреть в Редакторе реестра (Registry editor)- regedit.exe. Каждый раздел (ветвь) соответствует определенному типу информации о пользователе, аппаратном обеспечении, приложении и т.д.

Реестр Windows состоит из пяти корневых разделов (root keys) (на самом верхнем уровне иерархии), каждый из которых содержит определённый тип конфигурационной информации (т.е. пользовательские данные и установки, связанные с компьютером). Название каждого корневого раздела начинается с HKEY_, и каждый корневой раздел содержит несколько подразделов.

Каждый раздел реестра содержит записи, схожие по смыслу. Далее приводится краткое описание каждого из пяти основных разделов реестра.

 

HKEY_CLASSES_ROOT

(на самом деле, это просто ссылка на подраздел HKEY_LOCAL_MACHINE\Software\Classes)

Эта ветвь содержит информацию об ассоциации серверов OLE с объектами COM, ассоциации между именами и типами зарегистрированных файлов (по расширению). Зарегистрированные типы файлов позволяют пользователю открывать файлы (запуская автоматически нужные программы) двойным щелчком мыши. Свойства зарегистрированных типов файлов включает в себя значки, используемые для отображения файлов данного типа на экране, и команды (Открыть (Open), Печать (Print) и т.д.), которые пользователь может применять к файлам данного типа. Эта ветвь также содержит информацию для средств быстрого просмотра (Quick Viewers), обработчик страниц свойств (property sheet handlers),обработчик копий (copy hook handlers) и других компонентов OLE(таких как серверы OLE).

Большинство записей HKEY_CLASSES_ROOT совпадает с записями в папке (подразделе) HKEY_LOCAL_MACHINE\SOFTWARE\Classes.

 

HKEY_USERS

Содержит для всех зарегистрированных пользователей все активные загруженные пользовательские профили, включая профиль текущего пользователя (см. HKCU) и профиль по умолчанию (.DEFAULT).

например, S-1-5-19

Замечания:

1. Подразделу HKU\<SID пользователя> соответствует файл NTUser.dat в папке профиля пользователя (в Windows XP по пути c:\documents and Settings\Имя_учетной_записи, в Windows 7 по пути c:\users\ Имя_учетной_записи).

2. Подразделу HKU\.Default соответсвует файл c:\windows\System32\Config\ Default.

 

Любая информация, определяемая пользователем (например, пользовательские настройки рабочего стола), содержится в соответствующем подразделе раздела HKEY_USERS. Этот раздел содержит установки по умолчанию (HKEY_USERS\.DEFAULT) для рабочего стола, для меню Пуск (Start), для приложений и т. д. Когда новый пользователь входит в систему, установки по умолчанию копируются в отдельный подраздел, название которого совпадает с именем пользователя. Все изменения, которые пользователь в дальнейшем произведёт с этими установками, будут сохранены в этом новом подразделе (для нового пользователя). Пользователи, получающие удаленный доступ к серверу, не имеют своих профилей (в этом ключе реестра на сервере) – их профили загружаются в реестры на их собственных компьютерах.

 

HKEY_CURRENT_USER

(ему соответствует файл NTUser.dat в папке с профилем пользователя)

Этот ключ (раздел) представляет собой ссылку на ключ HKEY_USERS\<User_SID>(SID текущего пользователя, то есть пользователя, зарегистрированного в системе на данный момент)

Содержит профиль пользователя, на данный момент зарегистрировавшегося (вошедшего) в систему (переменные окружения, настройки рабочего стола, настройки сети, …).

Пользовательские настройки из HKEY_USERS вступают в силу в процессе входа пользователя в систему. При этом содержимое подраздела HKEY_USERS\name, где name - имя учетной записи текущего пользователя, или подраздела HKEY_USERS\.DEFAULT копируется в раздел HKEY_CURRENT_USER.

 

HKEY_LOCAL_MACHINE

Этот раздел определяет всю глобальную информацию, относящуюся к ОС и аппаратным средствам локального компьютера, таких как драйверы, тип шины, системная память, установленное программное обеспечение, наименование портов и конфигураций программного обеспечения. Эта информация действует (верна) для всех пользователей, зарегистрированных в системе.

Раздел HKEY_LOCAL_MACHINE состоит из нескольких подразделов, таких как:

Hardware - содержит установки аппаратных средств, доступных на локальном компьютере. Подраздел Description содержит записи для устройств, обнаруженных в системе.

Security (ему соответствует файл Security) - содержит информацию о подсистеме безопасности локального компьютера (права пользователей, политика паролей, членство в группах).

Software (ему соответствует файл Software) – содержит всю информацию о программах, установленных на компьютере. Подраздел \Classes этого раздела используется для построения раздела HKEY_CLASSES_ROOT.

System (ему соответствует файл System) - содержит всю необходимую информацию для запуска Windows. Здесь содержится подраздел CurreentControlSet, в котором содержатся подразделы Control и Services: подраздел Control содержит такую информацию, как имя компьютера, параметры файловой системы и т.д., а подраздел Services содержит информацию о запускаемых сервисах (службах).

SAM (ему соответствует файл SAM) – содержит информацию о пользовательских и групповых учетных записях (на локальном компьютере). Для компьютеров, работающих под управлением Windows Server этот ключ содержит также информацию о системе безопасности домена.

 


Дата добавления: 2016-01-04; просмотров: 12; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!