Безопасность файловых систем
2
Содержание
Введение…………………………………………………………
Глава 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 Блок схема файловой системы
Размер этих логических блоков файла совпадает или кратен размеру физического блока диска и может быть задан равным размеру страницы виртуальной памяти, поддерживаемой аппаратурой компьютера совместно с операционной системой.
В структуре системы управления файлами можно выделить базисную подсистему, которая отвечает за выделение дискового пространства конкретным файлам, и более высоко-уровневуюлогическую под
В современных ОС далее принято разбивать диски на логические диски (это также низкоуровневая операция), иногда называемые разделами (
Стандартный запрос на открытие (open) или создание (creat) файла поступает от прикладной программы к логической подсистеме. Логическая подсистема, используя структуру директорий, проверяет права доступа и вызывает базовую подсистему для получения доступа к блокам файла. После этого файл считается открытым, содержится в таблице открытых файлов, прикладная программа получает в свое распоряжение дескриптор (или handle в системах Microsoft) этого файла. Дескриптор файла является ссылкой на файл в таблице открытых файлов и используется в запросах прикладной программы на чтение-запись из этого файла. Запись в таблице открытых файлов указывает через систему аллокации блоков диска на блоки данного файла. Если к моменту открытия файл уже используется другим процессом, то есть содержится в таблице открытых файлов, то, после проверки прав доступа к файлу может быть организован совместный доступ. При этом новому процессу также возвращается дескриптор - ссылка на файл в таблице открытых файлов.
Современные ОС предоставляют пользователю возможность работать сразу с несколькими файловыми системами (Linux работает с Ext2fs, FAT и др.). Файловая система в традиционном понимании становится частью более общей многоуровневой структуры (см. рис. 2).
На верхнем уровне, на котором располагается так называемый диспетчер файловых систем (например, в Windows 95 этот компонент называется installable filesystem manager). Он связывает запросы прикладной программы с конкретной файловой системой.
Рис. 2. Архитектура современной файловой системы
Каждая файловая система (иногда говорят драйвер файловой системы) на этапе инициализации регистрируется у диспетчера, сообщая ему точки входа, для последующих обращений к данной файловой системе.
Та же идея поддержки нескольких файловых систем в рамках одной ОС может быть реализована по-другому, например, исходя из концепции виртуальной файловой системы. Виртуальная файловая система (vfs) представляет собой независимый от реализации уровень и опирается на реальные файловые системы (s5fs, ufs, FAT, NFS, FFS, Ext
1.2. Безопасность файловых систем
Безопасность компьютеров и компьютерных сетей сейчас, в связи с повсеместным распространением Интернета и электронной коммерции, все больше выходит на первый план. В любой серьезной организации при приеме на работу системного администратора одним из основных требований к нему является умение организовать безопасность системы и сетей.
Даже если вы устанавливаете один-единственный сервер, не исключена возможность, что кто-то попробует взломать его просто от скуки. Поэтому особо нельзя надеяться, что на ваш сервер или Web-страницу никто не покусится.
Надежность защиты системы
Следует помнить: «все, что один человек построил, другой всегда сможет поломать». Надежность защиты, в идеале, должна соответствовать следующему правилу: затраты взломщика на преодоление защиты должны существенно превышать стоимость поврежденных или украденных данных. Это, конечно, не означает, что домашнюю систему, на которой ничего важного нет, защищать не надо. Просто необходимо соразмерять затраченные усилия – для домашнего пользователя их надо потратить гораздо меньше, чем для банковской сети.
У защиты есть одна особенность – чем более безопасна система, тем больше усилий необходимо затрачивать на поддержание ее в рабочем состоянии, и тем более навязчивой становится сама система безопасности. Всегда необходимо соблюдать золотую середину между безопасностью системы и неудобствами пользователей, связанными с режимом безопасности.
Защита не бывает идеальной. Вы должны представлять, сколько времени и усилий необходимо потратить на восстановление или воссоздание данных при их потере.
Определение приоритетов защиты
До того, как начать настраивать безопасность системы, необходимо определить, от чего и как будет защищена ваша система, какие службы должны быть защищены в первую очередь и особо. Следует четко представлять, какая информация или какое оборудование наиболее ценно, что ни при каких обстоятельствах не должно пропасть или попасть к постороннему человеку, а что имеет минимальную ценность (было бы нелепо выстроить супермощную систему для защиты сочинений вашего ребенка и установить минимальную безопасность для банковских документов, стоящих миллионы).
Кроме того, всегда следует помнить – никаких поблажек для пользователей вне зависимости, насколько высокое положение они занимают. Пользователь, который имеет привилегии, неизбежно является брешью в безопасности.
Политика безопасности.
Если ваша задача – администрирование средней или большой сети, необходимо разработать документ, который называется «Политика безопасности» и определяет права и обязанности пользователей, меры по защите системы и действия, применяемые в случае нарушения безопасности системы.
Этот документ должен быть утвержден руководством фирмы, и с ним следует ознакомить каждого сотрудника, причем желательно под расписку. Чем проще и понятнее составлен документ, тем больше вероятность, что его поймут и будут им руководствоваться. Главное правило, которое должно быть четко зафиксировано: "То, что не разрешено – запрещено".
Основные направления защиты.
Прежде чем что-то защищать, необходимо знать, что, от кого и от чего.
• Физическая защита:
– защита от физического проникновения в компьютер;
– защита от аппаратных сбоев.
• Защита рабочей станции (локальная безопасность).
• Защита сервера:
– защита от пользователей;
– защита от внешнего мира.
• Защита сети:
– защита от проникновения извне;
– защита от взломов изнутри.
Физическая безопасность
Первое, что следует сделать, это позаботиться о физической безопасности системы. Нет никакого прока от программной защиты, если из сервера можно просто изъять жесткий диск и переписать данные. Необходимо выяснить, кто имеет прямой физический доступ к системе, а также можно (и нужно ли) защитить систему от их потенциально вредного воздействия.
Степень физической безопасности напрямую зависит от ситуации и финансовых возможностей. Домашнему пользователю, скорее всего, не нужна сильная физическая защита. Офисный компьютер может понадобиться обезопасить на время отсутствия пользователя. А если это сервер, то его физическая защищенность должна быть максимальна, в идеальном случае он должен находиться в бронированной комнате без окон, с сейфовым замком на стальной двери.
Замки.
Практически любой серверный корпус имеет специальный замок или отверстия для установки навесного замка. Как правило, наружные отсеки для винчестеров тоже имеют замки.
Для корпуса обычного компьютера дело обстоит похуже. Сейчас редко встретишь компьютерный корпус, у которого есть замок блокировки клавиатуры, хотя еще лет пять назад он был обязательным элементом любого компьютерного корпуса. Но даже при наличии такого замка эта защита является крайне слабой – как правило, к замку подходит любой ключ от аналогичных корпусов, а с помощью обыкновенной канцелярской скрепки можно открыть его за несколько секунд. Тем не менее, для неопытного взломщика замок является непреодолимой преградой.
Хуже дело обстоит с ноутбуками – его можно просто взять со стола. Но любой современный ноутбук имеет специальное отверстие, куда крепится замок, похожий на велосипедный.
Охрана жесткого диска.
Если на жестком диске хранится информация, которая ни в коем случае не должна попасть в чужие руки, и лучше ее уничтожить, чем допустить пропажу, то для этого необходимо предпринять дополнительные меры. Если у вас небольшой сервер или рабочая станция, имеет смысл жесткий диск, на котором хранится информация, установить в специальную съемную корзину, так называемый Rack Mount. Это позволит по окончании работы извлекать жесткий диск из компьютера и прятать в сейф. Для больших серверов такое сделать несколько затруднительно, но иногда имеет смысл. В случае, если к вам заявляются гости, которым «невозможно отказать», можно практически моментально извлечь жесткий диск и уничтожить его, разбив об пол. (Автору известна фирма, возле сервера которой стоит охранник, в случае попытки прорыва в серверную обязанный выстрелом из пистолета уничтожить жесткие дискию.)
BIOS
BIOS является самым первым звеном, от которого зависят настройки компьютера, и попытка проникновения в BIOS будет произведена взломщиком в 99 % случаев. Практически любая BIOS имеет возможность установить два типа паролей – на вход в систему и на вход в BIOS. Это не дает стопроцентной защиты (установки BIOS могут быть обнулены, если кто-то имеет доступ вовнутрь корпуса), но может быть хорошим сдерживающим фактором. Однако следует помнить, что в случае установки загрузочного пароля на сервере система не сможет загрузиться без вмешательства администратора. (Очень неприятно, когда в три часа ночи вас выдергивают из постели для того, чтобы вы ввели пароль в сервер.)
Загрузочные устройства.
Если не установлен пароль в BIOS, велика вероятность, что взломщик попытается загрузить систему с помощью системной дискеты, CD-ROM-диска, Zip-дисковода и тому подобных съемных устройств. Это дает ему полный доступ к жестким дискам компьютера. Поэтому, помимо установки пароля на вход в BIOS, необходимо запретить в BIOS загрузку со всех устройств, кроме жесткого диска. Так же рекомендуется либо отключить в BIOS сервера дисководы съемных устройств, либо (при наличии такой возможности) физически отключить флоппи-, Zip– и тому подобные дисководы и CD-ROM, а иногда даже вообще не устанавливать их в сервер.
Глава 2. Реализация безопасности файловых систем
2.1. Основные параметры безопасности файловой системы
Разрушение файловой системы зачастую более опасно, чем разрушение компьютера. Поэтому необходимо предпринимать специальные меры для сохранения структуры файловой системы на диске. Помимо очевидных решений, например, своевременное дублирование информации (backup), файловые системы современных ОС содержат специальные средства для поддержки собственной совместимости.
Целостность файловой системы.
Важный аспект надежной работы файловой системы контроль ее целостности. В результате файловых операций блоки диска могут считываться в память, модифицироваться и затем записываться на диск. Причем, многие файловые операции затрагивают сразу несколько объектов файловой системы. И, если, вследствие непредсказуемого останова системы, на диске будут сохранены изменения только для части этих объектов (нарушена атомарность файловой операции), файловая система на диске может быть оставлена в несовместимом состоянии. В результате могут возникнуть нарушения логики работы с данными, например, появиться потерянные блоки диска, которые не принадлежат ни одному файлу и, в то же время помечены как занятые или наоборот блоки, помеченные, как свободные, но в то же время занятые (на них есть ссылка в индексном узле) или другие нарушения.
В современных ОС предусмотрены меры, которые позволяют свести к минимуму ущерб от порчи файловой системы и, затем, восстановить ее целостность.
Очевидно, что для правильного функционирования файловой системы, значимость отдельных данных неравноценна. Искажение содержимого пользовательских файлов не приводит к серьезным (с точки зрения целостности файловой системы) последствиям, тогда как несоответствия в файлах, содержащих управляющую информацию (директории, индексные узлы, суперблок и т.п.), могут быть катастрофическими. Поэтому должен быть тщательно продуман порядок совершения операций со структурами данных файловой системы.
Рассмотрим, пример создания жесткой связи для файла. Для этого файловой системе необходимо выполнить следующие операции:
1. Создать новую запись в каталоге, указывающую на индексный узел файла
2. Увеличить счетчик связей в индексном узле
Если аварийный останов произошел между 1-й и 2-й операциями, то в каталогах файловой системе будут существовать два имени файла, адресующих индексный узел со значением счетчика связей, равному 1. если теперь будет удалено одно из имен, это приведет к удалению файла как такового. Если же порядок операций изменен и, как прежде, останов произошел между первой и второй операциями, файл будет иметь несуществующую жесткую связь, но существующая запись в каталоге будет правильной. Хотя это тоже является ошибкой, но ее последствия менее серьезны, чем в предыдущем случае.
Другим средством поддержки целостности является способ реализации файловой операции в виде транзакции, примерно как, как это делается в СУБД. Последовательность действий с объектами во время файловой операции протоколируется, и, если произошел останов системы, то, имея в наличии протокол, можно осуществить откат системы назад в исходное целостное состояние, в котором она пребывала до начала операции. Такого рода журналирование реализовано в NTFS.
Если же нарушение все же произошло, то для устранения проблемы несовместимости можно прибегнуть к утилитам (fsck, chkdsk, scan
Возможны также эвристические проверки. Например, нахождение индексного узла, номер, которого превышает их число на диске или нахождение в пользовательских директориях файлов принадлежащих суперпользователю.
Управление плохими блоками.
Наличие плохих блоков на диске обычное дело. Под плохими блоками обычно понимают блоки диска, для которых вычисленная контрольная сумма считываемых данных не совпадает с хранимой контрольной суммой. Часто появляются в процессе эксплуатации. Иногда они уже имеются при поставке вместе со списком, т.к. очень затруднительно для поставщиков сделать диск полностью свободным от дефектов. Два решения проблемы плохих блоков - одно на уровне аппаратуры другое на уровне ядра ОС.
Первый способ - хранить список плохих блоков в контроллере диска. Когда контроллер инициализируется, он читает плохие блоки и замещает дефектный блок резервным, помечая отображение в списке плохих блоков. Все реальные запросы будут идти к резервному блоку. Следует иметь в виду, что при этом механизм подъемника (наиболее распространенный механизм обработки запросов к блокам диска) будет работать неэффективно. Дело в том, что существует стратегия очередности обработки запросов к диску (подробнее см. главу ввод-вывод). Стратегия диктует направление движения считывающей головки диска к нужному цилиндру. Обычно резервные блоки размещаются на внешних цилиндрах. Если плохой блок расположен на внутреннем цилиндре, и контроллер осуществляет подстановку прозрачным образом, то кажущееся движение головки будет осуществляться к внутреннему цилиндру, а фактическое к внешнему. Это является нарушением стратегии и, следовательно, минусом данной схемы.
Решение на уровне ОС может быть следующим. Во-первых, необходимо тщательно сконструировать файл, содержащий плохие блоки. Тогда они изымаются из списка свободных блоков. Затем нужно сделать так, чтобы к этому файлу не было обращений. Если это возможно, то проблема решена.
2.2. Безопасность файловых систем в Windows 7
Рассмотрим резервное копирование как элемент надежности файловой системы на примере Windows 7. С помощью элемента панели управления Архивация и восстановление можно:
выполнять архивацию заданных папок по расписанию и восстанавливать их из резервной копии
создать полный образ системы
создать загрузочный диск для восстановления
В этой статье речь пойдет о возможностях резервного копирования Windows 7 - создании файловых архивов и дисковых образов.
Windows 7 позволяет создавать как резервные копии папок, так и полный образ разделов жесткого диска.
Тип архивации | Технология и возможности |
Пользовательские файлы | Архивация производится на уровне файлов. Сохранение резервных копий возможно на разделы NTFS и FAT32. Добавления к первоначальному архиву происходят инкрементно (т. е. добавляются только изменившиеся файлы). Для сжатия используется формат ZIP. Имеется возможность восстановления отдельных папок и библиотек. |
Образ раздела | Архивация производится на уровне блоков (в архив включаются только используемые блоки). Сохранение резервных копий возможно только на разделы NTFS. Полный образ сохраняется в формате VHD, при этом сжатия файлов не происходит. В дальнейшем образы создаются инкрементно, т. е. добавляются только изменившиеся блоки. Для этого используется функционал теневых копий. Последующее создание полных образов также возможно. Образы разделов дают возможность быстрого восстановления ОС и файлов в случае выхода из строя жесткого диска. |
Этот функционал в совокупности с возможностью загрузки в среду восстановления без установочного диска способен удовлетворить запросы большинства домашних пользователей. Теперь они вполне могут обходиться без сторонних программ резервного копирования.
Варианты размещения резервной копии файлов приводятся в таблице.
Размещение | Комментарии |
Внутренний жесткий диск | Вы можете разместить архивные файлы на: несистемном разделе того же физического диска, на котором установлена ОС любом разделе другого физического диска Рекомендуется второй вариант, ибо в случае выхода из строя системного диска вы потеряете как операционную систему, так и резервные копии. |
Внешний жесткий диск | Если настроена архивация по расписанию, внешний жесткий диск должен быть подключен на момент создания резервной копии. |
Локальная сеть | Поддерживается архивация только на компьютеры сети, работающие под управлением Windows 7. Безусловно, вам потребуются учетные данные для доступа к компьютеру, на котором размещается резервная копия. |

- Безопасность химически опасных веществ
- Безопасность человека
- Безопасность человека в чрезвычайных ситуациях
- Безопасность школьников в социальных сетях
- Безопасность экономического инструментария
- Безопасность эксплуатации грузоподъёмных машин
- Безопасность эксплуатации грузоподъёмных машин
- Безопасность туриского путешествия
- Безопасность туристов
- Безопасность туристов
- Безопасность туристов
- Безопасность туристов. Курорты Краснодарского края
- Безопасность условий труда
- Безопасность участников уголовного процесса. Правовая основа применения мер безопасности