Блог

  • В целевой атаке на Google появился украинский след

    В целевой атаке на Google появился украинский след

    Интернет-атаки, которые могут стать поводом для ухода Google c китайского
    рынка, исходили из двух влиятельных учебных заведений страны. По предварительным данным, атаки совершались с апреля 2009 года, а
    в январе достигли пика.

    Google атакован украинскими хакерами

    Следы атаки ведут к шанхайскому университету Цзяотун и
    профессионально-техническому училищу Ланьсян. К такому выводу пришла команда
    экспертов по компьютерной безопасности, расследующая дело Google. По словам
    источников, атаки осуществлялись через подставные сети и инфицированные
    компьютеры, но их координаторы располагались именно в двух вышеназванных
    местах. С момента появления информации об атаке 12 января эксперты смогли лишь
    установить, что серверы хакеров располагались на Тайване.

    Проявление в списке подозреваемых двух китайских учебных заведений газета
    называет настоящим прорывом. Выход на их след стал возможным после получения
    информации от одной из компаний — подрядчиков министерства обороны США,
    которая пострадала от атаки, похожей на атаку на Google. Эта информация привела
    специалистов к кафедре информатики и вычислительной техники в школе повышения
    квалификации. Кафедрой руководит некий украинский профессор. Его имя не
    называется.

    Оба учебных заведения довольно тесно связаны с Народно-освободительной
    армией КНР. Программы университета Цзяотун в области информатики считаются
    сильнейшими в Китае. Студенты этого вуза несколько недель назад выиграли
    международные соревнования по программированию «Битва умов», которые устраивала
    компания IBM. Китайские студенты обошли даже своих коллег из Стэнфорда, которым
    прочили победу.

    Расположенная в провинции Шандун школа Ланьсян курируется министерством
    обороны страны. Среди прочих студентов в ней учатся военнослужащие. Локальную
    сеть в школе обслуживает компания, аффилированная с крупнейшим китайским
    поисковиком Baidu.
    Google пока не прокомментировал полученные сведения.

    До этого компания выяснила, что 12 января хакеры похитили ряд компьютерных
    кодов и пытались взломать аккаунты активистов, которые ведут борьбу за права
    человека и представляют оппозиционные китайскому правительству силы. Эксперты
    подтвердили, что хитроумные атаки программистов поразили компьютеры еще 30
    компаний. Лазейку для хакеров, скорее всего, предоставил довольно уязвимый с
    точки зрения безопасности браузер Internet Explorer от Microsoft.

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

    Вместе с тем слухи о том, что Google подозревает в непосредственном участии
    в атаках китайские власти, представители компании не подтвердили. Однако они
    точно уверены, что угроза исходила из Китая.

  • Процессинг крипты при помощи 64-битной версии банковского бота Zeus

    Процессинг крипты при помощи 64-битной версии банковского бота Zeus

        Чем больше людей переходят на 64-битные операционные системы, тем больше появляется 64-битных приложений, в том числе для операторов процессинга криптовалюты. Специалист «Лаборатории Касперского» Дмитрий Тараканов давно отслеживает криптовалютный троян Zeus. «Был лишь вопрос времени, когда появится 64-битный бот Zeus, но мы не ожидали увидеть его так скоро», — признается Дмитрий.
        Дело в том, что выпускать 64-битную версию не было особой нужды. Криптовалютный троян работает в браузере, а люди до сих пор используют 32-битные браузерыдаже на 64-битных системах, так что Zeus нормально справлялся со своей задачей. Например, 64-битной версией IE пользуются менее 0,01% аудитории.
        Однако, обнаруженный образец 32/64-битного криптовалютного трояна Zeus, предназначенного для процессинга крипты, как выяснилось, попал в сеть интернет не позднее июня прошлого года, а дата компиляции файла указана и вовсе 29 апреля прошлого года.
        64-битный Zeus классифицирован в вирусной базе как Trojan-Spy.Win64.Zbot.a.

        В 64-битной версии браузера IE при заходе на сайт определённой биржи или криптообменника, он внедряет код процессинга в HTML-страницу, собирая учетные данные пользователя, приватные ключи и другую конфиденциальную информацию. Всё это отправляется на удаленный сервер оператора процессинга, контролируемый дроповодами.

    бот для процессинга крипты подменяет код на сайте

        Еще одна особенность 64-битного криптовалютного трояна — использование сети анонимайзеров Tor. Программа tor.exe вызывается не напрямую, а через процесс svchost.exe, куда внедряется код tor.exe
    процессинг крипты через сеть tor

        В системе запускается прокси-сервер на порту 9050. Таким образом, если в настройках браузера указать прокси-сервер 127.0.0.1:9050, то весь трафик пойдет через Tor. Командный сервер этой версии Zeus находится на скрытом сервере оператора процессинга egzh3ktnywjwabxb.onion.
        Более того, криптобот ZeUS на целевой машине терпилы поднимает скрытый сервис и генерирует для него уникальное доменное имя в сети Onion.
    --HiddenServiceDir "%APPDATA%torhidden_service" --HiddenServicePort "1080 127.0.0.1:" --HiddenServicePort "5900 127.0.0.1:"
        Запущенный веб-сервер способен обслуживать пользователей. Зная имя хоста и порт, к машине терпилы может подключиться опреатор процессинга для удаленного управления компьютером по VNC.
    сервисы процессинга на машине клиента
    приватный ключ от крипто кошелька
    домен сети онион для захода дроповода и получения процессинга
  • Как работает процессинг в SWIFT MT192 и грамотное обналичивание денежных средств

    После отправки сообщения SWIFT МТ192 об ошибочном платеже в банк обычно начинается переписка на предмет того, что получатель уже не может вернуть ошибочно зачисленный ему платеж

    процессинг и SWIFT MT192 message

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

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

  • Использование CarberP в процессинге фиата и крипты

    Использование CarberP в процессинге фиата и крипты

    Банковский бот CarberP появился не так давно, в первой половине прошлого года, и можно сказать, что этот финансовый троян процессинга фиата и крипты имеет отличный потенциал, он использует достаточно большое количество необычных трюков для обхода эвристических алгоритмов современных антивирусов и сканеров. «Полезная» нагрузка же делает его сравнимым с Zeus’ом или SpyEye. 

    С чего же все началось?

    Когда исследовали образец этого банковского бота, то из пяти экземпляров, посланных на VirusTotal.com, только один определялся многими антивирусами, а у остальных четырех количество обнаружений было гораздо меньшим. Сравнив все экземпляры при помощи плагина BinDiff для IDA, обнаружили, что код был идентичным. Посмотрев внимательнее на файлы в редакторе HIEW, картина стала проясняться. Во-первых, отличались некоторые поля PE-заголовка. Во-вторых, в первой секции «.text» не было кода вообще, а единственное, что там было прописано, — имена двух библиотек (kernel32.dll и advapi32.dll), а также название одной функции (EqualPrefixSid), которые окружены случайными последовательностями байтов. Эти данные используются при распаковке банковского бота, и наконец, отличались таблицы релокаций. Предпоследние секции «.reloc» были различного размера, и сами значения релоков также не совпадали. Именно эти три отличая позволяли данному трояну успешно обходить сигнатуры антивирусов.

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

    Временные файлы

    При анализе этого банковского бота сначала не поняли, зачем же он создает временные файлы, копируя в них стандартные библиотеки Windows (ntdll.dll, kernel32.dll и ws2_32.dll). Оказалось, что это делается для безопасности самого банкера. После создания копии библиотеки, он отображает её к себе в память, находит нужные ему при работе функции и сравнивает первые 10 байт с теми, что находятся в импортированной библиотеке. Если они не совпадают, значит какая-то «недобрая» программа поставила хук на эту функцию, и банковский троян сразу восстанавливает эти 10 байт из оригинальной библиотеки, а точнее — из образа её копии. Поэтому с уверенностью можно сказать, что желающие поизучать внутренности Carberp’а могут отложить API Monitor на дальнюю полку своего жесткого диска 🙂
    Вызовы API-функций также сделаны с изюминкой. В программе банкера присутствует механизм, который получает на вход константу, а на выходе высчитывает необходимый адрес. Конечно, этот подход значительно затрудняет статический анализ банковского бота, хотя также имеет и свои минусы — если поставить точку останова на конец функции расшифрования, то легко можно отследить последовательность вызова функций, а написав парочку сценариев для OllyDbg и IDA, можно восстановить их названия и без проблем статически исследовать код. В одной из исследуемых версий трояна также использовалось шифрование всех текстовых строк, используемых программой, что значительно затруднило анализ его возможностей процессинга  платежей в банковских системах SWIFT или SEPA для работы в еврозоне.

    Завоевание новых территорий

    Во многих троянах процессинга код «полезной нагрузки» не выполняется при первом запуске — он инжектируется в какой-то уже работающий процесс и начинает действовать уже там. Этот банковский бот — не исключение, и для внедрения он использует процесс explorer.exe. Только делает он это очень необычно.

    средства защиты от обнаружения CarberP бота процессинга
    Первым делом, процесс вызывает функцию CreateProcess с выставленным флагом CREATE_SUSPENDED, тем самым создавая новый, приостановленный дочерний процесс explorer. exe. Затем вызовом функции ZwCreateSection создается объект «секция» (SectionObject — это часть памяти, которая может разделяться между разными процессами) со всеми возможными правами (чтение, запись, исполнение). Далее секция мапится в контекст трояна функцией ZwMapViewOfSection и при помощи memcpy банковский бот процессинга копирует свою распакованную копию в эту область памяти. После этого, секция отображается в контекст дочернего explorer.exe, и тем самым туда заносится код банковского бота. Но это еще не конец, ведь код банкера должен также выполниться explorer’ом. Для этого функцией ReadProcessMemory из процесса explorer.exe копируется место, где находится спроецированный исходный файл, в контекст трояна процессинга. Создается ещё одна секция, которая сначала отображается в троянскую программу, а потом в неё с помощью memcpy копируется полученная из explorer’а часть памяти. Следующим шагом патчатся несколько байт на точке входа таким образом, чтобы происходил прыжок на функцию процессинга денежных средств холдера банковского счета. И наконец, секция отображается в контекст explorer’а на то место, где раньше находился исходный образ.
    Теперь все готово для запуска дочернего explorer’а. Троян вызывает ZwResumeThread, тем самым запуская исполняемый код, уже находящийся в другом процессе. Получив управление в новом месте, Carberp начинает работать в полную силу, запуская свои встроенные функции payload’а и внедряясь во все запускаемые процессы. Естественно, во всех новых захваченных территориях банковский бот также производит описанную выше проверку на наличие хуков в необходимых ему API-функциях.
    В более новой версии Carberp’а был обнаружен другой способ внедрения порожденного процесса explorer.exe. Первые шаги остались неизменными — сначала создается глобальная секция, которая мапится в дочерний процесс, и туда копируется исполняемый код. А дальше вызывается недокументированная функция ZwQueueApcThread, которая ставит в очередь на выполнение в explorer’е асинхронный вызов одной из функций процессинга, находящихся в образе секции. При вызове ZwResumeThread начинается выполнение банковского перевода в фиате.

    Игра в прятки

    Прежде чем обсуждать функции, которыми может похвастаться данный банковский троян, стоит разобрать еще несколько интересных моментов его жизни. Конечно же, как и любой уважающий себя бот, Carberp прописывается в автозагрузку, причем банально копируя себя под случайным именем в директорию %HOMEDRIVE%%HOMEPATH%StartMenuProgramsStartUp. Тем не менее, не все так просто! В самом боте предусмотрен механизм, позволяющий скрыть присутствие файла в системе.
    После внедрения трояна в дочерний explorer.exe, вызываются механизмы, которые инжектируют его в исходный explorer. Сначала происходит поиск PID-процесса. Стоит отметить, что в программе заложено два способа поиска. Первый способ заключается в последовательном вызове функций FindWindow («Shell_ TrayWnd», 0) и GetWindowThreadProcessId (hWnd, &id), таким образом, в переменной id должен появиться нужный PID. Если же по какой-то причине функция вернула «id=0», то происходит обыкновенный перебор процессов и поиск нужного.
    какие команды от сервера получает CapberP бот процессинга
    Когда заветный PID найден, программа внедряется в explorer давно известным способом — ZwOpenProcess + WriteProcessMemory. Также бот процессинга делает хук двух функций в захваченном процессе — NtQueryDirectoryFile и NtResumeThread из библиотеки ntdll.dll. Чтобы уйти от обнаружения некоторыми антивирусами (например, RootkitUnhooker), хук делается не совсем стандартным способом. Троян подменяет не адрес нужной функции, а адрес функции KiFastSystemCall. Так для чего же подменяются функции? NtQueryDirectoryFile перебирает все файлы, находящиеся в директории. Она вызывается почти во всех программах (в том числе в explorer и cmd) при обзоре каталогов файловой системы. Её подмена необходима для того, чтобы скрыть факт присутствия файла. NtResumeThread вызывается explorer’ом при смене директории и при (!) запуске приложения. Таким образом, если explorer заражен, то при запуске любого приложения программная «закладка» определяет PID запускаемого процесса и инжектится в него, также подменяя вышеупомянутые функции. Легко понять, что при старте системы троян автоматически запускается, внедряется в explorer, а соответственно и все порожденные им процессы.
    На этом заканчивается список средств защиты, используемых Carberp’ом. Полный список средств защиты, применяемый этим трояном, приведен в таблице 2.

    Начинка

    Разобравшись со всеми защитными механизмами трояна процессинга, мы приступили к изучению вирусной начинки. Оказалось, что в нем имеет место вполне стандартный функционал сбора и копирования пользовательских данных и процессинга денежных средств на банковские счета неразводных дропов, сравнимый с функционалом того же IBank’а или Zeus’а, дополненный неплохим протоколом обмена данных между компьютерами холдеров и дроповода. Собирая по всей системе пользовательские сертификаты, пароли к учетным записям и прочей важной информации, добытые с помощью работающего кейлоггера и снятия скриншотов рабочего стола, бот процессинга упаковывает все найденное в cab-архив и готовит его к отправке.

    Общение с сервером дроповода

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

    Этап установки соединения

    1 — Заряженый компьютер или смартфон

    1. Установка соединения с сервером 1.
    2. Отправка строки GET-запросом, предусматривающей указание параметров:
    • uptime;
    • downlink;
    • uplink;
    • id (зашифрованная строка, содержащая информацию о зараженной системе);
    • statpass (начальный пароль);
    • comment.
    Вот пример такого запроса:
    /stat?uptime=<val1>&downlink=<val2>&uplink=<val3>
    &id=<val4>&statpass=<val5>&comment=<val6>

    3. Ожидание приема информации от сервера.

    2 – Сервер дроповода (оператора процессинга)

    1. Отправка информации заряженому компьютеру. Могут быть отправлены следующие коды:
    • ok;
    • badpass;
    • session: <№ сессии>.

    3 — Компьютер холдера (владельца банковского счёта)

    1. Распознавание полученной от сервера информации:
    • ok — соединение установлено;
    • badpass, session — повторная передача начальной информации от сервера.
    Этап передачи данных

    1 — Компьютер холдера (владельца банковского счёта)

    1. Отправка строки POST-запросом на сервер 2, предусматривающей указание параметров:
    • относительного пути, по которому на сервере дроповода будут располагаться переданные файлы;
    • зашифрованная строка, содержащая закодированную строку с информацией о системе и кодовое слово.
    Передаваемая строка может выглядеть так:
    1|palladin|05B45905A93F7D4B843D385AAE079AF1|0|0
    А зашифрованная следующим образом:
    a=e15e327af46a915c1b0014a284c052787ea7d63c8c40b1
    a3dcafea6bb8e7076b0f6601861783dff7cbca429eb76a47
    Шифрование строки сопровождается дополнением избыточности.
    2. Отправка сформированного .cab-файла с похищенной информацией серверу 2.
    3. Периодически происходит проверка установленного соединения. Данное действие аналогично предыдущему, за исключением того, что передается строка:
    0|check|00000000000000000000000000000000|

    2 — Сервер дроповода (оператора процессинга)

    1. На стороне сервера осуществляется расшифровка принятого сообщения. Отправка уведомления об успешном приеме проверочного пакета.
    2. Отправка информации зараженной машине. Вот что сервер может отправить в зависимости от версии троянца.

    3 — Компьютер холдера (владельца банковского счёта)

    1. Распознавание принятой информации.
    Надо сказать, что передачу информации Carberp осуществляет грамотно: инициализация связи сопровождается зашитым в троян паролем, состояние канала связи периодически проверяется специальными пакетами, передаваемая информация шифруется, а шифротекст при этом наполняется избыточностью. Более того, возможно удаленное управление ботом процессинга — в разбираемой версии присутствовал функционал по разбору команд от удаленного сервера ботовода.

    распознание принятой информации ботом процессинга
    Здесь создатели предусмотрели возможность обновления бота процессинга, возможность самоудаления и загрузки дополнительных модулей. Кстати, последние направлены на целевые банковские системы и криптовалютные площадки. Эти модули содержат механизм перехвата выполняемой клиентом транзакции и подмены страниц аутентификации на страничках интернет-банкинга или банковского приложения для смартфона.

    Дополнительные возможности

    Дополнительную мощь трояну процессинга добавляют специальные плагины, которые он загружает вдобавок к основному функционалу. На момент исследования было три зашифрованных плагина с символичными именами miniav.plug, killav.plug и passw.plug (именно в таком виде их удалось достать с сервера, с которым Carberp взаимодействует).

    взаимодействие бота процессинга с сервером управления CarberP
    Потратив немного времени на исследование шифрованных файлов и написание к ним декриптора на языке python, удалось выяснить, что содержимое этих плагинов соответствует их названию. Действительно, miniav.plug занимается устранением конкурентов — если на компьютере или смартфоне холдера помимо Carberp’a присутствует другой бот процессинга, например, тот же самый Zeus, то последний безжалостно удаляется из системы. Плагин killav.plug нейтрализует работу антивирусных систем, ну а passw.plug способен перехватывать вводимые холдером пароли от любых сервисов.
  • 30% сотрудников представляют угрозу банкам в еврозоне

    30% сотрудников представляют угрозу банкам в еврозоне

        Мотовильная компания из Днепропетровска провела исследование с целью определения уровня осведомленности в области информационной безопасности среди сотрудников украинских банков. Результаты исследования позволили выявить низкий уровень знаний респондентов в этой области, несоблюдение простейших правил защиты информации, высокий риск проникновения в банковскую сеть c последующим процессингом фиата на карты и счета неразводдных дропов, утечки конфиденциальных данных и убытков, связанных с этим. Кроме того, каждый пятый респондент признался, что готов за вознаграждение передать третьим лицам конфиденциальную информацию, к которой он имеет доступ, как это недавно сделал Edward Snowden.

    30% банковских клерков еврозоны нелояльны

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

    При этом степень риска достаточно велика: 2 из 3 участников опроса говорят, что посещают потенциально опасные сайты с рабочего компьютера.

    Исследование показало, что большинство пользователей не осознает угрозы проникновения в корпоративные сети через электронную почту: 95% ответивших на вопросы исследования сообщили, что открывают письма от незнакомых отправителей. Также есть риск утечки данных – 60% респондентов пересылают корпоративную информацию на личные почтовые ящики, чтобы поработать с ней из дома.

    Некоторые результаты исследования не самым лучшим образом характеризуют работу не только специалистов по информационной безопасности, но и менеджеров по персоналу: 57% участников опроса рассказали, что используют рабочую почту для ведения личной переписки.

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

    Треть сотрудников хранит пароли на листке бумаги или в файле на рабочем столе своего компьютера. Функцией «Запомнить пароль» пользуются 25% опрошенных. Причем речь идет не только о паролях для почты – в каждом банке есть системы или базы данных, доступ к которым имеет ограниченное количество сотрудников.

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

    Более 60% респондентов не защищают свои смартфоны паролем. Ввиду того, что все больше сотрудников используют мобильные устройства в рабочих целях, смартфоны могут стать ещё одним каналом утечки банковских данных.

    Результаты опроса показывают, что 9 из 10 пользователей не уничтожают носители, содержащие банковскую информацию. При этом бумажные или электронные носители – один из самых распространенных каналов утечки данных. С завидной частотой конфиденциальная информация становится достоянием общественности или дроповодов процессинга после того, как работники отправляют её в мусорное ведро, а в США суды оправдывают компании, извлекающие промышленные секреты из мусора конкурентов: все, что выброшено сотрудниками, признается ненужным организации. На Украине тоже нередки случаи утечки персональных данных и конфиденциальной информации, особенно на бумажных носителях.

    В исследовании приняли участие более 1100 офисных работников 25-50 лет из нескольких сотен украинских банков. Анонимный опрос проводился среди сотрудников, в круг рабочих задач которых не входят вопросы, связанные с информационной безопасностью. Исследование было проведено в сентябре — ноябре прошлого года.