Что такое pos payment

Что такое POS-терминал. Объясняем простыми словами

POS-терминал (от англ. Point Of Sale — «точка продажи») — устройство для приёма платежей по банковским картам и устройствам с возможностью бесконтактной оплаты.

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

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

Современные модели POS-терминалов поддерживают работу с разными платёжными картами (чиповыми, с магнитной полосой, с бесконтактной технологией PayPass) и иными современными средствами оплаты с функцией NFC (смартфон, часы, кольцо, карта-стикер и пр.).

Помимо терминала, для проведения оплаты продавцу требуется передать данные об операции в ФНС, это действие называется фискализацией. Для этого терминалы интегрируются с кассовыми системами, которые и передают сведения по каждой операции налоговикам.

Пример употребления на «Секрете»

«Мне нравится американская компания Poynt, это платёжный терминал. Они стартовали месяц назад, теперь должны разместить 500 000 POS-терминалов в Америке. Если американский рынок их примет, то в этом будущее».

Нюансы

Как работает POS-терминал

Установка терминала осуществляется не всегда по желанию предпринимателей — есть категория хозяйствующих субъектов, которые российское законодательство обязало принимать карты, а значит, приобрести POS-терминал. К этой категории относится весь крупный бизнес с годовым оборотом валовой выручки от 20 млн рублей.

Виды POS-терминалов

Обычный терминал для эквайринга не заменяет онлайн-кассу: он не выдаёт фискальные чеки и не отправляет информацию в налоговую.

Источник

POS-терминалы

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

Определение

Понятие «POS-терминал» имеет три значения:

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

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

Устройство

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

Назначение и принцип работы

Современный POS-терминал предназначен для приема оплаты с использованием следующих платежных инструментов:

Важным достоинством терминалов для эквайринга выступает простой и понятный принцип работы. Он предусматривает такую последовательность действий продавца и покупателя:

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

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

Данные о карточке и величине покупки передаются в процессинговый центр банка, оказывающего услуги эквайринга.

Сведения о финансовой операции обрабатываются в центре обработки данных международной или национальной платежной системы (Visa и MasterCard или МИР). На этом этапе проверяется отсутствие карты в стоп-листе. При положительном результате данные о сделке направляются в банк, выпустивший пластик.

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

POS-терминал передает в процессинговый центр информацию об успешном завершении оплаты.

Функции POS-терминалов

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

POS-терминал как отдельное устройство выполняет следующие функции:

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

POS-терминал как комплекс программного обеспечения и технического оборудования способен производить такие действия:

Особенности POS-системы и отличия от POS-терминала

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

POS-система представляет собой полноценное рабочее место кассира. По сути, она является усовершенствованной версией обычного POS-терминала, основными отличиями которой выступают:

Источник

POS, безопасность и вот это вот все. Разбираем уязвимости популярной Retail-системы

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Всем привет. Сегодня хотелось бы с вами поговорить о Point of Sale (далее POS) системах, их архитектуре и безопасности. Вероятно, постпраздничный шок от длинных очередей в магазинах прошел, и самое время посмотреть, что же находится за этой завесой социальных коммуникаций. Исследование, описанное ниже, было проведено @chipik и мной.

Современные POS-системы представляют собой комбинацию программных и аппаратных решений, позволяющих проводить платежные операции и облегчающих ежедневные бизнес-процессы. Говоря о POS-ах, обычно имеют в виду кассовые аппараты, терминалы оплаты и другие привычные состовляющие торговых магазинов. Однако, архитектура POS не ограничивается только этими элементами. Что же касается безопасности, то, казалось бы, это тема не новая: начиная с 2012 года, почти на каждой конференции BlackHat USA был доклад о платежных системах (тут, тут, тут, тут). Но все эти доклады, будучи очень близки к обсуждаемой теме, все же немного о другом.

Чтобы стало понятнее, давайте рассмотрим процедуру оплаты в обычном магазине:

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Сначала покупатель проводит картой по считывателю терминала для оплаты своих покупок. Данные кредитной карты поступают в терминал, откуда отправляются в POS-систему. Далее, POS-система связывается с PSP (Payment Service Provider), который, в зависимости от типа кредитной карты, обращается в банк для прохождения процедуры авторизации транзакции. Как раз в этот момент покупателю предлагается ввести PIN-код для подтверждения транзакции. Если все прошло успешно, код авторизации возвращется из банковской сети в PSP и передается в POS-систему и терминал. Все вышеописанные коммуникации происходят в течении пары секунд.

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

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

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos paymentЧто такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

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

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

В конце дня менеджеру необходимо повторить процедуру в обратном порядке: сначала закрыть кассы, а после – магазин. После этого действия ни одна транзакция не может быть проведена до открытия магазина. Во время закрытия POS-терминалы отправляют свои логи на сервер. Это и есть те бизнес-процессы, о которых упоминалось выше. Именно их POS-системы позволяют упростить и облегчить.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

На рынке POS-систем решений довольно много, и подразделяются они на группы продуктов для малых, средних и крупных организаций.

По большей части, они имеют схожую архитектуру. В этой статье мы подробно рассмотрим решение компании SAP: «SAP Point of Sale». Мы также исследовали продукт компании Oracle – MICROS, в котором нашли похожие уязвимости, закрытые в январе 2018 года (CVE-2018-2636).

О компании SAP можно узнать подробнее на официальном сайте. В двух словах: SAP разрабатывает большие ERP-решения для крупных компаний. POS-системы как продукт появились у SAP в 2005 году, когда она поглотила другую фирму – Triversity Transactionware GM, занимающуюся исключительно POS-решениями.

Архитектура SAP POS

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Архитектура этой системы состоит из трех частей: Front Office, Back Office и Head office. К первой относят клиентскую часть, т.е. POS client и Mobile POS Client, являющиеся POS-терминалами, за которыми работают кассиры. Front Office соединен с Back Office, где находятся непосредственно локальный сервер магазина (Xpress Server), база данных (Database) и решение для локального управления POS-системой (Store manager), используя которую, менеджер открывает и закрывает магазин и терминалы.

Говоря о локальном решении, мы имеем в виду конкретный магазин, поскольку SAP POS – это продукт для крупных организаций, и архитектурно он задумывался для сети магазинов с центральным управлением. Иными словами, в этом случае, локальное решение – это POS-система одного из магазинов сети.
Глобальное управление сетью магазина осуществляется из головного офиса, с использованием Store Configurator, который соединен со всеми серверами магазинов.

Общий обзор сделан, теперь давайте рассмотрим, как все это устроено поподробнее. А двигаться будем в следующем порядке:

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Head office

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Store Configurator представляет собой приложение, которое позволяет настраивать в POS-системах абсолютно все. Нет, не так, АБСОЛЮТНО все, начиная с пользователей и внешнего вида экрана кассира и заканчивая шифрованием и иными настройками безопасности.

Как же все это реализовано? После внесения изменений в Store Configurator администратору необходимо нажать «convert», и на файловой системе в папке «Store Configurator/data/parm/» будут созданы специальные файлы с этими параметрами.

Содержимое файлов – это текстовое представление параметров, указанных в Store Configurator. На изображении ниже – файл rcptlogo.rcp.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Далее, администратору необходимо скопировать эти файлы в папку «/Xpress Server/parm/» каждого сервера магазина. Среди файлов, созданных Store Configurator, есть один «особый». Он называется «newparm.trg», и содержит в себе один лишь символ «Z». Xpress Server (сервер магазина), каждые 30 секунд проверяет папку «/parm/» на наличие этого файла. Если находит его, применяет обновленные параметры из загруженных файлов и удаляет «newparm.trg». Таким образом, этот файл выступает в роли своеобразного триггера обновлений.

Back office

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Следующий на очереди — Back Office, а точнее – коммуникации внутри него. Он состоит, как уже было сказано ранее, из Xpress Server, Database и Store Manager. Все эти компоненты могут быть установлены как на одной машине, так и на разных. Store Manager взаимодействует с базой по стандартным портам и в данном случае очень напоминает Store Configurator с ограниченным функционалом и той лишь разницей, что записывает изменения параметров в базу данных напрямую, используя stored-процедуры.

В рамках исследования системы были найдены две забавные процедуры: ssp_insert_backdoor и ssp_delete_backdoor. Основная их цель – создать пользователя с именем «back» и паролем «door» и повышенными привилегиями. Конечно же, сделано это лишь на тот случай, когда все пользователи в POS-системе забудут свои данные авторизации.
Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Взаимодействие Store Manager и Xpress Server осуществляется по порту 2202, и выглядит более интересным. Изучая функционал Store Manager, мы обнаружили раздел Store Administration, который предоставляет любопытные возможности:

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Посмотрев пакеты, которые Store Manager отправляет на порт 2202 Xpress Server-а (куда же без WireShark), мы увидели plaint-text команды. «It`s telnet protocol and the port is used for monitoring and not critical configuration,» – узнали мы из документации. Окей, а что если мы попробуем подключиться к этому порту с посторонней машины?

Как оказалось, никакого white list не предусмотрено. По умолчанию, этот порт открыт, и нет никаких рекомендаций по его закрытию в Security Guide. Естественно, ограничить доступ к портам можно сторонними средствами, но мы же смотрим на безопасность POS-системы, верно?

После подключения к Xpress Server на порт 2202 нас встречает приветственное сообщение с версией POS системы. Команда «help» возвращает список доступных функций:

Из названий этих функций вполне понятно их назначение. Отсутствие какой-либо проверки позволяет анонимно открывать и закрывать POS-терминалы, мониторить все, что происходит на них (например, при покупке в консоль выводится содержимое чека) или просто выключить Xpress Server.

Стало очень интересно, как реализованы эти функции в коде, и все ли команды отображены в выводе «help». Процесс, обрабатывающий приходящие запросы, – xps.exe. Немного реверса, и был найден перечень возможных команд. Их оказалось чуть больше 17… их 74. 74 команды принимает и обрабатывает Xpress Server с порта 2202. Описывать все было бы слишком долго, остановимся на самых интересных.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

APM-VALIDATE-PASSWD – позволяет проверить данные авторизации, введенные пользователем. Эта команда возвращает три различных кода: 0 – если логин и пароль введен правильно, 1 — если неправильный пароль, 10 — если пользователя с таким логином не существует. Очевидно, ничто не мешает потенциальному нарушителю, находясь в локальной сети магазина, перебрать все возможные комбинации логинов и паролей (логин может состоять только из цифр) и получить данные для доступа к POS-терминалам.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Но brute-force — это же не очень круто, поэтому существует иная команда, Reset password, которая изменяет пароль пользователя на новый. Все, что нужно знать, – это логин, который может быть получен перебором. И еще одно маленькое уточнение. В этой POS-системе логин может состоять только из цифр, что значительно облегчает гипотетический перебор.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Команды FILE-FIND, FILE-OPEN и FILE-READ позволяют найти, открыть и прочитать данные на файловой системе Xpress Server. Вы же еще помните, что все это происходит без регистрации и смс, анонимно? Любопытно, что параметры команды FILE-OPEN передаются напрямую в C++ функцию fopen(), и если неправильно указать режим, то приложение Xpress Server получает ошибку и завершает свою работу.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Перейдем к последней части обзора.

Front office

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

POS-client, он же POS-терминал, подключается к серверу по порту 2200. Вся информация, все транзакции и вообще все коммуникации происходят именно по этому порту и только в таком направлении: инициатором является клиент, а сервер просто принимает и отвечает на запросы. Если вспомнить бизнес-процессы, то все происходит следующим образом. В начале дня, когда менеджер открывает POS-терминал, он отправляет пакет на сервер: «Сервер, я терминал номер 5, я открыт, пришли мне новые параметры и давай синхронизируем дату и время». В конце дня, когда менеджер закрывает POS-терминал, он отправляет на сервер свои логи. Ну и, конечно же, после каждой транзакции данные о ней и об изменении количества товаров также отправляются на сервер. Посмотрев трафик между POS-терминалом и Xpress Server, мы обнаружили, что пакеты на получение и загрузку файлов имеют определенную структуру:

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Len – длина отправляемого пакета. Where – место, куда записываем данные. What – место, откуда берем данные. End – пара NULL-байт. Type – тип пакета, в зависимости от которого с пакетом будут выполнены те или иные действия. Пакеты могут быть:

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Так, например, для того, чтобы получить файл с настройками у сервера, POS-client отправляет пакет типа R на порт 2200:

В ответе POS-client получает содержимое запрашиваемого файла и записывает его себе в специальную директорию. При попытке продублировать отправляемый POS-client-ом пакет с другой машины в ответе было также получено содержимое файла на сервере. Как мы видим, здесь также нет никаких проверок: порт 2200 Xpress Server принимает и обрабатывает пакеты от любой машины.

Это показалось забавным, но на чтении файлов далеко не уедешь. Давайте попробуем собрать набор пакетов для загрузки своего файла на сервер. Ведь POS-client как-то же записывает логи на сервер, правильно?

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Во-первых, отправляем пакет типа S. Поле Where содержит путь на сервере, куда мы будем записывать данные, поле What необязательно, поскольку мы все делаем вручную, но очень важен размер Size, в котором мы указываем размер следующего, второго, пакета. Он будет типа F — FILE_DATA и будет состоять из своего размера и данных (содержимое), которые мы хотим записать на сервер. Ну и третий, последний пакет типа С — конец файла. После этого, Xpress Server записывает файл в указанную директорию и возвращает пакет типа G — GOOD. Любопытно, что если отправить пакет с неправильным полем Size, Xpress Server удалит файл на сервере. Ниже вы можете увидеть видео-POC анонимной записи, чтения и удаления файла:

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

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

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

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Давайте суммируем наши знания о системе:

Комбинация этих особенностей позволяет изменить любой параметр в SAP POS-системе.
Допустим, атакующий хочет приобрести какой-то товар, скажем, за доллар.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Вот, собственно, и все. Но чего-то все же не хватает, а именно — возможности удаленного выполнения команд на сервере. А она, в общем-то, есть.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Каждый раз, когда Xpress Server обновляет параметры, т.е. находит триггер-файл «newparm.trg», он ищет и запускает два «.bat» файла: «XPSPARM.BAT» и «StopTN.BAT». А это означает только одно – атакующий может их перезаписать и выполнить скрипт с reverse-shell на себя.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Это будет выглядеть примерно так: атакующий заменяет файл «XPSPARM.BAT» на свой, используя порт 2200; записывает файл «newparm.trg», тем самым вызывая обновление параметров и запуск «*.bat» файла.

Шифрование

Да, в SAP POS применяется шифрование, но по умолчанию, «из коробки», оно отключено. Если шифрование настроено, то все важные данные передаются в виде шифротекста. Стоит уточнить, что шифруются именно данные, а не коммуникации между элементами системы. Например, если мониторить транзакции на терминале с включенным шифрованием, то мы получим в ответе шифротекст только вместо номера кредитной карты, остальные же данные будут переданы в открытом виде.

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

В этой таблице приведены имена таблиц и поля, которые должны пройти процедуру шифрования. В то же время, есть дополнительная таблица «CryptoRegister», где перечислено то же самое, но с указанием «уровня» шифрования. Так, например, пароли пользователей хранятся в виде хэш-значения и имеют уровень шифрования 4, а номера кредитных карт шифруются 3DES и имеют уровень 3.

SAP POS использует для хранения и генерации ключей инструмент «TWSecurity». При его запуске создается специальный «контейнер», и доступ в него возможен только по паролю, в котором хранится ключ шифрования. Поскольку 3DES – это симметричный алгоритм, ключ должен быть одинаковым на всех элементах системы: Front Office, Back office и Head office. Т.е. после создания контейнера его необходимо экспортировать на все части POS-системы. Доступ к ключу осуществляется только по токену, который прописан в реестре. И все было бы круто, но есть одно «НО».

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

Ключ (вернее его токен), который используется для шифрования данных, задается в Store Configurator… а это значит, что он конвертируется, как и другие параметры, в специальный файл, и может быть изменен атакующим на пустое значение для отключения шифрования в SAP POS.

«Мы патчили, патчили и наконец-то запатчили!»… или что делать в сложившейся ситуации

Что такое pos payment. Смотреть фото Что такое pos payment. Смотреть картинку Что такое pos payment. Картинка про Что такое pos payment. Фото Что такое pos payment

На данный момент, описаные в этой статье уязвимости закрыты. Да, не с первого раза, получилось почти со второго. Так, первая SAP Note 2476601 вышла 11 июля 2017 года, имела CVSS 8.1 и носила название «Missing Authentication checks in SAP Point of Sale (POS) Retail Xpress Server». В ней был запатчен доступ к порту 2202 (telnet). Это было сделано добавлением нового параметра «BACKOFFICEIPADDRESS», который по умолчанию имеет значение «localhost». Но, в то же время, не было ни одного упоминания о второй уязвимости на порту 2200, которая прекрасно работала и позволяла злоумышленникам удаленно исполнять команды, давая возможность «обойти» свежий июльский патч, просто изменив этот параметр. Наша команда сообщила об этом недочете SAP Product Security Response Team, которая выпустила целых две SAP Note – 2520064 и 2520232, 18 августа 2017 года. SAP Note 2520232 удаляет две stored procedure: «ssp_insert_backdoor» и «ssp_delete_backdoor». SAP Note 2520064 принес больше изменений. Этот патч добавил 3DES шифрование почти ко всем пакетам, которыми обмениваются различные элементы SAP POS: POS-client, Xpress Server, Store Configurator, Store Manager. Т.е. сейчас, даже имея возможность подключения к открытым портам, не зная ключа, у нас нет возможности повлиять на POS-систему: сервер не понимает приходящие к нему незашифрованные пакеты и просто отбрасывает их.
Это действительно интересное решение, но и здесь не обошлось без казусов. Почти сразу после выхода SAP Note на форумах стало появлятся множество сообщений о том, что не работает Store Manager. Дело в том, что SAP забыл о Store Manager, вернее о том, что этот компонент взаимодействует не только с Xpress Server, но и с базой данных. Когда Store Manager отправляет зашифрованный пакет в Базу данных, она возвращает ошибку в открытом тексте, которую Store Manager не может расшифровать и просто crash-ится. В связи с этим, вышел финальный патч, который исправляет ошибку предыдущего патча. Тем не менее, лучшим решением для защиты от возможных атак на вашу инфрастурктуру являются пусть и не всегда удачные, но регулярные обновления.

True story

А вот и любопытные вести с запада: Forever 21, Калифорнийская компания, «US fashion retailer», которая занимается продажей одежды по всему миру с 1984 (815 магазинов, 57 стран, США, Австралия, Бразилия, Китай, Франция и т.д.), 28 декабря 2017 года подтвердила информацию о том, что часть ее POS-систем была скопроментирована в период с 3 апреля по 18 ноября (. ). Эксперты утверждают, что злоумышленники имели анонимный доступ в сеть POS-систем и использовали его для установки вредоносных программ с целью сбора информации о кредитных картах покупателей (номер карты, срок ее действия, владелец, код проверки подлинности). Забавно, что шифрование критических данных в этих системах было отключено (да-да, не работало) аккурат в период с 3 апреля по 18 ноября. Видимо, шифрование не является большой проблемой не только в SAP-системах. К сожалению, точной информации о том, какие именно POS-системы были скопрометированы, найти не удалось. Если верить новостям, то 28 июня 2017 года Forever 21 подписала контракт с Toshiba Global Commerce Solutions о поставке своих систем, но к этому моменты текущие системы уже были скомпроментированы.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *