Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Раскручивающиеся загрузчики. Назначение. Принцип многоступенчатой загрузки ОС



Обычно программу в ОП компьютера загружает загрузчик. Но сам загрузчик также является программой и, следовательно, каким-то образом когда-то чем-то должен загружаться в ОП. Более того, ОС также является лишь программой и, следовательно, тоже каким-то способом должна загружаться в ОП.

Задачу загрузки в ОП загрузчика и всей ОС решает специальный компонент, получивший название раскручивающего загрузчика.

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

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

В прочитанной записи находится более сложная программа за­грузки, которая уже может запросить оператора о варианте загрузки ОС и устройстве (например, разделе диска), с которого необходимо выполнить загрузку. Она читает начальную запись загрузки с за­данного устройства и передаёт ей управление.

В прочитанной записи уже содержится программа загрузчика конкретной ОС. Она находит ядро ОС, загружает его в ОП и пере­даёт ему управление.

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

Ядро инициализирует необходимые системные таблицы (в том числе таблицы управления ОП), считывает с диска таблицы фай­ловой системы и далее пытается найти (уже как файл) и загрузить предопределённый стартовый процесс, который будет определять да­лее всё поведение ОС с точки зрения пользователя.

В современных ЭВМ роль раскручивающего загрузчика играет программа, прошитая в ПЗУ. Причём прошита она таким образом, чтобы первая команда, которую будет выбирать процессор после сиг­нала начальной установки (Reset), оказалась первой командой этой программы. В результате всегда после команды Reset (при включе­нии питания компьютера такая команда генерируется аппаратурой автоматически) начинает выполняться программа раскручивающего загрузчика.

На некоторых ЭВМ принята другая схема. Первой командой, выбираемой процессором из ПЗУ после команды Reset, является ко­манда технологической программы монитора (пульта), предоставля­ющая пользователю возможность посредством простых команд с кла­виатуры выполнять команды прямого управления аппаратурой ком­пьютера: записать/считать данные указанной ячейки памяти, про­вести тест заданного устройства и т. п. Для инициализации раскру­чивающего загрузчика пользователь должен подать с клавиатуры специальную команду монитора, либо вручную записать в ОП про­грамму загрузчика в машинных кодах и передать ей управление.

Проблема безопасности в операционных системах. Основные вопросы защиты

Есть несколько причин для реализации средств защиты. Наибо­лее очевидная — помешать внешним попыткам нарушить доступ к конфиденциальной информации. Не менее валено, однако, гаранти­ровать, что каждый программный компонент в системе использует системные ресурсы только способом, совместимым с установленной политикой применения этих ресурсов. Такие требования абсолютно необходимы для надёжной системы. Кроме того, наличие защит­ных механизмов может увеличить надёжность системы в целом за счёт обнаружения скрытых ошибок интерфейса между компонента­ми системы.

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

К сожалению, построение защищенной системы предполагает необходимость склонить пользователя к отказу от некоторых инте­ресных возможностей. Например, письмо, содержащее в качестве приложения документ в формате Word, может включать макросы. Открытие такого письма может повлечь за собой запуск чужой про­граммы, что потенциально опасно. То же самое можно сказать про Web-страницы, содержащие апплеты.

Знание возможных угроз, а также уязвимых мест защиты, кото­рые эти угрозы обычно эксплуатируют, необходимо для того, чтобы выбирать наиболее экономичные средства обеспечения безопасности.

Считается, что безопасная система должна обладать свойствами конфиденциальности, доступности и целостности. Любое потенци­альное действие, которое направлено на нарушение конфиденциаль­ности, целостности и доступности информации, называется угрозой. Реализованная угроза называется атакой.

Конфиденциальная система обеспечивает уверенность в том, что секретные данные будут доступны только тем пользователям, кото­рым этот доступ разрешён (такие пользователи называются автори­зованными). Под доступностью понимают гарантию того, что авто­ризованным пользователям всегда будет доступна информация, ко­торая им необходима. И наконец, целостность системы подразумева­ет, что неавторизованные пользователи не могут каким-либо образом модифицировать данные.

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

Умышленные угрозы подразделяются на активные и пассивные. Пассивная угроза — несанкционированный доступ к информации без изменения состояния системы, активная — несанкционированное из­менение системы. Пассивные атаки труднее выявить, так как они не влекут за собой никаких изменений данных. Защита против пассив­ных атак базируется на средствах их предотвращения.

Можно выделить несколько типов угроз. Наиболее распростра­нённая угроза — попытка проникновения в систему под видом ле­гального пользователя, например, попытки угадывания и подбора паролей. Более сложный вариант — внедрение в систему программы, которая выводит на экран слово login. Многие легальные пользова­тели при этом начинают пытаться входить в систему, и их попытки могут протоколироваться.

Угрозы другого рода связаны с нежелательными действиями ле­гальных пользователей, которые могут, например, предпринимать попытки чтения страниц памяти, дисков и лент, которые сохрани­ли информацию, связанную с предыдущим использованием. Защита в таких случаях базируется на надёжной системе авторизации. В эту категорию также попадают атаки типа отказ в обслуживании, когда сервер затоплен мощным потоком запросов и становится фактически недоступным для отдельных авторизованных пользователей.

Наконец, функционирование системы может быть нарушено с помощью программ-вирусов. Многопользовательские компьютеры меньше страдают от вирусов по сравнению с персональными, по­скольку там имеются системные средства защиты.

Проектирование системы безопасности подразумевает ответы на следующие вопросы: какую информацию защищать, какого рода ата­ки на безопасность системы могут быть предприняты, какие средства использовать для защиты каждого вида информации?

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

Формируя политику безопасности, необходимо учитывать нес­колько базовых принципов.

1) Проектирование системы должно быть открытым. Наруши­тель и так всё знает (криптографические алгоритмы открыты).

2) Не должно быть доступа по умолчанию. Ошибки с отклонени­ем легитимного доступа будут обнаружены скорее, чем ошибки там, где разрешён неавторизованный доступ.

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

4) Давать каждому процессу минимум возможных привилегий.

5) Защитные механизмы должны быть просты, постоянны и встроены в нижний слой системы, это не аддитивные добавки.

6) Важна физиологическая приемлемость. Если пользователь видит, что защита требует слишком больших усилий, он от неё от­кажется. Ущерб от атаки и затраты на её предотвращение должны быть сбалансированы.

Приведённые соображения показывают необходимость продумы­вания и встраивания защитных механизмов на самых ранних стадиях проектирования системы.






Дата публикования: 2015-02-03; Прочитано: 1157 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...