Идея NTFS и разграничение доступа обращения к файлам

Ни одна из FAT-таблиц не хранит информации о правах пользователей на конкретные файлы. Эту информацию хранит NTFS.

Во-первых NTFS хранит таблицу использования диска, аналогичную FAT32.

Во-вторых, хранится таблица каталогов, аналогичная FAT 32, но с добавлением колонки идентификатора:

Таблица 6.1.

Уникальный (автоматически генерируемый) идентификатор файла Название Расширение Первый кластер Размер файла, байт Дата создания Время создания Дата последнего обращения Время последнего обращения Атрибуты (r - read only, h - hidden, s - system, a - arhive) Признак каталога
50006899046070682204 index dat 10 12290 19970615 12h56 20050822 16h17 r, h, s -
01006293044070652604 vas txt 1056 12 ... ... ... ... ... ...

Добавляется ещё одна таблица - таблица пользователей:

Таблица 6.2.

Автоматич. идентификатор пользователя имя пользователя Полное имя пользователя Контрольная сумма пароля
S-2-3-21-1709082233-625345543-8383465210-1055 vas_vic Махрин Василий Викторович 123124
S-1-5-21-1409082233-725345543-1383465210-1016 kolia Иванов Николай Палыч 654687
S-3-7-81-9429082233-115645443-4443465556-7890 petia Петров 676998

Теперь таблица каталогов и таблица пользователей увязываются в одно целое (используется методология релятивных СУБД, могу порекомендовать прочитать первую главу книги Попова "FoxPro 2.5 - 2.6") с использованием ещё одной таблицы - соотнесения прав:

Таблица 6.3.

Файл (идентификатор) Пользователь (идентификатор) Право на запись (изменение) Запрещение записи (изменения) Право на открытие Запрещение открытия Прочие права ...
50006899046070682204 S-2-3-21-1709082233-625345543-8383465210-1055 + - + - ...
50006899046070682204 S-1-5-21-1409082233-725345543-1383465210-1016 - - + - ...
01006293044070652604 S-3-7-81-9429082233-115645443-4443465556-7890 - + - - ...

То есть в отношении файла index.dat у пользователя vas_vic действует как право на запись, так и право на открытие.

В отношении того же файла у пользователя kolia действует только право на открытие.

В отношении файла vas.txt у пользователя petia включен мощный признак запрещения записи (принудительного), а остальные права не определены. значит их нет.

Примечание. Чтобы в WinXP включить настройку безопасности: {_Сервис_}-> {Свойства папки}-> снять галочку Использовать простой общий доступ к файлам.

 


Для терминального сервера (управляемого WinXP). Администратор asd создаёт пользователя probaAsus12. Однако этот пользователь не получает права входа на удалённый рабочий стол. Необходимо ещё и включить его в группу "Пользователи удалённого рабочего стола":


Задание А. Применение NTFS и сетевого доступа для организации простейшей локальной почты ("Чёрный ящик", когда положить может любой, а взять - только владелец).

Задание А (версия 2). Тот же "ящик" Пандоры, только организация его на терминальном сервере, когда клиентские машины - под Linux'ом.

Задание А (версия 3). Почта Пандоры. Решено для Win7 Приваловым Максимом. Безукоризненное оформление. Аплодисменты автору.


Смена владельца папки на разделе NTFS (сокращённая версия):

Смена владельца объекта (папки, файла) и, как следствие, получение полного контроля над незашифрованным объектом (версия 2, делалось на терминальном сервере в условиях Linux-лаборатории)


 

Шифрование

Теория шифрования

Изначальный постулат. При создании нового пользователя и вводе его пароля операционной системой формируется уникальный ключ (128 бит длинной). Этот ключ неразрывно связан с паролем пользователя. То есть если позже поменять пароль, то ключ невозможно будет использовать при расшифровке. Если ключ в системе погибнет (предположительно он хранится в отдельном файле), то набора пароля при регистрации пользователя в системе так же не хватит, для расшифровки данных. СОХРАНЯЙТЕ ключи в виде отдельных файлов на иных носителях.

AND - если бит данных и соответствующий ему бит ключа равны (1=1 или 0=0), то зашифрованный бит данных равен 1, иначе 0.

Логическое сравнение отличается от арифметического суммирования, рассмотренного в вовпросе "Циклическая контрольная сумма".

При логическом сравнении верны следующие колонки данных:

Первое сравниваемое
A

A

B

B

=

не =

не =

=
Второе сравниваемое
A

B

A

B








Результат (1=Да; 0=нет)
1

0

0

1

 

 

Пусть изначальный ключ всего 3 байта (3 символа), то есть 3*8=24 бита.

file (исходные данные) 011100110011011001101111 100011000111100110011001 111011001110011011001110 001011111110010011001110
key (ключ) 111100011111010111010110 111100011111010111010110  
result (результат шифрования) 011111010010110001000110


Красным показано ошибочное значение.

Продолжите ряд.

Вывод. Если взять цифровой фотоаппарат с высоким разрешением и снять несколько пейзажей за окном (и сохранить в формате BMP, записав на CD), то получится несколько файлов псевдо случайных чисел огромного обёма. После этого можно создать программу шифратор-дешифратор (в курсе "Программирование для начинающих" рассматривается создание подобной программы для побайтного шифрования), которая будет использовать содержимое этих файлов в качестве ключа. Зашифровав секретные файлы и получив результатные можно будет удалить оригинальные (секретные). В таком случае не имея ключевых файлов будет не возможно (или очень сложно) дешифровать имеющиеся результатные файлы.

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

Более подробно идея ключей шифрования PGP будет рассмотрена позже по сайту. Ссылка находится здесь лишь для полноты.

Практика шифрования в WinXP

Linux. Внимание! WinXPE для эксперимента не подходит, так как в ней невозможно создать нового пользователя. Её рабочий стол изначально - FAT.

Linux. Внимание! Сервер терминалов для эксперимента можно использовать при условии, что только один новый пользователь заходит в систему и до тех пока не будут выполнены его локальные настройки и не прогрузится его рабочий стол второму пользователю заходить нельзя!!!.

ЗАДАНИЕ 01.

WinXP. Прогрузитесь в Windows XP. Зайдите с профилем администратора (пароль gotozoo). Попробуйте всё, что описано на рисунках.

Linux.

ЗАДАНИЕ 02.

Зайдите с профилем администратора (пользователь asd, пароль gotozoo). Перейдите на диск с меткой COMMON (скорее всего он D:). на этом диске создайте папку 777asusX. Внутри этой папки создайте несколько документов Word и дайте им имена.

Настройте доступ к этой папке таким образом, чтобы ТОЛЬКО пользователь admin (в случае терминального сервера asd) (и никто больше даже из администраторов) не имел права доступа к содержимому этой папки. Проверьте этой выйдя из профиля администратора и зайдя под профилем user (в случае терминального сервера asusX).


Сохранение пароля (!), ключей шифрования (комментарии на лекции, а пробовать - на домашней машине)

Вывод. Любой вирус, программа автозапуска CD или USB Flash способен откопировать ключи EFS на почтовый ящик своего владельца (или по локальной сети на файловый сервер или на FAT-раздел локального компьютера). При этом ему даже нет необходимости знать пароль атакуемого пользователя, достаточно, чтобы на момент запуска вредоносной программы был запущен сеанс этого пользователя. При этом получение ключей даёт злоумышленнику возможность получить доступ к зашифрованным данным.

Соответственно, нормальная разбивка жёсткого диска предполагает:

Направления сохранения:


WinXP. Вход в систему в однопользовательском режиме (без запроса пароля):
Войти как админ
Пуск->
Выполнить->
control userpasswords2
Единожды набрать имя Пользователя и его пароль (который должен входить автоматически).


 

Hosted by uCoz