- Безопасность файловых систем
- KUR_Bezopasnost_faylovoy_sistemy.doc
- Файловые системы Windows
- Общие сведения о файловых системах
- Файловая система FAT
- Файловая система FAT32
- Файловая система NTFS
- Устройство NTFS. Главная таблица файлов MFT
- Конвертирование разделов FAT32 в NTFS без потери данных. Утилита convert
Безопасность файловых систем
Автор работы: Пользователь скрыл имя, 21 Марта 2012 в 06:41, реферат
Описание
Развитие файловых систем персональных компьютеров определялось двумя факторами — появлением новых стандартов на носители информации и ростом требований к характеристикам файловой системы со стороны прикладных программ (разграничение уровней доступа, поддержка длинных имен файлов в формате UNICODE). Первоначально, для файловых систем первостепенное значение имело увеличение скорости доступа к данным и минимизация объема хранимой служебной информации
Содержание
Введение………………………………………………………………………. …3
Глава 1. Теоретические аспекты безопасности файловых систем…………..…4
1.1. Понятие и сущность файловой системы……………………………………4
1.2. Безопасность файловых систем…………………………………………..…8
Глава 2. Реализация безопасности файловых систем…………………………13
2.1. Основные параметры безопасности файловой системы……………….…13
2.2. Безопасность файловых систем в Windows 7……………………………..16
Заключение…………………………………………………………………….…26
Список литературы………………………………………………………………
Работа состоит из 1 файл
KUR_Bezopasnost_faylovoy_sistemy.doc
Глава 1. Теоретические аспекты безопасности файловых систем…………..…4
1.1. Понятие и сущность файловой системы……………………………………4
1.2. Безопасность файловых систем…………………………………………..…8
Глава 2. Реализация безопасности файловых систем…………………………13
2.1. Основные параметры безопасности файловой системы……………….…13
2.2. Безопасность файловых систем в Windows 7……………………………..16
Развитие файловых систем персональных компьютеров определялось двумя факторами — появлением новых стандартов на носители информации и ростом требований к характеристикам файловой системы со стороны прикладных программ (разграничение уровней доступа, поддержка длинных имен файлов в формате UNICODE). Первоначально, для файловых систем первостепенное значение имело увеличение скорости доступа к данным и минимизация объема хранимой служебной информации. Впоследствии с появлением более быстрых жестких дисков и увеличением их объемов, на первый план вышло требование надежности хранения информации, которое привело к необходимости избыточного хранения данных.
Эволюция файловой системы была напрямую связана с развитием технологий реляционных баз данных. Файловая система использовала последние достижения, разработанные для применения в СУБД: механизмы транзакций, защиты данных, систему самовосстановления в результате сбоя.
Развитие файловых систем привело к изменению самого понятия «файл» от первоначального толкования как упорядоченная последовательность логических записей, до понятия файла, как объекта, имеющего набор характеризующих его атрибутов (включая имя файла, его псевдоним, время создания и собственно данные), реализованного в NTFS.
За свою 20 летнюю историю файловая система прошла путь от простой системы, взявшей на себя функции управления файлами, до системы, представляющей собой полноценную СУБД, обладающую встроенным механизмом протоколирования и восстановления данных.
В отличие от попыток ввести стандарт на протокол, описывающий правила доступа к удаленным файловым системам (CIFS, NFS), не стоит ожидать появления подобного стандарта, описывающего файловые системы для жестких дисков. Это можно объяснить тем, что файловая система жестких дисков все еще продолжает оставаться одной из главных частей операционной системы, влияющей на ее производительность. Поэтому каждый производитель операционных систем будет стремиться использовать файловую систему, «родную» для его ОС.
Дальнейшая эволюция файловых систем пойдет по пути совершенствования механизмов хранения данных, оптимизации хранения мультимедийных данных, использования новых технологий, применяемых в базах данных (возможность полнотекстового поиска, сортировка файлов по различным атрибутам).
Одной из важнейших задач показателей системы является надежность и безопасность, которые мы рассмотрим в данной работе.
Глава 1. Теоретические аспекты безопасности файловых систем
1.1. Понятие и сущность файловой системы
Файловая система — совокупность (порядок, структура и содержание) организации хранения данных на носителях информации, которая непосредственно представляет доступ к хранимым данным, на бытовом уровне это совокупность всех файлов и папок на диске. Основными «единицами» файловой системы принято считать кластер, файл, каталог, раздел, том, диск.
Совокупность нулей и единиц на носителе информации составляют кластера (минимальный размер места для хранения информации, также их принято называть понятием сектор, размер их кратен 512 байтам).
Файлы — поименованная совокупность байтов, разделенная на сектора. В зависимости от файловой системы, файл может обладать различным набором свойств. Для удобства в работе с файлами используются их (символьные идентификаторы) имена.
Для организации строения файловой системы файлы группируются в каталоги.
Раздел — область диска созданная при его разметке и содержащая один или несколько отформатированных томов.
Том — область раздела с файловой системой, таблицей файлов и областью данных. Один или несколько разделов составляют диск.
Вся информация о файлах хранится в особой области раздела — таблице файлов. Таблица файлов позволяет ассоциировать числовые идентификаторы файлов и дополнительную информацию о них (дата изменения, права доступа, имя и т. д.) с непосредственным содержимым файла, хранящимся в другой области раздела.
Рассмотрим общую структуру файловой системы. Система хранения данных на дисках может быть структурирована следующим образом (см. рис.1).
Нижний уровень — оборудование. Это в первую очередь, магнитные диски с подвижными головками — основные устройства внешней памяти, представляющие собой пакеты магнитных пластин (поверхностей), между которыми на одном рычаге двигается пакет магнитных головок. Шаг движения пакета головок является дискретным и каждому положению пакета головок логически соответствует цилиндр магнитного диска. Цилиндры делятся на дорожки (треки), а каждая дорожка размечается на одно и то же количество блоков (секторов), таким образом, что в каждый блок можно записать по максимуму одно и то же число байтов. Следовательно, для произведения обмена с магнитным диском на уровне аппаратуры нужно указать номер цилиндра, номер поверхности, номер блока на соответствующей дорожке и число байтов, которое нужно записать или прочитать от начала этого блока. Таким образом, диски могут быть разбиты на блоки фиксированного размера, и можно непосредственно получить доступ к любому блоку (организовать прямой доступ к файлам).
Непосредственно с устройствами (дисками) взаимодействует часть ОС, называемая система ввода-вывода. Система ввода-вывода (она состоит из драйверов устройств и обработчиков прерываний для передачи информации между памятью и дисковой системой) предоставляет в распоряжение более высокоуровневого компонента ОС — файловой системы используемое дисковое пространство в иде непрерывной последовательности блоков фиксированного размера. Система ввода-вывода имеет дело с физическими блоками диска, которые характеризуются адресом, например, диск 2, цилиндр 75, сектор 11. Файловая система имеет дело с логическими блоками, каждый из которых имеет номер (от 0 или 1 до N).
Рис. 1 Блок схема файловой системы
Размер этих логических блоков файла совпадает или кратен размеру физического блока диска и может быть задан равным размеру страницы виртуальной памяти, поддерживаемой аппаратурой компьютера совместно с операционной системой.
В структуре системы управления файлами можно выделить базисную подсистему, которая отвечает за выделение дискового пространства конкретным файлам, и более высоко-уровневуюлогическую под систему, которая использует структуру дерева директорий для предоставления модулю базисной подсистемы необходимой ей информации исходя из символического имени файла. Она также ответственна за авторизацию доступа к файлам (см. главу Безопасность ОС).
В современных ОС далее принято разбивать диски на логические диски (это также низкоуровневая операция), иногда называемые разделами ( partitions). Бывает, что наоборот объединяют несколько физических дисков в один логический диск (например, как это можно сделать в ОС Windows NT). На каждом разделе можно иметь свою независимую файловую систему. Поэтому в дальнейшем изложении мы будем игнорировать проблему физического выделения пространства для файлов и считать, что каждый раздел представляет собой отдельный (виртуальный) диск. Собственно диск содержит иерархическую древовидную структуру, состоящую из набора файлов, каждый из которых является хранилищем данных пользователя, и каталогов или директорий (то есть файлов, которые содержат перечень других файлов, входящих в состав каталога), которые необходимы для хранения информации о файлах системы.
Стандартный запрос на открытие (open) или создание (creat) файла поступает от прикладной программы к логической подсистеме. Логическая подсистема, используя структуру директорий, проверяет права доступа и вызывает базовую подсистему для получения доступа к блокам файла. После этого файл считается открытым, содержится в таблице открытых файлов, прикладная программа получает в свое распоряжение дескриптор (или handle в системах Microsoft) этого файла. Дескриптор файла является ссылкой на файл в таблице открытых файлов и используется в запросах прикладной программы на чтение-запись из этого файла. Запись в таблице открытых файлов указывает через систему аллокации блоков диска на блоки данного файла. Если к моменту открытия файл уже используется другим процессом, то есть содержится в таблице открытых файлов, то, после проверки прав доступа к файлу может быть организован совместный доступ. При этом новому процессу также возвращается дескриптор — ссылка на файл в таблице открытых файлов.
Современные ОС предоставляют пользователю возможность работать сразу с несколькими файловыми системами (Linux работает с Ext2fs, FAT и др.). Файловая система в традиционном понимании становится частью более общей многоуровневой структуры (см. рис. 2).
На верхнем уровне, на котором располагается так называемый диспетчер файловых систем (например, в Windows 95 этот компонент называется installable filesystem manager). Он связывает запросы прикладной программы с конкретной файловой системой.
Рис. 2. Архитектура современной файловой системы
Каждая файловая система (иногда говорят драйвер файловой системы) на этапе инициализации регистрируется у диспетчера, сообщая ему точки входа, для последующих обращений к данной файловой системе.
Та же идея поддержки нескольких файловых систем в рамках одной ОС может быть реализована по-другому, например, исходя из концепции виртуальной файловой системы. Виртуальная файловая система (vfs) представляет собой независимый от реализации уровень и опирается на реальные файловые системы (s5fs, ufs, FAT, NFS, FFS, Ext 2fs). При этом возникают структуры данных виртуальной файловой системы, типа виртуальных индексных узлов vnode, которые обобщают индексные узлы конкретных систем.
1.2. Безопасность файловых систем
Безопасность компьютеров и компьютерных сетей сейчас, в связи с повсеместным распространением Интернета и электронной коммерции, все больше выходит на первый план. В любой серьезной организации при приеме на работу системного администратора одним из основных требований к нему является умение организовать безопасность системы и сетей.
Даже если вы устанавливаете один-единственный сервер, не исключена возможность, что кто-то попробует взломать его просто от скуки. Поэтому особо нельзя надеяться, что на ваш сервер или Web-страницу никто не покусится.
Надежность защиты системы
Следует помнить: «все, что один человек построил, другой всегда сможет поломать». Надежность защиты, в идеале, должна соответствовать следующему правилу: затраты взломщика на преодоление защиты должны существенно превышать стоимость поврежденных или украденных данных. Это, конечно, не означает, что домашнюю систему, на которой ничего важного нет, защищать не надо. Просто необходимо соразмерять затраченные усилия – для домашнего пользователя их надо потратить гораздо меньше, чем для банковской сети.
У защиты есть одна особенность – чем более безопасна система, тем больше усилий необходимо затрачивать на поддержание ее в рабочем состоянии, и тем более навязчивой становится сама система безопасности. Всегда необходимо соблюдать золотую середину между безопасностью системы и неудобствами пользователей, связанными с режимом безопасности.
Защита не бывает идеальной. Вы должны представлять, сколько времени и усилий необходимо потратить на восстановление или воссоздание данных при их потере.
Определение приоритетов защиты
До того, как начать настраивать безопасность системы, необходимо определить, от чего и как будет защищена ваша система, какие службы должны быть защищены в первую очередь и особо. Следует четко представлять, какая информация или какое оборудование наиболее ценно, что ни при каких обстоятельствах не должно пропасть или попасть к постороннему человеку, а что имеет минимальную ценность (было бы нелепо выстроить супермощную систему для защиты сочинений вашего ребенка и установить минимальную безопасность для банковских документов, стоящих миллионы).
Кроме того, всегда следует помнить – никаких поблажек для пользователей вне зависимости, насколько высокое положение они занимают. Пользователь, который имеет привилегии, неизбежно является брешью в безопасности.
Если ваша задача – администрирование средней или большой сети, необходимо разработать документ, который называется «Политика безопасности» и определяет права и обязанности пользователей, меры по защите системы и действия, применяемые в случае нарушения безопасности системы.
Этот документ должен быть утвержден руководством фирмы, и с ним следует ознакомить каждого сотрудника, причем желательно под расписку. Чем проще и понятнее составлен документ, тем больше вероятность, что его поймут и будут им руководствоваться. Главное правило, которое должно быть четко зафиксировано: «То, что не разрешено – запрещено».
Файловые системы Windows
Операционная система Windows 8, Windows 8.1 поддерживает несколько файловых систем: NTFS, FAT и FAT32. Но работать может только на NTFS , то есть установлена может быть только на раздел жесткого диска, отформатированного в данной файловой системе.
Обусловлено это теми особенностями и инструментами безопасности, которые предусмотрены в NTFS , но отсутствуют в файловых системах Windows предыдущего поколения: FAT16 и FAT32 .
Далее мы остановимся на всей линейке файловых систем для Windows, чтобы понять, какую роль они играют в работе системы и как они развивались в процессе становления Windows плоть до Windows 8.
Общие сведения о файловых системах
Преимущества NTFS касаются практически всего: производительности, надежности и эффективности работы с данными (файлами) на диске. Так, одной из основных целей создания NTFS было обеспечение скоростного выполнения операций над файлами (копирование, чтение, удаление, запись), а также предоставление дополнительных возможностей: сжатие данных, восстановление поврежденных файлов системы на больших дисках и т.д.
Другой основной целью создания NTFS была реализация повышенных требований безопасности, так как файловые системы FAT , FAT32 в этом отношении вообще никуда не годились. Именно в NTFS можно разрешить или запретить доступ к какому-либо файлу или папке (разграничить права доступа).
Сначала рассмотрим сравнительные характеристики файловых систем, а потом остановимся на каждой из них поподробнее. Сравнение, для большей наглядности, приведены в табличной форме.
Файловая система FAT для современных жестких дисков просто не подходит (ввиду ее ограниченных возможностей). Что касается FAT32 , то ее еще можно использовать, но уже с натяжкой.
Если купить жесткий диск на 1000 ГБ, то вам придется разбивать его как минимум на несколько разделов. А если вы собираетесь заниматься видеомонтажом, то вам будет очень мешать ограничение в 4 Гб как максимально возможный размер файла.
Всех перечисленных недостатков лишена файловая система NTFS . Так что, даже не вдаваясь в детали и специальные возможности файловой системы NTFS , можно сделать выбор в ее пользу.
Файловая система | Параметры | |
---|---|---|
Размеры тома | Максимальныйразмерфайла | |
FAT | От 1.44 МБ до 4 ГБ | 2ГБ |
FAT32 | Теоретически возможен размер тома от 512 МБ до 2 Тбайт. Сжатие не поддерживается на уровне файловой системы | 4ГБ |
NTFS | Минимальный рекомендуемый размер составляет 1,44 МБ, а максимальный — 2 Тбайт. Поддержка сжатия на уровне файловой системы для файлов, каталогов и томов. | Максимальный размер ограничен лишь размером тома (Теоретически — 264 байт минус 1 килобайт. Практически — 244 байт минус 64 килобайта) |
Вообще использование FAT32 может быть оправдано лишь в тех случаях, когда у вас на компьютере установлено несколько операционных систем, а какая-либо из них не поддерживает NTFS . Но на сегодняшний день таких практически нет. Разве что вы захотите установить у себя антиквариат типа Windows 98.
Файловая система FAT
Файловая система FAT (обычно под ней понимается FAT 16) была разработана достаточно давно и предназначалась для работы с небольшими дисковыми и файловыми объемами, простой структурой каталогов. Аббревиатура FAT расшифровывается как File Allocation Table (с англ. таблица размещения файлов). Эта таблица размещается в начале тома, причем хранятся две ее копии (в целях обеспечения большей устойчивости).
Данная таблица используется операционной системой для поиска файла и определения его физического расположения на жестком диске. В случае повреждения таблицы (и ее копии) чтение файлов операционной системой становится невозможно. Она просто не может определить, где какой файл, где он начинается и где заканчивается. В таких случаях говорят, что файловая система «упала».
Файловая система FAT изначально разрабатывалась компанией Microsoft для дискет. Только потом они стали ее применять для жестких дисков. Сначала это была FAT12 (для дискет и жестких дисков до 16 МБ), а потом она переросла в FAT16 , которая была введена в эксплуатацию с операционной системой MS-DOS 3.0.
Далее она поддерживается в Windows 3.x, Windows 95, Windows 98, Windows NT/2000 и т.д.
Файловая система FAT32
Начиная с Windows 95 OSR2, компания Microsoft начинает активно использовать в своих операционных системах FAT32 — тридцатидвухразрядную версию FAT . Что поделать, технический прогресс не стоит на месте и возможностей FAT 16 стало явно недостаточно.
По сравнению с ней FAT32 стала обеспечивать более оптимальный доступ к дискам, более высокую скорость выполнения операций ввода/вывода, а также поддержку больших файловых объемов (объем диска до 2 Тбайт).
В FAT32 реализовано более эффективное расходование дискового пространства (путем использования более мелких кластеров). Выгода по сравнению с FAT16 составляет порядка 10.15%. То есть при использовании FAT32 на один и тот же диск может быть записано информации на 10. 15% больше, чем при использовании FAT16.
Кроме того, необходимо отметить, что FAT32 обеспечивает более высокую надежность работы и более высокую скорость запуска программ.
Обусловлено это двумя существенными нововведениями:
- Возможностью перемещения корневого каталога и резервной копии FAT (если основная копия получила повреждения)
- Возможностью хранения резервной копии системных данных.
Файловая система NTFS
Ни одна из версий FAT не обеспечивает хоть сколько-нибудь приемлемого уровня безопасности. Это, а также необходимость в добавочных файловых механизмах (сжатия, шифрования) привело к необходимости создания принципиально новой файловой системы. И ею стала файловая система NT (NTFS)
NTFS — от англ. New Technology File System, файловая система новой технологии. Как уже упоминалось, основным ее достоинством является защищенность: для файлов и папок NTFS могут быть назначены права доступа (на чтение, на запись и т.д.). Благодаря этому существенно повысилась безопасность данных и устойчивость работы системы.
Назначение прав доступа позволяет запретить/разрешить каким-либо пользователям и программам проделывать какие-либо операции над файлами. Например, не обладая достаточными правами, посторонний пользователь не сможет изменить какой-либо файл. Или не обладая достаточными правами, вирус не сможет испортить файл.
Кроме того, NTFS , как было сказано выше, обеспечивает лучшую производительность и возможность работы с большими объемами данных.
Начиная с Windows 2000, используется версия NTFS 5.0, которая, помимо стандартных, позволяет реализовывать следующие возможности:
- Шифрование данных — эта возможность реализуется специальной надстройкой NTFS, которая называется Encrypting File System(EFS) — шифрующая файловая система. Благодаря этому механизму шифрованные данные могут быть прочитаны только на компьютере, на котором произошла шифровка.
- Дисковые квоты — стало возможно назначать пользователям определенный (ограниченный) размер на диске, который они могут использовать.
- Хранение разреженных файлов. Встречаются файлы, в которых содержится большое количество последовательных пустых байтов. Файловая система NTFS позволяет оптимизировать их хранение.
- Использование журнала изменений — позволяет регистрировать все операции доступа к файлам и томам.
И еще одно нововведение NTFS — точки монтирования. С помощью точек монтирования можно определить различные не связанные между собой папки и даже диски в системе, как один диск или папка. Это имеет большую важность для сбора в одном месте разнородной информации, находящейся в системе.
Напоследок необходимо иметь в виду, что если для файла под NTFS были установлены определенные права доступа, а потом вы его скопировали на раздел FAT, то все его права доступа и другие уникальные атрибуты, присущие NTFS, будут утеряны. Так что будьте бдительны.
Устройство NTFS. Главная таблица файлов MFT
Как и любая другая файловая система, NTFS делит все полезное место на кластеры — минимальные блоки данных, на которые разбиваются файлы. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт. Однако общепринятым стандартом считается кластер размером 4 Кбайт. Именно он используется по умолчанию. Принцип существования кластеров можно проиллюстрировать следующим примером.
Если у вас размер кластера составляет 4 Кбайт (что скорее всего), а нужно сохранить файл, размером 5 Кбайт, то реально под него будет выделено 8 Кбайт, так как в один кластер он не помещается, а под файл дисковое пространство выделяется только кластерами.
Для каждого NTFS-диска имеется специальный файл — MFT (Master Allocation Table — главная таблица файлов). В этом файле содержится централизованный каталог всех имеющихся на диске файлов. При создании файла NTFS создает и заполняет в MFT соответствующую запись, в которой содержится информация об атрибутах файла, содержимом файла, имя файла и т.п.
Помимо MFT , имеется еще 15 специальных файлов (вместе с MFT — 16), которые недоступны операционной системе и называются метафайлами . Имена всех метафайлов начинаются с символа $, но стандартными средствами операционной системы просмотреть их и вообще увидеть не представляется возможным. Далее для примера представлены основные метафайлы:
- SMFT — сам MFT.
- $MFTmirr — копия первых 16 записей MFT, размещенная посередине диска (зеркало).
- $LogFile — файл поддержки журналирования.
- $Volume — служебная информация: метка тома, версия файловой системы, и т.д.
- $AttrDef — список стандартных атрибутов файлов на томе.
- $ — корневой каталог.
- $Bitmap — карта свободного места тома.
- $Boot — загрузочный сектор (если раздел загрузочный).
- $Quota — файл, в котором записаны права пользователей на использование дискового пространства.
- $Upcase — файл-таблица соответствия заглавных и прописных букв в именах файлов на текущем томе.
Нужен в основном потому, что в NTFS имена файлов записываются в кодировке Unicode , которую составляют 65 тысяч различных символов, искать большие и малые эквиваленты которых очень нетривиально.
Что касается принципа организации данных на диске NTFS, то он условно делится на две части. Первые 12% диска отводятся под так называемую MFT-зону — пространство, в которое растет метафайл MFT.
Запись каких-либо пользовательских данных в эту область невозможна. MFT-зона всегда держится пустой. Это делается для того, чтобы самый главный служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.
Однако при нехватке дискового пространства MFT-зона может сама уменьшаться (если это возможно), так что никакого дискомфорта вы замечать не будете. При этом новые данные уже будут записываться в бывшую MFT-зону.
В случае последующего высвобождения дискового пространства MFT-зона снова будет увеличиваться, однако в дефрагментированном виде (то есть не единым блоком, а несколькими частями на диске). В этом нет ничего страшного, просто считается, что система более надежна, когда MFT-файл не дефрагментирован.
Кроме того, при не дефрагментированном MFT-файле вся файловая система работает быстрее. Соответственно чем более дефрагментированным является MFT-файл, тем медленней работает файловая система.
Что касается размера MFT-файла, то он примерно вычисляется, исходя из 1 МБ на 1000 файлов.
Конвертирование разделов FAT32 в NTFS без потери данных. Утилита convert
Вы можете без особого труда конвертировать существующий FAT32-раздел в NTFS. Для этого в Windows 8, Windows 8.1 предусмотрена утилита командной строки convert .
Параметры ее работы показаны на скриншоте.
Таким образом, чтобы конвертировать в NTFS диск D:, в командную строку следует ввести следующую команду:
После этого от вас попросят ввести метку тома, если такая есть (метка тома указывается рядом с именем диска в окне Мой компьютер. Она служит для более подробного обозначения дисков и может использоваться, а может не использоваться. Например, это может быть Files Storage (D:).
Здесь Files Storage — это метка тома d:.
Для конвертации флешки команда выглядит так: