Компютърни вируси.
Компютърните вируси са отдавнашен проблем, който получава своето непрекъснато развитие. Какво представляват компютърните вируси всъщност? В най-общ план това е програма (написана обикновено на език от ниско ниво като асемблер, но това не е задължително, вируси се пишат и на С например), която се намира в компютъра на потребителя и се разпространява без негово знание, чрез различни дискови носители, LAN мрежи, а напоследък и чрез Интернет. При разпространението си вирусите често извършват разрушителни действия с файловата система на компютъра, но това не е задължително, съществуват и вируси, които нямат такова действие.
Въпреки че това определение е доста строго, разнообразието от компютърни вируси е изключително голямо. По отношение на техният механизъм, начините на пазпространяване, действията, които извършват със системата на портебителя. При разглеждане на темата за компютърни вируси е нужно да се направят някои уточнения, за да не се бъркат с други зловредни програми.
Компютърните вируси не трябва да се бъркат с различни програми-шеги.
Такива програми обиновено нямат за цел да разрушават информация, а извеждат различни съобщения, вицове и т.н. Името на тези вируси ясно показва тяхното действие.
Пример за такава програма е програмата TOILET (при разглеждането на вирусите съм приел условни имена, съответстващи на различни особености, характеризиращи тяхното действие). При заразяване на компютъра с нея след настъпването на определен час се извежда съобщение, което на български се превежда горе-долу като "Ходили ли сте до тоалетна скоро" и след това се чува шум като от пускане на тоалетна. След това прекъснатата програма продължава нормално работата си. Също друга такава програма в началото на 90-те години беше 300LV. Нейното действие се състои в преместването на BOOT-сектора на твърдия диск на сектор 0:0:2 и заместването му с код, който извежда съобщението "To repear your PC, send 300LV to: Sofia, 1000 P.O. Box 338 All hard is coded" и системата "увисва". В действителност нищо не е кодирано и всичко се възтановява с презаписване на сектор 0:0:2 в сектор 0:0:0
Компютърните вируси не трябва да се бъркат и с тъй наречените ТРОЯНСКИ КОНЕ.
Троянският кон е програма, която претендира че върши нещо полезно, като презаписване на файлове например, но всъщност в нея е заложен механизъм за извършване на различни зловредни действия. Това обикновено става в съответствие с някакво условие, но не е задължително. Действието в повечето случаи е кратка операция, като разменянето на съдържанието на сектори върху диска или дискетата, изтриване на файл и други подобни.
Целта на вирусите е минимално да се привлича вниманието на работещия (редица вируси се характеризират със силно разрушително действие- вирусът Eddie изтрива значителна по обем информация върху хард-диска, а някои версии на същия и го форматират. Това в никой случай не може да остане незабелязано и от най-разсеяния потребител). Не трябва да се мисли обаче, че троянските коне започват да вършат всички тези неща веднага при стартирането им. Обикновено те са доста дружелюбни към ползващия ги, колкото и ограничен набор от функции да изпълняват. На практика те не се характеризират с голямо разнообразие от такива, а и не нужно, достатъчно е да се изтрива по един сектор всеки път при извършване на входо-изходна операция, за да се нанесат големи щети и загубване на информация. А ако това се случи върху сектора с FAT, каталога или друг някакъв дисков указател възтановяването на информацията би било нвъзможно. Троянският кон донякъде може да се разпознае от по- наблюдателния потребител по гръмките имена (The Best Helper, Dos Magician) и реклами, които извеждат програмата за себе си, но това не е задължително да е вярно. Програмата Dos Wizard примерно извежда съобщение, че е най-подходящото средство за работа с DOS, чрез нея сервизните функции и рутинните операции като извеждане съдържанието на справочник например е максимално улеснено и други такива.
В действителност при първото нещо което потребителят се опита да извърши (като командата DIR, например) Dos-Wizard започва да изтрива файлове от различни директории. Интересен помощник!
В исторически план не е възможно да се установи кога точно са се появили първите вируси. Вероятно това е станало при въвеждане на по- масовото използване на 16-битови компютри. Няма да се спирам на 8- битовите компютри, тъй като програмното осигуряване за тях не е удобно за създаване на вируси, а също така са изключително маломощни по отношение обем памет, бързодействие и други такива характеристики (Правец- 82 има общо 64 килобайта памет, от които 48 RAM и 16 ROM).
16-битовите компютри са значително по- дружелюбни към КВ. Персонални компютри от фамилията IBM PC/XT/AT притежават вече 640 килобайта памет с възможност за разширяване и много по- бърз процесор (8088, 8086)- доста място в което може да се скрие всеки вирус. Вирусите могат да се класифицират по различни критерии. Най- често използвания критерий е начина, по който достигат до системата на потребителя. В зависимост от това могат да бъдат:
- Заразяващи .СОМ и .ЕХЕ – файлове;
- ВООТ – секторни вируси;
- С глобализацията на компютърните мрежи и по-специално на Интернет се появиха вируси, които могат да се определят като крадци на информация (thief-вируси).
В зависимост дали разрушават информацията могат да:
- Имат разрушително действие;
- Нямат разрушително действие.
Класификациите могат да бъдат много, тъй както е голямо разнообразието от вируси, но нека се занимаем с анатомията на един вирус. Неговият код обикновено изпълнява следните задачи:
- Инсталиране на вируса в паметта, т.е. превръщането му в резидентен. Важно за вируса е да прехване част от прекъсванията на DOS. По този начин той следи входно- изходните операции и взима необходимите предпазни мерки при застрашаващи го обстоятелства. Това може да е скриване на дължината му при извеждане списъка на файлове (командата DIR);
- Проверка при всяко прехванато прекъсване, дали файлът, с който се оперира е заразен. Обикновено ако не е се заразява, ако е се пропуска;
- Повечето от вирусите имат разрушително действие. Те осъществяват своята зловредна дейност по случаен начин или в зависимост от настъпването на някакво условие (определен час, секунди кратни на 16 или друго число и т.н.). Казаното "по случаен начин" не е много вярно, тъй като механизма на генериране на случайни числа, все пак зависи от някакво събитие (системен часовник, съдържание на клетка от паметта и други такива). Тази част от кода проверява за настъпването на даденото условие;
- Разрушаване на информацията. Всеки вирус има свой механизъм за изпълнение на тази задача. Разрушаването може да се извършва по различни начини – изтриване на файлове, форматиране на хард-диска или на текущата дискета във флопидисковото устройство, изтриване на случайни сектори, клъстери или пътечки, разменяне на съдържанието им и други такива;
- Разпространение на вируса – безспорно в тази част от кода се вижда талантът на всеки създател на вируси. Това е свързано с преодоляването на различните резидентни защити.
Коментари: