Около полудня воскресенья начали просачиваться новости о взломе. Агентство Reuters сообщило , что тот, кто нанес удар по Mandiant, также взломал Министерство финансов. Затем около 17:00 по восточному времени репортер Washington Post Эллен Накашима написала в Твиттере , что программное обеспечение SolarWinds считается источником взлома Mandiant. Она добавила, что пострадало и Министерство торговли. Серьезность кампании росла с каждой минутой, но до публикации заявления SolarWinds оставалось еще несколько часов. Компания была одержима каждой деталью — требуемая подача документов в Комиссию по ценным бумагам и биржам была настолько тщательно отлажена юристами, что Томпсон, генеральный директор, однажды пошутил, что добавление одной запятой будет стоить 20 000 долларов.
Около 8:30 того же дня компания наконец опубликовала сообщение в блоге, в котором объявила о компрометации своего программного обеспечения Orion, и разослала клиентам по электронной почте предварительное исправление. Mandiant и Microsoft представили собственные отчеты о бэкдоре и действиях хакеров внутри зараженных сетей. Как ни странно, Mandiant не назвала себя жертвой Orion и не объяснила, как вообще обнаружила черный ход. Читая рецензию Mandiant, никто никогда не узнает, что компрометация Orion имеет какое-то отношение к объявлению о его собственной уязвимости пятью днями ранее.
В понедельник утром в SolarWinds начали поступать звонки от журналистов, федеральных законодателей, клиентов и правительственных учреждений в США и за их пределами, включая переходную команду избранного президента Джо Байдена. Чтобы ответить на них, были привлечены сотрудники со всей компании, но очередь выросла до более чем 19 000 звонков.
Агентство США по кибербезопасности и безопасности инфраструктуры хотело знать, пострадали ли какие-либо исследовательские лаборатории, разрабатывающие вакцины против Covid. Иностранные правительства хотели получить списки жертв внутри своих границ. Отраслевые группы по энергетике хотели знать, были ли взломаны ядерные объекты.
Пока агентства пытались выяснить, используется ли в их сетях программное обеспечение Orion (многие были не уверены), CISA выпустила экстренную директиву.федеральным агентствам, чтобы они отключили свои серверы SolarWinds от Интернета и отложили установку любого исправления, направленного на отключение бэкдора, до тех пор, пока это не будет одобрено агентством безопасности. Агентство отметило, что оно столкнулось с «терпеливым, хорошо обеспеченным и целенаправленным противником» и что удаление их из сетей будет «очень сложным и сложным». Вдобавок к их проблемам, многие из скомпрометированных федеральных агентств недостаточно регистрировали свою сетевую активность, что, по словам источника, знакомого с реакцией правительства, эффективно служило прикрытием для хакеров. По словам источника, правительство «не может сказать, как они проникли в сеть и как далеко они зашли». Также было «очень трудно сказать, что они взяли».
Следует отметить, что бэкдор Sunburst был бесполезен для хакеров, если сервер Orion жертвы не был подключен к Интернету. К счастью, из соображений безопасности большинство клиентов не подключали их — по оценкам SolarWinds, только от 20 до 30 процентов всех серверов Orion были подключены к сети. Одной из причин их подключения была отправка аналитики в SolarWinds или получение обновлений программного обеспечения. В соответствии со стандартной практикой клиенты должны были настроить серверы для связи только с SolarWinds, но многие жертвы не сделали этого, включая Mandiant и Microsoft. По словам Криса Кребса, который во время вторжений руководил CISA, Министерство внутренней безопасности и другие правительственные учреждения даже не разместили их за брандмауэрами. Браун, начальник службы безопасности SolarWinds,
Но вскоре стало ясно, что, хотя злоумышленники заразили тысячи серверов, они проникли лишь в крошечную подгруппу этих сетей — около 100. Главной целью, похоже, был шпионаж.
Хакеры тщательно обрабатывали свои цели. После того как бэкдор Sunburst заразил сервер Orion жертвы, он оставался неактивным в течение 12–14 дней, чтобы избежать обнаружения. Только после этого он начал отправлять информацию о зараженной системе на командный сервер злоумышленников. Если хакеры решили, что зараженная жертва не представляет интереса, они могли отключить Sunburst и двигаться дальше. Но если им нравилось то, что они видели, они устанавливали второй бэкдор, который стал известен как Teardrop. С тех пор они использовали Teardrop вместо Sunburst. Взлом программного обеспечения SolarWinds был очень важен для хакеров — техника, которую они использовали для внедрения своего бэкдора в код, была уникальной, и они могли захотеть использовать ее снова в будущем. Но чем больше они использовали Sunburst, тем больше рисковали раскрыть то, как они скомпрометировали SolarWinds.
Через Teardrop хакеры украли учетные данные, чтобы получить доступ к более конфиденциальным системам и электронной почте. Многие из 100 жертв, получивших Teardrop, были технологическими компаниями, такими как Mimecast, облачный сервис для защиты почтовых систем, или антивирусная фирма Malwarebytes. Другие были правительственными агентствами, оборонными подрядчиками и аналитическими центрами, работающими над вопросами национальной безопасности. Злоумышленники даже получили доступ к исходному коду Microsoft, хотя компания утверждает, что не изменяла его.
ЖЕРТВЫ МОГЛИ ИМЕТЬдопустил некоторые оплошности, но никто не забыл, где начались нарушения. Гнев против SolarWinds быстро нарастал. Бывший сотрудник заявил журналистам, что в 2017 году он предупреждал руководителей SolarWinds о том, что их невнимание к безопасности делает взлом неизбежным. Исследователь обнаружил, что в 2018 году кто-то безрассудно разместил в общедоступной учетной записи GitHub пароль для внутренней веб-страницы, на которой временно хранились обновления программного обеспечения SolarWinds. Исследователь сказал, что злоумышленник мог использовать пароль для загрузки вредоносных файлов на страницу обновления (хотя это не позволило бы скомпрометировать само программное обеспечение Orion, и SolarWinds говорит, что эта ошибка пароля не была реальной угрозой). Гораздо хуже,
Правительственные чиновники пригрозили расторгнуть контракты с SolarWinds; законодатели говорили о вызове его руководителей на слушание. Компания наняла Криса Кребса, бывшего главу CISA, который несколькими неделями ранее был уволен президентом Дональдом Трампом, чтобы он помогал наладить взаимодействие с правительством.
Тем временем Браун и его команда безопасности столкнулись с горой работы. Испорченное программное обеспечение Orion было подписано цифровым сертификатом компании, который теперь пришлось аннулировать. Но этот же сертификат использовался и для подписи многих других программных продуктов компании. Поэтому инженерам пришлось перекомпилировать исходный код для каждого затронутого продукта и подписать эти новые программы новыми сертификатами.
Но они все еще не знали, откуда взялся мошеннический код в Орионе. На их серверах может скрываться вредоносный код, который может внедрить бэкдор в любую из компилируемых программ. Поэтому они отказались от своего старого процесса компиляции в пользу нового, который позволял им проверять готовую программу на наличие несанкционированного кода. Браун говорит, что они были настолько напряжены, чтобы доставить перекомпилированные программы клиентам, что он похудел на 25 фунтов за три недели.
Пока команда Брауна перестраивала продукты компании, а CrowdStrike пыталась выяснить, как хакеры проникли в сеть SolarWinds, SolarWinds привлекла KPMG, бухгалтерскую фирму с отделом компьютерной криминалистики, чтобы разгадать тайну того, как хакеры протащили Sunburst в Orion. .dll-файл. Дэвид Коуэн, обладавший более чем 20-летним опытом цифровой криминалистики, возглавил команду KPMG.
Инфраструктура, которую SolarWinds использовала для создания своего программного обеспечения, была обширной, и Коуэн и его команда работали с инженерами SolarWinds в выходные дни, чтобы решить эту загадку. Наконец, 5 января он позвонил Плеско, адвокату DLA Piper. Инженер SolarWinds заметил что-то важное: артефакты старой виртуальной машины, которая была активна около года назад. Эта виртуальная машина — набор программных приложений, заменяющих физический компьютер, — использовалась для создания программного обеспечения Orion еще в 2020 году. Это была важная часть головоломки, в которой они нуждались.
Судебно-медицинские расследования часто являются азартной игрой. Если с начала взлома прошло слишком много времени, следы деятельности хакера могут исчезнуть. Но иногда боги криминалистики на вашей стороне, и улики, которые должны исчезнуть, остаются.
Для создания программы Orion компания SolarWinds использовала инструмент управления сборкой программного обеспечения под названием TeamCity, который действует как дирижер оркестра, превращая исходный код в программное обеспечение. TeamCity запускает виртуальные машины — в данном случае около 100 — для выполнения своей работы. Обычно виртуальные машины эфемерны и существуют ровно столько, сколько требуется для компиляции программного обеспечения. Но если часть процесса сборки по какой-то причине дает сбой, TeamCity создает «дамп памяти» — своего рода снимок — виртуальной машины, на которой произошел сбой. Моментальный снимок содержит все содержимое виртуальной машины на момент сбоя. Именно это и произошло во время сборки в феврале 2020 года. Обычно инженеры SolarWinds удаляли эти снимки во время очистки после сборки. Но этот почему-то не стерли. Если бы не его невероятное существование, говорит Коуэн,
В снимке они обнаружили вредоносный файл, который был на виртуальной машине. Следователи назвали его «Солнечным пятном». В файле было всего 3500 строк кода, но эти строки оказались ключом ко всему пониманию.
Было около 9 часов вечера 5 января, когда Коуэн отправил файл Мейерсу в CrowdStrike. Команда CrowdStrike связалась с Коуэном и Плеско в Zoom, и Мейерс поместил файл Sunspot в декомпилятор, а затем поделился своим экраном. Все замолчали, пока код прокручивался вниз, его тайны медленно раскрывались. Этот крошечный файл, который должен был исчезнуть, был ответственен за внедрение бэкдора в код Orion и позволил хакерам обойти защиту некоторых из наиболее хорошо защищенных сетей в стране.
Теперь следователи могли отследить любую деятельность, связанную с Sunspot. Они увидели, что хакеры заложили его на сервер сборки 19 или 20 февраля. Он скрывался там до марта, когда разработчики SolarWinds начали сборку обновления программного обеспечения Orion через TeamCity, что создало парк виртуальных машин. Не зная, какая виртуальная машина будет компилировать код Orion .dll, хакеры разработали инструмент, который внедрял Sunspot в каждую из них.
В этот момент красота и простота хака действительно раскрылись. Как только .dll появился на виртуальной машине, Sunspot быстро и автоматически переименовал этот законный файл и дал его оригинальное имя мошенническому двойнику хакеров .dll. Последний был почти точной копией легитимного файла, за исключением того, что он содержал Sunburst. Затем система сборки захватила файл .dll хакеров и скомпилировала его в обновление программного обеспечения Orion. Операция была сделана за считанные секунды.
Как только фальшивый файл .dll был скомпилирован, Sunspot восстановил исходное имя легитимного файла Orion, а затем удалил себя со всех виртуальных машин. Однако он оставался на сервере сборки в течение нескольких месяцев, чтобы повторить процесс в следующие два раза, когда Orion был построен. Но 4 июня хакеры внезапно прекратили эту часть своей операции, удалив Sunspot с сервера сборки и стерев многие свои следы.
Коуэн, Мейерс и другие не могли не остановиться, чтобы полюбоваться мастерством. Они никогда раньше не видели, чтобы процесс сборки был скомпрометирован. «Чистая элегантность», — назвал это Плеско. Но затем они поняли еще кое-что: почти каждый второй производитель программного обеспечения в мире был уязвим. Немногие имели встроенную защиту для предотвращения такого типа атак. Насколько им было известно, хакеры могли уже проникнуть в другие популярные программные продукты. «Это был момент страха для всех нас», — говорит Плеско.
НА СЛЕДУЮЩИЙ ДЕНЬ,6 января — в тот же день, когда произошло восстание на Капитолийском холме — Плеско и Коуэн запрыгнули на телефонную конференцию с ФБР, чтобы проинформировать их об их головокружительном открытии. Реакция, по словам Плеско, была ощутимой. «Если вы можете ощутить виртуальный отвисший челюсть, я думаю, что это и произошло».
Через день они проинформировали АНБ. Сначала на видеозвонке было всего два человека из агентства — безликие телефонные номера с скрытыми именами. Но когда следователи рассказали, как Sunspot скомпрометировала сборку Orion, по словам Плеско, на экране появилось более дюжины телефонных номеров, поскольку слухи о том, что они обнаружили, «пронеслись через АНБ».
Но АНБ ждало еще одно потрясение. Несколько дней спустя сотрудники агентства присоединились к телефонной конференции с участием от 50 до 100 сотрудников Министерства внутренней безопасности и юстиции, чтобы обсудить взлом SolarWinds. Участники конференции были озадачены одним вопросом: почему, когда дела у них шли так хорошо, 4 июня злоумышленники внезапно удалили Sunspot из среды сборки?
Реакция сотрудника ФБР ошеломила всех.
Этот человек как ни в чем не бывало сообщил, что еще весной 2020 года сотрудники агентства обнаружили мошеннический трафик, исходящий от сервера, на котором работает Orion, и связались с SolarWinds, чтобы обсудить это. Мужчина предположил, что злоумышленники, которые в то время отслеживали учетные записи электронной почты SolarWinds, должно быть, испугались и удалили Sunspot, опасаясь, что компания вот-вот найдет его.
По словам человека на линии, звонившие из АНБ и CISA внезапно пришли в ярость, потому что впервые узнали, что Джастис обнаружил хакеров несколько месяцев назад. Парень из ФБР «сформулировал это так, будто в этом нет ничего особенного», — вспоминает посетитель. Министерство юстиции сообщило WIRED, что оно проинформировало CISA о своем инциденте, но по крайней мере некоторые люди из CISA, участвовавшие в телефонном разговоре, ответили так, как будто для них стало новостью, что правосудие было близко к раскрытию атаки — на полгода раньше всех остальных. Представитель АНБ сообщил WIRED, что агентство действительно было «разочаровано», узнав об инциденте во время январского звонка. Для участника и других участников звонка, которые не знали о взломе Министерства юстиции, это было особенно удивительно, потому что, как отмечает источник, в течение нескольких месяцев после вторжения люди «сходили с ума» за закрытыми дверями, почувствовав, что ведется крупная иностранная шпионская операция; лучшая коммуникация между агентствами могла бы помочь раскрыть это раньше.
Вместо этого, по словам человека, знакомого с расследованием юстиции, это агентство, а также Microsoft и Mandiant предположили, что злоумышленники должны были заразить сервер Министерства юстиции в ходе изолированной атаки. Расследуя это в июне и июле, Mandiant по незнанию загрузила и установила испорченные версии программного обеспечения Orion в свою собственную сеть. (CISA отказалась комментировать этот вопрос.)
ОТКРЫТИЕКод солнечных пятен в январе 2021 года положил начало расследованию. Информация о том, когда хакеры поместили Sunspot на сервер сборки, позволила Мейерсу и его команде проследить их активность в прошлом и будущем и укрепила их догадку о том, что за операцией стоит SVR.
****** — это гражданское разведывательное агентство, как и ЦРУ, которое занимается шпионажем за пределами *****ийской Федерации. Вместе с *****ийской военной разведкой, ГРУ, оно взломало Национальный комитет Демократической партии США в 2015 году. и тихо. Хакеры SVR, получившие разные имена от разных охранных фирм (APT29, Cozy Bear, the Dukes), известны своей способностью оставаться незамеченными в сетях в течение месяцев или лет. По словам Глайера, группа была очень активна в период с 2014 по 2016 год, но затем, похоже, потемнела. Теперь он понял, что они использовали это время для пересмотра стратегии и разработки новых методов, некоторые из которых они использовали в кампании SolarWinds.
Следователи обнаружили, что злоумышленники впервые использовали VPN-аккаунт сотрудника 30 января 2019 года, за год до взлома кода Orion. На следующий день они вернулись к 129 репозиториям с исходным кодом для различных программных продуктов SolarWinds и собрали информацию о клиентах — предположительно, чтобы узнать, кто какими продуктами пользуется. Они «знали, куда идут, знали, что делают», — говорит Плеско.
Хакеры, вероятно, изучили исходный код и данные о клиентах, чтобы выбрать цель. Орион был идеальным выбором. Жемчужина в короне продуктов SolarWinds, он приносил около 45 процентов дохода компании и занимал привилегированное место в клиентских сетях — он подключался к множеству других серверов и связывался с ними. Хакеры могли захватить эти соединения, чтобы перейти к другим системам, не вызывая подозрений.
Получив исходный код, хакеры исчезли из сети SolarWinds до 12 марта, когда они вернулись и получили доступ к среде сборки. Потом они потемнели на полгода. За это время они, возможно, построили копию среды сборки для разработки и отработки своей атаки, потому что, когда они вернулись 4 сентября 2019 года, их движения показали опыт. Среда сборки была настолько сложной, что новонанятому инженеру могли потребоваться месяцы, чтобы освоить ее, но хакеры ловко справлялись с ней. Они также знали код Orion настолько хорошо, что созданный ими файл doppelgänger .dll был стилистически неотличим от законного файла SolarWinds. Они даже улучшили его код, сделав его чище и эффективнее.
Вскоре после того, как хакеры вернулись, они добавили безопасный тестовый код в обновление программного обеспечения Orion, просто чтобы посмотреть, смогут ли они выполнить свою операцию и остаться незамеченными. Потом они сели и стали ждать. (SolarWinds не планировала выпускать следующее обновление программного обеспечения Orion примерно через пять месяцев.) В течение этого времени они просматривали учетные записи электронной почты ключевых руководителей и сотрудников службы безопасности на предмет любых признаков их присутствия. Затем, в феврале 2020 года, они поставили Sunspot на место.
26 ноября злоумышленники в последний раз вошли в VPN-сервис SolarWinds, пока Mandiant вел расследование. Хакеры продолжали отслеживать учетные записи электронной почты SolarWinds до 12 декабря, когда Кевин Мандиа позвонил Кевину Томпсону, чтобы сообщить о бэкдоре. Прошло почти два года с тех пор, как они скомпрометировали SolarWinds.