Научная статья на тему 'Использование идентификатора безопасности для установления обстоятельств создания файлов в NTFS'

Использование идентификатора безопасности для установления обстоятельств создания файлов в NTFS Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
388
96
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ / КОМПЬЮТЕРНАЯ ЭКСПЕРТИЗА / ИДЕНТИФИКАТОР БЕЗОПАСНОСТИ / УСТАНОВЛЕНИЕ ОБСТОЯТЕЛЬСТВ СОЗДАНИЯ ФАЙЛОВ / INFORMATION SECURITY / COMPUTER FORENSICS / SECURITY IDENTIfi ER / ESTABLISHMENT OF THE EVENT OF fi LE CREATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Гортинский Алексей Владимирович, Гаврилов Алексей Леонидович

В статье рассмотрен способ получения подробной информации о пользователе ОС Windows, используя уникальный идентификатор безопасности (SID) владельца, а также процесс получения полного списка файлов этого пользователя. Информация о пользователе извлекается как из локальной, так и из доменной базы зарегистрированных пользователей.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

USING SECURITY IDENTIFIER TO ESTABLISH THE EVENT OF FILE CREATION IN NTFS

The paper describes how to obtain detailed information about any user of Windows OS with the help of the user’s unique security identifi er (SID) as well as examines the process of obtaining a complete list of the user’s fi les. Information about users can be extracted from both local and domain database of registered users.

Текст научной работы на тему «Использование идентификатора безопасности для установления обстоятельств создания файлов в NTFS»

ОРГАНИЗАЦИОННЫЕ И ОБЩЕТЕОРЕТИЧЕСКИЕ ВОПРОСЫ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ

УДК 004.056

ИСПОЛЬЗОВАНИЕ ИДЕНТИФИКАТОРА БЕЗОПАСНОСТИ ДЛЯ УСТАНОВЛЕНИЯ ОБСТОЯТЕЛЬСТВ СОЗДАНИЯ ФАЙЛОВ

В МТРЭ

О

USING SECURITY IDENTIFIER TO ESTABLISH THE EVENT OF FILE CREATION IN NTFS

Гортинский Алексей Владимирович

Gortinsky Alexey Vladimirovich

кандидат юридических наук, доцент кафедры ТОКБиК, Саратовский национальный исследовательский государственный университет им. Н.Г. Чернышевского, Саратов

Cand. Sc. (Law), associate professor of the department of theory of computer security and cryptography, Saratov State University, Saratov

e-mail: alexgrt@yandex.ru

Гаврилов Алексей Леонидович

Gavrilov Aleksey Leonidovich

выпускник факультета КНИиТ, Саратовский национальный исследовательский государственный университет им. Н.Г. Чернышевского, Саратов

Graduate student of the faculty of computer science and information technology, Saratov State University, Saratov

e-mail: aleks02.94@mail.ru

В статье рассмотрен способ получения подробной информации о пользователе ОС Windows, используя уникальный идентификатор безопасности (SID) владельца, а также процесс получения полного списка файлов этого пользователя. Информация о пользователе извлекается как из локальной, так и из доменной базы зарегистрированных пользователей.

Ключевые слова: информационная безопасность, компьютерная экспертиза, идентификатор безопасности, установление обстоятельств создания файлов.

The paper describes how to obtain detailed information about any user of Windows OS with the help of the user's unique security identifier (SID) as well as examines the process of obtaining a complete list of the user's files. Information about users can be extracted from both local and domain database of registered users.

Keywords: information security, computer forensics, security identifier, establishment of the event of file creation.

Введение

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

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

Стандартные средства Windows (свойства файла или командлет get-acl командной оболочки PowerShell) позволяют получать некоторую информацию о пользователе, используя его SID, однако они весьма ограничены для применения в отношении множества объектов. Программный продукт, рассмотренный в рамках данной статьи, имеет графический интерфейс, более широкий функционал, а также возможность обхода некоторых запретов доступа к файлам. Он реализован на языке Java с применением библиотек для прямого доступа к исследуемым объектам.

Общие сведения об идентификаторах безопасности (SID)

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

Компоненты SID легче воспринимать в виде строки, которая получается из двоичной интерпретации, используя стандартный способ:

S- R-X-Yl-Y2 -... -Yn,

где S - указатель того, что данная строка это SID;

R - версия SID;

X - класс учетной записи / значение SID Authority;

Yi - подклассовые величины, где п - количество классов [3].

Консолидированная безопасность в NTES

NTFS всегда располагала функциями безопасности, позволяющими администратору указать пользователей, которым разрешен или запрещен доступ к тем или иным файлам и каталогам. В версиях NTFS, предшествовавших Windows 2000 (старше NTFS 3.0), дескриптор безопасности каждого файла и каталога хранился в его собственном атрибуте безопасности. Дескриптор безопасности - это специальная структура, которая хранит информацию о безопасности объекта.

Чаще всего всему дереву каталогов администраторами назначаются единые параметры безопасности, что приводит к дублированию дескрипторов безопасности для всех файлов и

подкаталогов, к которым эти параметры применяются. NTFS5 оптимизирует выделение дискового пространства для хранения дескрипторов безопасности, сохраняя единственный экземпляр каждого уникального дескриптора безопасности на томе в центральном файле метаданных с именем $ Secure (рис. 1).

В этом файле хранятся два индексных атрибута, $SDH и $SII, и атрибут потока данных, именуемый $SDS. NTFS5 присваивает каждому уникальному дескриптору на томе внутренний идентификатор безопасности NTFS (не путать с SID, который уникально идентифицирует компьютеры, учетные записи пользователей и группы) и хеширует дескриптор безопасности в соответствии с простым хеш-алгоритмом.

Элементы в индексе $SDH отображают хеш-значения дескриптора безопасности на область хранения дескриптора безопасности в атрибуте данных $SDS, а индекс $SII отображает на область хранения дескриптора безопасности в атрибуте данных $SDS идентификаторы безопасности NTFS5.

Назначив файлу или каталогу дескриптор безопасности, NTFS получает его хеш-значение и ищет в индексе $SDH совпадения. Найдя совпадение, NTFS определяет смещение дескриптора безопасности элемента и считывает его из атрибута $SDS. Если назначенный и найденный дескрипторы не совпали, NTFS продолжает искать совпадения до тех пор, пока не обнаружит полное совпадение (равны и хеши, и сами дескрипторы). После этого файл или каталог, которому назначен дескриптор безопасности, может установить связь с дескриптором безопасности в атрибуте $SDS.

Идентификатор безопасности из $SDH хранится в атрибуте $STANDARD_INFORMATION

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

Если же NTFS не удалось найти в $SDH элемент, совпадающий с назначаемым, то этот дескриптор ранее не употреблялся в системе, поэтому он получает отдельный внутренний ID безопасности. Они представляют собой 32-разрядные величины, что в несколько раз короче SID, поэтому представление SID в виде внутренних ID безопасности позволяет экономить место в $STANDARD_INFORMATION.

Когда приложение пытается открыть файл или каталог, NTFS с помощью внутреннего ID безопасности из $STANDARD_INFORMATION отыскивает назначенный ему дескриптор безо-пасности в $SDS с помощью индекса $SII и определяет, разрешен ли доступ [5].

При создании любого объекта файловой системы ОС Windows в обязательном порядке формирует для него атрибут $STANDARD_ INFORMATION, в который помещает идентификатор безопасности, соответствующий субъекту, от имени которого происходит создание объекта. По этому идентификатору и можно отследить, какие объекты файловой системы были созданы заданным субъектом, а также получить о нем регистрационную информацию из базы данных пользователей локального компьютера или домена.

Роль ACL в обеспечении контроля доступа

Access Control List (ACL) - список контроля доступа, который определяет, кто или что может получать доступ к конкретному объекту и

Хеш-значение дескриптора безопасности, полученное при назначении параметров безопасности файлу пли каталогу

ГО. извлеченный из атрибута S STAND ART INFORMATION при проверке параметров безопасности файла или каталога

Рис. 1. Схема работы файла метаданных $ SECURE

какие именно операции разрешено или запрещено субъекту проводить над объектом.

Существует 2 вида ACL:

1) DACL (Discretionary ACL - список разграничительного контроля доступа), который определяет пользователей и группы, которым разрешен или запрещен доступ;

2) SACL (System ACL - системный список контроля доступа), который контролирует наблюдение за доступом к объекту - кто и когда получал к нему доступ [2].

Каждый из этих списков состоит из АСЕ -Access Control Entry, которые содержат SID пользователя или группы, правило для которого они определяют, а также маску доступа, которая определяет описываемое правило.

В системе с моделью безопасности, основанной на ACL, когда субъект запрашивает выполнение операции над объектом, система сначала проверяет список разрешённых для этого субъекта операций и только после этого даёт (или не даёт) доступ к запрошенному действию [l].

Получение списка файлов пользователя с помощью приложения

Как уже было сказано, для определения некоторых обстоятельств воздействия пользова-

теля на ФС, необходимо изучить оставленные им следы в виде файлов и их атрибутов. Для получения полного списка файлов, принадлежащих определенному пользователю, был создан программный продукт на языке Java, представляющий собой исполняемый файл с графическим интерфейсом. С его помощью можно определить SID владельца указанного файла или владельцев всех файлов в указанной папке.

Затем эти идентификаторы предлагается использовать для получения полного списка файлов, которыми владеет пользователь, а также подробной информации о нем, которая может быть получена от контроллера домена (при его наличии). Наглядно работа первой части программы (определение SID владельцев файлов и добавление их в список) представлена на рис. 2-4.

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

Исследование файла Исследование папки

Выберите папку для исследования:

C:\Program Files

Обзор...

Далее

Очистить

, Идет поиск..

••••

ч/ Обходить запрет доступа

Или выберите пользователя из сохраненных для дальнейшего исследования:

Сохраненные пользователи

№ Имя SID

Нет элементов для отображения

Рис. 2. Стартовое окно приложения

Результаты исследования:

Имя пользователя: BUÏLTI ^Администраторы SID: S-1-5-32-544

Имя пользователя: NT AUTHORITY\CHCTEMA SID: S-1-5-18

Имя пользователя: NT SERVICE\Trustedlnstaller

Добавить в список Сохранить в файл

Рис. 3. Результаты исследования папки

Сохраненные пользователи

№ Имя SID

1 Lexx-hp\user1 S-1-5-21-3595304904-1603262049-1941905

3 NT AUTHORITYXC

4 NT SERVICEVTrust

Показать расширенную информацию Искать все файлы этого пользователя

49-18310380

< Г

Рис. 4. Добавление SID в список

>

и добавляется в процессе обхода. Также при обнаружении удаляются правила прямого запрета доступа.

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

Получение личной информации, хранящейся в домене

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

Для поиска подробной информации о выбранном пользователе необходима учетная запись домена, в котором находится компьютер, где производится работа с приложением. У нее должны быть права на работу с Active Directory. Ближайший контроллер домена будет найден автоматически. Взаимодействие с ним ведется по протоколу LDAP. Данный вид исследования недоступен вне доменной сети.

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

• логин владельца;

• имя и фамилия пользователя;

• дата создания учетной записи и дата последнего входа в нее;

• компания;

• электронный адрес;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• номер телефона [2].

исследования - составления списка файлов пользователей и получения расширенной информации о них.

Полученное приложение может использоваться специалистами в процессе проведения компьютерно-технических экспертиз.

Библиографический список (References)

1. Howthe System Uses ACLs [электронный ресурс]. URL: http://www.ntfs.com/ntfs-permissions-acl-use.htm (дата обращения: 20.01.2017).

How the System Uses ACLs. URL: http://www.ntfs.com/ntfs-permissions-acl-use.htm (date of access: 20.01.2017).

2. Kouti S. User Attributes - Inside Active Director [электронный ресурс]. URL: http://www. kouti.com/tables/userattributes.htm (дата обращения: 01.02.2017).

Kouti S. User Attributes - Inside Active Director. URL: http://www.kouti.com/tables/userattributes.htm (date of access: 01.02.2017).

3. Microsoft TechNet. How security identifiers work [электронный ресурс]. URL: http://technet. microsoft.com/ en-us/library/cc778824%28WS.io%29.aspx (дата обращения: 23.01.2017).

Microsoft TechNet. How security identifiers work. URL: http://technet.microsoft.com/en-us/ library/cc778824%28WS.io%29.aspx (date of access: 23.01.2017).

4. Security Principals Technical Overview [электронный ресурс]. URL: https://msdn.microsoft.com/ ru-ru/library/dn4868i4(v=ws.n).aspx. (дата обращения: 10.02.2017).

Security Principals Technical Overview. URL: https://msdn.microsoft.com/ ru-ru/library/ dn4868i4(v=ws.n).aspx. (date of access: 10.02.2017).

5. Руссинович M. NTFS позволяют оптимизировать использование диска и расширить функциональность программ [электронный ресурс]. URL: http://www.windxp.com.ru/ntfs.htm (дата обращения: 13.02.2017).

Russinovich М. NTFS pozvolyayut optimizirovat' ispol'zovaniye diska i rasshirit' funktsional'nost' programm [NTFS allows to optimize the use of disk space and extend program functionality]. URL: http://www.windxp.com.ru/ntfs.htm (date of access: 13.02.2017).

i Надоели баннеры? Вы всегда можете отключить рекламу.