Как взломать банкомат через телефон
“Лаборатория Касперского” расследует разные способы взлома банкоматов: с помощью удаленно контролируемого зловреда, а также с использованием Bluetooth-клавиатуры и дрели.
ATMitch, вредоносное ПО с удаленным управлением
Итак, банкомат был пуст. Осмотрев машину, служба безопасности банка не нашла ни вредоносных программ, ни странных отпечатков пальцев, ни следов физического взлома или подключения каких-либо сторонних устройств, способных взять банкомат под контроль. Денег никто тоже не нашел.
Получив данные из того самого log.txt, наши исследователи смогли сформулировать правило для YARA, инструмента для исследования вредоносных программ. Попросту говоря, они задали поисковый запрос для базы вредоносных файлов и стали ждать. Спустя день поиски принесли плоды: был обнаружен файл tv.dll, который успел всплыть аж дважды — в России и Казахстане. Этой ниточки хватило, чтобы распутать весь узел.
Тщательно исследовав DLL-файл, наши специалисты смогли понять, как проводилась атака, и даже воспроизвели ее на специальном банкомате, установленном в нашей лаборатории. И все получилось: тестируемый банкомат послушно выдал им загруженные в него банкноты.
ATMitch в деле
Атака началась с того, что преступники проникли на сервер банка, использовав для этого давно известную, но незакрытую уязвимость (мы, помнится, уже говорили, что обновлять программное обеспечение нужно, важно и полезно, — вот вам яркий пример).
Мошенники использовали открытый код и общедоступные программы, чтобы инфицировать банковские компьютеры. Однако зловред у них получился очень хитрый: он хранил свои данные в оперативной памяти системы, а не на жестком диске, так что для защитных решений он оставался незаметным. Более того, после перезагрузки исчезали какие-либо следы заражения.
Взяв под контроль компьютеры в банке, зловред подключается к командному серверу и позволяет мошенникам удаленно загрузить вредоносное ПО прямо в систему банкоматов.
Обнаружив файл, ATMitch первым делом интересуется, сколько денег есть в банкомате, а затем просит машину выдать определенное количество купюр. К этому моменту возле банкомата как раз оказывается сообщник преступников, который забирает наличные и исчезает как ни в чем не бывало.
Преступники постарались замести все следы, поэтому специалисты банка не нашли никаких сторонних исполняемых файлов на жестком диске ограбленного банкомата. После извлечения денег ATMitch стер даже файл command.txt.
Bl@ckb0x_m@g1k: простой, но очень эффективный трюк
Эта история покороче. Все началось с еще одного звонка из банка. Классическая тупиковая ситуация: пустые логи, никаких подозрительных файлов на жестком диске, более того, мошенник даже заклеил объектив камеры наблюдения. Ну как отказаться от такого дела?
Мы попросили представителей банка доставить банкомат в наш офис. Разобрав его, мы обнаружили (что бы вы думали?) подключенный к USB-хабу банкомата Bluetooth-адаптер. А на жестком диске нашлись драйверы для Bluetooth-клавиатуры.
Этого хватило, чтобы реконструировать всю схему. Итак, сначала мошенник подключил Bluetooth-адаптер к банкомату, а потом подождал три месяца, чтобы логи очистились (они хранятся как раз столько времени). Затем преступник вернулся, заклеил камеру наблюдения, достал Bluetooth-клавиатуру, подключил ее и перезагрузил устройство в режим обслуживания. Так он смог запустить сервисную команду по опустошению кассет с деньгами. Вот, собственно, и вся история номер два.
Дрель. Самая настоящая электродрель
Удаленный взлом и подключение Bluetooth-клавиатуры — это даже в какой-то степени изящно, но бывают и куда более прямолинейные способы.
Эта история началась с еще одного обращения от банка: преступники взломали банкомат, оставив после себя идеально круглое отверстие диаметром около 4 сантиметров, прямо рядом с клавиатурой, с которой вводят PIN-код. Вы, скорее всего, думаете, что банкоматы сделаны из толстенной стали, но некоторые части пластиковые, и их довольно легко просверлить. Других улик специалисты банка не нашли.
Затем последовало несколько похожих происшествий в России и Европе, разве что отверстия были не такими круглыми. В конце концов полиция поймала подозреваемого, вооруженного ноутбуком и набором проводов.
Наши специалисты разобрали банкомат, установленный в тестовой лаборатории, чтобы понять, что же искали преступники рядом с клавиатурой. Там нашелся 10-контактный коннектор, подключенный к шине, которая связывала между собой практически все компоненты банкомата, от компьютера до кассет с купюрами.
Кроме того, в банкомате использовалось очень слабое шифрование, которое можно было без особого труда взломать. Итак, еще раз вкратце описываем ситуацию: шифрования практически нет, так что в командах разобраться не проблема; подключившись к любой части банкомата, можно управлять всеми его компонентами, между которыми нет никакой системы авторизации, так что любую часть можно заменить незаметно для всех остальных. Звучит ну очень безопасно, правда?
Потратив целых $15 и сколько-то времени, мы сделали простую микросхему, с помощью которой можно было управлять банкоматом. Подключив ее к последовательной шине, мы заставили тестируемый банкомат выдать нам фальшивые деньги, которые использовали в тестовых целях. Похоже, преступники проделали тот же трюк, только в их случае банкомат был заряжен настоящими деньгами, а вместо микросхемы они использовали ноутбук.
Банкоматы ломают. И что?
Сформулируем краткую мораль всех трех историй.
1. Идете снимать зарплату? Оставьте свою дрель и Bluetooth-клавиатуру дома, а то сотрудники банка могут неправильно вас понять. Эй, мы пошутили, но дрель все равно положите!
2. Если вы не сотрудник банка, ни одна из этих угроз не должна вас беспокоить. Это проблемы банка, а не его клиентов.
В адрес компаний и частных пользователей все чаще доносятся призывы перейти с Windows XP на более новую версию этой операционной системы — если не ради расширенного функционала, то хотя бы ради более надежной системы защиты и лучшей технической поддержки. Банкоматы — это, по сути, компьютеры, контролирующие доступ к наличным деньгам. И оказывается, что почти 95% всех банкоматов находятся под управлением Windows XP. В свете того, что официальная поддержка Windows XP прекратится 8 апреля 2014 года, банковская отрасль стоит перед угрозой кибератак на свои «парки» банкоматов. И этот риск совсем не гипотетический — это уже происходит. Злоумышленники атакуют банкоматы, используя все более изощренные методы.
В конце 2013 года специалисты Symantec писали о том, что в Мексике была обнаружена новая вредоносная программа для банкоматов, которая давала злоумышленникам возможность при помощи внешней клавиатуры заставлять банкомат выдавать наличные деньги. Эта угроза была названа Backdoor.Ploutus. Несколько недель спустя эксперты компании обнаружили ее новую разновидность, которая уже могла похвастаться модульной архитектурой. Эта новая версия была переведена на английский язык, что наводило на мысль о том, что злоумышленники решили начать осваивать новые территории. Эта новая разновидность была названа Backdoor.Ploutus.B — далее просто Ploutus.
Подключение телефона к банкомату
Злоумышленники могут удаленно контролировать банкоматы при помощи мобильного телефона, который подключен к «начинке» банкомата. Существует множество способов это сделать. Самый распространенный — активация в телефоне режима точки доступа и подключение его к банкомату по USB-кабелю.
Злоумышленники должны правильно настроить телефон, подключить его к банкомату и заразить банкомат вирусом Ploutus. При выполнении этих шагов между банкоматом и телефоном устанавливается полноценная двухсторонняя связь и можно начинать приступать к изыманию денег.
Поскольку телефон подключен к банкомату через USB-порт, он постоянно находится на зарядке, а значит, может работать на протяжении неопределенного срока.
Одним из модулей вредоносной программы является анализатор сетевых пакетов — программа, которая отслеживает весь сетевой трафик, идущий на банкомат. Как только зараженный банкомат получает от телефона корректный TCP- или UDP-пакет, этот модуль его анализирует — ищет последовательность 5449610000583686 в определенной части пакета, а затем, найдя искомую последовательность, модуль считывает следующие 16 цифр, из которых и строит команду для запуска Ploutus. Например, такая команда может выглядеть следующим образом: cmd.exe /c PLOUTOS.EXE 5449610000583686=2836957412536985
В более ранних версиях Ploutus злоумышленнику приходилось бы сообщать этот код «курьеру», забирающему деньги. Таким образом последний мог бы понять, как работает система, и обманывать вирусописателя. В данной версии Ploutus курьер никогда не видит этих 16 цифр, что обеспечивает дополнительную безопасность для вирусописателя и позволяет централизованным образом контролировать забор денег. Код действует в течение 24 часов.
Общая картина
Рассмотрев детали данной преступной схемы, давайте посмотрим на то, как же все это выглядит на практике.
Специалистам Symantec в лаборатории удалось воссоздать подобную атаку, используя реальный банкомат, зараженный Ploutus.
Хотя в этом примере эксперты компании используют именно Ploutus, специалисты Symantec Security Response обнаружили несколько различных форм этого вируса, направленного на атаку банкоматов. В случае с Ploutus злоумышленники пытаются украсть деньги изнутри банкомата, однако некоторые из рассмотренных Symantec программ пытаются украсть данные кредитной карты и PIN, в то время как другие программы позволяют злоумышленникам осуществлять атаки типа «человек посередине». Очевидно, что у вирусописателей есть много идей насчет того, как лучшим образом нажиться на банкоматах.
Как защитить банкоматы?
Современные банкоматы обладают рядом продвинутых функций защиты, таких как использование зашифрованных жестких дисков, что делает описанный способ установки невозможным. Однако в случаях более старых банкоматов, все еще находящихся под управлением Windows XP, защита от подобных атак представляет значительную трудность, особенно в случае, если банкоматы находятся в эксплуатации в отдаленных точках. Другая проблема, требующая рассмотрения, — это физическая незащищенность банкоматов: в то время как деньги в банкомате заперты надежно, компьютер, как правило, нет. Не обеспечив надлежащих мер физической защиты банкоматов старой модели, мы даем злоумышленникам преимущество.
- обновиться до одной из поддерживаемых разработчиком операционных систем, таких как Windows 7 или 8;
- обеспечить адекватную физическую защиту банкоматов, а также рассмотреть возможность установки систем скрытого видеонаблюдения;
- закрыть доступ к BIOS, для того чтобы предотвратить загрузку системы с неавторизованных носителей, таких как CD-диски и переносные USB-накопители;
- использовать полное шифрование жестких дисков, для того чтобы предотвратить их взлом;
- использовать решения по блокировке доступа, такие как Symantec Critical System Protection Client Edition (продукт из линейки продуктов Symantec Data Center Security).
В обозримом будущем компания Symantec продолжит осуществлять поддержку Windows XP в своих решениях защиты, однако специалисты компании настоятельно рекомендуют пользователям как можно скорее перейти на более актуальную операционную систему.
Консультант по безопасности Джозеф Родригес нашёл способ беспроводного взлома банкоматов. Для получения безлимитного количества денег оказалось достаточно программы на смартфоне и знания уязвимости десятилетней давности.
Несколько десятилетий назад существовала распространённая ошибка, приводящая к переполнению буфера памяти и позволяющая злоумышленникам манипулировать кодом устройства. Дыра в безопасности была благополучно устранена, но, как выяснилось, создатели банкоматов наступают на старые грабли. Джозеф Родригес обнаружил, что многие из подобных устройств не проверяют размер пакета данных, отправляемого через NFC на считывающее устройство. Это позволяет как манипулировать деньгами на своём счету, так и получить безлимитную наличность.
«Вы можете изменить прошивку или сумму, например, на один доллар, даже когда на экране отображается, что вы платите 50 долларов. Вы можете сделать устройство бесполезным или установить своего рода программу-вымогатель. Если вы совершаете атаку и отправляете специальную нагрузку на компьютер банкомата, вы можете получить джекпот, просто поднеся свой смартфон», — поясняет Джозеф.
На момент обнаружения уязвимости Джозеф Родригес работал консультантом по безопасности в IOActive. Он уверяет, что масштабы проблемы огромны, поскольку дыра присутствует на многочисленных устройствах в торговых центрах, ресторанах и магазинах розничной торговли. Для взлома достаточно смартфона с NFC, ну а специальное приложение Джозеф написал самостоятельно.
Он уведомил специальные службы более года назад, но обнаружил, что проблема до сих пор актуальна. Обнародованием подробностей взлома он планирует привлечь внимание к уязвимости, что подтолкнёт заинтересованные стороны к её устранению.
Исследователь безопасности Хосеп Родригес создал приложение для Android, которое позволяет его смартфону использовать обнаруженные им недостатки в прошивке системы NFC, которая дает возможность обмена данными между устройствами на близком расстоянии, сообщает портал Wired.
С помощью технологии NFC для проведения платежа или вывода денег из банкомата не нужно вставлять карту — достаточно просто приложить ее или телефон к считывателю. Технология получила широкое распространение и работает почти во всех торговых точках по всему миру.
«Вы можете поменять прошивку терминала оплаты, изменить цену, отключить его или установить туда программу-вымогатель. Возможностей более чем достаточно», — говорит Родригес.
Также Родригес заявил, что может заставить некоторые банкоматы выдавать ему наличные деньги — такой способ воровства он назвал «джекпотинг».
«Выстроив цепочку атак, а также отправив специальную полезную нагрузку на компьютер банкомата, вы сможете снять деньги с банкомата, как джекпот, просто проведя телефоном над NFC-считывателем», — отмечает исследователь.
Однако это работает лишь в сочетании с дополнительными ошибками, которые он обнаружил в программном обеспечении банкоматов. Раскрывать подробности об уязвимостях он отказался из-за соглашений о неразглашении.
По словам исследователя, год назад он предупредил об ошибках компании, занимающиеся установкой банкоматов и POS-терминалов, в их число вошли ID Tech, Ingenico, Verifone, Crane Payment Innovations, BBPO и Nexgo.
Однако миллионы устройств по всему миру все еще находятся в опасности, так как для установки обновления безопасности нужен физический доступ к терминалу или банкомату.
Это означает, что многие из этих устройств, вероятно, так и останутся уязвимыми.
«Физическое исправление сотен тысяч банкоматов потребует очень много времени»,— отмечает Родригес.
Ранее исследователи кибербезопасности обнаружили критические уязвимости в мобильных терминалах — они позволяли злоумышленникам получить доступ к данным кредитных и дебетовых карт, с которых оплачивались покупки.
Читайте также: