Curve. Tor. Bitcoin. Серая троица.

Posted: 2015-05-07 in IT
Метки:, ,

Вирусы-шифровальщики таки офигенны. С момента последней заметки на эту тему ( https://aminux.wordpress.com/2015/01/19/virus-encoder-end-faq/ ) прошло несколько месяцев, а развитие данных типов угроз заметно невооруженным взглядом.

Вирусов такого типа уже довольно много, но особого внимания заслуживают XTBL и CTB-Locker.

Сперва немного о том, как на эту вакханалию реагируют антивирусные компании, чья миссия, казалось бы, защищать и предотвращать. Как ни странно, но более-менее серьёзным анализом занялись ровно две компании — Касперкий и Доктор Веб. Причём если раньше каждый жил своим укладом, а за упоминание конкурирующих продуктов на форуме могли и з0банеть, то теперь при наличии расшифровки у конкурента сотрудники авера уже не тратят своё время, а сразу пишут, что тулзы для декриптинга есть у конкурента. Все остальные аверские конторы тратить своё время не стали, прямо отшив пострадавших и напомнив им о бренности всего сущего и исключительной пользе заблаговременно сделанных бэкапов. Ну и увидеть ссылки на тулзы паутиныча или касперыча на форуме какого-нить есета / аваста и прочего — норма жизни. Всё-таки это классно, что этим двум аверам удалось собрать команду настолько опытных реверсеров, которые могут расковыривать и детально изучать столь зловредный софт, как вирусы-шифровальщики.

Поэтому втройне забавно наблюдать, как какой-нибудь тупой истеричный хомячок в очередной раз на форуме Каспера или Паутиныча грозится «сменить антивирус и уйти к конкурентам». Но идти-то особо хомячку как раз и некуда. Беда в том, что подавляюшщее большинство пользователей воспринимает антивирус как серебряную пулю, которая должна обеспечить им безопасность. А уж если клиент честно антивирус купил (за целую тыщщу рублей в год), то он начинает считать, что к нему при первом же заражении просто обязан явится антивирусный супермен и всё-всё починить, при этом ожидая чуть ли не сервиса 24/7 в стиле труъ-энтерпрайзных контрактов на обслуживание. И очень обижается, удивляется, и грозиться «сменить антивирус», когда его тактично ставят на место. А всё потому, что хомячки лицензионных соглашений не читают, а даже не в курсе, за ЧТО ИМЕННО они заплатили денег.

Отсюда следует и популярность всяких «Секурити Сюитов», которые пытаются в дырявой шаланде под названием виндовс заделать каждую из сотен дыр, щелей и пробоин. Получается с попеременным успехом. К чести двух вышеназванных контор, они даже сделали эвристический детект шифровальщиков, который стопает процесс при массовом патчинге файлов. Насколько эта мера эффективна — посмотрим, но у меня есть стойкое убеждение, что поможет она не сильно надолго. Потому что реально защищают пользователя лишь ПРЕВЕНТИВНЫЕ меры защиты, тогда как ЛЮБОЙ антиврус — это средство, работающее ПОСТФАКТУМ.

Кстати, неизвестные антивирусы, которых нет на вирустотале, лучше вообще не рассматривать даже — толку от них ну вот совсем ноль, да и наебалово встречается.

Ну и повторю прописные истины — антивирусы лишь уменьшают вероятность заражения, и использоваться они должны как вспомогательные средства безопасности, а вовсе не как основа защиты!

Ну а теперь про указанную в заголовке троицу. Она как раз о технолгиях, появившихся в XTBL и развитых в CTB-Locker. Почему я назвал троицу серой ? Ну, потому что каждый из этих инструментов был создан и применяется в основном таки с добрыми намерениями, но нашлись люди, которые применили их во зло.

Bitcoin. Самое ценное тут для злоумышленников — неблокируемость кошельков вкупе с тривиальностью их создания (которое делается полностью оффлайново, и НИГДЕ не светится, пока нет _снятия_ средств) + возможность относительно легко выводить и отмывать полученный преступный доход. Курс оного биткоина относительно стабилен в малом интервале времени, да и злодеев мало волнует, сколько переплатит их жертва. Естественно, их так же не волнует, в каком там правовом статусе эти биткоины находятся — считает их ЦБ «денежным суррогатом», «платёжной системой», «чёрным налом» или ещё каким эпитетом. Это проблема жертвы, где их взять. Как и ожидалось, закон о «денежных суррогатах» и тупейшие блокировки сайтов мешают жить только честным людям, тогда как предотвратить получение злоумешленниками выкупа биткоинами оные законы и блокировки не в состоянии в принципе! Конечно, отправить СМС или засунуть деньги в платёжный терминал для киви/яндекса пока что ещё проще, чем сделать биткойн-транзакцию, но во-первых, это проблема жертвы, а во-вторых, это существенно снижает риски для злоумышленника. Ключевой момент тут — что для каждого случая заражения на командном сервере генерируется свой уникальный кошелёк, что позволяет существенно автоматизировать весь процесс нагибания жертвы.

TOR. Командные сервера в *.onion-зоне для вирусни были и раньше. Но в CTB-локере развитие вышло на новый уровень. Если раньше у шифровальщиков был просто ящик на бесплатной почте (который ретивые саппортеры могли и заблочить), с которым работали через тор, а потом был просто чат с живым человеком (которому можно было написать много слов любви и обожания) на тор-ресурсе, то теперь этого человека уволили отправили пить пивасик и трескать сёмки. Раньше вирусы такого типа делали как — всё закриптуют, своё бренное тельце сотрут, а саппорт трояна ожидает писем от разгневанных жертв со вскипающими волнами благородной ярости. CTB-локер же делает красивее — после завершения криптования в системе остаётся резидентная часть, которая обновляет заставку и периодически опрашивает командный сервер на предмет того, какой адрес биткойн-кошелька присвоен данному случаю и достаточно ли там бабла. Как только бабал больше, чем было вычислено из отчёта при заражении — сервер готов отдать приватный ключ. Пользователь нажимает кнопочку после оплаты — и расшифровка начинается автоматически!

Красота, да и только. Ход такой тоже понятен — в отличии от живых людей, сервер может работать 24/7 (обслуживая одновременно уйму клиентов из всех временных зон), он не ошибается, ключи случайно не разгласит, на мольбы и жалостливые уговоры не ведётся. И самое важное — не надо нанимать никаких операторов, посвящать лишних людей и делиться с ними прибылью. Насколько я понимаю, такую кампанию, с софтом такого уровня, может проводить ОДИН человек. Да, ему потребуется заказать рассылки писем с трояном, поднять сервер и освоить биткойн. Но это не слишком-то и сложно. А вот написать такой троян — это точно задача для группы весьма искусных профессионалов.

Кстати не удивлюсь, если этот сервер после расшифровки сразу же переводит биткоины на какой-нибудь третий кошелёк, так что даже если сервер и обнаружат — то денег там будет около нуля. Ещё интересная особенность — своя реализация протоколов TOR. Если ранние версии крипто-локеров ставили стандартный тор-прокси с официального сайта, то тут своя реализация. О причинах такого решения могу только гадать — возможно, боролись за минимальный размер сборки, а может, хотели увеличить скрытность шифровальщика в системе. Что занятно — авторизация на веб-морде сервера делается публичным ключем, который вирус оставляет после завершения своей злодейской работы. Типа, чужих там не пускают.

Поскольку у меня нет образца данной вирусни — то няшных скриншотов не будет. Но если появится — напишу отдельный обзорчик стендовых испытаний.

Curve. Это, пожалуй, самая занятная часть вируса. Чтобы немного прояснить суть и смысл, сперва стоит прочитать вот эти статейки:
https://ru.wikipedia.org/wiki/%DD%EB%EB%E8%EF%F2%E8%F7%E5%F1%EA%E0%FF_%EA%F0%E8%EF%F2%EE%E3%F0%E0%F4%E8%FF (с матаном)
http://dml.compkaluga.ru/forum/index.php?showtopic=80815 (тоже с матаном)
Если матан в вас не входит совсем, и читать по ссылкам вам влом, то просто запомните следующее:
* Эллиптическая криптография гораздо быстрее в работе, чем классические схемы на RSA/DSA,
и обеспечивает схожую стойкость при меньшей длине ключей.
* Она существенно менее изучена, и начала внедряться в криптографические утилиты относительно недавно
* Там больше параметров, играясь с которыми, можно как упростить, так и усложнить криптоанализ.
Во всяком случае, работникам антивирусной компании придётся изрядно курнуть матана,
разбирая алгоритм работы такого вируса в поисках уязвимых мест.
Зачем злоумышленники пошли на такие сложности ? Ладно там тор и биткойн — без них могут поймать, подвесить за яйки и линчивать аки негров пару веков назад. Но эллиптическая криптография ? Предположу следующее. При шифровании большого числа файлов в потоке расходы на вычисления оказываются довольно значительными, а многие пользователи уже как минимум слышали о такой опасности или были предупреждены, что при обнаружении процесса шифрования надо как можно быстрее выключать машину. Следовательно, кадая выигранная секунда — это сотни дополнительно зашифрованных файлов, а следовательно, и повод запросить больший выкуп. Также предположу, что использование классической GPG, вызванной из скрипта, недостаточно быстро шифровало файлос, поскольку при этом использовалось только одно ядро процессора и относительно медленный операции алгоритма RSA. Своя же реализация на эллиптических кривых позволила сделать процесс шифрования существенно быстрее. Кроме того, этот же алгоритм используется для дополнительной защиты связи с сервером при передаче адресов кошелька, отчета о шифровании, согласовании ключей и прочего.

И всё это перед передачей в сеть дополнительно толсто обмазано несколькими слоями шифрования от сети тор. Так что ловить сигнатуры в траффике бесполезно, даже если вы продали почки всех сотрудников и купили аппаратную DPI-систему. Кстати, было бы интересно узнать, как данная вирусня сработает в условиях, когда сеть тор недоступна, например, в Китае или в сетях с особо параноидальным файерволингом. Подозреваю, что пострадавший окажется в ещё менее приятном положении, хотя казалось бы, куда уж хуже.

Вот такие вот вирусы действуют в середине 2015 года. Так что не сидите под админом, работайте в режиме «белого списка ПО», используйте песочницы, виртуализацию и разделение пользовательских учёток, ну и про бэкапы не забывайте.

Не поленитесь записать копии фоток на съёмный диск, а самые ценные файлы продублировать на болванки DVD-R. Стоят они 10-15 рублей за штуку, что несопоставимо с ценой расшифровки.

Кстати, если злоумышленник свернёт кампанию, и потрёт ключи — то зашифрованным данным почти 100%-ный пиздец и хана. Даже если через 30 лет у вас будет кластер из суперкомпьютеров класса BlueGene — то вовсе не факт, что к тому времени криптографию сломают, а перебором грубой силой ЭТО невскрываемо принципиально.

Та же RSA, использующая сложность факторизации, при длине ключа 1024 бит считается всё ещё невскрываемой. 590 бит сломали с очень изрядными усилиями, объединив усилия нескольких аверских контор и, возможно, спецслужб, имеющих суперкомпьютеры.
Иногда вирусописаки лажают, и их криптография получается с изъянами. Но таких вирусов всё меньше, и всё чаще на антивирусных форумах ответ на вопрос про возможность расшифровки — «без шансов». Делайте выводы, и бэкапы. Хотя нет, сперва — бэкапы, а потом уже всё остальное, и выводы в том числе.

Для интересующихся историей напомню, что вопросами факторизации чисел начали заниматься ещё в Древней Греции. С тех пор, конечно, много чего появилось нового и интересного в математической науке, однако ряд поставленных тогда математических проблем до сих пор всё ещё ждут своих Перельманов, и быстрая факторизация в их числе. Ну вы поняли, каковы ваши шансы на расшифровку без ключей, и какова истинная ценность сделанных вовремя бэкапов ?

Реклама
- комментарии
  1. alex:

    Идея.
    А что если делать много много виртуалок на одном компе,
    заражать их вирусом, в качестве файлов, к примеру, порнуха.
    Можно ли задавить их флудом? Чисто гипотетически.
    Или перегрузить командный сервер запросами,
    так чтоб он не смог принимать платежи?

  2. Это вряд ли. Командный сервер для такого класса вирусов подразумевает размещение полного блокчейна биткойна (порядка 30 Gb данных), а каждое инфицирование добавляет туда не так уж много данных — адрес нового кошелька, назначенный уровень «крутизны» клиента, дата, версия. Малыми усилиями завалить точно не получится.

    Осуществимость же и практичность DDoS через анонимные сети — вопрос риторический.

    Самое печальное, что даже если и удастся задушить сервер, инфицированным клиентам это никоим образом не поможет.
    Сервер не нужен ни для генерации ключей, ни для зашифровки. Платежи в системе биткойн принимаются также не на конкретном сервере, а всей пиринговой сетью.

    Более того, их сервера работают вовсе не 24/7 — часто уходя в оффлайн на несколько часов. То ли пеерносят постоянно, то ли базу чистят, то ли ещё что — непонятно. Ничего, кроме дикой анальной боли у не имеющих бэкапов жертв, это не вызывает.

    Защита тут ровно одна — бэкапы, бэкапы и ещё раз бэкапы.

  3. […] зверь, в отличие от крутейшего VAULT-а, брутального XTBL и няшного CTB-Locker-а, смотрится гораздо более убогой […]