Решенията за сигурност, призвани да защитават данните в Windows системи, могат да се използват за унищожаването им, доказа специалист по сигурността (снимка: CC0 Public Domain)

Вместо да защитават данните в една Windows система, някои софтуери за сигурност могат да бъдат използвани за постоянното им унищожаване, твърди експерт по информационна сигурност, който е открил начин за превръщане на антивирусни и EDR решения в тяхната пълна противоположност.

С абревиатурата EDR (Endpoint Detection and Response) се означават клас решения за сигурност, които засичат и изследват злонамерена активност на крайни точки: мрежови работни станции, сървъри, IoT устройства и други. Такива решения са предназначени да се справят с целеви атаки и напреднали киберзаплахи. Те не заместват класическите антивируси, тъй като решават други проблеми.

В същото време както антивирусите, така и EDR решенията редовно сканират файловата система на компютъра, за да открият зловреден софтуер или подозрителни събития. Ако засече такива заплахи, EDR прави опит за премахване или изолиране в карантина на злонамерената програма.

Ако защитата в реално време е активна, всеки файл, който се появява (създава) в системата, се сканира автоматично. Ако този файл се счита за злонамерен, защитното решение се опитва да го премахне или изолира. Оказва се, че антивирусните и EDR системи на Microsoft, SentinelOne, TrendMicro, Avast и AVG съдържат уязвимост, която можеше да ги превърне в инструменти за постоянно изтриване на данни.

Експериментът

Ор Яир, експерт по сигурност в SafeBreach, пояснява в своето изследване, представено на конференцията Black Hat, че премахването на злонамерен файл от системата EDR се състои от две събития: първо, файлът се разпознава като злонамерен, след което се извършва изтриването. Ако успеете по някакъв начин да се вклините между тези две събития, тогава EDR системата може да бъде „пренасочена” към други директории. Всъщност говорим за уязвимост от клас TOCTOU (time-of-check to time-of-use, или от времето на проверка до времето на използване).

В своя експеримент Яир създава директория C:tempWindowsSystem32drivers и поставя в нея помощната програма за експлойт на уязвимости Mimikatz под прикритието на файла ndis.sys (легитимният файл с това име е системният драйвер на Windows за мрежови контролери ). Повечето EDR платформи, включително Microsoft Defender, смятат тази помощна програма за злонамерена и се опитват да я елиминират.

Въпреки това, преди EDR системата да успее да изтрие Mimikatz, Яир изтрива директорията C:temp и създава т.нар. „точка на свързване” (Junction) – символна връзка, която ви позволява да пренасочвате от директория към директория, в случая – от C:temp към C:Windows. В резултат на това, от гледна точка на системата EDR, файлът, намиращ се в C:Windowssystem32drivers, сега подлежи на изтриване. Това е местоположението на легитимния ndis.sys.

Първоначално този подход не проработва, защото някои EDR предотвратяват по-нататъшен достъп до файл, маркиран като злонамерен, и следователно неговото изтриване. В други случаи EDR установява, че злонамереният файл вече е премахнат, така че елиминирането не е извършено.

Решението е да се създаде злонамерен файл и да се остави отворен, като по този начин се запази дескрипторът му, но не се уточнява кои други процеси имат право да го записват/изтриват, така че EDR и антивирусите да не могат да го изтрият.

След като файлът е открит и поради липса на права за изтриването му, инструментите за сигурност предлагат на Яир да одобри рестартиране на системата, което ще освободи дескриптора и ще позволи изтриване на злонамерения файл. Командата за изтриване на файла в този случай се записва в системния регистър (PendingFileRenameOperations); нейното изпълнение се извършва при рестартиране.

Въпреки това, както посочва Яир, Windows „сляпо” следва инструкциите, дадени от точката на свързване, тоест не изтрива злонамерен файл, а легитимен. В резултат на това изследователят успява да изтрие файлове в директории, които няма право да променя.

Оръжието „уайпер”

„Този експлойт работи и срещу функция за сигурност на Windows, наречена „контролиран достъп до папка” (Controlled Folder Access). Това е функция, предназначена да защитава срещу рансъмуер, която блокира всички непроверени процеси за промяна или изтриване на файлове, намиращи се в директории, включени в списъка със защитени. Въпреки това, тъй като EDR и антивирусите се радват на максимални привилегии в системата, тази функция няма да им попречи да изтрият каквото и да било”, пише Яир.

В крайна сметка той създава „уайпер” – програма за необратимо унищожаване на данни, която не може да бъде открита от нищо, може да се стартира от непривилегировани потребители и успешно изтрива данни от защитени директории до степен, че системата не може да се зареди.

Яир тества своя Aikido Wiper на 11 инструмента за сигурност, за да установи, че тя работи чудесно срещу Microsoft Defender, Defender for Endpoint, SentinelOne EDR, TrendMicro Apex One, Avast Antivirus и AVG Antivirus. Defeneder/Defenderfor Endpoint и SentinelOne се оказват най-уязвими – при тях е най-лесно да се имплементира уайпер. Решенията на Palo Alto, Cylance, CrowdStrike, McAfee и BitDefender не се поддават на манипулацията.

Навременна актуализация

Между юли и август 2022 г. Яир е информирал всички доставчици за откритите уязвимости и те вече са коригирали проблема. Късмет за индустрията на киберсигурността и потребителите е, че информацията за толкова сериозен проблем не е изтекла в публичното пространство, преди всички тези продукти да бъдат актуализирани. В противен случай, поне за известно време, това би било „върховно оръжие”: неоткриваем зловреден софтуер, способен да унищожи всяка система.

Microsfot, Trend Micro, Avast и AVG присвоиха CVE индекси на уязвимостите, съответно CVE-2022-37971 (Microsoft), CVE-2022-45797 (Trend Micro) и CVE-2022-4173 (Avast и AVG). Следните версии се считат за безопасни: Microsoft Malware Protection Engine: 1.1.19700.2 или по-нова; TrendMicro Apex One: Hotfix 23573 и Patch_b11136 или по-нова версия; Avast & AVG Antivirus: 22.10 или по-нова.

Източник