Тестирование на проникновение банкоматов - расширенные методы тестирования для поиска уязвимостей

Father

Professional
Messages
2,601
Reputation
4
Reaction score
633
Points
113
При тестировании на проникновение банкоматов хакеры нашли разные подходы к взлому банкоматов. Программисты не ограничиваются физическими нападениями, например, захватом денег / карт, снятием скимминга и т. д., Они исследуют лучшие подходы к взлому программирования банкоматов.

Банкомат - это автомат, который позволяет клиентам производить обмен денег, не отправляясь в банк.

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

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

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

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

Любому банкомату необходим информационный терминал с двумя источниками данных и четырьмя устройствами вывода данных. Очевидно, что для этого также должна быть доступность хост-процессора. Хост-процессор важен для того, чтобы банкомат мог общаться с человеком, который просит деньги. Провайдер интернет-услуг (ISP) также принимает на себя существенное участие в этой деятельности. Они служат переходом к промежуточным системам, а также к банковскому ПК.

atm-pentest.gif


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

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

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

Так что же происходит, когда клиент вставляет свою карту, чтобы вернуть деньги?
2-1.jpg

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

Пользователь карты просматривает данные из привлекательной части карты. Информация с этой карты отправляется в главный процессор, который передает данные в банк клиента.

2. После того, как карта была воспринята, клиенту предлагается отдать флешку. Клиент входит в флешку с помощью клавиатуры. Флешка кодируется и отправляется на хост-сервер. Запись и стикер утверждаются банком клиента. После утверждения банком хост-сервер отправляет код реакции в банкомат.

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

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

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

Тестирование на проникновение в стиле ATM BPT
Специалисты по безопасности проводят расширенные тесты на проникновение для банкоматов в финансовом секторе. В большинстве случаев серьезные недостатки безопасности выявляются в конфигурациях банкоматов и связанных с ними процессах.

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

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

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

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

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

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

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

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

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

Эти атаки не обязательно являются изощренными и часто не входят в стандартные тесты на проникновение.

PCI DSS
Среда банкоматов также входит в сферу действия стандарта PCI DSS. Однако только часть реальных хакерских атак полностью покрывается стандартами PCI DSS и PA-DSS. PCI SSC выпустил информационный дополнительный документ «Рекомендации по безопасности банкоматов» в январе 2013 года.

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

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

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

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

Эти два действия очень распространены при работе с безопасностью банкоматов. При тестировании на проникновение в сеть мы проверяем уязвимость банкомата на сетевом уровне. Поскольку банкомат взаимодействует с внутренним сервером, он должен быть частью некоторой сети. Получив IP-адрес банкомата, мы можем выполнить тест на проникновение на сетевом уровне.

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

Мы можем запустить сканирование NMAP всего порта, чтобы определить порты и службы TCP и UDP, работающие на банкомате. Кроме того, сканирование с проверкой подлинности Nessus может использоваться для выявления уязвимостей, связанных с установленными компонентами в ОС банкомата, такими как Adobe, Internet Explorer и т. Д.

Аудит конфигурации касается усиления защиты операционной системы. Большая часть банкоматов работает под управлением ОС Windows. Эта ОС должна быть усилена в соответствии с лучшими практиками безопасности, чтобы уменьшить поверхность атаки для злоумышленника. Некоторые из областей, на которые мы можем обратить внимание при проведении аудита конфигурации:
  • Доступ к системе и аутентификация: проверки, связанные с политикой блокировки пароля и учетной записи, политикой прав пользователей и т. Д.
  • Аудит и ведение журнала: проверки, связанные с журналами событий, приложений и безопасности, политикой аудита, разрешениями в журналах событий.
  • Конфигурация учетной записи: проверки, относящиеся к пользователям в группе администраторов, наличию пользователей по умолчанию, гостевой учетной записи, требованию пароля и истечению срока действия.

2. Аудит безопасности приложений:
Аудит безопасности приложения - это интенсивный технический, непривилегированный и привилегированный тест безопасности приложения и связанных с ним компонентов с высоким процентом ручного тестирования и проверки. Поскольку будут проводиться непривилегированные и привилегированные тесты, учитывается как точка зрения постороннего (например, хакера), так и инсайдера.

Мы можем разделить эту деятельность на две категории:

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

б. Обзор дизайна приложения: в этом упражнении мы можем проверить, соблюдаются ли методы безопасности в приложении. Некоторые из тестовых примеров могут быть:
  • Типы событий, записываемых в файл журнала.
  • Привилегия, с которой запущено приложение банкомата.
  • Предусмотрено ли в программном обеспечении ограничение доступа к различным параметрам меню для разных идентификаторов пользователей в зависимости от уровня пользователя?
  • Доступ к папкам, связанным с приложением.
  • Приложение разрешает транзакцию без пин-кода или со старым пин-кодом?
  • Разрешает ли приложение доступ к ОС во время работы?
  • Связь с внутренними компонентами.
  • Проверьте эффективную изоляцию сети.
  • Выход из системы в случае даже одного неверного пин-кода?
  • Ввод PIN-кода для каждой транзакции является обязательным?

Оценка решения безопасности банкомата, установленного в банкомате:
Что такое решение безопасности банкоматов?
Большинство банкоматов работают под управлением Windows XP и 7. Установка исправлений для отдельных банкоматов - довольно сложный процесс. Поскольку Windows XP больше не поддерживается Microsoft, многие производители банкоматов используют решения безопасности для смягчения угроз, связанных с атаками на банкоматы, таких как атаки на основе вредоносного ПО и уязвимости на уровне ОС. Эти решения безопасности позволяют приложениям банкоматов работать в очень жесткой среде с ограниченными службами и процессами в серверной части. Двумя из таких решений безопасности являются Mcafee Solidcore и Phoenix Vista ATM.

Mcafee Solidcore:
McAfee Application Control блокирует неавторизованные исполняемые файлы на серверах, корпоративных настольных компьютерах и устройствах с фиксированными функциями. Используя динамическую модель доверия и инновационные функции безопасности, такие как локальный и глобальный анализ репутации, поведенческая аналитика в реальном времени и автоматическая иммунизация конечных точек, он немедленно предотвращает сложные постоянные угрозы, не требуя трудоемкого управления списками или обновления сигнатур.
  • Полная защита от нежелательных приложений с охватом исполняемых файлов, библиотек, драйверов, приложений Java, элементов управления ActiveX, сценариев и специального кода.
  • Гибкость для пользователей настольных компьютеров и администраторов серверов с самоутверждением и автоматическим утверждением на основе рейтинга приложений.
  • Надежная безопасность для стационарных, устаревших и современных систем.
  • Сокращение цикла исправлений и улучшенная защита памяти.
  • Централизованное интегрированное управление через McAfee ePolicy Orchestrator.

Банкомат Phoenix Vista:
Банкомат Phoenix Vista является продуктом Phoenix Interactive Design Inc. Это решение интегрируется с самим приложением банкомата. Это приложение работает с проверкой целостности файлов, когда любое изменение / вмешательство в критический файл, связанный с приложением, приведет к завершению работы системы. Это запрещает любой неавторизованной программе изменять файл конкретного приложения.

XFS (eXtensions for Financial Services) предоставляет архитектуру клиент-сервер для финансовых приложений на платформе Microsoft Windows, особенно периферийных устройств, таких как банкоматы, которые являются уникальными для финансовой отрасли. Это международный стандарт, продвигаемый Европейским комитетом по стандартизации (известный под аббревиатурой CEN, отсюда CEN / XFS). XFS предоставляет общий API для доступа и управления различными устройствами с финансовыми услугами независимо от производителя.

Банкомат Vista взаимодействует с уровнем XFS, который дает команды аппаратному обеспечению, например банкомату банкомата, для выдачи наличных. Любое несанкционированное изменение файлов XFS заставит приложение Vista ATM принудительно перезагрузить компьютер. Машина перезагружается 4-5 раз, а затем переходит в режим обслуживания, который не позволяет пользователю выполнять какие-либо транзакции.

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

Вот некоторые из тестовых примеров, которые можно рассмотреть:

Тестовые примеры, связанные с доступом к ОС и соответствующему файлу:
  1. Проверьте, включен ли USB, сделайте свой USB загрузочным.
  2. Подключите USB и загрузите систему через USB.
  3. Поскольку большая часть решений безопасности берет на себя работу ОС, как только она загружается, продолжайте нажимать кнопку «Shift» во время загрузки. Это нарушит любую последовательность, настроенную для запуска при загрузке в ОС. Это приведет к экрану входа в Windows.
  4. Если вам известно действительное имя пользователя, введите его и нажмите кнопку «Ввод». Это приведет к прямому доступу к ОС без пароля.
  5. Если вам неизвестно действительное имя пользователя, попробуйте войти в систему с помощью «Администратора», поскольку многие банкоматы не отключают учетную запись администратора по умолчанию.
  6. Другой способ - сделать ваш USB загрузочным. Загрузитесь с USB, это даст доступ к файловой системе напрямую, без входа в Windows.
  7. Тест, связанный с авторизацией кода времени выполнения: проверьте, включен ли USB, попробуйте запустить неавторизованный код (exe или пакетный файл) непосредственно с USB или с помощью функции автозапуска USB.
  8. Тест, связанный с защитой кода: проверьте, можно ли переместить файлы, связанные с приложением, в другое место, изменить или удалить.
  9. Проверки, связанные с модификацией процесса: переименовать неавторизованный файл в допустимый процесс решения безопасности. Это приведет к выполнению неавторизованного файла при запуске приложения.
  10. Угрозы, связанные с несанкционированным выполнением через реестр : проверьте, можно ли изменить какой-либо критический раздел реестра или запустить неавторизованное программное обеспечение, сохранив их в папке автозагрузки Windows. Исполняемые файлы из папки автозагрузки Windows будут выполняться первыми при перезагрузке системы.
    Рекомендации по обеспечению безопасности для банкоматов
    Банки могут применять передовые методы безопасности, чтобы уменьшить поверхность атаки для злоумышленника. Этот раздел можно разделить на три категории:

Защита от физических атак:
  • Обнаружение и защита от скимминга карт.
  • Обнаружение и защита от перехвата карт / наличных.
  • Обнаружение взлома клавиатуры.
  • Зеркало и булавочный щиток для выявления и предотвращения атак при серфинге через плечо.
  • Внедрение камеры DVSS, встроенной в банкомат, для захвата черт лица пользователя вместе с деталями транзакции и отметкой времени.
  • Защита хранилища от пожара, взрыва и т.д.
  • Блокировка защиты снова от несанкционированного доступа к банкнотам или купюрам.
  • Защита электрических точек и сетевых точек.
  • Отключение неиспользуемой сети и электрического порта.
  • Банкомат должен быть залит на полу для защиты от угроз, связанных с ограблением. Банкомат может быть оснащен датчиком удара для определения удара и движения банкомата.
  • Реализация камеры видеонаблюдения. Наличие охранника.

6. Защита от логических атак:
  • Защита от несанкционированной загрузки путем установки непонятного пароля загрузки и BIOS. В большинстве банкоматов настроен пароль загрузки по умолчанию.
  • Защита от USB и несанкционированного доступа к жесткому диску.
  • Усиление ОС и последний патч.
  • Внесение приложения, услуг и процессов в белый список банкоматов.
  • Запуск банкомата с пользователем с минимальными привилегиями. Нужно знать и иметь подход.
  • Проверки целостности файлов.
  • Обеспечение безопасности журналов транзакций.
  • Использование безопасного канала для связи и транзакций.
  • Настройте передовые методы безопасности в приложении банкомата.
  • Антивирусная защита.
  • Отделение сети банкоматов от других сетей.
  • Защита от вредоносных программ типа тюпкин, плутус и др.

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

Источник:
 
Top