Обраний керує антивірус

Прочитали: 3039 Коментарів: 97 Рейтинг: 102

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

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

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

Фахівець компанії One Up Security Джастін Тафт (Justin Taft) виявив вразливість в складі Valve Source SDK . Дослідник пише, що уразливість в движку Source зачіпала такі популярні ігри, як Counter Strike: Global Offensive, Team Fortress 2, Left 4 dead 2, Potral 2.

Справа в тому, що ігри, які працюють на движку Source, використовують Source SDK, щоб сторонні компанії і незалежні розробники могли створювати власні кастомниє моди. До того ж файли карт для движка Source дозволяють розробникам додавати кастомний контент (текстури, скіни, моделі трупів), який завантажується разом з картою.

Корінь проблеми лежав в звичайному переповненні буфера (buffer overflow), через вразливість можна було домогтися і виконання довільного коду на клієнтської або серверної стороні. Як приклад експлуатації бага Тафт подає такий кейс: якщо створити кастомом модель трупа, яка буде завантажуватися після смерті ігрового персонажа, до цієї моделі можна прив'язати завантаження довільного шкідливого коду. Як видно на ДІФКУ нижче, смерть гравця в TF2 тягне за собою виконання шкідливих інструкцій.

Як видно на ДІФКУ нижче, смерть гравця в TF2 тягне за собою виконання шкідливих інструкцій

Дослідник повідомляє, що розробники Valve усунули проблему ще в червні 2017 року, і розробників модів попросили оновити Steam Source SDK до актуальної версії, встановивши цей патч .

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

https://xakep.ru/2017/07/21/valve-source-bug

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

Ще один варіант атаки за допомогою перезапису даних: прописати в область, відведену під дані, потрібний код і передати на нього управління. У цьому випадку основна частина програми не змінюється.

Для захисту від цієї атаки компанія Microsoft розробила спеціальну технологію - DEP. При її використанні місця, відведені під дані, позначаються як «невиконувані» (NX). Якщо додаток спробує виконати код з сегмента пам'яті з міткою NX, механізм DEP заборонить це дія.

Підтримка DEP додана в Windows починаючи з версій XP SP2, Server 2003 SP1 і 2003 R2. При цьому реалізацій DEP є дві: апаратна на рівні процесорів і програмна.

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

У нижній частині вікна налаштувань конфігурації служби DEP зазначений тип реалізації даної служби.

Служба DEP підтримує два рівня захисту:

  1. Перший рівень захищає тільки системний і виконуваний код ОС Windows.
  2. Другий рівень захищає весь виконуваний код в системі. Механізми DEP застосовуються і до системного коду Windows, і до додатків компанії або незалежних виробників.

Адміністратори можуть налаштовувати рівні захисту за допомогою конфігураційного екрану служби DEP.

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

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

Перемога? Неповна.

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

Маловідомий факт. Перші антивіруси містили описи вірусів безпосередньо в собі. Але зростання кількості вірусів привів до того, що опису винесли в окрему від програми вірусну базу. А вимоги постійних оновлень привели до того, що ця база повинна оновлюватися з перезаписом застарілих даних. Всі знають, що антивірус зберігає свої вірусні бази в пам'яті. Але як вони там розміщуються? Виділяється область даних, в неї записуються сигнатури і код евристики. І з цієї області виповнюється код баз даних.

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

#Windows # антивірус # гри # вразливість # експлойт

Перемога?
Але як вони там розміщуються?

Уважаемые партнеры, если Вас заинтересовала наша продукция, мы готовы с Вами сотрудничать. Вам необходимо заполнить эту форму и отправить нам. Наши менеджеры в оперативном режиме обработают Вашу заявку, свяжутся с Вами и ответят на все интересующее Вас вопросы.

Или позвоните нам по телефонам: (048) 823-25-64

Организация (обязательно) *

Адрес доставки

Объем

Как с вами связаться:

Имя

Телефон (обязательно) *

Мобильный телефон

Ваш E-Mail

Дополнительная информация: