Разбор конкурса Leave ATM Alone на PHDays 8
 
                 
Поиск по сайту
 bit.samag.ru     Web
Рассылка Subscribe.ru
подписаться письмом
Вход в систему
 Запомнить меня
Регистрация
Забыли пароль?

Календарь мероприятий
апрель    2024
Пн
Вт
Ср
Чт
Пт
Сб
Вс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

показать все 

Новости партнеров

22.04.2024

Сообщество цифровых управленцев «я-ИТ-ы» проводит ЗАКРЫТУЮ встречу в рамках выставки «Связь-2024»!

Читать далее 

18.04.2024

Ассоциация разработчиков «Отечественный софт» отметила 15-летие

Читать далее 

17.04.2024

РДТЕХ представил Технологическую карту российского ПО 2023

Читать далее 

16.04.2024

RAMAX Group получила партнерский статус уровня Gold по продукту Tarantool

Читать далее 

показать все 

Статьи

18.04.2024

5 способов повысить безопасность электронной подписи

Читать далее 

18.04.2024

Как искусственный интеллект изменит экономику

Читать далее 

18.04.2024

Неочевидный САПР: выход ПО за рамки конструкторской деятельности

Читать далее 

18.04.2024

Скоро некому будет делать сайты и заниматься версткой

Читать далее 

18.04.2024

Цифровая трансформация в энергетике: как запустить проект с максимальным финансовым эффектом?

Читать далее 

05.04.2024

Мотивируй, не то проиграешь!

Читать далее 

22.03.2024

В 2024 году в России и мире вырастут объемы применения AR/VR 

Читать далее 

25.02.2024

Цифровые технологии: надежды и риски

Читать далее 

05.02.2024

Будут ли востребованы услуги технической поддержки софта Oracle в России в ближайшие годы?  

Читать далее 

31.01.2024

Здания с признаками интеллекта. Как Сергей Провалихин автоматизирует дома и производства

Читать далее 

показать все 

Разбор конкурса Leave ATM Alone на PHDays 8

Главная / Новости партнеров / Разбор конкурса Leave ATM Alone на PHDays 8


На Positive Hack Days 8 в очередной раз прошел старый добрый конкурс по взлому банкоматов Leave ATM Alone. В распоряжении участников были два банкомата, аппаратная часть была предоставлена нашим партнером по банковской безопасности Альфа-Банком. Специально для соревнования мы настроили банкоматы и заложили в них уязвимости. За 15 минут нужно было обойти средства защиты и извлечь деньги из устройства. Призовой фонд составил 40 000 ₽. Попробовать обойти защиту пришли около 40 участников. Леонид Кролле, организатор конкурса и специалист отдела исследований безопасности банковских систем Positive Technologies, рассказал, как это было, и подробно разобрал задания.

 

В распоряжении участников было два банкомата. На одном из них установлено программное обеспечение аpplication сontrol от наших партнеров, предотвращающее запуск недоверенных приложений. Оно не дает запустить ни одно приложение, которое требуется для снятия наличности (привет, Cutlet Maker, BubbleMaker и nemagiya!).

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

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

Все уведенные из системы деньги игроки забирали себе.

 

Application control

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

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

За последние несколько лет было описано множество методов обхода application control с помощью средств Microsoft Windows (например, «rundll32», «regsvr32»), простая блокировка которых нарушает нормальную работу ОС. Поэтому тонкая настройка application control — сложная и кропотливая работа, результат которой и был отдан участникам конкурса на растерзание. Отметим, что в реальном мире у злоумышленников нет столько времени на обход application control.

Первый день соревнования

Начало первого дня конкурса ознаменовалось плотным потоком участников форума, которые пришли попробовать свои силы в обходе application control и подмене ответа процессинга, — всего более 40 человек.


Всего на обход защиты на банкомате с application control отводилось 15 минут: за это время нужно было успеть запустить свой код. К сожалению, в первый день все попытки участников запустить свой эксплойт проваливались. Однако одному участнику удалось обнаружить странное устройство, установленное на банкомате. Это был скиммер — миниатюрное считывающее переносное устройство, которое может крепиться к банкомату. Такие приспособления помогают мошенникам воровать данные банковских карт: реквизиты, ПИН-код — всю информацию, записанную на магнитной полосе.


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

Расскажем немного про подготовку скиммера для соревнования. Скиммер состоит из магнитной головки для считывания и устройства для записи аудиодорожки (бывает с Wi-Fi или Bluetooth). Данный экземпляр может быть сделан на основе плеера-рекордера Explay или аналогичного USB-диктофона. Примеры тут (http://www.chucklohr.com/usbaudiorecorder/). По размерам они как раз влезают в накладку на антискиммер и еще остается место для аккумулятора, поскольку нужно было подготовиться и оживить мини Франкенштейна: тест на работоспособность был проведен на аналогичном устройстве от другой модели банкомата. Для экономии места площадка крепления USB-порта обрезается, поэтому нужный переходник пришлось сделать самостоятельно.

 

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


Информация на магнитной полосе карты записана с помощью F/2F-частотного кодирования (с чем это едят и как можно декодировать — читаем вот здесь) и представляет собой алфавитно-цифровые символы в 7-битной кодировке или цифровые символы в 5-битной кодировке. Для определения ошибок считывания применяются контроль четности и продольный контроль по избыточности (или продольный резервный контроль — LRC).

Данные на любой дорожке должны начинаться со служебного символа start и заканчиваться служебным символом end. Эти символы выбраны таким образом, что позволяют определить начало блока полезной информации, определить направление считывания карты и даже формат кодировки информации (5 бит или 7 бит).

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

В 7-битной кодировке символы [ \ ] зарезервированы для дополнительных национальных символов и не должны применяться в рамках международного обмена информацией, символ # зарезервирован для произвольных дополнительных графических символов.

Вот пример, как это может выглядеть:

— стандартная дорожка ISO 2:

;XXXXXXXXXXXXXXXX=YYYYYYYYYYYYYYYYY?Z — 37 символов

X…X — номер карты, Z — LRC (данные начинаются с символа start и заканчиваются символом end, номер карты 16-значный, присутствует LRC)



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

Например:

SWipe is an application for reading magnetic stripe cards over an audio port.

Magnetic Stripe Decoder. A program to decode a magnetic stripe card, receiving the raw data from the magnetic stripe via the sound card.

Они позволяют с большей или меньшей точностью преобразовать данные аудиодорожки в ASCII (расшифрованные данные).

Примерно через час данные карты, записанной в скиммер, были предоставлены. Заслуженный приз «Зрительских симпатий» нашёл своего владельца. Поздравляем Максима Вихлянцева!

Остальные участники продолжили бороться за основные призы, загруженные в банкоматы :) Кто-то пытался хакнуть защиту, но были и те, кто устал и потерял надежду на быстрое обогащение. Тем не менее первый день прошел бурно, хотя основной куш так и оставался у организаторов…


Второй день


 

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


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

 

Эмулятор был настроен на выдачу денежных средств с любой вставленной картой, без пин-кода, но та кассета, команду которой в ответе на запрос присылал эмулятор, — была пуста. Для решения данной задачи было необходимо:

перехватить пакет ответа процессингового эмулятора;

разобрать пакет и сформировать свой — только с корректно установленным номером кассеты;

вставить карту и во время посылки запроса на процессинг ответить банкомату измененными данными;

с помощью инструментов tcpdump, wireshark, scapy или ettercap осуществить replay-атаку или спуфинг-атаку с измененными данными для того, чтобы ответить банкомату.

tcpdump— UNIX-утилита, имеющая клон для Windows и позволяющая перехватывать и анализировать сетевой трафик, проходящий через компьютер, на котором запущена данная программа.

wireshark — аналогичная утилита, только более «заряженная», имеющая GUI.

scapy — интерактивная оболочка и программная библиотека для манипулирования сетевыми пакетами на языке программирования Python. 

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


С таким непростым подходом у участников возникли сложности, но и их они преодолели. Приз за подделку ответа от процессинга на втором банкомате разделили сразу три команды — Information & Public, Security Center и Uzbekistan. С чем мы их и поздравляем! Полный список победителей — на странице конкурса.


В начало⇑

 

Комментарии отсутствуют

Комментарии могут отставлять только зарегистрированные пользователи

Выпуск №02 (135) 2024г.
Выпуск №02 (135) 2024г. Выпуск №01 (134) 2024г.
Вакансии на сайте Jooble

           

Tel.: (499) 277-12-41  Fax: (499) 277-12-45  E-mail: sa@samag.ru

 

Copyright © Системный администратор

  Яндекс.Метрика