
- •Лабораторная работа № 1
- •1. Тема: «Компьютерные вирусы»
- •2. Индивидуальное задание
- •3. Выполнение индивидуального задания
- •4. Ответы на контрольные вопросы
- •1. Что такое компьютерный вирус?
- •2. Классификация компьютерных вирусов
- •3. Что такое троянские программы и прочие "вредные" программы?
- •4. Способы заражения исполняемых программ?
- •5. Способы заражения пакетных файлов?
- •6. Что такое загрузочные вирусы?
- •7. Что такое полиморфные вирусы?
- •8. Какие вирусы называют стелс-вирусами?
- •9. Достоинства и недостатки известных вам антивирусных программ?
- •Лабораторная работа 2
- •1. Тема: «Парольная защита»
- •2. Индивидуальное задание
- •3. Листинг программы
- •4. Ответы на контрольные вопросы
- •1. Принципы классификации систем защиты программного обеспечения (по)
- •2. Классификация систем защиты по по методу установки
- •3. Классификация систем защиты по по используемым механизмам защиты
- •4. Классификация систем защиты по по принципу функционирования
- •5. Назначение упаковщиков-шифраторов
- •6. Системы защиты от несанкционированного копирования
- •8. Системы привязки по к компьютеру
- •9. Выделение объективных характеристик программы
- •10. "Родимые пятна"
- •11. Водяные знаки как метод пассивной защиты.
- •12. Психологические методы защиты.
- •Лабораторная работа № 3
- •2. Индивидуальное задание
- •3. Результат выполнения индивидуального задания;
- •4. Ответы на контрольные вопросы.
- •1. Что такое симметричные криптоалгоритмы?
- •2. Классификация симметричных криптоалгоритмов.
- •3. Какие методы подстановки, используемые для шифрования, вы знаете?
- •4. Какие методы перестановки, используемые для шифрования, вы знаете?
- •5. Что понимается под шифрованием информации методом гаммирования?
- •6. Что называется ключом в криптосистеме?
- •7. Разовый блокнот.
- •8. Что такое криптостойкость системы?
- •9. Правила использования ключа.
Лабораторная работа 2
1. Тема: «Парольная защита»
Цель работы: получение практических навыков защиты программного обеспечения от несанкционированного доступа с помощью пароля.
2. Индивидуальное задание
Защита программ от несанкционированного доступа. Парольная защита
3. Листинг программы
Uses crt,graph;
const hc:array [0..3] of char = (#65,#66,#67,#13);
Var
Gd, Gm : Integer;
max,min:boolean;
n,x,z,y1,i1,c,c1:integer;
yek1:string;
yek:array[0..100]of string;
Label 1, 2, 3, 4, 5;
begin
x:=4;
Gd:=Detect;
InitGraph(Gd, Gm, 'c:\ib_2');
If GraphResult <> grOk Then Halt(1);
1: y1:=0;i1:=270;n:=0;
clreol;
ClearDevice;
SetFillStyle( 1 ,4);
bar(150,130,510,210);
SetFillStyle( 1 ,5);
bar(160,140,500,200);
SetColor(12);
line(160,140,500,140);
line(500,140,500,200);
setcolor(14);
OutTextXY(285,150,'Введите код: ');
OutTextXY(260,180,':> ');
gotoxy(36,12);
Repeat
yek1:=Readkey;
if (yek1=#13)then goto 2;
i1:=i1+10;
OutTextXY(i1,180,'*');
2: yek[n]:= yek1; n:= n+1;
Until (yek1=#13);
if (n<>x) then
begin
3: n:=0;
repeat
n:=n+1;
SetFillStyle( 1 ,4);
bar(150,210+n,510,210+n);
SetFillStyle( 1 ,5);
bar(160,200+n,500,200+n);
SetColor(12);
line(500,200+n,500,200+n);
setcolor(14);
delay(300);
until (n=80);
if (min) then
begin
setcolor(11);
OutTextXY(255,220,'Добро пожаловать!');
delay(60000);
goto 5 ;
end;
4: repeat
setcolor(11);
OutTextXY(190,260,'УГУ (Enter)');
OutTextXY(400,260,'НЕА (Esc)');
c:=c+1;
setcolor(c);
if (max) then {false true}
begin
setcolor(10);
OutTextXY(255,200,'Вы ничего не забыли?');
delay(60000);
OutTextXY(255,220,'Ваши попытки кончились!');
delay(60000);
OutTextXY(255,240,' ДосвиданиЯ !!! ');
delay(60000);
halt;
end
else
begin
OutTextXY(265,200,'Ошибочка вышла!');
OutTextXY(255,220,'Попробуйте еще раз.');
end;
delay(2000);
until(keypressed);
yek1:= readkey;
if(yek1=#27) then Halt else
begin
if(yek1=#13) then
begin
c1:=c1+1;
if(c1 > 1) then max:=true;
goto 1;
end;
goto 4;
end;
end;
For z:=0 To n Do if ( yek[z] = hc[z]) then y1:=y1+1;
if (y1<>z) then goto 3;
min:=true;
goto 3;
5:CloseGraph;
End.
4. Ответы на контрольные вопросы
1. Принципы классификации систем защиты программного обеспечения (по)
Средства защиты(СЗ) ПО можно классифицировать по ряду признаков:
По используемому механизму защиты
По методу установки
По принципу функционирования
2. Классификация систем защиты по по методу установки
Для производителей ПО удобней всего использовать защиту, устанавливаемую на скомпилированные модули. Но такая защита наименее стойка к атакам. Системы с внедрением СЗ в исходный код неудобны для производителей, так как им приходится обучать персонал работе с СЗ и ряд других неудобств. Лучшим решением является использование СЗ комбинированного типа.
Системы защиты ПО по методу установки можно подразделить: - на системы, устанавливаемые на скомпилированные модули ПО; - системы, встраиваемые в исходный код ПО до компиляции; - комбинированные.
Системы первого типа наиболее удобны для производителя ПО, так как легко можно защитить уже полностью готовое и оттестированное ПО (обычно процесс установки защиты максимально автоматизирован и сводится к указанию имени защищаемого файла и нажатию "Enter"), а потому и наиболее популярны. В то же время стойкость этих систем достаточно низка, так как для обхода защиты достаточно определить точку завершения работы "конверта" защиты и передачи управления защищенной программе, а затем принудительно ее сохранить в незащищенном виде.
Системы второго типа неудобны для производителя ПО, так как возникает необходимость обучать персонал работе с программным интерфейсом (API) системы защиты с вытекающими отсюда денежными и временными затратами. Но такие системы являются более стойкими к атакам, потому что здесь исчезает четкая граница между системой защиты и как таковым ПО.
Наиболее живучими являются комбинированные системы защиты. Сохраняя достоинства и недостатки систем второго типа, они максимально затрудняют анализ и дезактивацию своих алгоритмов.