Сейчас на сайте
Сейчас на сайте 0 пользователей и 0 гостей.

Gpcode

Наибольшую активность проявлял автор Gpcode — за прошлый год было обнаружено более двух десятков различных вариантов шифрования файлов. Он постоянно менял алгоритмы шифрования, однако во всех случаях нам удавалось не только взломать их, но и реализовать детектирование и расшифровку файлов непосредственно в антивирусных базах, без создания отдельных утилит.

С началом 2006 года авторы подобных программ попытались кардинально изменить способы шифрования данных, чтобы максимально осложнить антивирусным компаниям возможность расшифровки. В январе появился очередной вариант Gpcode, получивший идентификатор «ac».

Его кардинальным отличием стало то, что впервые в Gpcode был применен один из наиболее известных и стойких публичных алгоритмов шифрования — RSA. Ранее автор ограничивался самодельными алгоритмами шифрования, но теперь в ход пошла «тяжелая артиллерия».

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

Несколько часов анализа его кода в дизассемблере привели к обнаружению ключа, которым были зашифрованы данные. Но для взлома RSA надо знать еще ключ расшифровки, а его, конечно же, в троянце не было. Однако автор троянца допустил важную ошибку. Он использовал слишком короткий ключ — длиной 56 бит. Найти его, обладая знанием алгоритма работы RSA и существующих методах его взлома на современном персональном компьютере, заняло у экспертов меньше одной секунды! Расшифровка файлов снова была реализована непосредственно в антивирусных базах, без создания отдельной утилиты.

Однако хакеры не собирались сдаваться. Учтя печальный опыт своих предшественников, в марте 2006 года некто (а возможно, это и был сам автор Gpcode) выпустил на волю нового представителя класса RansomWare (такой термин получили подобные троянцы в некоторых статьях антивирусных компаний и независимых исследователей ( Wikipedia.org , Halfbakery.com ).

Злоумышленники отказались от алгоритмов шифрования. Совсем. Троянец Cryzip.a не использовал ни RSA, ни AES, ни PGP :-) Он ищет в атакованной системе пользовательских документов по большому списку расширений файлов — документы MS Office, PDF, архивы, картинки и много другое. Каждый найденный файл он помещает в отдельный ZIP-архив с паролем. В каждом каталоге троянец оставляет записку для пользователя, в виде файла AUTO_ZIP_REPORT.TXT, в котором сообщается о том, что данные могут быть восстановлены после выплаты $300 на один из нескольких десятков аккаунтов в системе E-Gold.

Автор троянца любезно сообщает о том, что в качестве пароля для архивов использовано слово длиной более 10 символов и таким образом попытки его подбора «бессмысленны».

Действительно, существующие программы для подбора паролей к ZIP-архивам способны подобрать пароль длиной в 5 символов в течение 5-10 минут, однако с увеличением длины пароля уже до 6-7 символов эта задача становится весьма долговременной.

Как впоследствии выяснилось, проблемой подбора пароля одновременно занималось несколько основных антивирусных компаний. Некоторым из них удалось обнаружить сам файл троянца и путем его анализа установить — какой именно пароль был использован для архивации файлов. Мы же пошли другим путем (не обладая файлом троянца) и попытались все-таки подобрать пароль, используя различные виды известных крипто-атак на ZIP-архивы. В итоге нам существенно удалось сократить время на bruteforce. Я не буду раскрывать всех тонкостей процесса, но нам удалось вскрыть запароленный архив всего за один вечер.

Автор в качестве пароля использовал путь к каталогу, а именно:

C:\Program Files\Microsoft Visual Studio\VC98

Таким образом, он видимо рассчитывал, что даже если его троянец попадет в руки антивирусных компаний, то аналитики могут принять подобную строку за типичную для файлов созданных на Visual C++, а не за искомый пароль.

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