Учебная работа. Реферат: Программно-аппаратная защита информации
«Программно-аппаратная защита инфы»
специальность 090104 «Всеохватывающая защита объектов информатизации»
Лекция № 1
Программные и аппаратные механизмы защиты
Почти все механизмы защиты могут быть реализованы как на программном, так и на аппаратном уровне, но наиболее стойкими числятся аппаратные реализации. Это соединено со последующими причинами:
1. Целостность программной защиты просто нарушить, это дает возможность злодею поменять метод функционирования защиты нужным образом, к примеру, вынудить функцию контроля электронно-цифровой подписи постоянно выдавать верные результаты. Нарушить целостность аппаратных реализаций часто нереально в принципе в силу технологии их производства.
2. Стоимость аппаратных средств защиты почти во всем увеличивается благодаря сокрытию защитных устройств на аппаратном уровне, злодей при всем этом не может их изучить в отличие от программной защиты.
Программно-аппаратные средства идентификации и аутентификации юзеров
Парольные подсистемы идентификации и аутентификации
Реализуются в открытых компьютерных системах. Являются более всераспространенными. В качестве идентификации употребляется Login (имя юзера), в качестве аутентификации – скрытый пароль.
Достоинства: дешевизна, возможность употреблять во всех компьютерных системах.
Недочет: самые уязвимые ко взлому:
— перебор пароля в интерактивном режиме;
— подсмотр, кража из общедоступного места;
— возможность намеренной передачи пароля другому лицу;
— кража БД учетных записей из общедоступного места;
— перехват вводимого пароля методом внедрения в КС программных закладок;
— перехват паролей передаваемых по сети;
— возможность внедрения общественного инжиниринга.
Большая часть минусов, характерных парольным системам, соединено с наличием людского фактора, который проявляется в том, что юзеры склонны выбирать легкозапоминаемые пароли, а сложнозапоминаемые стараются кое-где записать.
Для уменьшения воздействия людского фактора требуется воплотить ряд требований к подсистеме парольной аутентификации.
Требования:
1. задавание малой длины пароля для затруднения перебора паролей в лоб;
2. внедрение для составления пароля разных групп знаков для усложнения перебора;
3. проверка и отбраковка паролей по словарю;
4. установка наибольших и малых сроков деяния паролей;
5. внедрения эвристических алгоритмов, бракующих плохие пароли;
6. определение попыток ввода паролей;
7. внедрение задержек при вводе некорректных паролей;
8. поддержка режима принудительной смены пароля;
9. запрет на выбор паролей самим юзером и предназначение паролей админом, формирование паролей при помощи автоматических генераторов стойких паролей.
Численная оценка стойкости парольной защиты
А – мощность алфавита знаков, из которых состоит пароль;
L – длина пароля;
V – скорость перебора паролей злоумышленником;
T – срок деяния паролей;
P – возможность подбора паролей злоумышленником за время t, наименьшее срока деяния паролей
Лекция №2
Хранение аутентифицирующей инфы в открытых компьютерных системах. Типовые схемы хранения главный инфы. защита БД аутентификации
.
При работе с открытыми КС нужно обеспечить защиту аутентифицирующей инфы, хранимой в КС. В открытых КС нередко отсутствуют наружные очень защищенные от НСД устройства, хранящие аутентифицирующую информацию, и данную информацию, применяемую для аутентификации, приходится хранить в настоящем объекте файловой системы (БД аутентификации).
Эту информацию нужно защищать от 2 главных видов угроз:
— угроза конкретного доступа злодея к БД аутентификации с целью ее копирования, модификации, удаления;
— угроза несанкционированного исследования БД аутентификации.
защита от первого вида опасности реализуется, как правило, на уровне ядра ОС методом ограничения доступа к той БД аутентификации всех субъектов, кроме привилегированных. Или защита от данного вида угроз реализуется методом определения дискреционной политики сохранности. Но, как правило, методы защиты от угроз первого вида не работают корректно и их можно обойти, используя имеющиеся уязвимости.
Потому при защите БДА большее внимание уделяется защите от несанкционированного исследования их содержимого.
способы:
1). Шифрование
Таковой подход к закрытию содержимого БД аутентификации не является стойким, потому что:
1. Шифрование обязано быть на ключах, которые нужно хранить. Хранение в операционной системе неприемлимо.
2. При аутентификации юзера нужно расшифровать пароль, тем нарушить его секретность. Таковой метод также уязвим к атакам, к примеру, к атакам, заключенным в пошаговом исследовании процесса аутентификации при помощи узнаваемых отладчиков.
2). Хэширование
Для защиты от исследования БДА употребляется две типовых схемы хранения главный инфы:
Схема 1
Пусть юзер с Ni имеет идентификатор и ключ идентификации , тогда 1-ая типовая схема подразумевает наличие в БД аутентификации 2-ух главных полей:
№
информация для идентификации
Информация для аутентификации
1
ID1
E1
2
ID2
E2
…
n
IDn
En
– функция хэширования. Функция обязана удовлетворять последующим свойствам:
1). Необратимостью: вернуть может быть было бы лишь полным перебором
2). Возможность совпадения хэшей 2 произвольно взятых сообщений обязана быть чрезвычайно мала, если длина сообщения меньше длины хэша, то возможность обязана быть равна нулю.
3) Рассеивание – при мельчайшем изменении сообщения его хэш должен значимым образом изменяться.
При использовании таковой схемы хранения главный инфы, ОС в очевидном виде не понимает те ключи, пароли, которые употребляются юзером для входа в систему.
метод аутентификации юзера будет смотреться последующем образом:
юзер вводит идентификатор при входе в систему. Подсистема аутентификации отыскивает наличие данного идентификатора в БД аутентификации. Если данный идентификатор не найден, то идентификация отклоняется. Если же введенный идентификатор равен некоторому ,
то подсистема аутентификации извлекает , соответственный ему. Дальше юзер вводит пароль k. Подсистема аутентификации вычисляет . Если , то аутентификация принимается.
Недочетом данной схемы будет то, что довольно нередко закрытые образы паролей формируются как . Тогда юзеры, имеющие однообразные пароли, будут иметь одни и те же хэши. Злодей, найдя схожую ситуацию, в состоянии сделать вывод, что юзеры употребляют однообразные пароли.
Для устранения этого вводится 2-ая схема аутентификации.
Схема 2
2-ая типовая схема подразумевает хранение совместно с идентификатором случайной инфы , формирующейся при разработке учетной записи. именуется эмблемой привязки.
№
информация для идентификации
Информация для аутентификации
1
ID1
, S1
E1
2
ID2
, S2
E2
…
n
IDn
, Sn
En
В этом случае хэши будут различны. Данная схема употребляется в системах класса unix.
Утверждение о замене образца
Если злодей имеет доступ на запись в БД аутентификации, то он может пройти аутентификацию как хоть какой юзер КС, отраженный в ней, в том числе и как админ. Как следует, доступ на запись в БД аутентификации обязаны иметь лишь привилегированные субъекты.
защита баз данных аутентификации операционных систем класса
Windows
NT
.
В данных ОС БД аутентификации хранится в каталоге: winntsystem32config
БДА носит заглавие SAM, а файл System, в каком хранится ключ шифрования БД аутентификации.
В данной БД аутентификации хранится 2 вида хэшей:
— LANMAN, применяемый для удаленной сетевой аутентификации с ранешних версий Windows;
— NTLM, употребляется для локальной аутентификации.
метод вычисления хэша
LANMAN
к примеру, если пароль будет состоять из больших букв британского алфавита (26), строчных букв британского алфавита (26), цифр (10), особых знаков (13), то
Тогда время подбора сек
Используя хэш LANMAN, получим, что
время подбора пароля
Минусы:
— все знаки пароля преобразуются в большие, что уменьшает энтропию паролей, уменьшает место их перебора;
— пароль разбивается на две части, которые образуются независимо друг от друга;
При выбирании паролей больше 14 знаков хэши LANMANиз БД исчезают, как следует, нужно выбирать пароли из 15-16 знаков.
Хэш
NTLM
Хэш NTLM имеет длину 16 б. Любому из паролей длины наименьшей либо равной 16 знаков соответствует единственный хэш NTLM, по которому ОС будет определять правильность его ввода юзером. Но если избрать пароли больше 17 знаков, то для их найдутся остальные с длинноватой меньше либо равной 16 символам, которые будут иметь этот же самый хэш. В этом случае ОС будет пускать юзера на пароле наименьшей длины. Есть возможность, что длина таковых паролей будет весьма мала. Потому в целях сохранности внедрение паролей длиной больше либо равной 17 знаков нужно запретить. Для ОС, построенных на технологии NT, следует выбирать пароли 15-16 знаков.
Лекция № 3
Протоколы стойкой удаленной аутентификации юзеров. протокол CHAP, S/KEY. Удаленная аутентификация в Windows с внедрением хэша LANMAN
При удаленной аутентификации требуется обеспечить защиту от 2-ух главных видов угроз: 1) от опасности прослушивания канала связи злоумышленником; 2) от атак способом повторов (злодей, видя информацию, передаваемую при аутентификации, может употреблять её при прохождении следующих аутентификаций, даже не зная пароля).
Для разрешения этих заморочек требуется:
1) Передавать ключ аутентификации в закрытом виде
2) От клиента серверу должны передаваться при каждой аутентификации разные последовательности. При этом злодей не должен быть способен вернуть последовательность, требуемую для аутентификации, зная всю предысторию передачи сообщений.
При построении протокола удаленной неопасной передачи для разрешения вышеперчисленных заморочек употребляется 2 подхода:
1). Передача от сервера клиенту при запросе на аутентификацию случайного числа, которое будет применено при закрытии пароля.
2). Независящее формирование клиентом и сервером последовательности разовых паролей, которые не могут быть построены злоумышленником. Любой из таковых паролей действует в протяжении одной аутентификации.
Протокол
CHAP
По мере необходимости аутентификации клиента на сервере, сервер отправляет клиенту запрос на аутентификацию, за ранее сформировав на собственной стороне случайное число n, которое он включает в запрос. Клиент, зная пароль k, при помощи которого он будет проходить аутентификацию, сформировывает последующую последовательность и отсылает ее серверу. , зная ключ аутентификации клиента и сформированное им число , также вычисляет . Опосля чего же ассоциирует с . При аутентификация принимается.
протокол использования разовых ключей
S
/
KEY
В этом случае для неопасной аутентификации клиентом и сервером независимо друг от друга формируются последовательности разовых ключей, которые не может сформировать злодей. Эти пароли поочередно передаются от клиента к серверу при каждой последующей аутентификации. Если клиент и сервер употребляют ключ аутентификации k. Тогда последовательность разовых ключей формируется последующим образом:
Ключи передаются в оборотной последовательности от клиента серверу. В этом случае злодей, слушающий канал связи, зная разовый ключ Si
, выяснить последующий разовый ключ Si
-1
, не может в силу необратимости функции хэширования. Он может отыскать этот ключ лишь при помощи перебора. независимо от клиента может сформировывать ту же последовательность и выполнить проверку разовых паролей, переданных клиентом.
Недочеты:
— опосля исчерпания перечня разовых ключей возникает вопросец, какой ключ передавать последующим. Зацикливать эту последовательность недозволено, потому что злодей, слушающий канал связи, мог созидать всю предысторию передаваемых паролей, а означает, сумеет корректно сформировывать пароли.
Для устранения этого недочета, употребляют подход, основанный на передаче перед формированием последовательности разовых ключей случайного числа R от сервера клиенту. Это случайное число будет участвовать в формировании последовательности разовых ключей. Когда клиент исчерпает весь перечень паролей сервер передает клиент другое случайное число, и сформированная последовательность ключей будет иной:
Лекция № 4
Технические устройства идентификации и аутентификации
При идентификации и аутентификации юзеров при помощи технических устройств в качестве пользовательского идентификатора употребляется некоторое техническое устройство, содержащее неповторимый идентификационный код, который употребляется для решения задач идентификации обладателя, а отдельных вариантах данное устройство содержит и аутентифицирующую информацию, ограничивающее доступ к устройству. Более всераспространенными техническими устройствами, применяемыми для идентификации и аутентификации, являются:
1. iButton (Touch Memory)
2. бесконтактные радиочастотные карты Proximity
3. пластмассовые карты (со штрих-кодом и магнитной полосой)
4. карты с памятью
5. смарт-карты
6. электрические ключи e-Token
Устройства
iButton (Touch Memory)
Создано DallasSemiconductor.Представляет собой устройство идентификации юзера, содержит в себе неповторимые идентификаторы, присваиваемые юзеру. Данное устройство содержит в себе 3 компонента:
1. ПЗУ, которое хранит 64-разрядный код, состоит из 8-битового кода устройства, 48 бит – код идентификатора, 8 бит – контрольная сумма. Содержание ПЗУ неповторимо и не быть может перепрошито в предстоящем.
2. ОЗУ (энергонезависимая статическая память) создана для хранения некоторой инфы. В одном из типов эта энергонезависимая память защищена от НСД. В других типах – не защищена.
3. Элемент питания – интегрированная литиевая батарейка 3В, питающая энергонезависимую память
Опосля истечения 10 лет, память становится не доступна. Данное устройство быть может применено для решения задачки идентификации (доступно лишь ПЗУ).
Виды устройств:
Тип (iButton)
Размер ОЗУ (б)
Примечание
DS1990
-
Лишь идентификатор
DS 2400
-
DS1992
128
DS 1993
512
DS 1994
512
Таймер-календарь
DS1996
8192
DS1920
512
Указатель температуры
iButton с идентификатиром
i
Button
с энергонезависимой памятью
Статическая память не защищена от несанкционированного доступа операции чтения и записи вероятны без ограничений. Элемент питания подпитывает статическую память и буфер обмена для хранения в их инфы. В случае разряда литиевой батарейки доступ вероятен лишь к ПЗУ. Буфер употребляется для обеспечения корректной записи данных в статическую память для защиты от сбоев. При записи данных происходит последующий процесс: диспетчер памяти сначала записывает данные в буфер, дальше читает эти данные из буфера и ассоциирует их с эталонными, в случае совпадения диспетчер памяти дает команду на перенос инфы из блокнотной памяти в статическую
.
i
Button
с энергонезависимой памятью и таймером
Данный тип содержит снутри себя энергонезависимый таймер, который может употребляться для защиты устройств по сроку использования.
DS
1994
L
В регистр статуса помещают свои флаги по наступлению событий таймер-календарь, интервальный таймер и счетчик цикла.
В регистр управления могут закладываться ограничения на доступ к таймеру-календарю, интервальному таймеру, регистру статуса, условия для таймера-календаря, интервального таймера, счетчика цикла, для которого будут устанавливаться флаги в регистре статуса. к примеру, идентификатор быть может выдан юзеру на 3 месяца. В этом случае можно заложить условие установки в регистр статуса флага, говорящего о истечении срока деяния идентификатора.
Достоинства: маленькая стоимость, может употребляться в промышленных приложениях «с твердыми критериями наружной среды»
Недочеты: сравнимо низкая скорость передачи инфы от iButtonа к устройству чтения, большая возможность сбоя в процессе чтениязаписи.
Совершенно iButton не создана для хранения аутентифицирующей инфы в силу того, что энергонезависимая память не защищена от НСД. Но, при использовании разных приемов на наружных устройствах его можно приспособить для хранения секретной инфы. К примеру в устройствах «Соболь» (плата) в iButton хранятся закрытые пароли юзеров. Замок Соболь хранит некоторый ключ снутри себя, который употребляется при шифровании пароля. В iButton же в энергонезависимой памяти хранятся зашифрованные на этом ключе пароль юзера.
Бесконтактные радиочастотные карты
Proximity
Данное устройство употребляется лишь для идентификации обладателя, хранит внутри себя неповторимый код, применяемый для идентификации, не просит точного позиционирования перед устройством чтения, передают код на расстоянии.
Proximity-карта содержит снутри себя ПЗУ с идентификационным кодом, питающиеся через антенну при попадании в электромагнитное поле считывателя. Считыватель Proximity-карт повсевременно генерирует электромагнитное излучение определенной частоты, карта, попадая в электромагнитное поле запитывается через антенну, заряжается конденсатор, который «выстреливает» идентификационным кодом на определенной частоте. Идентификационный код принимается считывателем. Сама карта элемента питания не имеет.
Пластмассовые карты
Пластмассовая карта – пластинка 85,6*53,9*0,76 мм, сделана из специальной устойчивой к тепловым и механическим действиям пластмассы.
Все требования к пластмассовым картам изложены в эталоне ISO7816.
Данные карты делают функцию идентификации обладателя, а отдельные типы карт к тому же функцию аутентификации.
Выделяют 2 типа пластмассовых карт: пассивные и активные.
Пассивные карты делают лишь функцию хранения инфы без её обработки в активном режиме работы.
Активные карты могут не считая хранения инфы делать её обработку.
К пассивным картам относятся карты со штрих-кодом и карты с магнитной полосой.
Карты со штрих-кодом отыскали наибольшее применение при идентификации продуктов в магазинах и на складах. В истинное время нередко для решения данной задачки также употребляют бесконтактные радиочастотные карты.
Карты с магнитной полосой употребляют магнитную полосу для хранения инфы. Магнитная полоса состоит из 3-х дорожек, расположенных с оборотной стороны карты имеют ширину 0,5 дюйма.
1-ые две дорожки употребляют для хранения инфы, на третью дорожку информация может записываться. Но из-за низкой стойкости схожих карт, способности манипулирования, запись на третью дорожку, как правило, не практикуют.
Для производства этих карт употребляют устройства типа Plextor, Cardpress.
Активные карты: относят карты-счетчики, карты с памятью и карты с процессором. Данные карты разрешают делать обработку инфы.
Карты-счетчики употребляются для выполнения тех операций, которые требуют уменьшение остатка на лицевом счету держателя карты на некую фиксированную сумму. Как правило, это приложение с предоплатой.
Карты с памятью – это перезаписываемая карта (размер памяти от 32 б до 16 Кбайт), содержит область защита от несанкционированной записи. Довольно нередко употребляется для оплаты услуг телефонной связи, для хранения неконфиденциальной инфы, которую необходимо защитить от несанкционированного конфигурации целостности.
Карты с процессором употребляются для защиты, хранения и обработки инфы, хранимой на их.
Архитектура
SMART-
карт
Данные карты содержат последующие главные составляющие:
1. CPU — инфы, хранимой и обрабатываемой на смарт-карте
2. ROM — ПЗУ, хранение ОС смарт-карты (8 Кб)
3. RAM — оперативная память (256 б), употребляется для временного хранения инфы при выполнение криптографических операций
4. EEPROM — энергонезависимая память, употребляется для хранения файловой системы.
5. система ввода/вывода
Файловая система – система каталогов, любой из которых отвечает за поддержку какого – или приложения. В этих каталогах хранятся разные типы файлов. Любой из каталогов несет ответственность за определенное приложение, к примеру, электрический кошелек, ключи VPN для сотворения криптозащищенных тоннелей, защищенной электрической почты, ЭЦП. Для доступа к определенному приложению и связи с ним файла требуется применение ключа, для всякого приложения таковой ключ уникален. Для всякого типа объектов файловой системы определены свои операции, которые могут быть выполнены над одним типом объектов, но не могут быть использованы к объектам остальных типов. к примеру, для файла ключей не определено операций чтения, зато определена операция «употреблять».
Лекция № 5
идентификация и аутентификация юзеров при помощи биометрических устройств
Архитектура
к примеру, (390, 418, 502,471,355)
(389, 416, 501, 468, 353)
. Устанавливается пороговое
N – количество попыток аутентификации законных юзеров
M – количество отказов законным юзерам
— коэффициент неверных отказов
K – общее количество попыток аутентификации незаконных юзеров
L – количество процедур аутентификации
— коэффициент неверных подтверждений
системы контроля доступа (СКД)
Системы контроля доступа употребляется для реализации данного режима доступа на охраняемый объект и реализуют последующие главные функции:
— обеспечение санкционированного доступа служащих организации и наружных гостей на местность компании при помощи физических идентификаторов. В качестве ограничений по доступу участвует номер помещения, этаж, денек недельки, время суток
— сигнализация при попытках НСД;
— ведение перечня юзеров;
— учет рабочего времени служащих;
— учет движения служащих по организации;
— определение текущего местоположения;
— ведение архивов событий.
Главными составными элементами СКД являются:
— устройство чтения идентификаторов;
— исполнительные устройства (электрические замки, турникеты, шлюзы, шлагбаумы);
— ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), которое управляет СКД, содержит политику разграничения доступа и производит полный сбор и мониторинг инфы;
— контроллер управления доступом, воспринимает решения о допускенедопуске юзера на охраняемый объект.
По способу управления преграждающими устройствами СКД можно поделить на последующие типы:
— автономные (локальные) употребляется для управления одним либо несколькими преграждающими устройствами без передачи инфы на центральный пульт и без контроля со стороны оператора;
— централизованные (сетевые) употребляется для управления преграждающими устройствами с обменом информацией с центральным пультом, контролем и управлением системой со стороны оператора;
— всепригодные – содержит в себе функции как автономных, так и централизованных СКД. Работают в сетевом режиме под управлением центрального пульта, но способны перейти в автономный режим при отказе сети.
По количеству точек доступа СКД делится на 3 класса:
— малые, для которых единица точек доступа — это кабинет;
— средние – 10-ки точек доступа, тыщи юзеров;
— огромные – сотки точек доступа, 10-ки тыщ юзеров.
Схемы СКД
Автономные
Таковая система состоит из автономного контроллера, который хранит внутри себя БД идентификаторов. Он управляет работой всех других частей системы. В качестве исполняющего устройства выступает электрический замок, или защелка, которой контроллер дает команды на открывание. Для идентификации юзера употребляются Proximity либо iButton, подсоединенный к считывателю. Этот считыватель работает лишь на вход, как правило. Для выхода юзера из помещения предусмотрена клавиша открывания двери. Дверной контакт фиксирует открывание двери и употребляется для обеспечения корректной работы системы. В схожих системах может употребляться компьютерная техника для управления автономным контроллером, загрузки и считыванию из него инфы. Через специальную плату данный контроллер подключается к ЭВМ (Электронная вычислительная машина — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач), стоящей в помещении, на которую загружается особое ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), позволяющее обновлять список зарегистрированных идентификаторов в автономном контроллере, изменять политику разграничения доступа. Это ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) дозволяет в комфортном для юзера виде предоставлять информацию о проходах юзеров через эту дверь, вести учет рабочего времени, зрительно надзирать личность сотрудника.
Сетевые СКД
Контроллеры УД делают принятие решения о допускенедопуске юзера с определенным идентификатором. Зависимо от типа СКД контроллер может употреблять для хранения от 2000 до 32000 идентификаторов, владеет внутренней памятью определенного размера, в какой скапливается информация о проходах.
Диспетчерский пункт, общаясь с контроллером, загружает в него списки идентификаторов и политику разграничения доступа. С контроллера на диспетчерский пункт загружается статистика проходов. В случае утраты связи с диспетчерским пт КУД перебегает в автономный режим работы. Адаптеры употребляются для конкретного подключения исполняющих устройств и передачи от их инфы КУД.
Лекция №
6
защита программного обеспечения от несанкционированного использования
Содержит в себе:
1. Организационно-правовые меры
2. Правовые меры (распространение на программное обеспечение авторского права)
3. Технические меры
Модульная архитектура технических средств защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного копирования
Индивидуальностью всех технических мер защиты будет то, xто их реализация построена на выделении, или принудительном внедрении каких – или идентифицирующих частей в среде функционирования программки, на которые настраивается система защиты. В качестве таковых черт среды быть может применены серийный номер, главный файл, информация в реестре, в конфигурации файлов, конфигурация аппаратуры, физический недостаток носителей инфы.
Главные требования к системе защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного копирования:
1. таковая система обязана достоверно выявлять факт несанкционированного использования программки
2. реагировать на факт несанкционированного использования
3. противодействовать вероятным атакам, направленным на нейтрализацию защитных устройств
Система защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного копирования работает по последующему методу:
1. разраб ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) разрабатывает и вводит защитные механизмы в исполнительную программку
2. в эти защитные механизмы закладываются эталонные свойства среды, которые идентифицируют определенную копию программки и относительно которой будет проверяться легальность пуска
3. при любом запуске программки производятся последующие деяния:
снимают текущие свойства среды, они сравниваются с эталонными. Если сопоставление отдало хороший результат, то пуск программки считается санкционированным. программка пуска продолжает работать. Если сопоставление отдало плохой результат, то запускается блок ответной реакции.
За установку текущих черт среды отвечает блок ответной реакции. Выход этого блока поступает на блок сопоставления черт среды, который ассоциирует текущие свойства среды с эталонными.
По способу внедрения защитного кода в защищаемую программку различают встроенную и пристыковочную защиты.
Интегрированные механизмы защиты основываются на том, что система как самостоятельный программный модуль отсутствует. Эти механизмы защиты вводит сам разраб в начальный текст программки, используя, к примеру набор готовых API-функций защиты.
Достоинства:
1. Простота. При помощи библиотек и функций, поставляется вместе с ПА средствами защиты, от ПА средства можно достигнуть наибольшей эффективности
2. при реализации интегрированной защиты, разраб может запрограммировать всякую ответную реакцию программки на несовпадение черт с эталонными, что в свою очередь дозволяет наиболее отлично воплотить рекламные функции. к примеру, при отсутствии электрического ключа, может запускать программку в демонстрационном режиме.
3. защита делается не по детерминированному методу. Разраб сам описывает, когда и каким образом будут вызываться API-функции с ПА устройствами защиты, как будут обрабатываться возвращаемые ими результаты.
Недочет: непростая реализация.
Модуль противодействия нейтрализации защитных устройств затрудняет анализ злоумышленником защитного кода, противодействует вмешательству в его работу и производится по 2 фронтам:
1) статическое
2) динамическое
При статической нейтрализации злодей дизассемблирует программку при помощи таковых средств, как IdaPro, по приобретенному коду, разбирается с работой устройств, как их хорошо отключить.
При динамической нейтрализации вмешательство в работу программки делается в момент работы в настоящем времени при помощи имеющихся средств отладки, к примеру, SoftIce.
Пристыковочные механизмы защиты внедряются конкретно в исполнительный код, реализуется конкретно некоторого автоматического обработчика исполнительных файлов. Эти обработчики заключают исполнительный код программки в некоторую защитную оболочку, которой при старте программки передается управление. При старте программки запускается защитная оболочка, реализующая все защитные функции, проверки, по результатам которых принимается решение о запуске/незапуске программки. Они поставляются в виде некоторых wizad-ов. При использовании схожих wizard-ов от юзера требуется минимум действий, к примеру, указать программку, требующую защиту и метод защиты.
HASPEnvelopment
«+» 1. простота использования и простота внедрения
2. возможность защиты исполнительного кода от внутреннего исследования, реализация защитных устройств, противодействие отладки и дизассемблированию исполнительного кода
«-» 1. употребляется детерминированный метод, который могут попробовать вскрыть
2. твердая реакция защиты программки на несовпадение черт среды (отказ в запуске)
Блок сопоставления черт среды
Злодей, атакуя этот блок, или пробует отыскать эталонные свойства среды, которые ждет узреть блок защиты, или пробует видоизменять метод сопоставления черт среды таковым образом, чтоб он постоянно запускался по одной из веток – ветки верной регистрации (лицензионного пуска). В отдельных ситуациях таковая модификация сводится к изменению всего 1 б программки.
Для того, чтоб затруднить злодею атаку на этот блок, данный блок должен отвечать ряду требований:
1. установка значений черт среды и их сопоставление с эталонными обязано выполняться неоднократно и в протяжении всей работы программки
2. получение результатов сопоставления черт среды обязано быть распределено принудительно по всему коду программки, должны употребляться приемы, затрудняющие установку злоумышленником эталонных черт среды, установленной блоком защиты, может употребляться при формировании некого значения переменной, которая описывает индекс в массиве, где хранится адресок, на который должен осуществляться предстоящий переход
3. значения, получаемые от блока установки черт среды, лучше употреблять в качестве ключа для дешифровки кода программки.
Блок установки черт среды.
Более уязвимым местом данного блока является метод сбора черт среды и метод передачи их от ПА среды блока установки и от блока установки к блоку сопоставления. Если свойства среды по открытому каналу, хранятся в открытых объектах, то таковой метод защиты не является размеренным.
Лекция №
7
электрические ключи. защита программ при помощи электрических ключей HASP
Минусом таковых черт среды как серийный номер, конфигурация аппаратуры, главный файл, информация в секретном секторе диска, будет то, что злодей довольно просто может их раскрыть и выполнить взлом средством их имитации.
Для устранения схожих недочетов свойства среды нужно выносить во наружные очень защищенные от НСД устройства, которые затрудняют свою эмуляцию и дублирование.
Данную возможность предоставляют электрические ключи. Они принудительно вводят ПА среду, свойства среды, стойкие к эмуляции и дублированию.
Ключи являются разработкой израильской конторы Aladdin и употребляются для ЗПО от НС использования: предупреждают пуск программ при отсутствии электрических ключей, ограничивают наибольшее количество копии, одновременный пуск программ в сети, ограничивают время работы программки и ограничивают наибольшее количество её запусков.
Типы электрических ключей HASP.
1. HASP4 Standart
2. HASP4 Memo
3. HASP4 Time
4. HASP4 Net
HASP
Standard
Самая обычная модификация электрических ключей HASP. Содержит в себе лишь функцию шифрования и связанную с ней функцию отклика. Стоимость – 13$. Может реализовывать последующие функции по защите:
1. инспектировать наличие электрического ключа
2. подавать на вход функцию отклика разные значения и ассоциировать ответ с эталонными значениями
3. употреблять функцию шифрования для шифрования/дешифрования исполнительного кода программки либо применяемых данных.
Главные элементы защиты:
С каждым из электрических ключей связана некоторая серия, которая присваивает определенную разработку программного продукта и полностью может быть по желанию производителя всякого из выпускаемого им программного продукта. Снутри одной серии электрические ключи имеют одну функцию шифрования и одну функцию отклика. Для доступу к функциям электрического ключа, требуется познание кода доступа (2 по 16 бит). Снутри одной серии коды доступа схожи. юзер ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) не должен знать эти коды, они известны лишь производителю.
HASP
Memo
Данные ключи содержат в себе все функции HASPStandart. Не считая того, имеют неповторимый идентификационный номер и энергонезависимую память определенного объёма.
2 типа по объёму энергонезависимой памяти:
· HASP4 М1 – 112 б
· HASP4 М4 – 496 б
Не считая тех функций, которые можно воплотить при помощи HASP4 Standart, эти ключи могут:
4. хранить в энергонезависимой памяти различную секретную информацию, применяемую для защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) (ключи, адреса переходов и т.д.)
5. может быть хранить в энергонезависимой памяти информацию о отключенных и присоединенных модулях программки, доступных юзеру
6. может быть защищать программки по количеству запусков.
HASP
Time
При помощи данного ключа может быть ограничить срок работы программки и, обычно, употребляется для сотворения демо-версий программ, имеющих высшую стоимость, или при лизинге ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
Содержит в себе интегрированный календарь с датой и временем. Употребляется для защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) по срокам использования.
HASP
Net
Употребляется для ограничения наибольшего количества сразу запущенных копий программ в сети.
Методы защиты программного обеспечения при помощи электрических ключей
HASP
Можно реализовывать при помощи интегрированных и пристыковочных устройств.
Интегрированные – HASPAPI.
Пристыковочные HASPEnvelopment.
электрические ключи HASPMemo, Time и Net содержат в себе подсистему полного управления доступом (FAS), позволяющую защитить сразу несколько программ 1-го производителя, и ограничить их зависимо от типа ключей по количеству запусков, по сроку деяния, по количеству сразу запущенных копий.
электрические ключи HASPMemo, Time и Net владеют возможностью их удаленного перепрограммирования при помощи подсистемы RUS.
Для реализации удаленного управления формируется 2 утилиты: торговца и покупателя. Они формируются под определенный электрический ключ, привязывающийся к его идентификационному номеру.
Pattern
Code
Security
(Механизм защиты структурного кода)
Механизм PCSоснован на внедрении в начальные тексты программ шаблонов, в каких определены некоторые функции доступа к электрическому ключу. Данные функции, определенные в шаблонах, будут вызываться сокрытым образом из исполняемого кода программки. Для их не будет очевидным образом вызываться процедура HASP. Когда разрабом защиты для решения собственных задач делается очевидный вызов HASP, программка автоматом делает последовательность укрытых вызовов функций, определенных в шаблонах PCS. Всего таковых шаблонов можно найти до 25 штук. Внедрив через данные шаблоны вызовы укрытых процедур, разраб защиты может существенно усложнить трассировку защитных устройств, затруднить вмешательство снаружи в их работу.
Злодей, отключая очевидный вызов HASP, в реальности отключает огромное количество укрытых вызовов, итог выполнения которых отражается на функционировании программки, к примеру, вызовы могли делать дешифровку кода, получать отклики от электрического ключа, которые будут проводится в процессе предстоящей работы программки.
Лекция №
8
Защита программного обеспечения от исследования
исследование исполняемого кода программки дозволяет злодею разобраться с логикой работы защитных устройств, что дает возможность отключить их или обойти. При работе с аппаратными средствами защиты в исполняемом коде программки довольно нередко хранится секретная информация, к примеру, коды доступа к электрическому ключу, который не должен знать злодей. По другому говоря, возможность исследования кода является нужным условием взлома программных товаров. В связи с сиим исполняемый код нужно защищать от исследования. Для защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от исследования нужно обеспечить защиту от статического и динамического анализа.
В первом случае злодей пробует получить листинг программки на каком-либо языке для способности предстоящего исследования и исследования логики защитных устройств с внедрением таковых средств как IdaPro, Soucer.
Большая часть средств защиты от отладки основывается на обнаружении отладчиков в оперативки с целью предстоящего противодействия отладке, или на включенных в исполняемый код устройств, которые не могут быть корректно выполнены под отладкой в режиме трассировки. Работа отладчиков в настоящем режиме микропроцессора базирована на прерываниях int1, int3, которые устанавливают точки прерывания, в защищенном режиме работа отладчиков базирована на использовании регистра отладки dr0 – dr7.
Приемы защиты:
1) внедрение ловушек для отладчиков – трикинг, при помощи которого отладчик можно выявить в оперативки и принудительно окончить работу программки.
Один из приемов основан на том, что по команде popss последующая команда не быть может выполнена в режиме трассировки и она производится на настоящем микропроцессоре. В эту команду можно заложить защитный механизм.
pushss
popss
push f
pop ax
test ax, 100h
je debugger detected
2) переопределение стека в 0. Верхушка стека «вырастает» сверху вниз, потому опосля определения ее в ноль, неважно какая попытка положить что-то в стек приведет к его переполению и аварийному окончанию работы программки. В том числе не быть может вызвано ни одно прерывание.
3) Контроль исполняемого кода. установка точки прерывания в настоящем режиме микропроцессора просит модификации кода программки для защиты от установки точек прерывания можно временами надзирать исполняемый код на целостность.
4) В защищенном режиме можно повлиять на регистры отладки dr0-dr7, к примеру, временами обнулять либо употреблять для собственных нужд.
5) Обнаружение наличия отладчиков в оперативной среде методом использования целенаправленно оставленных в их «дыр»
6) Внедрение недокументированных способностей микропроцессора:
1. mov ax, cs:[100]=ds:es:cs:mov ax, [100]
2. cs:nop
7) Внедрение особенностей конвейеризации – можно написать исполняемый код, в каком инструкция видоизменит сама себя, становясь на б короче. Если схожая инструкция употребляется на настоящем микропроцессоре (не под отладкой), то и сама инструкция и последующие за ней уже находятся в конвейере микропроцессора и эта модификация никак не затронет. В режиме отладки будет употребляться измененный код.
Противодействие средствам статического анализа:
1. Шифрование исполняемого кода программки на добротных ключах. Всепригодное и более стойкое средство защиты.
2. Самомодифицирование кода программки. Подмена одних участков кода программки на остальные.
3. Внедрение меж инструкциями некоторой области данных
mov ax, 0CEBh
jmp label
db 1,2,3,4,5,6,7,8,9
label: mov ax, 1234h
4. Скрытие установок передачи управления
mov Word ptr cs:label[1], 1234h
……
label jmp 0000h
5. Внедрение косвенной передачи управления
mov bx, 1234h
……….
Jmp cs:[bx]
6. Внедрение необычных методов передачи управления
Для затруднения анализа исполняемого кода могут быть применены пробы необычных приемов передачи управления. Могут быть изготовлены моделирования одних инструкций через остальные. к примеру, jmp, call, int через подобные аннотации.
К примеру:
Обычный код
другой код
….
jmpm
……
m: ……..
mov ax, offset m
push ax
ret
……
m:….
call адресок подпрограммы
m:….
адресок подпрограммы: ……
ret
mov ax, offset m
push ax
jmp адресок подпрограммы
m:….
адресок подпрограммы:……
ret
…
ret
…
pop bx
jmp bx
7. Перемешивание кода программки
В данном случае разрабом системы защиты пишется особый модуль, который аннотации в исполняемом коде программки. Таковым образом, можно довольно отлично скрыть защитные механизмы от злодея, затруднить их осознание.
push ss
pop ss
push f
pop ax
test ax,100h
je Debugger detected
Адреса
инструкция
00000000
push ss
00000001
jmp 0A
00000003
pop ax
00000004
jmp 0D
00000006
je debugger detected
000000A
pop ss
000000B
push f
000000C
jmp 03
000000D
test ax, 100h
000000E
jmps 06
8. Обфускация – запутывание методом включения в код никому не подходящих процедур, условных операторов перехода и остальных запутывающих преобразований. к примеру, эмуляция машинки Тьюринга и команды под нее. время от времени в рамках данного подхода критические защитные механизмы пишутся в рамках установок виртуального микропроцессора, выдуманного разрабом, а в код программки вносятся обработчики данных установок.
Лекция №
9
систематизация средств атаки на средства защиты программного обеспечения
Программки-каталогизаторы
– оболочки файловых систем, к примеру, Far, TotalCommander. При помощи данных средств может быть:
— выполнить сопоставление дат сотворения файлов в каталоге, в каком установлено приложение. Если средства защиты употребляют какие-то файлы для хранения, к примеру, инфы о оставшемся количестве запусков, то ее дата будет различаться от других.
Программки поиска файлов и текстовых последовательностей
: HIEW, дозволяющие находить в прикладных программках и файлах данных требуемые последовательности. Злодей, таковым образом, может локализовать участки кода, ответственные за выполнение функций по сохранности.
Мониторы файловых операций
(FileMon, RegMon, PortMon). Данные средства разрешают злодею проанализировать активность программки, «общение» программки с файлами, реестром, устройствами через порты ввода/вывода.
Мониторы вызова подпрограмм и системных функций
(Spy++). При помощи данных средств можно найти, какие API-функции употребляются разрабом для вызова решения определенных задач.
Программки копирования областей оперативки на наружные устройства
(AdvancedMemoryDumper).
средства декомпиляции
(Cordonswf) представляют собой средства статического анализа исполняемого кода для исследования начальных текстов программ. Отлично работают для Basic, Flash
Средства редактирования ресурсов
(Passolo, ResourceHacker).
средства программки эмуляции аппаратных средств
(VirtualCD).
средства эмуляции ЦП и ОС
(VMWave)
Защита от разрушающих программных действий (РПВ)
Принципиальным моментом при использовании системы ЗИ является обеспечение потенциального невмешательства других присутствующих в системе программ в процесс обработки инфы it системой, работу системы ЗИ.
При помощи сторонних программ, присутствующих в компьютерной системе, злодей может воплотить опосредованный несанкционированны доступ, другими словами НСД, реализуемый злоумышленником не впрямую, а методом пуска в систему стороннего ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) – программных закладок, или внедрения его на шаге проектирования АС. Можно выделить 3 вида разрушающих программных действий (программных действий, которые способны нарушить штатное функционирование АС).
Эти программки могут воплотить последующие функции:
1. скрывать признаки собственного присутствия в оперативной среде
2. реализуют самодублирование и ассоциирование себя с иными программками. Самодублирование – процесс проигрывания программкой собственного кода, который не непременно совпадает с образцом, но реализует те же самые функции. Под ассоциированием соображают внедрение программкой собственного кода в исполнительный код иной программки так, чтоб при неопределенных критериях управление передавалось этому РПВ.
3. способны разрушать код других программ в оперативки КС
4. способны переносить фрагменты инфы из оперативки в некоторые области наружной памяти, доступной злодею
5. имеют потенциальную возможность исказить или подменить выводящуюся во внешнюю память информацию.
РПВ делятся на последующие классы:
1. Вирусы. Индивидуальностью является направленность на самодублирование и деструктивные функции. задачка скрытия собственного присутствия в ПА среде нередко не ставится
2. Программные «червяки» — РПВ, главный функцией которых является самодублирование методом распространения в сетях, используя уязвимости прикладных систем и сетевых сервисов.
3. «Троянские жеребцы». Для этих программ не характерно деструктивное действие. Данный класс РПВ нередко относят к вирусам, но, главный функцией РПВ данного класса, как правило, заключается в краже инфы, к примеру, номеров кредитных карт, или в имитации сбоя ЭВМ (Электронная вычислительная машина — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач), чтоб под видом ремонта злодей мог получить к ней доступ. Основная изюминка – ассоциирование или выдача себя за нередко применяемое ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) или сервисы.
4. Логические лючки. РПВ, представляющее собой недекларируемую возможность, внедренную на шаге проектирования кода в начальные тексты программного обеспечения.
5. Программные закладки. Как правило, реализуют функции с 3 по 5, их деяния могут быть ориентированы на кражу инфы, или отключение защитных функций.
Для того, чтоб РПВ получило управление, оно обязано находится в оперативки и активизироваться по некоторому общему для этого РПВ и прикладной программки, являющейся целью её действия, событию. Схожее событие именуется активизирующим.
Если РПВ находится в ПА среде и загружено в оперативную память, то при отсутствии для него активизирующего действия деструктивные индивидуальности этого РПВ невозможны.
В качестве событий могут выступать прерывания, связанные с выполнением определенных действий, а нередко действие, связанное с работой системы защиты, ввод с клавиатуры, прерывания по таймеру, операция с файлами и т.д.
Главные модели работы РПВ
1) Перехват. РПВ внедряется в оперативную среду и производит перехват и предстоящее копирование требуемой инфы в некоторые сокрытые области оперативки. к примеру, клавиатурные шпионы.
2) «Троянский жеребец» — РПВ встраивается в повсевременно применяемое ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), или сервис и делает кражу инфы. Или сервис при активном событии моделирует сбойную ситуацию.
3) «Наблюдающий» — РПВ встраивается в повсевременно применяемое ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) либо сервис и производит контроль обработки инфы, реализует контроль остальных РПВ. (Trojan Downloader)
4) Искажение или зачинатель ошибок.
РПВ, активируясь в компьютерной системе, искажает потоки выходных данных, заменяет входные данные, также инициирует либо подавляет ошибки, возникающие при работе прикладных программ.
Выделяют 3 главные группы деструктивных функций РПВ:
1. Сохранение фрагментов инфы во внешнюю память.
2. Изменение алгоритмов функционирования прикладных программ.
3. Блокировка определенных режимов работы прикладных программ.
Лекция №
10
Компьютерные вирусы как класс РПВ
Вирусы как класс РПВ владеют последующими функциями:
1. способность к самодублированию
2. способность к ассоциированию с иными программками
3. способность скрывать признаки собственного присутствия до определенного момента
4. ориентированы на деструктивные функции
Компьютерные вирусы делятся на:
· файловые
· загрузочные
· макровирусы
Актуальный цикл вирусов включает 2 фазы: латентную, когда вирус не проявляет собственного присутствия, и фазу конкретного функционирования.
Переход от латентной фазы к фазе выполнения производится по способу активизирующего действия. загрузка вируса в оперативку производится сразу с загрузкой инфицированного объекта. Главные методы загрузки зараженных объектов:
1) автоматическая загрузка при запуске операционной системы
2) внедрение в меню автозагрузки
3) через носители типа Flash
Фаза выполнения вируса включает последующие этапы:
1) загрузка вируса в память
2) поиск «жертвы»
3) инфицирование
4) выполнение деструктивных функций
5) передача управления объекту-носителю вируса.
По способу поиска «жертвы» вирусы делятся на:
1. те, которые делают активный поиск объектов
2. те, которые ведут пассивный поиск, другими словами устанавливают ловушки на заражаемые объекты
Инфицирование объектов может производиться или методом обычного самокопирования кода вируса в исполнительный код, или может употреблять наиболее непростой метод, осуществляя мутацию исполнительного кода вируса при его самодублировании. Сущность мутации сводится к изменению кода таковым образом, чтоб вирус недозволено было найти по фиксированным сигнатурам. Может употребляться шифрование кода на разных ключах.
Сущность мутации кода может заключается в изменении порядка независящих инструкций, в подмене одних регистров на остальные, внедрение в исполнительный код мусорных конструкций, в подмене одних инструкций иными.
Вирусы, мутирующие в процессе самокопирования именуются полиморфными. Если неполиморфные вирусы могут быть идентифицированы в ПА среде методом их поиска по сигнатурам, то полиморфные вирусы не имеют сигнатуру, по которой бы они совершенно точно идентифицировались.
Для защиты от вирусов более нередко используют антивирусные мониторы, сканнеры, ПА средства, не допускающие инфецирование вирусами объектов операционной среды, не допускающие проникновение в КС.
Более нередко применяемые пути проникания вируса в КС:
1. носитель инфы с зараженным объектом;
2. электрическая почта;
3. компьютерная сеть.
Способы борьбы с РПВ
1. Контроль целостности, системных событий, прикладных программ, применяемых данных
2. Контроль цепочек прерываний и фильтрация вызовов, критичных для сохранности систем прерываний
3. Создание изолированной программной среды
4. Предотвращение результатов действия РПВ, к примеру, аппаратная блокировка записи на диск
5. Поиск РПВ по характерным им либо соответствующим последовательностям – сигнатурам
Сигнатура – неповторимая последовательность кода, характерная вирусу, её присутствие в исполняемом коде гласит о конкретном присутствии РПВ. Можно поступить по-другому: разрешить запускать системе лишь те модули, которые имеют известную сигнатуру.
6. Поиск критичных участков кода, методом его синтаксического анализа, выявление синтаксических соответствующих конструкций исходя из убеждений РПВ, к примеру, вирусов.
7. Тестирование программ и компьютерной техники на испытательных щитах, в испытательных лабораториях, идентификация критерий, возникающих в ПА среде, при которых она начинает вести себя неправильно.
8. способ Мельсона – тестирование всех путей переходов программке.
1-ый и 2-ой способ результативны, когда сами контрольные элементы не подвержены действию закладок. Если этого не обеспечить, веб-сайт на котором находится таковая ссылка в Избранное (Favorites) тк обычно таковая ссылка активизирует скрипт который без вашего подготовительного согласия зано может видоизменять метод контроля целостности, подменить контрольную сумму.
Изолированная программная среда
При отсутствии активизирующих событий для программной закладки, её деструктивное действие нереально, даже если она находится в ПА среде. Потому одним из методов защиты от РПВ можно нейтрализацию всех активных событий ПЗ.
ИПС характеризуется выполнением последующих критерий:
1. на ЭВМ (Электронная вычислительная машина — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач) с испытанным ==BIOS-ом установлена испытанная ОС;
2. достоверно установлена неизменность ОС и BIOSа для текущего сеанса работы юзера;
Эта достоверность обязана достигаться лишь методом использования аппаратных средств, процедура контроля целостности которых прошитая в их ПЗУ, контроль целостности должен производиться в протяжении всего сеанса работы юзера, начиная с самых различных шагов загрузки ЭВМ (Электронная вычислительная машина — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач).
3. не считая испытанных программ в ПА среде не запускалась и не запускается никаких других программ. Испытанная программка перед пуском контролируется на целостность;
4. исключен пуск испытанных программ вне испытанной среды;
5. все вышесказанные требования должны производиться для всех юзеров, аутентифицированных защищаемыми механизмами.
идентификацию и аутентификацию юзера лучше также делать на аппаратном блоке.
ИПС при запуске программки юзера сразу делает проверку критерий:
· их принадлежность к списку разрешенных для записи
· их целостность
Лекция №
11
Сертификация программного обеспечения по уровню контроля отсутствия НДВ
Программное обеспечение, системы защиты, которые работают с секретной информацией, или с информацией, составляющей муниципальную тайну, обязано пройти проверки на наличие в их НДВ.
Под НДВ понимается многофункциональная возможность ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), не описанная в документации, или не соответственная описанным в документации., которая может привести к нарушению конфиденциальности, целостности, доступности инфы.
Проверка ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на наличие НДВ осуществляется согласно РД ФСТЭК 1998 г. «Защита от НСД. часть 1. ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) средств защиты. Систематизация по уровню контроля отсутствия НДВ». Согласно этому РД выделяется 4 уровня контроля, 1-высокий, 4 – маленький.
1 – системы, обрабатывающее информацию «Особенной Значимости»
2 — системы, обрабатывающее информацию «Совсем Секретно»
3- системы, обрабатывающее информацию «Секретно»
4 — системы, обрабатывающее секретную информацию
№
Наименование требования
Уровень
контроля
4
3
2
1
Требования к документации
1
Контроль состава и содержания документации
1.1
Спецификация (ГОСТ 19.202-78)
+
=
=
=
1.2
Описание программки (ГОСТ 19.402-78)
+
=
=
=
1.3
Описание внедрения (ГОСТ 19.502-78)
+
=
=
=
1.4
Объяснительная записка (ГОСТ 19.404-79)
-
+
=
=
1.5
Тексты программ, входящих в состав ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) (ГОСТ 19.401-78)
+
=
=
=
Требования к содержанию испытаний
2
Контроль начального состояния ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)
+
=
=
=
3
Статический анализ начальных текстов программ
3.1
Контроль полноты и отсутствия избыточности начальных текстов
+
+
+
=
3.2
Контроль соответствия начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) его объектному (загрузочному) коду
+
=
=
+
3.3
Контроль связей многофункциональных объектов по управлению
-
+
=
=
3.4
Контроль связей многофункциональных объектов по инфы
-
+
=
=
3.5
Контроль информационных объектов
—
+
=
=
3.6
Контроль наличия данных конструкций в начальных текстах
-
—
+
+
3.7
Формирование списка маршрутов выполнения многофункциональных объектов
-
+
+
=
3.8
анализ критичных маршрутов выполнения многофункциональных объектов
—
—
+
=
3.9
анализ метода работы многофункциональных объектов на базе блок-схем, диаграмм и т.п., построенных по начальным текстам контролируемого ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)
-
-
+
=
4
Динамический анализ начальных текстов программ
4.1
Контроль выполнения многофункциональных объектов
—
+
+
=
4.2
Сравнение фактических маршрутов выполнения многофункциональных объектов и маршрутов, построенных в процессе проведения статического анализа
-
+
+
=
5
Отчётность
+
+
+
+
Для программного обеспечения ввезенного производства состав документации может различаться от требуемого, но содержание обязано соответствовать требованиям, обозначенных в ГОСТ.
Контроль состава документации проводится группой профессионалов методом сопоставления списка представленных документов с требованиями руководящего документа для заявленного уровня контроля. При всем этом проверяется наличие неотклонимых (в согласовании с ГОСТ) разделов в представленных документах (полное соответствие ГОСТам не непременно, но, содержание обязано им соответствовать. А именно, это имеет смысл для ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) ввезенного производства, где понятие ГОСТов не так осмысленно. Эти проверки не автоматизируются).
Контроль содержания документации осуществляется, как по соответствию формальным требованиям ГОСТ к содержанию составных частей документов, так и по соответствию настоящим способностям программного обеспечения.
На основании проведенного контроля делается вывод о согласовании документации требованиям руководящего документа и о способности ее использования в процессе использования программного обеспечения.
Контроль начального состояния программного обеспечения.
Контроль заключается в фиксации начального состояния ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) и сопоставлении приобретенных результатов с приведёнными в документации.
Плодами контроля начального состояния ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) должны быть рассчитанные неповторимые значения контрольных сумм загрузочных модулей и начальных текстов программ, входящих в состав ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
Контрольные суммы должны рассчитываться для всякого файла, входящего в состав ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
Испытанное программное обеспечение фиксируется – т.е. со всех модулей снимаются контрольные суммы.
Для представленных загрузочных модулей начальных текстов контрольное суммирование обязано осуществляться с внедрением программного обеспечения фиксации и контроля начального состояния. Результаты контрольного суммирования оформляются в виде отчетов, являющихся приложением к протоколу испытаний.
Лекция № 12
Статический анализ начальных текстов программ
Статический анализ начальных текстов программ должен включать последующие технологические операции:
· контроль полноты и отсутствия избыточности начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на уровне файлов;
· контроль соответствия начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) его объектному (загрузочному) коду.
1. Контроль полноты и отсутствия избыточности
Полнота представленных начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) подтверждается фактом удачной компиляции и сборки исследуемого программного обеспечения с учетом результатов контроля соответствия начальных текстов загрузочному коду.
Для проверки полноты особых средств автоматизации не требуется – довольно факта удачной компиляции.
Для контроля избыточности начальных текстов на уровне файлов, при помощи анализатора начальных текстов найти перечень файлов, составляющих ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) и на базе анализа приобретенных начальных данных найти лишниие файлы, проанализировать их предназначение и обоснованность включения в состав программного обеспечения.
2. Контроль соответствия начальных текстов программного обеспечения
Контроль соответствия начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) его объектному (загрузочному) коду осуществляется способом сотворения загрузочных модулей из представленных начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), и их сопоставлением приобретенных модулей с модулями, входящими в состав дистрибутива.
Берутся предоставленные начальные тексты
и делается их контрольная сборка – т.е. они компилируется и приобретенные модули сравниваются по контрольным суммам с модулями зафиксированного ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) (см. пункт 2)
В случае отсутствия начальных текстов употребляются два подхода:
1. С восстановлением начальных текстов:
· дизассемблирование;
· статический анализ;
· динамический анализ;
· с внедрением отладчиков;
· с внедрением датчиков (датчики встраиваются в начальный текст, из которого позже поновой собирается программный продукт, который подвергается тестированию).
При использовании данного подхода, может быть, будет нужно итеративное дизассемблирование – с постепенными уточнениями.
2. Без восстановления начальных текстов – внедрение эмуляторов
Для контрольной сборки, кроме фактически начальных файлов, лучше иметь и среду сборки (т.е. все компиляторы и компоновщики, которые употреблял разраб – по другому, при на сто процентов самостоятельной сборке в лаборатории, расхождения по контрольным суммам практически гарантированно (т.е. собранные модули будут различаться от модулей зафиксированного ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)). Лучший вариант – когда контрольная сборка делается или на щите разраба (один либо несколько компов нужных для cборки ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), предоставляемые разрабом и на сто процентов готовые к сборке ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)), или конкретно у разраба.
Последовательность действий при выполнении трансляции начальных текстов, версия транслятора, также начальные данные (директивы) для транслятора должны соответствовать приведённым в сопроводительной документации.
Автоматизация тут предполагается на уровне командных
файлов для сборки либо автоматизации, предусмотренной в самих средствах
сборки.
3.2.4. Отчётность
По окончании испытаний оформляется отчет (протокол), содержащий результаты:
· контроля начального состояния программного обеспечения;
· контроля полноты и отсутствия избыточности начальных текстов контролируемого программного обеспечения на уровне файлов;
· контроля соответствия начальных текстов программного обеспечения его объектному (загрузочному) коду.
3.3. Требования к третьему уровню контроля
3.3.1. Контроль состава и содержания документации
Требования на сто процентов содержат в себе подобные требования к четвертому уровню контроля.
Не считая того, обязана быть представлена «Объяснительная записка» (ГОСТ 19.404-79), содержащая главные сведения о предназначении компонент, входящих в состав программного обеспечения, параметрах обрабатываемых наборов данных (подсхемах баз данных), создаваемых кодах возврата, описание применяемых переменных, алгоритмов функционирования и т.п.
3.3.2. Контроль начального состояния программного обеспечения
Требования на сто процентов содержат в себе подобные требования к четвёртому уровню контроля.
3.3.3. Статический анализ начальных текстов программ
Не считая подобных требований, предъявляемых к четвёртому уровню контроля, добавочно предъявляются последующие требования:
· контроль полноты и отсутствия избыточности начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на уровне многофункциональных объектов (процедур);
· контроль связей многофункциональных объектов (модулей, процедур, функций) по управлению;
· контроль связей многофункциональных объектов (модулей, процедур, функций) по инфы;
· контроль информационных объектов разных типов (к примеру, локальных переменных, глобальных переменных, наружных переменных и т.п.);
· формирование списка маршрутов выполнения многофункциональных объектов (процедур, функций).
Лекция № 13
Список типовых изъянов программного обеспечения
Разглядим список типовых изъянов программного обеспечения.
1. Неполная проверка характеристик и разброса переменных; нестрогий контроль границ их конфигураций.
2. Скрытое внедрение приоритетных данных.
3. Асинхронное изменение интервала меж временем проверки и временем использования.
4. Неверное преобразование в поочередную форму.
5. Некорректные идентификация, верификация, аутентификация и санкционирование задач.
6. Отказ предотвращения перехода за установленные в программке пределы доступа и возможностей.
7. Логические ошибки (к примеру, больше логических выражений либо результатов, чем операций перехода).
8. Незавершённые разработка и описание.
9. Недокументированные передачи управления.
10. Обход контроля либо некорректные точки контроля.
11. Неверное присвоение имен, внедрение псевдонимов.
12. Неполная инкапсуляция либо неполное скрытие описания реализации объекта.
13. Подменяемые контрольные журнальчики.
14. Передача управления посреди процесса.
15. Сокрытые и недокументированные вызовы из прикладных программ, установок ОС и аппаратных установок.
16. Не устранение остаточных данных либо отсутствие их адекватной защиты.
17. Неверное освобождение ресурсов.
18. Игнорирование отключения наружных устройств.
19. Неполное прерывание выполнения программ.
20. Внедрение характеристик ОС в прикладном пространстве памяти.
21. Не удаление средств отладки до начала эксплуатации.
Формы проявления программных изъянов
(Вариант 1)
1. Выполнение арифметических операций и обычных функций:
· деление на 0;
· переполнение разрядной сетки;
· отличие результатов арифметических операций от ожидаемых;
· воззвание к обычным функциям с недопустимыми значениями характеристик.
2. Ошибки, связанные с затиранием установок и переменных.
3. Ошибки управления:
· зацикливание – нескончаемое повторение одной и той же части программки;
· последовательность прохождения участков программки не соответствует ожидаемому;
· утрата управления, приводящая к ошибкам различного рода (воззвание к нелегальной области памяти, попытка выполнить нелегальную программку либо «не команду».
· 4. Ошибки ввода-вывода:
· «странноватый» вывод (на печать, на монитор и т.д.);
· сообщения о ошибках от системных программ ввода-вывода.
(Вариант 2)
1. Ошибки, приводящие к прекращению выполнения главных либо части функций управляющей системы на долгое и либо неопределенное время:
· зацикливание, другими словами поочередная циклическая реализация определенной группы установок, не прекращающаяся без наружного вмешательства;
· останов и прекращение решения многофункциональных задач;
· существенное искажение либо утрата скопленной инфы о текущем состоянии управляемого процесса;
· прекращение либо существенное понижение темпа решения неких задач вследствие перегрузки ЭВМ (Электронная вычислительная машина — комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач) по пропускной возможности;
· искажение действий обоюдного прерывания подпрограмм, приводящее к блокировке способности неких типов прерываний.
2. Ошибки, краткосрочно, но существенно искажающие отдельные результаты, выдаваемые управляющим методом:
· пропуск подпрограмм либо их существенных частей;
· выход на подпрограммы либо их части, резко искажающиеся результаты;
· обработка неверных либо очень искаженных сообщений.
3. Ошибки, не достаточно и краткосрочно действующие на результаты, выдаваемые управляющим методом.
Этот тип ошибок характерен, в главном, для квазинепрерывных величин, в каких вероятны маленькие отличия результатов за счёт ошибок. Эти ошибки в среднем не достаточно искажают общие результаты, но отдельные выбросы могут очень влиять на процесс управления и требуется довольно действенная защита от таковых редчайших значимых выбросов.
Лекция № 14
Необходимо подчеркнуть, что круг вопросцев, связанных с защитой информацией в операционных системах, является наиболее широким, чем вопросцы защиты, рассматриваемые ранее. тут возникают доп способности атак, доп уязвимости и т.д. тут, к примеру, нужно защищать приложение от действия от него другого приложения, что может привести к краху системы.
Защищенность операционной системы почти во всем охарактеризовывает защищенность всей компьютерной системы в целом. В связи с сиим, защите ОС нужно уделять много внимания на практике.
Систематизация угроз сохранности ОС
систематизация угроз по цели:
· Несанкционированное чтение инфы.
· Несанкционированное изменение инфы.
· Несанкционированное ликвидирование.
· Полное либо частичное разрушение операционной системы, полное либо частичное ее завешивание, завешивание программных модулей, физическое стирание с диска системных файлов (вирусы, DoS).
систематизация по принципу действия на ОС:
· Внедрение законных каналов получения инфы, к примеру угроза несанкционированного чтения при неправильном определения профиля юзера админом.
· Внедрение укрытых каналов получения инфы – внедрение недокументированных способностей ОС (переполнение буфера – пуск некого программного кода).
· Создание новейших каналов получения инфы при помощи программных закладок.
По нраву действия на ОС:
· Активное действие – несанкционированное деяния злодея в системе (подбор пароля, украли базу паролей).
· Пассивное действие – несанкционированное наблюдение злодея за действиями, происходящими в системе (сниффер).
По типу беспомощности защиты:
· Неадекватная Политика сохранности, в том числе, ошибки админа системы.
· Ошибки и недокументированные способности программного обеспечения ОС: лючки – случайные либо намеренные служебные входы.
· Ранее внедренная программная веб-сайт на котором находится таковая ссылка в Избранное (Favorites) тк обычно таковая ссылка активизирует скрипт который без вашего подготовительного согласия зано.
По способу действия на объект атаки:
· Конкретное действие.
· Превышение юзером собственных возможностей.
· Работа от имени другого юзера.
· Внедрение результатов работы другого юзера (перехват информационных потоков).
По способу действий злодея:
· В интерактивном режиме.
· В пакетном режиме (при помощи специально написанной программки, скрипта, которая действует без помощи других, без роли злодея).
По объекту атаки:
· ОС в целом.
· Объекты ОС (файлы, устройства, и т.д.).
· Субъекты ОС (юзеры, системные процессы, и т.д.).
· Каналы передачи данных.
По применяемым средствам атаки:
· Штатные средства ОС, без использования доп ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
· ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) третьих компаний (вирусы, вредные программки, отладчики, сетевые мониторы, сканеры).
· Специально разработанное ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
По состоянию атакуемого объекта на момент атаки:
хранение, передача, обработка.
Обычные атаки на ОС
1. Сканирование файловой системы
2. Кража главный инфы.
Простой вариант – подсматривание паролей, набираемых юзером.
3. Подбор пароля.
4. Сборка мусора
. В данном случае восстанавливается информация, которая помечена как удаленная, но реально не удаленная с диска либо из памяти.
к примеру, если в памяти обрабатывался секретный документ, то опосля закрытия редактора текста, можно просканировать память и выделить его.
5. Превышение возможностей.
Злодей употребляет дырки в ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) либо ОС и получает возможности, превосходящие те, которые были ему выданы в согласовании с политикой сохранности. Обычно это достигается методом пуска программки от имени другого юзера либо замены динамически подгружаемой библиотеки (скрипт МЭЛТ запускался от имени админа и копировал содержимое файлов в HTML, выдавая их другому юзеру).
6. Программные закладки.
7. Скупые программки.
Так именуются программки, целенаправленно захватывающие значительную часть ресурсов компа, в итоге чего же остальные программки не могут производиться либо производятся очень медлительно и неэффективно. Нередко пуск скупой программки приводит к краху ОС.
Лекция № 15
понятие защищенной операционной системы
Операционная система именуется защищенной
, если она обеспечивает защиту от главных классов угроз, рассмотренных ранее.
Данная система обязана непременно содержать последующие составляющие:
1. средства разграничения доступа юзеров к ресурсам.
2. Средства проверки подлинности юзера.
3. средства противодействия случайному либо намеренному выводу операционной системы из строя.
Подходы к построению защищенных ОС.
2 подхода – фрагментарный и полный.
При фрагментарном подходе
сначала организуется защита от одной опасности, потом от иной и т.д. Пример фрагментарного подхода – когда берется незащищенная ОС, на нее устанавливается антивирусный пакет, система шифрования, регистрации действий юзеров и т.д.
Главный недочет – система представляет собой набор разнородных программных товаров, сделанных разными производителями. Они, как правило, работают независимо друг от друга и тяжело воплотить их тесное взаимодействие. Отдельные элементы этих систем могут работать неправильно в присутствии друг дружку. Отключив один элемент защиты, злодей может повлиять и на все другие элементы.
При всеохватывающем подходе
защитные механизмы вносятся в ОС на шаге проектирования ее архитектуры и являются ее неотъемлемой частью. Отдельные части тесновато ведут взаимодействие вместе. Так как подсистема защиты разрабатывается и тестируется в совокупы, конфликты меж отдельными ее компонентами фактически невозможны. При нарушении 1-го компонента, наступает крах системы, что не дозволяет злодею отключать другие функции. Это нереально воплотить при фрагментарном подходе.
При всеохватывающем подходе защиту проектируют так, что отдельные ее элементы заменяемы и надлежащие программные модули могут быть изменены иными модулями, реализующими соответственный интерфейс взаимодействия.
Административные меры защиты
Защиту ОС нереально обеспечить лишь аппаратно-программными средствами. Нужна неизменная квалифицированная поддержка со стороны админа. Без неизменной квалифицированной поддержки со стороны админа, даже самая надежная ПАЗИ оборачивается фикцией. Главными административными мерами защиты являются последующие:
1. Неизменный контроль правильности функционирования ОС, в особенности подсистемы ее защиты. Регистрация событий, ведение логов и контроль логов.
2. Неизменное исследование и корректирование политики сохранности. Опосля установки программных товаров, атак и т.д.
3. Инструктирование юзеров ОС о необходимости соблюдения мер сохранности при работе с ОС и контроль за соблюдением этих мер.
4. Постоянное создание и обновление запасных копий программ и данных ОС.
5. Неизменный контроль конфигураций в файлах конфигурации данных и политике сохранности ОС.
Адекватная Политика сохранности
Задачка обеспечения адекватной политики сохранности – одна из более принципиальных задач админа. Это довольно тяжелая задачка.
Существует некое противоречие — чем лучше защищена ОС, тем сложнее с ней работать юзерам и админам. Это обосновано последующими факторами.
1. Неинтеллектуальная СЗИ не постоянно способна найти, является ли некое действие юзера злостным. Потому часто она не пресекает некие виды НСД, или воспрещает законные деяния. Чем выше защищенность, тем обширнее класс законных действий, которые система воспрещает. к примеру, если некому юзеру запрещено создавать файлы на ЖД, то этот юзер не сумеет запустить ни одну программку, для которой нужно создавать временные файлы. Исходя из убеждений рассматриваемой политики без-ти, создание временного файла является НСД, и в том, что оно пресекается ошибки нет. Просто в данной ПБ класс НСД так широкий, что это препятствует обычной работе юзера с ОС.
2. Чем больше в системе защитных функций, тем больше времени и средств необходимо растрачивать на поддержание защиты. Некие юзеры установят unix и задумываются, что защищены. Но, защищенность unix просит долгого и упрямого труда админа.
3. Потребление системой защиты аппаратных ресурсов компа. Чем труднее защитные функции, тем больше требуется для поддержания их процессорного времени, тем меньше ресурсов для прикладных программ. В неких вариантах подсистема защиты может потреблять наиболее половины ресурсов компа (сервера сохранности).
4. Поддержание очень твердой политики сохранности может плохо сказаться на надежности функционирования ОС. (WINNT – отказ от выполнения определенных программ). В неких вариантах ошибки в организации политики тяжело выявить. Пример
– если запретить псевдопользователю SYSTEM, от имени которого производятся системные процессы, доступ к исполняемым файлам системных действий, ОС не сумеет загрузиться. Таковым образом, чрезмерная ПБ привела к краху ОС. В остальных вариантах, схожая ПБ может приводить к тяжело выявляемым ошибкам и сбоям в процессе функционирования.
Таковым образом, при определении адекватной политики сохранности не следует путаться добиться очень вероятного уровня защищенности ОС. нужно стремиться к оптимуму – не очень малой защищенности, да и не к чрезмерному ужесточению мер, чтоб это не влияло на работу в системе. При определении адекватной политики нужно управляться кругом решаемых задач. Не существует адекватной политики сохранности на все случаи жизни. Адекватность обусловятся кругом решаемых задач, архитектурой ОС, ее конфигурацией, прикладными программками, аппаратными способностями.
Большая часть современных ОС довольно всепригодны и могут применяться для решения самых разных задач. одна и та же система при соответственной настройке может употребляться для обеспечения функционирования автоматической банковской системы, WEB-сервера, системы электрического документооборота. Потому что опасности сохранности для всех 3-х применений ОС различны, то адекватная ПБ в любом случае будет своя.
Определение и поддержание адекватной политики сохранности ОС в общем случае можно поделить на ряд шагов.
1.анализ угроз.
Посреди вероятных угроз выделяются более небезопасные, защите от которых необходимо уделять максимум сил и средств.
2. Формирование требований к политике сохранности
. В данном случае админ описывает, какие средства и способы будут применяться для защиты от тех либо других угроз. к примеру, защиту от НСД можно решать или криптографическими средствами, или используя средства разграничения доступа, или подобающую аппаратуру. сразу – анализ побочных эффектов. Админ должен избрать лучший способ.
3. Формальное определение политики сохранности.
Тут админ непосредственно определяет, как должны реализовываться требования к защите. Довольно ли средств ОС, либо нужна установка доп пакетов защиты. В крайнем случае выбирается требуемое ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств). нужно предугадать порядок внесения нужных конфигураций в политику сохранности в форсмажорных ситуациях, к примеру, при попытке несанкционированного входа. Результатом данного шага является развернутый список опций конфигурации ОС и доп пакетов защиты с указанием того, в которых ситуациях, какие опции должны быть выставлены.
4. Претворение в жизнь политики сохранности.
5. Поддержание и корректировка политики сохранности.
к примеру, изменение политики при установление новейшего продукта.
Лекция № 16
Аппаратное обеспечение средств защиты
Под аппаратным обеспечение средств защиты ОС понимается совокупа средств и способов, применяемых для решения последующих задач:
· Управление оперативной и виртуальной памятью компа.
· Распределение процессорного времени меж задачками в многозадачной ОС.
· Синхронизация выполнения параллельных задач в многозадачной ОС.
· Обеспечение правильности совместного доступа задач к ресурсам ОС.
· Исключение тупиковых ситуаций в процессе совместного доступа задач к ресурсам ОС.
Большая часть из этих задач в значимой степени решаются при помощи аппаратно-реализованных функций микропроцессоров и остальных узлов компа.
Управление оперативной памятью
Основная угроза оперативки состоит в том, что один процесс, выполняющийся в многозадачной системе, несанкционированно получает доступ к оперативки другого процесса, выполняющегося параллельно. Данная угроза представляет опасность не только лишь исходя из убеждений обеспечения надежности ОС, да и исходя из убеждений обеспечения ее сохранности.
Есть 2 метода защиты ОЗУ процесса от несанкционированного доступа со стороны остальных действий.
1. При любом воззвании микропроцессора к ОЗУ осуществляется проверка правильности доступа. На теоретическом уровне, это дозволяет сделать полностью надежную защиту от НСД процесса к чужой памяти. Если выделить любому процессу отдельную область памяти и перекрыть все воззвания за ее пределы, доступ процесса к чужой памяти становится неосуществимым. Но, при всем этом становится фактически неосуществимым и взаимодействие действий. Это в значимой увеличивает требования к размеру оперативки и понижает эффективность функционирования действий (необходимо, чтоб они вели взаимодействие). В используемых на практике ОС, значимая часть ОЗУ, выделяемой процессу, является разделяемой, т.е. доступной остальным действиям. к примеру, в Windows все копии выполняющейся программки имеют общий код. Другими словами разные процессы имеют доступ к одной и той же памяти.
2. Другой подход к обеспечению защиты оперативки заключается в выделении любому процессу личного адресного места, аппаратно изолированного от остальных действий. При всем этом, по какому бы адресу ОЗУ не обратился процесс, он не сумеет обратиться к памяти, выделенной другому процессу, так как одному и тому же адресу в различных адресных местах соответствуют различные физические адреса оперативки. В данном случае микропроцессор должен поддерживать виртуальный режим. Виртуальные адреса преобразуются в физические неприметно для процесса. Данный подход обеспечивает защиту от случайных воззваний действий к оперативки остальных действий, но если защита реализуется целенаправленно, то такового рода подход не постоянно дозволяет защитить память. В данном подходе значимая часть физической памяти является разделяемой, другими словами проецируется сходу в несколько адресных пространств. При всем этом снова существует опасность намеренного несанкционированного действия 1-го процесса на иной.
Не считая этого, для предотвращения несанкционированного использования отладчиков, обычно выдвигается требование, согласно которому Политика сохранности, принятая в защищенной ОС не обязана позволять пуск отладчиков.
Управление планированием задач. способности атаки и защита.
Планирование задач в многозадачной ОС заключается в распределении ОС времени ЦП меж параллельно выполняемыми задачками. Неэффективное планирование задач может плохо сказаться как на эффективности и надежности функционирования ОС, так и воздействовать на ее защищенность.
Планирование задач быть может 2-ух типов.
1. Вытесняющее.
2. Не вытесняющее.
Во 2-м случае, выполнение задачки быть может прервано лишь по инициативе самой задачки. Задачка, выполнив нужные деяния, обязана без помощи других оборвать свое выполнение (Win 3.1). тут пока задачка не окончила обработку сообщения, остальные задачки не могут получить управления. Если задачка зациклилась, то остальные задачки никогда не получат управления – ОС зависает. Вывести из строя такую ОС можно просто написав пустой цикл. Обычно ОС с не вытесняющим планированием содержат спец. средства аварийного окончания задач в критических вариантах, но эти средства никогда не работают довольно накрепко.
При планировании задач с вытеснением, выполнение хоть какой задачки быть может прервано в хоть какой момент. Это реализуется, как правило, при помощи особых функций микропроцессора. На программном уровне это реализовано в OS/2 и данная реализация плохо сказывается на производительности ОС.
Основная угроза подсистеме планирования задач состоит в том, что злодей может остановить либо закончить выполнение задач, критических для обеспечения сохранности, операционной системы. Для нейтрализации данной опасности операционная система обязана владеть последующими качествами:
1. Поддерживается вытеснение задач.
2. Создание высокоприоритетных задач доступно лишь привилегированным юзерам.
3. Критические для обеспечения сохранности системы задачки защищены от несанкционированного вмешательства в ход их выполнения (к примеру, от несанкционированного понижения приоритета подсистем защиты).
4. Фатальный сбой в процессе функционирования одной из задач, критических для обеспечения сохранности, должен вызывать крах ОС.
Обеспечение правильности совместного доступа к объектам
В процессе функционирования многозадачной ОС нередко возникает ситуация, когда две либо наиболее задач сразу обращается к одному и тому же объекту ОС. Если при всем этом режим доступа хотя бы одной задачки допускает изменение данных объекта, не исключено, что воззвания остальных задач к данному объекту будет выполнены неправильно. к примеру, две пишут враз, одна пишет — иная читает.
В данном случае, если какая-то задачка изменяет данные, то доступ к сиим данным должен быть запрещен остальным задачкам. Единственное исключение – все задачки, изменяющие один и этот же объект открывают его в режиме, допускающем совместное изменение данных. Открывая объект таковым образом, задачка тем заявляет ОС, что она на сто процентов берет на себя ответственность за все деяния, связанные с обеспечением правильности совместного доступа к данным.
Предотвращение тупиковых ситуаций
Тупиковая ситуация может появиться тогда, когда несколько программ сразу пробуют открыть несколько одних и тех же объектов в режиме монопольного доступа. Если одна программка открыла одну часть объектов, а иная – другую, то ни одна из программ сумеет открыть другие объекты до того времени, пока иная программка их не закроет. Если функции закрытия объектов не предусмотрены ни в одной из программ, ситуация становится тупиковой – любая программка ожидает, пока иная закроет открытые ею объекты.
один из способов борьбы с тупиковыми ситуациями состоит в последующем: если программка для выполнения некой операции обязана открыть в монопольном режиме несколько объектов ОС, но не смогла этого создать, потому что некие из этих объектов уже открыты в монопольном режиме иной программкой, то она обязана закрыть все уже открытые объекты, подождать некое время и повторить операцию поначалу. Лучшие результаты – если время ожидания случаем.
Уровни привелигированности
Для реализации защитных устройств на Intel могут употребляться уровни привилегированности. Уровень привилегированности — это числовой идентификатор, принимающий значения от 0 до 3, который описывает способности задачки делать команды микропроцессора, видоизменять регистры и области ОЗУ и т.д. Чем меньше идентификатор уровня, тем наиболее полный доступ имеет задачка к аппаратным способностям микропроцессора. Огромное количество задач, владеющих неким определенным уровнем привилегированности- кольцо защиты. к примеру, если программка имеет уровень 3, то третье кольцо. Обычно код программки – в 3-ем кольце, а код ОС – в нулевом. 1-ое и 2-ое – изредка (OS/2). RISC – 2 кольца.
Лекция № 17
Защищенные механизмы в
NT
Ядро и драйверы устройств в NT – в нулевом кольце, весь остальной код ОС и программки – в 3-ем. 1 и 2 — не употребляются.
Планирование задач
Любой поток может находиться в одном из 3-х состояний –
1. Выполняющемся.
2. Ожидающем – ждет сигнала от наружного устройства.
3. Прерванном – поток готов производиться и ждет собственной очереди.
Многозадачность – вытесняющая. Для вытеснения – аппаратное прерывание от таймера.
Любой поток имеет Ценность – от 1 до 31. Чем выше Ценность, тем больше шансы у процесса получить квант времени. Для присвоения потокам ценностей в NT применяется двухступенчатая система – абсолютный Ценность потока рассчитывается на базе
1. Класса приоритета процесса.
2. Относительного приоритета потока.
Любой процесс имеет базисный ценность, определяемый классом приоритета процесса. Базисные ценности имеют последующие значения:
· Фоновый (idle): 4
· Обычный (normal): 9 если процесс обслуживает активное окно и 7 в неприятном случае.
· Высочайший (high): 13.
· Настоящего времени (real-time): 24.
Обычно хранители экрана – фоновый класс приоритета, прикладные программки – обычный класс и системные процессы – высочайший. Реальное время – изредка.
Относительные ценности могут быть последующими:
· Фоновый (idle): 16 если процесс имеет класс приоритета настоящего времени и 1 в неприятном случае.
· Низший (lowest): на 2 ниже базисного приоритета процеса.
· Пониженный (belownormal): на 1 ниже базисного приоритета процесса.
· Обычный (normal): совпадает с базисным ценностью процесса.
· Завышенный: на 1 выше базисного приоритета процесса.
· Высший: на 2 выше базисного приоритета процесса.
· Критический: 31, если базисный — Ценность настоящего времени либо 16 в ином случае.
В NT поддерживается временное увеличение приоритета, для потоков, которые длительное время ждут сигнала от медленнодействующих устройств (FD, Modem).
Обеспечение правильности совместного доступа к объектам.
В NT одновременный доступ нескольких действий к одному объекту разрешается лишь в том случае, когда все процессы открывают объект для чтения.
Исключение составляют лишь объекты типа файл, которые можно открывать в режиме совместной записи. В режиме совместной записи файл должны открывать все процессы. Любой процесс при записи/чтении должен заблокировать соответственный участок файла.
Для обеспечения правильности совместного доступа к данным, не являющимся объектами ОС, в NT используются мьютексы, критичные секции и семафоры.
Мьютексы
Мьютекс представляет собой объект файловой системы, который быть может или вольным, или принадлежать одному из потоков ОС. Два потока не могут сразу обладать одним и этим же мьютексом. NT поддерживает функции, которые разрешают сделать мьютекс или высвободить его. Любой поток, перед тем, как обратиться к вместе применяемым данным, пробует овладеть мьютексом. Если мьютекс в истинное время занят, поток ожидает его освобождения. Если несколько запросов на захват — то в порядке очереди вне зависимости от приоритета. Мьютекссы могут отлично употребляться для организации совместного доступа к оперативки, разделяемым меж несколькими действиями.
Аудит
Аудит — регистрация в особом журнальчике сохранности потенциально небезопасных событий для ОС. Необходимость ведения данного журнальчика обоснована последующими причинами:
1. Подсистема защиты ОС не владея умом, не способна отличить случайные ошибки юзеров от злостных действий (неверный ввод пароля — случайность либо взлом).
2. нужно хранить предисторию.
3. Если произошла атака, то админ должен узнать, когда была начата атака и каким образом она осуществлялась.
Требования к аудиту
1. Лишь ОС может добавлять записи в журнальчик сохранности ОС.
2. Ни один субъект доступа, в том числе и ОС не имеет способности редактировать либо удалять отдельные записи в журнальчике аудита.
3. Лишь пользователи-аудиторы, владеющие соответстующей привелегией, могут просматривать журнальчик аудита.
4. Лишь пользователи-аудиторы могут очищать журнальчик аудита. Запись о этом событии вносится в журнальчик.
5. При переполнении журнальчика аудита ОС аварийно завершает работу. Опосля перезагрузки работать с ОС могут лишь аудиторы.
Политика аудита
— совокупа правил, то, какие действия должны региться в журнальчике аудита. Для адекватной политики сохранности, в журнальчике аудита должны непременно регестрироваться последующие действия
1. Пробы входа-выхода юзеров из системы.
2. Пробы конфигурации перечня юзеров.
3. Пробы конфигурации политики сохранности, в том числе, и политики аудита.
Выбор других событий определяется админом. В некотрых ОС реализована возможность оповещения аудиторов о более принципиальных событиях, которые произошли в системе.
В ОС unix поддерживается регистракция последующих событий:
1. Загрузка-выгрузка системы.
2. Удачный вход и выход из системы.
3. Создание-уничтожение процесса.
4. Создать объект легкодоступным (открыть файл, сообщение, смонтировать файловую систему и т.д.).
5. Показать объект в субъект (выполнение программки).
6. Модификация объекта (запись в файл).
7. Создать объект труднодоступным (закрыть файл, размонтировать файловую систему и т.д.).
8. Создание объекта (файла,…).
9. Удаление объекта.
10. Изменение разграничения доступа.
11. Отказ доступа.
12.Деяния системных админов и операторов.
13. Процессы, которые пробуют превысить свои возможности.
14. Отказы в рессурсах (отсутствие файла, переполнение памяти, и т.д.).
15. Посылка сигналов и сообщений действиям.
16. Модификация процесса.
17. Действия системы контроля.
18. Действия базы данных (изменение базы данных сохранности и ее целостности).
19. Действия подсистемы (внедрение защищенных подсистем).
20. Внедрение приемуществ (контроль действий с внедрением разных приемуществ).
Разграничение доступа в
NT
Операционная система NT поддерживает 22 способа доступа субъектов к объектам. 6 из их представляют собой обычные способы доступа и поддерживаются для объектов всех типов.
· Удаление объекта.
· Получение и изменение атрибутов защиты объекта
· Изменение обладателя объекта.
· Получение и изменение характеристик аудита в отношении объекта.
· Синхранизация – ожидание сообщения от объекта.
Для всякого типа объекта поддерживается до 16 специфичных способов доступа.
Последующие способы доступа в NT требуют наличия у субъектов доступа особых превилегий.
· Создание новейшего сервиса.
· Блокирование перечня сервисов.
· Пуск сервиса.
· Останов сервиса.
· Приостановка/возобновление сервиса.
· Предназначение процессу маркера доступа.
· Получение либо изменение характеристик аудита в отношении объекта.
Привилегии субъектов в
NT.
В NT любой субъект доступа владеет неким набором приемуществ. Привилегии представляют собой права на выполнение субъектом действий, касающихся системы в целом, а не отдельных ее объектов. Назначать привилегии субъектам доступа может лишь админ.
Есть последующие привилегии:
· Льгота завершать работу ОС и перезагружать комп.
· Льгота устанавливать системное время.
· Льгота рассматривать производительность 1-го процесса.
· Льгота рассматривать производительность всей ОС.
· Льгота создавать неизменные объекты в ОЗУ.
· Льгота создавать запасные копии инфы, хранящей на твердых дисках.
· Льгота восстанавливать информацию из запасных копий.
· Льгота назначать действиям и потокам высочайшие ценности.
· Льгота изменять системные переменные среды.
· Льгота отлаживать программки.
· Льгота загружать и выгружать системные драйверы и сервисы.
· Льгота аудита.
· Льгота объявлять себя обладателем хоть какого объекта.
· Льгота добавлять записи в журнальчик аудита.
· Льгота создавать маркеры доступа.
· Льгота назначать действиям маркеры доступа.
· Льгота выступать как часть ОС.
· Льгота получать оповещения от файловых систем.
Назначать привилегии необходимо весьма осмотрительно. Некие из перечисленных приемуществ разрешают обойти подсистемы защиты.
· Льгота создавать в оперативки неизменные объекты дозволяет юзеру отключать механизм автоматического освобождения оперативки при окончании процесса.
· Льгота создавать запасные копии инфы и восстанавливать ее дозволяет юзеру игнорировать разграничение доступа по чтению/записи и т.д.
· Льгота предназначения действиям высочайшего уровня приоритета дозволяет ему завесить ОС, создав процесс с высочайшим ценностью и введя его в нескончаемый цикл.
· юзер, владеющий льготой изменять системные переменные среды, может изменив значения переменных path и windir достигнуть того, чтоб поиск ОС исполняемых модулей начинался с его директории и поместить туда программную закладку.
· Льгота отлаживать программки дозволяет юзеру обращаться к хоть какому процессу по хоть какому способу доступа, что присваивает ему неограниченные возможности.
· Льгота загружать и выгружать драйверы и сервисы дозволяет юзеру делать случайный код от имени и с правами ОС. юзер может ввести программную закладку под видом драйвера либо сервиса. Потому что драйверы могут игнорировать большинства защитных функций NT, то эта возможность дает неограниченные возможности.
· Льгота аудитора дает юзеру возможность маскировать свои несанкционированные деяния.
· Льгота выступать как часть ОС дозволяет юзеру делать потенциально небезопасные действия, брать на себя функции ОС, связанные с идентификацией, аутентификацией и авторизацией юзера.
ВОПРОСЫ ДЛЯ КОНТРОЛЯ
ЛЕКЦИЯ 1
1. Почему аппаратная реализация защитных устройств считается наиболее стойкой по сопоставлению с программной?
2. Приведите примеры нарушения целостности программных устройств защиты.
3. Что соображают под идентификацией и аутентификацией? В чем заключается различие данных шагов и как они соединены меж собой?
4. Чем определяется стойкость к взлому подсистемы идентификации и аутентификации?
5. Перечислите главные недочеты парольных подсистем идентификации и аутентификации.
6. Перечислите главные опасности парольным подсистемам идентификации и аутентификации.
7. Перечислите требования к выбору и использованию паролей?
8. Как количественно оценить стойкость к взлому парольных подсистем идентификации и аутентификации?
9. Как поменяется стойкость к взлому подсистемы парольной аутентификации при увеличении черт A,L,V,T? При их уменьшении?
ЛЕКЦИЯ 2
1. Перечислите главные опасности базам данных аутентификации в компьютерных системах.
2. Как реализуется защита от опасности конкретного доступа злодея к БД аутентификации?
3. Опишите типовые схемы хранения главный инфы в компьютерных системах и методы идентификации и аутентификации юзеров в рамках данных схем.
4. Сформулируйте и обоснуйте утверждение о замене образца.
5. Как реализуется защита от опасности несанкционированного исследования БД аутентификации.
6. Почему конкретное шифрование БД аутентификации не является стойким ко взлому?
7. Опишите метод хэширования LANMAN. Укажите на уязвимые места данного метода.
8. Опишите метод хэширования NTLM.
ЛЕКЦИЯ
3
1. Что соображают под атаками способом повторов при удаленной аутентификации?
2. В чем заключается механизм запрос-ответ при неопасной удаленной аутентификации?
3. В чем заключается механизм отметки времени при неопасной удаленной аутентификации?
4. Опишите схему протокола неопасной удаленной аутентификации CHAP.
5. Почему злодей не может вернуть ответ клиента в протоколе CHAP?
6. Опишите протокол разовых ключей S/KEY.
7. Почему злодей не может вернуть последующий пароль в последовательности в протоколе S/KEY?
8. Какой из паролей передается ранее в протоколе S/KEY – Y1 либо Y2?
ЛЕКЦИЯ
4
1. Приведите примеры технических устройств, при помощи которых может решаться задачка идентификации юзера?
2. Приведите примеры технических устройств, при помощи которых может решаться задачка идентификации и аутентификации юзера?
3. В чем заключается различие меж пассивными и активными пластмассовыми картами?
4. Приведите примеры пассивных и активных карт.
5. Перечислите главные составляющие умственных карт.
6. Какова область внедрения умственных карт?
7. Каковой размер идентификатора в iButton?
8. В котором компоненте смарт-карты хранится операционная система?
9. В которой компонент смарт-карты загружаются ключи при выполнении криптографических операций?
ЛЕКЦИЯ 5
1. Что понимается под биометрической аутентификацией юзера? Приведите примеры биометрических черт.
2. Перечислите главные отличия способов биометрической аутентификации юзера от остальных (к примеру, парольных).
3. Что из себя представляет вектор биометрических признаков?
4. Что соображают под коэффициентом неверных отказов и коэффициентом неверных подтверждений биометрической системы?
5. Дайте геометрическую интерпретацию коэффициентов неверных отказов и неверных подтверждений.
6. Как в биометрических системах принимается решение о прохождении или не прохождении юзером аутентификации?
7. Какие функции делают СКД?
8. Какой компонент СКД воспринимает решения о допуске недопуске юзера на охраняемый объект?
ЛЕКЦИЯ 6
1. Перечислите меры, применяемые для защиты программных товаров от несанкционированного использования.
2. В чуток заключается сущность организационно-экономических мер защиты программных товаров?
3. Перечислите модули системы технической защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного использования. Коротко охарактеризуйте функции всякого из их.
4. Приведите примеры черт среды, к которым можно выполнить привязку ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) для обнаружения факта несанкционированного использования.
5. В чем плюсы и недочеты интегрированных и пристыковочных систем защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)?
6. На какие из модулей системы защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного использования обычно производит атаку злодей?
7. Перечислите требования к блоку сопоставления черт среды.
8. В чем индивидуальности атак злодея на блок установки черт среды и блок ответной реакции?
ЛЕКЦИЯ
7
1. Что собой представляют электрические ключи HASP?
2. Перечислите типы электрических ключей HASP. Коротко охарактеризуйте их.
3. Перечислите главные элементы электрических ключей HASP.
4. Перечислите главные функции HASP4 Standard, MemoHASP, TimeHASP, NetHASP.
5. Попарно сравните способности ключей HASP4 Standard, MemoHASP, TimeHASP, NetHASP.
6. Словесно опишите несколько приемов защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), которыми Вы будете воспользоваться при использовании HASP4 Standard, MemoHASP, TimeHASP, NetHASP.
7. В чем плюсы и недочеты пристыковочного механизма защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) при помощи HASP и защиты, основанной на использовании API функций HASP.
8. Может ли электрический ключ HASP употребляться для решения задач идентификации юзеров. Если может, то какие типы?
9. Что представляет собой модель защиты структурным кодом PCS?
ЛЕКЦИЯ
8
1. Перечислите и охарактеризуйте базисные способы нейтрализации систем защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) от несанкционированного использования.
2. Перечислите средства статического исследования ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств). Коротко охарактеризуйте их.
3. Перечислите средства динамического исследования ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств). Коротко охарактеризуйте их.
4. Перечислите и охарактеризуйте базисные способы противодействия отладке программного обеспечения.
5. Перечислите и охарактеризуйте несколько триков для отладчиков настоящего и защищенного режимов. В чем их недочеты?
6. Перечислите и охарактеризуйте базисные способы противодействия дизассемблированию программного обеспечения.
7. Охарактеризуйте метод защиты от отладки, основанный на особенностях конвейеризации микропроцессора.
8. Охарактеризуйте способности противодействия отладке и дизассемблированию, основанные на использовании недокументированных инструкций и недокументированных способностей микропроцессора. В чем недочеты данных способов?
9. Охарактеризуйте шифрование кода программки как более всепригодный способ противодействия отладке и дизассемблированию ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
ЛЕКЦИЯ 9
1. Охарактеризуйте средства анализа системы защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) по данным. Как защититься от данных средств?
2. Охарактеризуйте средства анализа системы защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) по методам. Как защититься от данных средств?
3. Охарактеризуйте средства преодоления систем защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств). Как защититься от данных средств?
4. Охарактеризуйте средства обхода систем защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств). Как защититься от данных средств?
5. Что соображают под опосредованным НСД?
6. Дайте определение программки с потенциально небезопасными последствиями. Какие функции характерны данным программкам?
7. Перечислите главные классы программ с потенциально небезопасными последствиями. Дайте их сравнительную характеристику.
8. Что соображают под активизирующим событием? Перечислите главные виды активизирующих событий для РПВ.
9. Перечислите и охарактеризуйте главные модели взаимодействия прикладной программки и РПВ.
ЛЕКЦИЯ 10
1. Опишите главные группы деструктивных функций, характерных программным закладкам.
2. Охарактеризуйте компьютерные вирусы как один из классов РПВ. Перечислите главные характеристики компьютерного вируса.
3. Какие стадии и этапы содержит в себе актуальный цикл компьютерного вируса?
4. Какие вирусы именуют полиморфными?
5. Опишите средства борьбы с компьютерными вирусами.
6. Перечислите общие и спец способы борьбы с РПВ.
7. Что соображают под изолированной программной средой?
8. Укажите главные элементы поддержки ИПС.
ЛЕКЦИЯ 11
1. Согласно какому РД производится тестирование ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на наличие НДВ?
2. Сколько существует уровней контроля отсутствия НДВ?
3. Как осуществляется контроль начального состояния программного обеспечения?
4. Какой уровень контроля нужен для ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), обрабатывающего информацию «Особенной Значимости»?
5. Какой уровень контроля нужен для ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), обрабатывающего информацию «Совсем секретно»?
6. Какой уровень контроля нужен для ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), обрабатывающего информацию «Секретно»?
7. Какой уровень контроля нужен для ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств), обрабатывающего секретную информацию?
8. На каком из уровней контроля осуществляется больше проверок – первом либо четвертом?
ЛЕКЦИЯ 1
2
1. Что предполагает статический анализ начальных текстов программ?
2. Что предполагает динамический анализ начальных текстов программ?
3. Как осуществляется контроль полноты и отсутствия избыточности начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на уровне файлов на разных уровнях контроля НДВ?
4. Что понимается под контролем полноты и отсутствия избыточности начальных текстов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) на уровне многофункциональных объектов (процедур)?
5. Что понимается под контролем связей многофункциональных объектов (модулей, процедур, функций) по управлению?
6. Что понимается под контролем связей многофункциональных объектов (модулей, процедур, функций) по инфы?
7. Что понимается под контролем информационных объектов разных типов?
8. Что понимается под формированием списка маршрутов выполнения многофункциональных объектов (процедур, функций)?
ЛЕКЦИЯ 1
3
1. Перечислите список типовых изъянов ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
2. Перечислите формы проявления программных изъянов.
3. Перечислите ошибки управления в ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств).
4. Прокомментируйте ошибки, связанные с затиранием установок и переменных.
5. Прокомментируйте недостаток ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) – «Обход контроля либо некорректные точки контроля».
6. Прокомментируйте недостаток ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) – «Сокрытые и недокументированные вызовы из прикладных программ, установок ОС и аппаратных установок».
7. Прокомментируйте недостаток ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) – «Неполное прерывание выполнения программ».
8. К чему может привести недостаток ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств) – «Не удаление средств отладки до начала эксплуатации».
ЛЕКЦИЯ 14
1. Перечислите классы угроз ОС по цели.
2. Перечислите классы угроз ОС по принципу действия на ОС.
3. Перечислите классы угроз ОС по действия на объект атаки.
6. Перечислите классы угроз ОС по беспомощности защиты.
7. Охарактеризуйте обычные атаки на ОС.
8. Охарактеризуйте понятие «Скупые программки».
ЛЕКЦИЯ 15
1. Что такое «Защищенная ОС»?
2. Какие есть подходы к построению защищенных ОС?
3. Какой из подходов к построению защищенных ОС наиболее неопасен?
4. Перечислите примеры административных мер защиты ОС?
5. Почему Политика сохранности обязана быть адекватной условиям защиты?
6. Почему очень твердая Политика сохранности может плохо сказаться на надежности функционирования ОС?
7. Перечислите этапы определения и поддержания адекватной политики сохранности.
8. Почему чем лучше защищена ОС, тем сложнее работать с ней юзерам?
ЛЕКЦИЯ 1
6
1. Что понимается под аппаратным обеспечением средств защиты ПО (то есть программное обеспечение — комплект программ для компьютеров и вычислительных устройств)?
2. Какие 2 метода употребляются для защиты ОЗУ процесса от несанкционированного доступа со стороны остальных действий?
3. Что такое вытесняющее планирование задач?
4. Как защищаться от опасности приостановки либо прекращения выполнения задач, критических для обеспечения сохранности, операционной системы?
5. Что такое тупиковая ситуация?
6. Как предупредить тупиковую ситуацию в ОС?
7. Что такое уровень привилегированности процесса?
8. Что такое кольцо защиты?
ЛЕКЦИЯ 17
1. В которых состояниях может находиться поток?
2. Как рассчитывается Ценность процесса?
3. Какие бывают базисные и относительные ценности?
4. Что такое мьютекс и какова разработка его использования?
5. Какие требования к аудиту в ОС?
6. Как нужно сформировывать политику аудита?
7. В чем заключается разница меж правами доступа и преимуществами?
8. Какие привилегии субъектов есть в WindowsNТ?
9. Почему привилегии субъектам нужно раздавать осмотрительно?
10. Какие 6 обычных способов доступа существует в ОС WindowsNT?
]]>