Съдържание

/nightmare-eclipse-shieldcrash-defender-patch-bypass/nightmare-eclipse-shieldcrash-defender-patch-bypass.png

Пълен курс по етично хакерство: от нула до експерт

Хаквайте като хакери с черни шапки. Тестване за проникване, Kali Linux, хакване на WiFi и уеб, както и хакерският начин на мислене зад всичко това.

Nightmare Eclipse пуска zero-day уязвимости за Windows от април, а този уикенд се подписа с истинското си име под тях. Microsoft го уволни. В описанието на профила му в GitHub все още пише „Обичам Microsoft“.

Името е Abdelhamid Naceri. Той е работил в Microsoft Security Response Center в Германия – екипът, който приема доклади за уязвимости отвън и решава какво да се случва с тях. Този уикенд той публикува дълга поредица от съобщения в X със заглавие „Време за история“, съдържаща документите за неговото уволнение. Това сложи край на пет месеца догадки.

Пиша за него от април. BlueHammer, RedSun, UnDefend, YellowKey, MiniPlasma, RoguePlanet, GreatXML, LegacyHive, ShieldBreak. Девет статии. В последната написах, че следата минава през собствената страница с благодарности на Microsoft и спира до един профил, както и че няма да го представя като потвърждение. Сега той сам го потвърди.

Тази публикация не е причината да пиша днес. Причината е това, което той качи онлайн пет дни преди нея.

На 8 септември Microsoft пусна своите септемврийски актуализации от вторника за корекции (Patch Tuesday). Приблизително два часа по-късно в неговия GitHub се появи кодът за нов експлойт, наречен ShieldCrash. Самото хранилище беше създадено предния ден и стоеше празно, докато не излязоха корекциите за сигурност. Неговите думи от страницата:

„Microsoft не успя да отстрани правилно уязвимостта ShieldBreak CVE-2026-69414; при определени условия все още е възможно да се предизвика абсолютно същият проблем, причинен от ShieldBreak.“

ShieldBreak беше неговото откритие от август – дефектът в Defender, който повишава правата на обикновен акаунт до SYSTEM, най-високото ниво на достъп в машина с Windows. Microsoft му даде идентификатор CVE-2026-69414 на 14 август и оценка 7.8. ShieldCrash твърди, че отстраняването на уязвимостта не е издържало.

Windows има функция за файлове, които се намират в облака, но се показват в папките ви така, сякаш са на вашия диск. Файлът е само контейнер (placeholder), докато не го отворите. След това Windows изтегля съдържанието му. Частта от Windows, която се грижи за това, се нарича Cloud Filter API. Тя позволява на софтуера, притежаващ файла, да реши какви данни да върне, когато нещо се опита да го прочете.

ShieldCrash се регистрира като един от тези облачни доставчици под името Flubber. Създава контейнерен файл, наречен BERN, и поставя в него тестовия низ EICAR – безопасния низ, който антивирусните продукти са създадени да засичат. След това копира ntdll.dll в алтернативен поток от данни (alternate data stream) на същия файл – скрито второ съдържание, което NTFS позволява на файла да носи зад името си, след двоеточие.

След това извиква Defender. Той зарежда собствената библиотека на Defender MpClient.dll директно от инсталационната папка, отваря интерфейса зад нея и сам стартира сканирането по пътя, който е изградил. Defender намира низа EICAR, решава, че файлът е зловреден, и започва почистване, като експлойтът също задейства това почистване. Почистването се изпълнява с права на SYSTEM. И докато Defender върви към файла, който предстои да премахне, експлойтът подменя пътя под носа му и го насочва към друг файл.

Кой файл ще бъде това, зависи от този, който стартира инструмента. Редът за използване в изходния код е Usage : ShieldCrash.exe <path_to_leak>. В демонстрацията този път е C:\Windows\System32\config\SAM, а този файл съдържа хешовете на паролите за акаунтите на машината. Windows го държи заключен, докато системата работи, и нормален потребител не може да го чете. Defender обаче може.

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

Няколко издания са разбрали погрешно корекцията за сигурност.

Заглавията твърдят, че септемврийските актуализации от Patch Tuesday са коригирали ShieldBreak и че той ги е преодолял два часа по-късно. Тези актуализации нямат нищо общо. Собственият бюлетин на Microsoft посочва първия модул с отстранена уязвимост като 1.1.26080.3. Това е Malware Protection Engine – сканиращият модул вътре в Defender, който се обновява по собствен график, отделно от месечните актуализации, идващи чрез Windows Update. Бюлетинът беше ревизиран за последно на 3 септември. Корекцията за сигурност, към която той се беше насочил, беше публикувана от дни и изобщо не е идвала под формата на KB номер.

Освен това той самият споделя по-малко за собствения си експлойт, отколкото медийните заглавия.

Статиите описват ShieldCrash като предоставящ достъп до SYSTEM. На собствената си страница той го нарича базов PoC (skeleton PoC) и заявява, че го публикува с ограничена мотивация. Това, което е налично в момента, е произволно четене на файлове (arbitrary file read) с права на SYSTEM. Той може да го преработи по-късно в пълно доказателство за концепцията (proof of concept) за достъп до SYSTEM, пише самият той. Това са думи на изследовател, който заявява, че собственият му експлойт не е завършен.

И някой го провери. Howler Cell възпроизведе веригата на Windows 11 25H2, билд 26200.9445, с инсталиран коригиран модул 1.1.26080.3, и я тества стъпка по стъпка. Тя стигна до третия етап и спря. Пренасочването се проваля с Windows error 145, ERROR_DIR_NOT_EMPTY, тъй като Defender държи отворен лог файл в директорията, която експлойтът трябва да модифицира. Тяхното най-точно наблюдение е в изходните данни: всяко изпълнение генерира файл с размер точно 2 505 480 байта – дължината на ntdll.dll на тази машина. Експлойтът е връщал копието, което сам е заложил, а не файла с пароли, към който се е прицелил.

Това е едно възпроизвеждане и то не е последната дума. Доказателство за концепция, което се проваля днес, не означава затворена пробойна. Първият му експлойт, BlueHammer, започна по абсолютно същия начин.

Microsoft не е потвърдила ShieldCrash, не му е присвоила номер и не е обявила корекция за сигурност. Това, което заявиха при запитване, беше следното: „антивирусният софтуер трябва да се поддържа актуален с тези обновления своевременно.“ Това изречение е на тринадесет години. То присъства дума по дума в собствените бюлетини за сигурност на Microsoft за техния Malware Protection Engine от 2013, 2014 и 2017 г., под същите две заглавия, които използва и бюлетинът за ShieldBreak: последна засегната версия на енджина, първа коригирана версия на енджина. Същата форма, различни номера.

Нещо друго се промени през последните три седмици и почти не привлече внимание. Четири от последните му пет издания изобщо не са свързани с Microsoft.

  • → HardBreacher, 28 август, Kaspersky Endpoint Security v14.0.0.504. Пренасочва коя DLL библиотека да зареди интерфейсът, използвайки същия трик с именуването в Object Manager.
  • → GreenSection, 29 август, графичният драйвер на NVIDIA. Секция от споделена памет, създадена с пълен достъп за всеки акаунт на машината.
  • → PrettyPrague, 30 август, Avast. Злоупотребява със собствената файлова виртуализация на изолираната среда, за да извлече куста SAM и да възстанови идентификационните данни офлайн.
  • → FalconFlank, 3 септември, CrowdStrike Falcon Sensor. Състезание във времето (timing race) чрез Transactional NTFS, което подменя легитимен файл със зловреден код в момента, в който сензорът предприема действие спрямо него.

Кевин Бомонт ги тества и потвърди, че три от четирите работят – всички с изключение на GreenSection, което той разчете по-скоро като срив (crash), отколкото като ескалация на привилегии. Gen Digital потвърдиха дефекта в собствения си продукт и пуснаха коригирани версии на 4 септември. От Kaspersky заявяват, че проблемът е решен чрез автоматично обновление на базата данни. NVIDIA не е публикувала нищо. CrowdStrike все още разследва, а междувременно препоръчва на клиентите да изключат политиката Microsoft Office File Suspicious Macro Removal в Windows. От четирите случая, това е единственият, при който на потребителите се казва да променят настройка.

Четири продукта за сигурност, три от тях в рамките на три дни, от един човек, без никакво съгласуване с разработчиците.

Тук конфликтът спира да бъде просто спор между един човек и една компания. BlueHammer носи номера CVE-2026-33825. Huntress го засичат използван в реално проникване, започнало на 10 април 2026 г., в мрежа, която няма нищо общо с неговата борба. Microsoft отстрани уязвимостта през април, а CISA я добави към каталога с известни експлоатирани уязвимости по-късно същия месец. Преди краят на лятото да настъпи, CISA обнови записа с информацията, че групи за рансъмуер я използват.

Това, което прави след установяване на първоначален достъп, се свързва директно с тема, която отново беше в новините тази седмица. Файлът SAM е заключен от системния процес (System process). Затова експлойтът записва тестови антивирусен низ на диска – от вида, който Defender със сигурност ще маркира – и Defender реагира, като създава замразен моментен снимок (snapshot) на тома като част от процеса по изчистване. Този снимок съдържа отключено копие на файла с паролите и експлойтът просто изчаква появата му. Софтуерът за сигурност върши тежката работа, а атакуващият просто се възползва от резултата след него.

След това той анализира SAM и декриптира NT хеша на всеки потребител. Задава всяка парола на машината на $PWNed666!!!WDFAIL, отваря администраторски сесии с тях, копира SYSTEM токена и получава пълен контрол.

Същата функционалност за сенчести копия (shadow copy) е това, което групите за рансъмуер изтриват, преди да криптират, за да не може нищо да бъде възстановено. Софтуерът за архивиране също я използва, поради което е изключително трудно за нея да се задействат аларми за сигурност.

Самото проникване изглежда като лош ден в обикновена компания. На 15 април 2026 г. в 13:44:19 UTC, атакуващият влиза през SSL VPN от 78.29.48.29 в Русия. Разузнаването се състои от whoami /priv, cmdkey /list и net group. Инструментите стоят в потребителската папка Pictures под името FunnyApp.exe.

И когато атакуващият се опитва да стартира UnDefend, за да срине Defender, той изписва собствения си параметър погрешно. Написва -agressive само с едно „g“ и инструментът не свършва това, което се иска от него. За RedSun и UnDefend бяха пуснати извънредни корекции за сигурност на 21 май под номера CVE-2026-41091 и CVE-2026-45498, след като Huntress потвърдиха и трите уязвимости в реални атаки.

Акаунтът, който можете да посетите днес, не е първият му. GitHub блокира оригиналния акаунт Nightmare-Eclipse на 23 май и изтри всичко в него. GitLab, където той се премести след това, закри акаунта му на 26 май и също изтри съдържанието. GitHub API все още връща 404 за старото потребителско име.

Това, което постигнаха свалянията, беше да го изгонят от чуждите платформи. Сега той поддържа собствен git сървър на адрес projectnightcrawler.dev, и BlueHammer, RedSun, UnDefend, YellowKey, MiniPlasma, GreenPlasma и RoguePlanet са качени там. Петнадесет хранилища, на хардуер, който притежава лично.

На 8 юни той се върна в GitHub под ново име, а първият експлойт беше качен на следващия ден, 9 юни, който беше съответният месечен вторник за корекции (Patch Tuesday). Акаунтът се казва MSNightmare, екранното име е INFINITE NIGHTMARE, полето за местоположение сочи Redmond, а биографията се състои от три думи:

Има 3 804 последователи и десет хранилища, като стои там вече три месеца. RoguePlanet има 1 670 звезди. ShieldBreak има 731, GreatXML – 663, FalconFlank – 611.

Документацията зад всичко това е публична, защото той сам я публикува. На 20 септември 2024 г. той получава съобщение от Том Галахър, вицепрезидент по инженерната част в MSRC. В него се посочва, че Microsoft са идентифицирали проблем със сигурността и че той е изложил компанията на риск, като е споделил информация за уязвимости с външни лица. Официалното писмо за уволнение е с дата 3 март 2025 г.

Той отнесе случая до трудовия съд в Кьолн и води дело близо две години. По негови думи това му е струвало над $200 000 и той е отказал споразумение за €55 000 плюс една годишна заплата, тъй като целта му не са били парите. Искал е съдействие за оставане в Германия, където са му оставали броени месеци до получаване на постоянно пребиваване. Съдът потвърди уволнението. Той остава почти без нищо и твърди, че в момента преминава през психиатрично лечение. Неговото собствено обобщение: „уволниха ме без причина, никога не е било за възнаграждения (bounties).“

Каквото и да мислите за начина, по който той избра да се бори, нещото под него е по-старо и по-голямо от него. Ловците на грешки (bug hunters) поемат риска, вършат трудната част, предават резултата и към тях се отнасят като към нещо второстепенно. Гледал съм как това се случва на хора, които познавам, и се е случвало на мен, в повече от една компания и не само в Microsoft. Ето защо хората, които не са съгласни с неговите методи, все пак разбират за какво се гневи.

За вашата собствена машина проверете версията на енджина. Отворете PowerShell и изпълнете:

Вижте AMEngineVersion в резултата. Всичко под 1.1.26080.3 означава, че корекцията за сигурност за ShieldBreak така и не е стигнала до тази машина. Defender обикновено се обновява сам. Ако изостава, нещо на тази машина го спира и е добре да разберете какво е то още днес.

  • → AMEngineVersion под 1.1.26080.3 означава, че уязвимостта от август все още е отворена на тази машина
  • → Изключеният Defender спира веригата от ShieldCrash, но отваря всичко останало
  • → Всеки процес, различен от MsMpEng.exe или MpCmdRun.exe, който зарежда MpClient.dll
  • → Доставчик за облачна синхронизация, регистриран от неподписан файл или извън потребителския профил
  • → Поява на моментна снимка на тома (volume snapshot) на машина, на която не се изпълнява задача за архивиране
  • → Акаунт, чиято парола е била променена и върната обратно в рамките на един и същ час

Можете да преминете по същия път на виртуална машина с Windows у дома: акаунт с ниски привилегии, стъпка на изброяване (enumeration) и настройките, които предоставят SYSTEM. Моят пълен курс по етичен хакинг от нула до експерт ви превежда оттам стъпка по стъпка: разузнаване, сканиране, експлоатация и анализ на трафика, практически, още от първия ви ден без опит с Linux или хакинг.

→ Присъединете се към моя пълен курс по етичен хакинг

Хакингът не е хоби, а начин на живот.

Доказателство за концепцията (proof of concept) за ShieldCrash | Бюлетин за сигурност от MSRC CVE-2026-69414 | Анализ на неоторизиран достъп от Huntress | Възпроизвеждане на ShieldCrash от Howler Cell | Бюлетин за сигурност на Microsoft 2846338