Антивірусні системи з хмарною архітектурою
Введення
- Методи захисту
- Нові методи маскування
- Метод маскування - «блакитна пігулка»
- Існуючі методи захисту
- Хмарні обчислення та майбутнє антивірусних систем
- Організація роботи антивірусу з хмаром
- Недоліки сучасних хмарних антивірусних систем
- Беззахисність перед руткітами з апаратною віртуалізацією
- Хмарний антивірус із захищеним середовищем виконання
- Концепція створення захищеного середовища виконання
- Оцінка захищеності та ефективності пропонованого рішення
- Виявлення характеристик контролю
- Висновки
Інформація займає одне з найважливіших місць у житті нашого суспільства, тому захист інформації є невід'ємною частиною її використання.
Захист інформації найчастіше розглядається в контексті захисту її носіїв. Захист носіїв вимагає складного і різноманітного програмного та апаратного забезпечення. При існуванні безлічі архітектурних рішень носіїв, існує така ж безліч їх захистів.
Методи захисту
Шкідливе ПЗ постійно вдосконалюється, у зв'язку з цим виробники антивірусів постійно оновлюють базу вже відомих сигнатур (ділянок коду відомого вірусного ПЗ, за яким це ПЗ детектується) або зовсім забороняють модифікацію і додавання ПЗ, а також файлів у критичних місцях ЕВМ.
Для боротьби з новими загрозами використовують механізми евристичного і сигнатурного аналізу і проактивні (поведінкові) захисту, які аналізують ПЗ в процесі роботи і виявляють підозрілі дії. Також часто використовується метод перевірки контрольних сум.
Нові методи маскування
Зараз почали з'являтися концептуально нові руткіти, засновані на роботі поза операційною системою.
Один з таких методів використовується в Boot-руткітах. Вони переписують завантажувальний запис (MBR - головний завантажувальний запис) і після завантаження BIOS виконують шкідливий код, і тільки потім завантажується операційна система.
Більш цікавий клас руткітів, які засновані на використанні апаратної віртуалізації їх називають Blue Pill (англ. «Блакитна пігулка»). Вперше цей клас руткітів був публічно продемонстрований у вигляді демонстраційної програми Джоани Рутковської на конференції Black Hat Briefings 3 серпня 2006 року у вигляді зразка реалізації для ядра ОС Microsoft Windows Vista [1].
Метод маскування - «блакитна пігулка»
Концепція «Блакитна пігулка» полягає в захопленні запущеного екземпляра операційної системи (захоплення проводиться при запуску ОС) «тонким» гіпервізором і віртуалізацією ним іншої частини роботи комп'ютера.
Попередня операційна система буде все ще підтримувати існуючі в ній посилання на всі пристрої і файли, але майже всі, включаючи апаратні переривання, запити даних і навіть системний час будуть перехоплюватися гіпервізором, який буде відсилати фальшиві відповіді.
Єдиним способом виявити «блакитну пігулку» є визначення того факту, що завантажена у віртуальне середовище реалізація функціонує не так як належить. Віртуалізація може бути виявлена при атаці за часом, заснованій на зовнішніх джерелах часу [1].
Існуючі методи захисту
Реалізація захистів від подібних загроз ділиться на два класи:
- Повна заборона роботи або модифікації інформації поза ОЗ на апаратному рівні;
- Своєчасне детектування і знешкодження загроз під час роботи ОС (RedPill (англ. «Червона пігулка») [2], атака за часом, атака за продуктивністю [1]).
Захист на апаратному рівні складний в реалізації і дорога, а надійних способів виявлення та знешкодження таких загроз на даний момент не існує.
Метод виявлення форми віртуалізації тонким гіпервізором «Червона пігулка» був запропонований Джоаною Рутковською. Він заснований на підрахунку кількості таблиць векторів переривань в оперативній пам'яті ЕВМ. Цей метод може адекватно працювати тільки в системах з одним процесорним ядром.
Атаки за часом і за продуктивністю засновані на спотворенні часових і швидкісних характеристик ЕВМ при впровадженні гіпервізора.
Хмарні обчислення та майбутнє антивірусних систем
З розвитком телекомунікаційних систем багато антивірусних компаній почали звертати увагу на хмарні обчислення [3, 4, 5].
Концепція хмарних обчислень полягає в наданні кінцевим користувачам віддаленого динамічного доступу до послуг, додаткам (включаючи ОС і різну інфраструктуру) і обчислювальним ресурсам різної потужності [Рис. 1][6].
Малюнок 1 - Інтернет хмара і його користувачі
Хмарні обчислення діляться на два типи:
- Платформні хмари;
- Хмари послуг;
Платформні хмари надають доступ до будь-якої платформи. Це може бути операційна система, система для наукових розрахунків тощо.
Хмари послуг надають лише послуги. Зазвичай користувачі не мають доступу до широких параметрів хмари, даних і конфігурацій. Антивірусні системи починають активно використовувати обидва типи хмар.
Платформні хмари досить спеціалізовані і служать, зазвичай, великим обчислювачем і накопичувачем статистики роботи настільних антивірусних систем або базою даних новітніх сигнатур. Хмари послуг використовуються для надання користувачам можливості завантаження підозрілих файлів у хмару і антивірусного аналізу без споживання ресурсів ЕВМ користувача [5].
Організація роботи антивірусу з хмаром
Подробиці роботи комерційних антивірусних систем з антивірусними хмарами приховані комерційною таємницею. Але проаналізувавши відкриті джерела можна виділити кілька способів організації роботи антивірусних хмар:
- Робота з метаданими та хеш-функціями виконуваних файлів. Їх аналіз у хмарі експертною системою [7];
- Передача актуальних вірусних сигнатур частими і маленькими порціями на ЕВМ користувача [5];
- Технологія SONAR (виставлення балів небезпеки програми, за виконуваними ним операціями і аналіз у хмарі) [3].
Всі наведені технології мають свої переваги і недоліки, але основну роль тут починають грати хмарні обчислення. Антивірусні хмарні обчислення переймають всі проблеми, притаманні хмарам. До них також додаються проблеми антивірусного ПЗ [7].
Недоліки сучасних хмарних антивірусних систем
Сучасні хмарні антивіруси оперують такими поняттями як метадані, хеш-функції, рейтингова система оцінки небезпеки об'єктів. Всі ці підходи не забезпечують гідну відсіч принципово новому ПЗ. Вони екстенсивно борються з загрозами, лише нарощуючи потужність обладнання і прискорюючи час реакції на нові епідемії.
Також серйозною проблемою є робота антивірусних систем у незахищених середовищах [Ріс. 2.]. З цієї причини багато антивірусних засобів містять механізми захисту цілісності, але і сьогодні ця проблема є актуальною [8, 9].
Малюнок 2 - Проблеми роботи в незахищених середовищах
Хмарні антивірусні системи зробили лише маленький крок у бік освоєння всіх можливостей хмарних обчислень. Ці кроки покликані знизити споживання ресурсів користувача, прискорити оновлення вірусних сигнатур [7] і створити експертну базу сучасних загроз. Таке рішення не стане «срібною кулею» [10]. Воно не привнесло нових методів боротьби зі шкідливим ПЗ, а лише модифікувало, і без того вже сильно застарілі підходи.
Беззахисність перед руткітами з апаратною віртуалізацією
Всі підходи, які застосовуються в роботі сучасних антивірусних систем виявляються безпорадними проти руткітів, що виконуються поза ОС і принципово нового шкідливого ПЗ [1, 11].
Шкідливі програми у вигляді тонкого гіпервізора частково або зовсім не використовують ресурсів ОС, не інфікують її файли, працюють з обладнанням ЕВМ без використання драйверів ОС, то вони абсолютно невидимі для сучасних антивірусних систем, в тому числі і хмарних.
Хмарні обчислення можуть вирішити цю проблему, за рахунок перенесення системи прийняття рішень про інфікування в захищене середовище хмари.
Хмарний антивірус із захищеним середовищем виконання
Хмара застосовується при серйозних обчисленнях для зниження навантаження на клієнтів. В антивірусних системах воно служить швидким каналом поширення нових антивірусних баз, а так само накопичувачем відомих загроз.
Можна піти далі і зробити всю хмару одним великим антивірусним середовищем. У цьому випадку на ЕВМ користувачів будуть розташовуватися лише клієнти, що працюють в ролі датчиків. Вони циклічно будуть знімати показання характеристик клієнтських ЕВМ, і відсилати їх в хмару. У хмарі буде проводитися статистичний підрахунок змін характеристик користувальницьких ЕВМ. У такому випадку, при інфікуванні користувача новим вірусом, хмара занесе спотворені показання характеристик ЕВМ в свою базу даних, а експертна система зробить висновок про зараженість ЕВМ. Якщо ж ЕВМ користувача підключена до мережі, але при цьому відсутній зв'язок з клієнтом антивірусної системи, то ця ЕВМ вважається скомпрометованою, і слід вжити заходів щодо виявлення та знешкодження шкідливого ПЗ.
Головним, і найскладнішим, в такому підході буде виявлення характеристик ЕВМ, які спотворюються при впровадженні шкідливого ПЗ в ЕВМ користувача, і безпечна передача їх в хмарний обчислювач.
Такий підхід дозволить набагато швидше реагувати на нові загрози, тому що існує всього один вузол, який приймає рішення. Це дозволить уникати епідемій, які зараз набувають все більш масового характеру.
У клієнтських ЕВМ антивірусне ПЗ все одно повинно мати засоби самозахисту, захищеної передачі по мережі, а також детектування «елементарних» вірусних загроз («елементарних» - загроз, з якими ця антивірусна система вміє боротися).
Концепція створення захищеного середовища виконання
В ідеальному випадку захищеним середовищем виконання вважається виконання програм, дії яких і їх можливі наслідки повністю відомі. Ці програми виконуються в ОС, про яку також все відомо (наприклад, є доступ до вихідних кодів). Таким чином, буде виключена можливість прихованого впровадження програмних «закладок» і недокументованих можливостей. ОС працює на ЕВМ і пристроях, які зібрані з компонентів, виготовлених під належним контролем за відомою технологією. У цьому випадку буде виключена можливість впровадження апаратних «закладок» і недокументованих можливостей. А далі харчування, приміщення, будівля тощо. Також доступ до роботи з ЕВМ повинен бути суворо регламентований і обмежений довіреним колом осіб.
У житті створення справжнього захищеного середовища необхідно різним державним і військовим відомствам. Особливо якщо вони мають справу з державною таємницею, від їх роботи залежить безпека країни.
В інших областях використання ЕВМ такий режим майже не використовується на увазі його дорожнечі і зниженої гнучкості.
Дуже багато апаратних і програмних рішень на сучасному ринку не можуть забезпечити захищене середовище виконання, тому програми набувають захисних механізмів: контролю цілісності, антиотладочні прийоми, упаковка і обсфукація (запис сміттєвого коду у виконуваний модуль, з метою ускладнити вивчення ПЗ).
Під захищеним середовищем слід розуміти збір інформації, аналіз і прийняття рішення про інфікування клієнтської ЕВМ в середовищі, яке знаходиться поза зоною збору інформації. Це середовище має велику надійність і керованість, порівняно з клієнтською ЕВМ, і не може бути скомпрометоване внаслідок інфікування клієнтської ЕВМ.
Створення захищеного середовища виконання вимагає серйозних матеріальних і ресурсних витрат, а також серйозного ускладнення програмного забезпечення. Коли дані не є державною таємницею, вважається, що захист буде ефективним, якщо на його подолання буде потрібно більше коштів, ніж стоять самі дані. Тому завжди необхідно знаходити компроміси, що дозволяють за прийнятну вартість отримувати досить надійні програмні або апаратні рішення.
Оцінка захищеності та ефективності пропонованого рішення
Клієнтська ЕВМ може бути скомпрометована, але хмара залишиться в працюючому стані, тому що від клієнта хмара отримує тільки дані для ведення статистики і розрахунків, назад може відсилатися будь-яка необхідна інформація.
При повній відмові клієнта антивірусної системи хмара може повідомити користувача про наявні проблеми з його ЕВМ будь-яким іншим доступним способом (мобільне текстове повідомлення, електронна пошта, сайт антивірусної системи).
У такому випадку з ладу може вийти лише клієнтська частина, хмарний обчислювач залишається працездатним в не залежності від стану клієнтських ЕВМ.
Звичайно ж, при обміні повідомленнями хмари з клієнтом антивірусної системи повинен бути забезпечений достатній рівень контролю якості вхідних повідомлень, реалізований контроль цілісності та ідентифікація клієнтської ЕВМ.
Пропоноване рішення більш ефективне, ніж звичайні настільні антивірусні системи з централізованим сервером оновлень баз сигнатур:
- За продуктивністю. Всі обчислювальні операції переносяться в хмару, тим самим знижуючи навантаження на ЕВМ користувача;
- По латентності. Швидкість виявлення нових загроз і оповіщення доступних клієнтів про нову небезпеку збільшується;
- По захищеності. Хмара не може бути скомпрометована клієнтом, тому база загроз буде завжди актуальна і ціла;
- За актуальністю. Експертна система при рішенні про зараження бере до уваги всі дані зібрані з клієнтських ЕВМ. З'являються більш широкі можливості аналізу, ніж у підходу з виявленням сигнатур.
- Щодо впровадження нових рішень. Нові методи виявлення та знешкодження вірусних загроз в першу чергу будуть впроваджуватися в хмару, тим самим зменшуючи вплив на прийняття рішень при застаріванні ПО на ЕВМ клієнта.
Варто згадати, що деякі антивірусні системи мають повноцінну хмарну архітектуру. Це пов'язано з новизною хмарних обчислень, як підходу до забезпечення антивірусної безпеки.
Виявлення характеристик контролю
Експертами в галузі безпеки було запропоновано кілька способів визначення завантаження тонкого гіпервізора до основної ОС:
- Атака за часом;
- Атака за продуктивністю;
- Метод протидії «Червона пігулка».
Атака за часом заснована на зовнішньому джерелі часу. За цим джерелом часу контролюється час виконання команд та окремих операцій на користувальницькій ЕВМ. При наявності в пам'яті завантаженого гіпервізора, його код теж виконується, а також втручається в роботу ОС і окремих програм. При виконанні стороннього коду на ЕВМ, час виконання команд спотворюється, і стає здійсненна атака за часом.
Атака по продуктивності заснована на зниженні продуктивності користувацької ЕВМ при виконанні на ній стороннього коду.
Метод протидії «Червона пігулка» заснований на підрахунку кількості таблиць векторів переривань в оперативній пам'яті ЕВМ. Цей метод може адекватно працювати тільки в системах з одним процесорним ядром.
Актуальним методом виявлення тонкого гіпервізора можна вважати контроль складу і характеристик обладнання. Працюючий гіпервізор, для повного контролю над користувальницькою ЕВМ, повинен повністю віртуалізувати роботу з роботу ОС з обладнанням. Зважаючи на різноманіття і відмінності в характеристиках обладнання, тонкий гіпервізор повинен володіти величезним набором підмодулів роботи з обладнанням. При цьому можна ґрунтуватися на тому ж часі реакції та продуктивності окремого обладнання при пошуку гіпервізора. Природно весь аналіз повинен проводитися на безпечній ЕВМ або хмарі.
Наприклад, при перевірці оперативної пам'яті користувацької ЕВМ її обсяг зменшиться при роботі тонкого гіпервізора. Деякі експерти з безпеки висловлювали думку, що при перевірках подібного роду, гіпервізор може вивантажити себе з пам'яті, тим самим сховатися від антивірусу. При таких діях гіпервізора стають доступні стандартні способи боротьби зі шкідливим ПЗ: сканування дисків, сигнатурний аналіз, аналіз завантажувальних областей тощо.
Варто звернути увагу на технології динамічної зміни продуктивності процесорів, шин, пам'яті та накопичувачів інформації. У сучасних переносних ЕВМ існує безліч технологій покликаних економити енергоспоживання при роботі від батарей, знижувати галасливість і нагрів обладнання. У більшості випадків ці технології динамічно змінюють продуктивність ЕВМ для досягнення потрібного ефекту. У таких випадках інтерпретація статистичних даних, отриманих від клієнта, повинна бути модифікована з урахуванням мінливої продуктивності (введення поправочних коефіцієнтів). У даній роботі питання динамічної зміни продуктивності ЕВМ не розглядаються, тому що вони ніяк не впливають на демонстрацію представлених підходів і алгоритмів.
Атака за часом, атака за продуктивністю, метод протидії «Червона пігулка», контроль обладнання, всі ці методи виявлення роботи тонкого гіпервізора дадуть серйозну відсіч шкідливому ПЗ при грамотній реалізації антивірусу і винесенні системи прийняття рішень про інфікування в захищене середовище, наприклад, хмару.
Висновки
До плюсів хмарних антивірусів можна віднести:
- Захищеність середовища прийняття рішень;
- Підвищену продуктивність;
- Скорочення часу реакції на нові загрози;
- Підтримання актуальності бази даних загроз;
- Прискорене впровадження нових засобів боротьби зі шкідливим ПЗ;
- Прихована логіка прийняття рішень;
- Неможливість перевірки ефективності маскування нового шкідливого ПЗ без внесення інформації про нього в базу даних загроз хмари;
- Зведення до мінімуму помилкових спрацьовувань.
Недоліків теж достатньо, багато з них виникають через використання хмарних обчислень, тому хмарним антивірусним системам притаманні всі недоліки хмарних обчислювачів:
- Проблеми завантаження мережевих підключень на повільних каналах зв'язку;
- Неможливість ефективної антивірусної перевірки за запитом користувача без серйозного збільшення кількості звернень клієнта до хмари;
- Непрацездатність антивірусної системи за відсутності з'єднання з хмаром (локальна ЕВМ, без з'єднання з мережею).
Як видно переваг у хмарних антивірусних систем набагато більше. Сучасний прискорений розвиток телекомунікаційних мереж зробить більшу частину проблем використання хмарних обчислень неактуальними. Також дуже великою перевагою є створене захищене середовище виконання. Вона дозволяє вивести сучасні антивірусні засоби на новий рівень у боротьбі з сучасними загрозами.
Список використаних джерел
- Концепція «блакитна пігулка» ru.wikipedia.org/wiki/Blue_Pill
- Концепція «червона пігулка» ru.wikipedia.org/wiki/Red_Pill
- Ільїн, Степан. Хмарні обчислення проти вірусів www.xakep.ru/magazine/xa/130/034/1.asp
- Крупін, Андрій. Хмарний антивірус www.computerra.ru/terralab/softerra/424961
- Крупін, Андрій. Хмарні антивіруси в теорії і на практиці www.3dnews.ru/software/cloud-ativiruses-1
- Про хмарні обчислення www.parallels.com/ru/spp/understandingclouds
- Машевський, Юрій. Антивірусний прогноз погоди: облачно www.antivirus-navigator.com/articles/kaspersky-cloud.htm
- Невелике дослідження самозахисту продуктів Dr. Web habrahabr.ru/blogs/virus/110508
- Самозахист антивірусів habrahabr.ru/blogs/virus/98322
- Фредрік Брукс. Міфічний людино-місяць або як створюються програмні системи. Видавництво «Символ плюс», 2001.
- Whistler Bootkit habrahabr.ru/blogs/virus/96850








