Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Зачем нужны драйверы. Примеры использования драйверов

Читайте также:
  1. D.1. Примеры уязвимостей
  2. ISBN, УДК, ББК, авторский знак. Что это за коды и для чего они нужны?
  3. RENDERING 2. Нужны ли переводчики
  4. Анализ использования фонда заработной платы работников организации.
  5. Анализ состояния и использования трудовых ресурсов.
  6. Анализ факторов эффективности использования основных фондов.
  7. Барокко как стиль иск-ва. Примеры барокко в жив-си, ск-ре, арх-ре.

Лекция № 1. Введение

0) Что необходимо знать. Структура курса. Список литературы.

1) Зачем нужны драйверы. Примеры использования драйверов.

2) Что такое драйвер, типы драйверов и характеристики

3) Среда разработки.

4) Утилита BUILD. Checked и Free Build. Жизненный цикл разработки драйвера.

5) С и С++. Интегрированная среда разработки.

6) Установка, удаление, запуск и остановка драйвера.

 

Что необходимо знать. Структура курса. Список литературы.

Необходимо знать:

· C/C++

Крайне желательно знать:

· Win32 API

· Интегрированная среда Developer Studio

· Visual С++

· Ассемблер

· Работа процессора в защищенном режиме, особенно – организация памяти

Настоятельная рекомендация: На л/р иметь:

· справочник по Visual C++

· системное программирование в Windows

· справочник по командам ассемблера

 

Структура курса.

Курс рассчитан на 15 лекций (30 часов) + 4 лабораторных занятия по 4 часа, каждое разбито на 2 л/р

Форма отчетности по курсу – экзамен.

 

В процессе изложения могут даваться ссылки на следующую литературу (доступна в электронном виде в комп. зале):

1) Программтрование драйверов и систем безопасности. Сорокина, Тихонов, Щербаков

2) Программирование драйверов Windows. Солдатов.

3) Windows NT/2000 Native API Reference. Garry Nebbett.

4) Undocumented Windows NT. Dabak, Phadke, Borate.

5) Недокументированные возможности Windows 2000. Свен Шрайбер.

6) Недокументированные возможности Windows NT. Коберниченко.

7) Inside Microsoft Windows 2000. Соломон, Русинович.

8) Windows NT Device Driver Development. Peter G. Viscarola, W. Antony Mason

9) Developing Windows NT Device Driver. Edward N. Dekker, Joseph M. Newcomer

Зачем нужны драйверы. Примеры использования драйверов

Для чего нужно знание архитектуры ОС и понимание драйверов применительно к сфере защиты информации? Этот вопрос можно рассматривать с различных точек зрения:

· С точки зрения разработчика средств защиты информации

· С точки зрения преодоления средства защиты

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


 

Реализация почти всех перечисленных элементов системы защиты для ОС NT возможна только с применением драйверов:

· Защита локальных данных – либо FSD шифрующей файловой системы, либо драйвер-фильтр для прозрачного шифрования, либо перехват вызовов системных сервисов.

· Защита сетевых данных – драйвер протокола, NDIS-драйвер промежуточного уровня, собственная сетевая служба, фильтр стандартной сетевой службы (такие службы реализованы как файловые системы - FSD), перехват вызовов системных сервисов.

· Выявление нарушителя – для всех вышеприведенных вариантов – анализ событий, регистрация в журнале, запрос на подтверждение подозрительных действий.

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

Примеры драйверов.

Драйверы ядра можно разбить на 2 больших класса: драйверы аппаратных устройств и драйверы виртуальных устройств:

1) архитектура NT исключает использование устройства, если для него нет драйвера. Прикладному ПО доступ к аппаратуре запрещен. Поэтому самым очевидным примером драйверов является драйвер аппаратного устройства, предоставляющий прикладным программам интерфейс доступа к устройству. В области защиты информации задача написания таких драйверов весьма актуальна.

2) Драйвер виртуального устройства не работает с каким либо специализированным аппаратным устройством, однако предоставляет прикладным программам такие возможности по работе со стандартными ресурсами компьютера и ОС (процессор, память, порты, регистры, служебные структуры ОС), которые без драйвера были бы недоступны.

Что конкретно можно сделать с помощью драйвера виртуального устройства?

Как будет видно из следующих разделов, системная архитектура NT представляет собой набор модулей, связанных друг с другом стандартными, но далеко не всегда документированными интерфейсами. Благодаря этим интерфейсам можно производить как замену стандартных модулей на собственные, так и вставлять новые модули в «разрыв» связей между старыми. Такое устройство ОС позволяет разрабатывать новые модули (драйверы) для различных целей:

· «прозрачная», то есть невидимая для прикладных программ, обработка данных, например, шифрование и компрессия данных на диске или в компьютерной сети;

· расширение набора предоставляемых ОС сервисов;

· «прозрачное» сканирование на наличие вирусов;

· написание вирусов и закладок;

· средства сбора статистики о событиях для различных компонентов системы.

 

Следует иметь ввиду, что помимо общих правил разработки и взаимодействия драйверов существуют специальные правила для особых типов драйверов. В качестве примера можно привести драйверы файловой системы – FSD и сетевые драйверы – архитектура NDIS и TDI.

 

На уровне ядра можно создавать не только драйвер, но и какой либо компонент ОС, например, HAL. Существуют специальные модули HAL, реализующие системы реального времени. В принципе, можно задуматься над возможностью придания ОС NT черт распределенной ОС.

 


Дата добавления: 2015-11-14; просмотров: 67 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Берись и делай!| Типы драйверов и характеристики

mybiblioteka.su - 2015-2024 год. (0.008 сек.)