Чому не спрацьовують антивіруси.

Стаття підготовлена для тих, хто хоче знати-чому не завжди спрацьовує антивірусна программа.За основу взята стаття Кріса Касперски відомого швидше як творця антивірусної програми AVP.

Технічний прогрес як це не дивно все більше і більше базується на вірі. Ми можемо з захопленням читати про квантову механіку або про радіоастрономії, але перевірити це вже не в змозі. Залишається тільки прийняти (або не брати) прочитане на веру.І справа тут не тільки в тому, що не у кожного є доступ до радіотелескопу, а скоріше у відсутності необхідної підготовки. Зрозуміти ту чи іншу формулу доступно кожному, а ось перевірити її правильність чи. Занадто багато зв`язків між різними областями пізнання. Ніяка наука не існує ізольовано в «чистому» вигляді, і жодна людина не здатна вмістити в голові все досягнення цивілізації.

Який з цього вихід? Зрозуміло поділ спеціалізацій, з подальшим обміном науковими досягненнями, приймаючи «на віру» досягнення колег. Може бути це трохи перебільшено, але все ж недалеко від істини. В усякому разі саме така ситуація склалася в антивірусної індустрії.

Грамотно користуватися антивірусом може (і в ідеалі повинен) кожен кваліфікований користувач і системний адміністратор. Але при цьому ні той ні інший не володіють достатньою кваліфікацією що б перевірити достовірність повідомлень антивіруса. Все що залишається їм робити - прийняти останнє на віру. Або використовувати статистичні підходи - скажімо якщо з трьох антивірусів два визнали деякий файл зараженим, то він дійсно заражений, ну і відповідно навпаки.

Однак, останнім нітрохи не краще першого, якщо не сказати навпаки. В кінцевому рахунку віра заснована на статистиці це все та ж віра, яка не дає ніяких гарантій, що розробники антивірусів не помилились і вчили всі можливі ситуації і модифікації вірусів. А з огляду на швидкість поповнення антивірусних баз даних і мізерно малий час, що відводиться фахівцям на аналіз нових «комах» можна без вагань очікувати, що безліч деталей виявляться не поміченими і антивірус буде працювати не так як передбачається або взагалі не буде працювати.

Тому слід з великою недовірою ставитися до повідомлень антивірусів. Якщо вірусів, не знайдено, то це слід розуміти буквально - тобто їх і справді просто не знайдено, але це не натяк що їх і в дійсно немає. Те саме можна сказати і до тверджень про зараження файлів. Досить часто трапляється, що антивірус знаходить вірус там, де немає і сліду останнього.

Становище ускладнюється помилками розробників і користувачів. Дуже часто антивірусами користуються неправильно, чим і пояснюється незадовільний результат їх роботи. При цьому керівництва користувача зазвичай містять навіть більше помилок і упущень, ніж сам продукт. Наприклад розглянемо рекомендацію запуску антивіруса з «чистою» дискети. Безумовно практично завжди так і слід чинити, бо в іншому випадку важко гарантувати, що антивірус коректно нейтралізує резидентну частину вірусу. Незважаючи на те, що сучасні антивіруси зазвичай це роблять досить якісно, в деяких випадках подібна процедура опускається або просто не спрацьовує. Якщо це станеться з вірусом, заражающим файли при їх відкриття (закриття), то після сканування виявляться зараженими все перевіряються файли. Особливо часто це відбувається в новими, що не ще детектіруемих вірусами, резидентну частину яких гарантовано ні виявити, ні нейтралізувати не представляється можливим. У загальному випадку можна стверджувати, що детектірованіелеченіе вірусу не повинно виконуватися при активній резидентної частини вірусу.

Відео: Помилкові спрацьовування антівірусов.Тест. Dr.web, kaspersky, eset - не працюють!

Але не поспішайте довіритися цьому поясненню і завжди завантажувати свій комп`ютер перед перевіркою з еталонною дискети. Справа в тому, що ряд вірусів для свого лікування вимагає інформації, яку антивірус черпає саме з резидентної частини. Наприклад, якщо поліморфний вірус якимось чином шифрує диск, то для відновлення останнього очевидно необхідно отримати алгоритм розшифровки. З огляду на, що він змінюється (може змінюватися) від однієї модифікації вірусу до іншого розробники часто «запозичують» його безпосередньо з тіла вірусу. З огляду на, що на диску віруси зазвичай зашифровані, а в пам`яті немає, то логічно, що більшість розробників беруть необхідні дані саме з резидентного модуля. При цьому часто не враховується, що при завантаженні з «чистою» дискети подібне здійснити буде вже неможливо.

Добре якщо дана ситуація відображена в технічному керівництві, але найчастіше користувач стикається з малоінформативною сполученням «вірус вилікувати неможливо» або що ще гірше з псуванням файлів при спробі лікування або навіть всього диска цілком. Останнє хоч і рідко, але все ж трапляється.

Цікаво, що в даній ситуації дуже важко знайти винного. Розробники рідко визнають подібні помилки, відсилаючи позивача до укладачам документації, а ті в свою чергу нарікають на низьку кваліфікацію користувачів антивіруса.

Дійсно, як ми бачимо використання сучасних антивірусів справа не проста. Користувач постійно виявляється на роздоріжжі вибору рішення, особливо після повідомлень в стилі «за адресою 9876: 0102 можливо знаходиться резидентний вірус». Фахівцю достатньо за вказаною адресою поглянути дизассемблером, але навіть і без оного по наведених цифр він вже може багато що сказати про резидента. Так наприклад, розташування в верхніх областях нижньої пам`яті вже вказує на нестандартний спосіб посадки резидентної копії, а зміщення 0x102 свідчить про те, що резидент з великою ймовірністю «виліз» з com-фала - 0x100 - на PSP і 2 байта на короткий перехід на процедуру ініціалізації.

Зрозуміло, що все це дохідливо пояснити простому користувачеві не витративши купу часу і зусиль просто неможливо. Який з цього вихід? Надати лікування вірусів фахівцям? Фактично так воно і є, але мало хто може собі дозволити оплатити виїзд співробітника антивірусний фірми, особливо якщо цінність оброблюваних даних виявляється менше або порівнянної з вартістю подібного сервісу.

Багато все-таки вважають за краще використовувати антивірусні засоби, що значно дешевше, хоча і програє в надійності. При цьому розробники останніх розриваються між двома крайнощами - надати користувачеві по можливості вичерпну інформацію про ситуацію, а далі діяти в залежності від його рішення (але чи знає користувач що відповісти?) Або звести взаємодія з останнім до мінімуму, реалізуючи повністю автоматичну діагностику і лікування.

Сьогодні домінує остання тенденція. І навіть колись професійний «AVP PRO» сьогодні вже позбавлений багатьох «смакоти». Зникла можливість ручного створення баз, в комплекті відсутній утиліта trsutil (інтегрований отладчікдізассемблер, розроблений для пошуку і нейтралізації вірусів). З одного боку в цьому є свої безсумнівно позитивні риси, а й разом з виниклою простотою використання (багато користувачів просто не знали що робити з trsutil, а вже вид команд асемблера і зовсім викликав цілковиту розгубленість) падає якість продукту. Чому? Та тому що автомат. Автомат, який діє кожен раз по одному і тому ж шаблону і виявляється безсилим навіть в простих, але нестандартних ситуаціях. І вже немає ніякої можливості «пройтися» по векторах переривань або хоча б карті пам`яті.

При цьому користувач позбавлений можливості не тільки втручатися в процес, але навіть контролювати те, що відбувається. Припустимо, якийсь файл підозрюється евристичним аналізатором на вірус. Що з ним зробити? Стерти? Але знищить це вірус і крім того як бути якщо відсутня резервна копія? А раптом це всього лише невинне «лайка» антивіруса? Добре б дізнатися причину його виникнення. В іншому випадку подібна інформація просто позбавлена сенсу і просто марна. Більшість користувачів частіше зустрічаються з помилкові спрацьовування евристичних аналізаторів, ніж з точними влучаннями і рано чи пізно відключають евристичний аналізатор (при цьому попутно виграючи і в швидкості сканування).

Деякі антивіруси на зразок F-PROT видають вміст внутрішніх прапорів евристичного аналізатора, надаючи користувачу можливість проаналізувати причини «невдоволення» антивіруса самостійно. На жаль для багатьох з них ця інформація ні про що не говорить, і вони вважають за краще антивіруси, які працюють повністю в автоматичному режимі, і не задають незрозумілих питань. Цікаво, що і у професійних користувачів подібні продукти не користуються успіхом. Для винесення остаточного рішення «вірус - не вірус» потрібно поглянути на підозрюваний файл в дизассемблера. Зрозуміло, що подібне для масового ринку не прийнятно і ніколи і ніким не було реалізовано. (Єдиним антивірусів містить інтегрований відладчик і орієнтованим на професійного користувача ймовірно є x-safe).

Помітно більше вірять дисковим ревізорам, особливо працюють в обхід 0x13 (на зразок ADinfo). Вважається, що останні практично неможливо «обдурити» і на результати сканування можна покластися. На жаль - це висновок заснований не більше ніж на безпідставної віри і грунтується на незнанні. Насправді є безліч ефективних алгоритмів, які дозволяють вірусу залишитися непоміченим. Наприклад, якщо файли будуть заражатися через деякі проміжки часу (скажімо в кілька хвилин), то тоді в перебігу сканування можуть виявитися зараженими вже перевірені файли. Запуск з чистою дискети це міг би запобігти, але при цьому ADInfo не зможе виявляти Staelth-віруси, так і все ж далеко не для всіх случає така завантаження можливе. Наприклад в NT з дисковою системою NTFS грузиться з досовської дискети просто безглуздо, оскільки звідти відповідні розділи диска просто не буде видно.

При цьому вірус Antiх8-ADinfo не дивлячись на постійне сканування диска ревізорами (і видалення всіх загиджених файлів) буде виявлятися знову і знову до того часу поки користувач в люті не вилучено з диска всі файли або розробники антивірусів не включать його в бази даних. Втім, наскільки мені відомо останні версії AVP і DrWeb його НЕ детектируют. На щастя поки дане «комаха» з завидно повільною швидкістю кочує з машини на машину, поширені тільки через завантажувальні сектора жорстких дисків, але це не може бути приводом для безпечності. (Будь-який інший вірус, який використовує ті ж алгоритми може поширюватися значно швидше).



Безпідставна віра в технічну документацію, рекламні проспекти і і авторитет розробників все ж не найкращий засіб в боротьбі з вірусами і виборі антивірусного продукту. Чим більше людина вірить у власну невразливість, тим важче йому зорієнтуватися при вірусній атаці. Як правило понадіявшись на антивірус резервне копіювання давно не поводилося, права доступу більшості додатків виділені надмірно високі за що тепер доводиться розплачуватися зараженими файлами і втраченої інформацією.

Бути може в цьому винні не розробники, а рекламні агенти? Адже саме вони, а ні хто інший приписали товару властивості, якими він м`яко кажучи і не претендував володіти. Дійсно, мистецтво реклами - це вміння подати дезінформацію жодного разу при цьому ні збрехавши. Наприклад, стверджується, що якийсь евристичний алгоритм знаходить 97% всіх вірусів. Але чи означає це, що хоча б в дев`яти з десяти випадків новий вірус буде виявлений? Це залежить від того як була отримана ця цифра «97». Насправді новими можуть вважатися тільки ті віруси, які були написані після виходу даного антивіруса «у світ», тому що більшість вірусів піклується про те, що б їх дітища потрапили якраз в ті самі «3%», які евристик не може виявити. Ніхто не сперечається, що це вдається не всім і якась частина вірусів все ж буде виявлена. Однак, зрозуміло, що результат буде далекий від 97%, особливо з огляду на швидкий розвиток вірусних технологій і інтенсивний обмін вдалими рішеннями між вірусопісателямі. Останнім часом зростає частка вірусів, написаних на мовах високого рівня. Поки евристики не здатні розрізнити і відсотка від таких створінь. Звідки ж тоді взялася така приваблива цифра 97? Та дуже просто - це відсоток виявлених вірусів від всіх існуючих в колекції розробника примірників. Зрозуміло, що більшу частину з них представляють «академічні» і нині вже не зустрічаються зразки зразок сотень модифікацій класичної «Вієнна».

Виходить, що наведені цифри і в сміттєву корзину не відправили, а й до відомостей не приймеш, оскільки реального стану речей вони не відображають. Не дивно, що евристики спрацьовують не так часто, як очікують багато користувачів. Найпарадоксальніше, що не можна звинуватити розробників в введенні клієнтів в оману. Якщо їх прямо запитати як були отримані наведені цифри, то швидше за все вони чесно скажуть. Однак, рекламний розрахунок будуватися на тому, що більшості покупців це просто не прийде в голову.

Відео: Як працює антивірус

Таким чином, антивіруси насправді не так надійні, як цього очікують набувають їх користувачі. По справжньому впевнено можуть себе почувати себе лише ті, за чиїми комп`ютерами постійно стежать живі фахівці, а не автоматичні програми.

На жаль таких фахівців ніколи не буде достатньо, що б охопити весь існуючий парк комп`ютерів і на найближчі кілька років використання антивірусів це єдиний вихід для більшості власників персоналок.

Що вони не надійні ми вже з`ясували, залишається тільки вирішити що робити і як боротися в цій ситуації. В ідеалі можна було б засісти за книги по асемблеру і технічні керівництва по операційній системі з тим, що б навчитися відловлювати віруси самостійно, маніпулюючи отладчиком і дизассемблером. На жаль цей шлях для більшості не прийнятний. Мало хто має вільний час для подібних занять. Тому доводиться шукати якийсь компроміс і брак власних знань компенсувати готовими автоматичними інструментами.

Дійсно, можна обійтися і без знань асемблера і вміння програмувати - досить хоча б в загальних рисах зрозуміти як функціонує вірус і якими методами його виявляють і лікують. Нижче буде показано як поводитися, що б антивірус помилявся не так часто.

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

Так наприклад, дуже малоймовірно, що користувачі зустрінуться з численними стародавніми, а нині «вимерлими» та й непрацездатними на сучасних операційних системах вірусами. І вже зовсім ні до чого їм шукати на своєму диску «академічні» створення, які пишуться заради експерименту і не виходять зі стін «лабораторій».

Крім того кількість завжди обернено пропорційно якості. «Зайві» записи збільшують ймовірність помилкових спрацьовувань, помилок і збоїв. Та й швидкість сканування до того ж уповільнюють. При цьому на перевірку виявляється, що виявляються не всі з перерахованих вірусів. І вже тим більше не всі їх модифікації. Особливо це характерно для поліморфних і Стелс-вірусів. З огляду на, що різні файли одним і тим же вірусом уражаються по різному, очевидно, що розробники іноді упускають останнім з уваги і антивірус знаходить не всі заражені файли. При цьому виникає цікава ситуація. Після кожного лікування джерело зараження залишається і вірус буде з`являтися знову і вносити здавалося б з «нізвідки».

У ранніх версій антивіруса Касперського був неприємний баг - з метою оптимізації автор реалізував перевірку на вірус по двом контрольним сумам сигнатури - спочатку звірялася коротка контрольна сума, якщо вона збігалася, то потім звірялася довга. Але при розробці була допущена помилка і прі не збігу другої контрольної суми, файл вважався незараженим взагалі. Тобто якщо у двох і більше записів короткі CRC збігалися, то перевірялася тільки перша з них! Поки що обсяг бази був невеликим, в ймовірність збігу невеликий - цей баг ніяк зовні не проявлявся. З додаванням нових записів з`явилися і такі, чиї короткі CRC збігалися і нові віруси перестали визначатися.

Таким чином краще зупинитися на антивірусі з невеликою, але якісної і ретельно протестованої базою. На жаль останнім вибрати важко. Зазвичай на якість тестування баз фірми-виробники уваги не загострюють, ховаючись за фразами, що помилки бувають у кожного і в цьому світі від них ніхто не застрахований. До того ж якщо число нібито детектіруемих вірусів цілком відчутно (наприклад, число записів в базі), то якість і надійність поняття вже суб`єктивні і практично не перевіряються.

Залишається сподіватися тільки на результати тестування незалежних лабораторій. Періодично звіти останніх з`являються на сторінках різних журналів і видань.

Дискові ревізори мають набагато більш високу ймовірність виявлення нових вірусів і при цьому зазвичай досить швидко працюють. На жаль головний їх недолік - неможливість розпізнати вірус в спочатку зараженому файлі (за тим винятком, коли він заражений Стелс вірусом). Це очевидно призводить до того, що хоча б один файл залишається зараженим, утворюючи активний осередок поширення «інфекції». А враховуючи, що практично всі віруси ми як правило отримуємо через «новоприбулі файли» стає ясно, що ревізор буде безсилий розрізнити в якому з них сидить «зараза».

Тому необхідно використовувати ревізори спільно з полифагами і евристичними аналізаторами. При цьому дії користувача повинні виглядати так: диск періодично перевіряється ревізором на предмет пошуку змін (сканувати його поліфагом не потрібно, тому що це ні до чого). Новоприбулі файли перевіряються антивірусом на зараження і якщо оне не виявлено, то «випускають» їх на диск.

Відео: Антивірус Dr.Web Security Space v10 секретна інформація - Огляд

Якщо в одному з них перебував вірус, то через деякий час багато файли на диску виявляться зміненими. Необхідно хоча б один з них передати розробникам антивіруса для аналізу. Тільки після цього останній зможе визначити в якому файлі гніздилася «зараза».

Оскільки ми торкнулися отримання програмного забезпечення, то зупинимося на цьому моменті. Всі наші біди відбуваються від того, що той, у кого ми «завантажуємо» файли виявляється не «стерильним» людиною і разом з собою заражає ще й нас. Вже скільки разів твердили світу - не копіюйте файли з ненадійних джерел. Купуйте ПО тільки у виробників і великих дилерів. Уникайте BBS і не завантажуйте все, що не зустрітися з Інтернету. На жаль цими рекомендаціями практично завжди нехтують, сподіваючись на «авось пронесе».

Зауважимо, що сьогодні навіть у великих піратів ПО здебільшого вільно від вірусів і вони в цьому відношенні нітрохи не поступаються легальним виробникам, оскільки і тим і іншим доводиться боротися за свій авторитет. На жаль того ж не можна сказати про багатьох «Домашніх сторінках» і власників BBS. І ті й інші уразливі для злому і підміни розташованого на них ПО, ніж з успіхом користуються багато вирусописатели. Про конференції навіть і говорити не варто. Ризик підхопити вірусу або троянця в розповсюджуваних разом з листами файлах неймовірно великий.

Антивірус як і будь-яке інше ПО точно так же може бути заражений. При цьому зловмисник міг відключити вбудований контроль своєї цілісності, так що б кінцевий користувач нічого не запідозрив. Тому ні в якому разі не рекомендується копіювати антивірус з неперевірених джерел. Менш очевидним здасться заборона на копіювання будь-якого компонента антивірусного пакета - будь то поповнення бази або навіть файл допомоги! Справа в тому, що в більшості випадків «апдейти» містять бінарний код, в якому зловмисник міг розмістити все що завгодно. Аналогічно і файл допомоги, в якому можлива наявність виконуваного бінарного коду. Наприклад в Антивірусної Енциклопедії Касперського використовується дуже вигадливий формат файлу допомоги, який крім тексту може містити посилання на довільні ресурси, в тому числі і виконуваний код.

На жаль багато це не беруть до уваги і вже неодноразово відбувалися разі масового зараження, коли зловмисники від імені розробників поширювали шкідливі «апдейти». При цьому можливі будь-які прояви - від форматування диска, до блокування здібностей антивіруса знаходити будь-яких «комах». Останні в силу своєї прихованості є навіть більш підступними і важко виявляти.

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

Відео: Чому не відкриваються сайти в браузері, всі проблеми

Справа в тому, що в більшості випадків використовується алгоритм «сітчастої решітки». Тобто якщо якийсь об`єкт має певними ознаками, то він «захоплюється» вузлом решітки або «провалюється» для уточненого аналізу. В результаті помилок якась запис може захопити ознаки інших. Теоретично при цьому об`єкт повинен «провалитися» для уточнення, але якщо в цьому місці буде допущена помилка, то цього не відбудеться і інші записи бази просто не отримають управління! Розглянемо це на наступному (хоча і «штучному») прикладі. Нехай буде створена запис, яка, реагує на сінгартуру `MZ` (заголовок будь-якого exe файлу). І нехай вона відрапортує антивірусу, «цей файл вірусу не містить, і більше перевіряти його не треба». Або як варіант - «це не виконуваний файл», «це не exe файл, а com».

Може здатися дивним наявність такого «глобального» коду повернення, оскільки це суперечить ідеології ООП, де кожен запис відповідає тільки за саму себе не не може впливати на інші. Але насправді, програма написана в «канонічному» ООП працювала неймовірно повільно. Величезне число записів в базі змушує подумати про самоорганізується деревовидному пошуку, а це значить, що кожен метод вирішує самостійно кому він передасть управління. Наприклад, метод розпакування файлу, передає управління знову на вершину дерева. Це дуже зручно, тому що ми отримуємо однорідну базу в якій всі записи рівноправні і програмуються однаково (а додаються автоматично). Зворотною стороною цього алгоритму є вразливість до помилок. Записи не ізольовані один від одного і одна некоректна запис може порушити роботу інших.

Між іншим це досить поширений випадок і легко перевіряється на великих колекціях вірусів, які сьогодні можна вільно поширюються як на лазерних дисках, так і в Інтернеті. Спробуйте протестувати свій антивірус з підключеними «щотижневими» базами і без оних. Напевно результат не змусить себе чекати. Найцікавіше, що повідомивши розробнику про знайдену помилку, ви почуєте лише обіцянки усунути ону в наступній версії антивіруса. Дійсно, хто ж буде займатися виправленням щотижневих баз?

Це типова ілюстрація парадокса. Ми знаходимося між двох купок сіна і не знаємо яку з них вибрати. Якщо не використовувати оновлення, ми ризикуємо пропустити нові віруси, а встановивши їх можемо опинитися ще в гіршій ситуації. Єдиним розумним рішенням буде подвійна перевірка - з підключеними оновленнями і без. Як би цього не здавалося утомливих, але кращого способу (за винятком можливо вищезгаданого тестування) поки ще ніхто не запропонував.

Крім того деякі віруси містять цікавий деструктивний алгоритм, який змушує деякі антивіруси зіпсувати диск користувача. Досягається це дуже просто - вірус містить в собі штам іншого вірусу, тому неправильно визначається, а значить і та лікуватися антивірусом. Іноді наслідки останнього стають дуже сумними.

Важливим моментом є і носій антивіруса. Завантажувати «робочу» копію з жорсткого диска досить небезпечно. Вірусу або троянської програми нічого не варто модифікувати останній в своїх інтересах. Дуже добре, якщо антивірус дозволяє себе запускати безпосередньо з лазерного диска, хоча і це не забезпечує належної гарантії його цілісності, тому що в цьому випадку він може бути змінений ще на стадії завантаження в оперативну пам`ять. Тому перспективними виглядають методи віддаленого детектування вірусів, особливо якщо врахувати, що більшість машин об`єднано в локальні мережі та практично завжди один комп`ютер можна виділити під подібні потрібні.

Деякі антивіруси навіть вміють працювати по модему і TCP / IP протоколу. При цьому вони можуть бути розміщені на сервері (який при правильній політиці адміністрування завжди залишається незараженим) і перевіряють файли на робочих станціях. При цьому гарантується цілісність та неспотвореному коду антивіруса (хіба що якийсь гіпнотичний вірус візьме на себе обробку TCP / IP протоколу для стелсірованія на його рівні), але на жаль подібні технології все ж не отримали поки масового поширення і визнання.

Так само з`явилася інформація про антивіруси, реалізованих апаратно і працюють через паралельний порт, однак пройде ще чимало часу поки вони вийдуть з лабораторій в масове вживання. Будемо сподіватися, що їх надійність помітно перевершить кращі програмні реалізацій, інакше їх просто не будуть купувати. Найцікавіше, що це схоже на правду. У запропонованій реалізації є щонайменше одна помилка - з LPT порту неможливо взаємодіяти з жорстким диском безпосередньо, тому необхідний драйвер, що забезпечує такий обмін даними. Зрозуміло останній реалізовується чисто програмно і легко може бути модифікований вірусом. Важко повірити, що розробники про це не здогадуються - швидше за все просто не вчинили вони так під тиском обставин, бо будь-яке інше рішення помітно здорожує кінцевий продукт (наприклад, можна було його виконати у вигляді PCI плати розширення).

Тобто виходить що всі існуючі та очікувані розробки антивірусів потенційно вразливі і не помилятися просто не можуть. При цьому останнє зазвичай замовчується і в документації і рекламних проспектах. Афішуються тільки нові технології, які не безгрішні і погано узгоджуються з іншими компонентами системи. Взяти хоча б уже згаданий приклад рекомендації завантаження з чистою дискети. Сьогодні це вже неможливо з тієї причини, що сучасні антивіруси не те що не «влізають» в такий убогий обсяг, але і вимагають для своєї роботи операційної системи, як правило win32, яку на дискеті ніяк не розмістив.

Втім, деякі розробники, з огляду на таку ситуацію випускають полегшені DOS-версії своїх продуктів. На жаль вони виявляються безсилими, якщо використовувана файлова система не підтримується «чистої» MS-DOS, а необхідними драйверами для її читання розробники нас як завжди забезпечити забивают.Поетому користувачі просто змушені запускати антивірус з жорсткого диска. Взагалі-то це нормально, тому що розробники останнім враховували. Але справа в тому, що нормальне функціонування антивіруса ще не має на увазі його коректну роботу.

Насправді антивірус використовує методи лікування, що дісталися йому «у спадок» від попередніх версій. При цьому багато хто з них покладалися на «чистий» запуск і не знешкоджували резидентний модуль вірусу. Звичайно, розробки по можливості враховують переробляють подібні моменти, але малоймовірно, що б вони наважилися повністю переробити всі бази. Занадто втомлює і неефективно, крім того завжди залишається ймовірність, що деякі записи виявляться втраченими і не переробленими. З іншого боку, а чи потрібно win32 антивірусу перевіряти DOS-файли?

Можна нескінченно довго перераховувати помилки і недоліки архітектур сучасних антивірусів, але навряд чи це буде комусь корисно і цікаво. Основну думку можна висловити двома словами - помилки є навіть там, де їх немає. А з ростом складності програм їх число тільки збільшується.

Вищесказане стосувалося більшою частина до поліфагія, проте вірно і для всіх інших антивірусів. Немає такого продукту, на який можна було б покластися. Найдивовижніше, що часто нескладні і компактні утиліти маловідомих фірм справляються з вірусами іноді краще, ніж популярні пакети (наприклад KPRO, займаючи всього 3 з невеликим кілобайт, надійно видаляє всі стелс віруси з завантажувальних секторів), використовуючи їх властивість маскування або просто перезаписують завантажувачі на стандартні через порти вводу-виводу, тобто таким способом, перехопити який вірус вже не в змозі. З іншого боку як і будь-який інший продукт маловідомих фірм цей антивірус не без помилок, так наприклад, пропущений один CLI в MBR-завантажувач і регіон HMA віднесено чомусь до BIOS, тому цей антивірус починає працювати некоректно, якщо DOS завантажена в верхню пам`ять.

Закінчуючи цю статтю можна сказати, що не буває програми без помилок, буває погано шукали. Тому найкращим антивірусом виявиться той, чий виробник забезпечує кращу підтримку користувача і оперативніше реагує на скарги та зауваження. На жаль сьогодні набагато частіше розробники шукають виправдання, ніж намагаються виправити сітуацію.Автор стаьі: Кріс Касперски

RemoveIT Pro XT SE спокійно знайде віруси, які не бачать інші антивіруси, показує всі активні процеси на ПК і список всіх модулів і файлів в автозавантаженні Windows. Завантажити безкоштовно - RemoveIT Pro XT SE
P.P.S. Якщо у Вас є питання, бажання прокоментувати або поділитися досвідом, напишіть, будь ласка, в коментарях нижче.

Поділися в соц мережах:
Cхоже

Увага, тільки СЬОГОДНІ!