March 4, 2023

Исследование тактики, используемой преступниками при атаках вредоносного ПО на банкоматы.

Приветствую вас, уважаемый читатель.

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

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

С 2010-х годов наметился сдвиг в сторону ненасильственных методов без использования взрывчатых веществ. Появились физические атаки с использованием вредоносного ПО. Вредоносное программное обеспечение попадает на компьютер банкомата через USB-накопитель или другим способом, предоставляя злоумышленнику полный контроль над машиной. Этот тип атаки обычно приводит к тому, что все наличные деньги, находящиеся в сейфе, выбрасываются через обычный механизм выдачи (атака cash-out). Зараженный банкомат может также обеспечивать атаки на другие устройства или сервисы в сети. Например, однажды мы разработали вредоносное ПО, которое атаковало все банкоматы в сети с зараженного устройства. Результатом стало одновременное снятие наличных со всех банкоматов в общей сети. Интересно, что другие устройства, такие как Raspberry Pi, подключенные к той же сети, могли достичь аналогичных результатов.

Несмотря на снижение количества атак на банкоматы с использованием вредоносных программ во время пандемии Covid в 2020 году, с начала 2022 года наблюдается заметный рост. В даркнете можно приобрести вредоносные программы, предназначенные для атак на определенные типы устройств, по цене около 1000 долларов США. Чтобы защититься от таких атак, необходимо предотвратить установку и выполнение вредоносного ПО. Наши обширные исследования и опыт работы в реальных проектах позволили нам помочь производителям банкоматов и банкам защитить свои устройства от подобных угроз.

Давайте обратимся к тонкостям работы банкомата. Как правило, банкомат состоит из двух основных компонентов: сейфа и шкафа.

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

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

Вводимые с помощью сенсорного экрана или пин-пада значения обрабатываются программным обеспечением и затем передаются другим устройствам, например, банкомату, с помощью соответствующих команд. Эта связь облегчается благодаря стандарту XFS (Расширения для финансовых служб), который предоставляет интерфейс (API) для диспетчера оборудования Windows, позволяющий всем приложениям получать к нему доступ.

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

Обзор банкомата

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

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

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

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

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

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

Компьютер внутри шкафа с открытыми USB-портами

Когда я просматривал информацию об уязвимостях безопасности банкоматов, мне стало ясно, что недостаточная конфигурация системы и устройств представляет собой большой риск для безопасности этих машин. В частности, стандарт XFS для связи между операционной системой и периферийными устройствами часто настроен небезопасным образом, без надлежащих протоколов аутентификации для предотвращения несанкционированного доступа. Это оставляет машину открытой для вредоносных атак, таких как печально известный эксплойт "ATM black-box".

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

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

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

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

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

Уязвимости могут быть связаны с отсутствием или недостаточным контролем доступа к сети, когда злоумышленник, подключившийся к сети банкоматов через Ethernet, часто имеет полные полномочия для взаимодействия с другими системами в той же сети. Часто возможно проникновение в другие устройства или даже в Active Directory. Кроме того, незашифрованная связь с бэкендом открывает данные транзакции, которые могут быть использованы злоумышленником, находящимся в положении "человек посередине", для выдачи неправильно оформленных средств.

Кроме того, отсутствие или недостаточная аутентификация сетевой службы банкомата подвергает систему опасности злоумышленных поддельных команд, которые могут заставить банкомат выдать деньги. Это серьезная ситуация, особенно если учесть пример обхода устаревшей системы NAC (Network Access Control) с помощью общедоступных инструментов.

Пример - Обход устаревшей системы NAC (Network Access Control) с помощью общедоступных инструментов

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

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

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

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

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

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

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

Чтобы защитить банкомат от таких атак, мы должны принять несколько мер.

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

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

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

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

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

По моим наблюдениям, производители и банки не виноваты в этих пробелах в мерах безопасности. Вся среда и ее процессы часто препятствуют простому повышению уровня безопасности. Например, замена всех коммутаторов во всех филиалах для обеспечения надлежащего контроля доступа к сети (NAC - network access control) является сложной задачей. Кроме того, техническому персоналу по-прежнему требуется интерфейс (например, USB) для выполнения административных задач на банкомате.

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

В заключение, мой дорогой друг, защита банкомата от атак вредоносного ПО требует тщательного внимания к деталям и комплексного подхода. Мы должны принять все необходимые меры для обеспечения безопасности системы и защиты активов ее пользователей.

Спасибо за прочтение 🤍

Надеюсь контент вам понравился и был полезен.
Ценю ваше внимание.

references: https://blog.nviso.eu/2023/01/10/malware-based-attacks-on-atms-a-summary/