Троян в CS-Cart. Утечка счетов из 35'000 интернет-магазинов

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

TL;DR: Разрабы второго по популярности (по версии ratingruneta) интернет-магазина встроили в движок код, который делает копии всех счетов клиентов на сервер в Аризоне.

Кто пострадал

Интернет-магазины и их клиенты, работающие на CS-Cart всех версий.

Сама компания заявляет о 35'000 установок в 170 странах мира.

Какая информация содержится в утечке

  • ФИО покупателя интернет-магазина

  • Адрес покупателя

  • Телефон покупателя

  • email покупателя

  • Сумма заказа, заказанные товары и услуги

  • Почтовые треки

Подробности

С CMS можно познакомиться (и скачать демо) по двум адресам: https://www.cs-cart.ru/, https://www.cs-cart.com/.

Последняя версия на сегодня 4.12.2.SP2, написана на PHP, ставится как всё, заточенное под LAMP, но нам для наших целей это не обязательно делать.

Скачиваем, распоковываем и сразу идём смотреть ./app/Tygh/Pdf.php , где видим такой код для отрисовки счёта клиента в виде Pdf-файла:

<?php
...
protected static $url = 'http://converter.cart-services.com';
...
public static function render(...)
  {
  ...
  $response = Http::post(self::action('/pdf/render'), json_encode($params), array(
            'headers' => array(
                'Content-type: application/json',
                'Accept: application/pdf'
            ),
            'binary_transfer' => true,
            'write_to_file' => $file
        ));
...
protected static function action($action)
  {
    return self::$url . $action;
  }

где json_encode($params) содержит всю личную информацию, в т.ч. персональные данные покупателя, а Http::post(self::action('/pdf/render') после эвалюации превращается в Http::post("https://converter.cart-services.com/pdf/render") и все наши данные отправляются по ссылке выше, а уже в ответ из Аризоны (см. далее) приходит Pdf, который потом отправляется покупателю и/или используется для других целей системы.

converter.cart-services.com

Если погуглить этот адрес (converter.cart-services.com), то окажется, что первые обращения в форум поддержки датируются не позже 2018 года (вероятно, даже раньше, но администрация форума поддержки удаляет сообщения об этой проблеме), скорее всего с 2006 года, когда этот адрес был зарегестрирован.

Сам сервер, где собираются счета находится в Аризоне, США:

- Resolving "converter.cart-services.com"... 1 IP address found: 184.95.47.28

┌PTR cs-cart.com
             ├ASN 20454 (SSASN2, US)
             ├ORG Servstra
             ├NET 184.95.32.0/19 (SERVSTRA)
             ├ABU -
             ├ROA ✓ UNKNOWN (no ROAs found)
             ├TYP  Proxy host   Hosting/DC
             ├GEO Phoenix, Arizona (US)
             └REP ✓ GOOD

Выводы

Компания-разработчик установила закладку, которая все заказы всех своих 35к клиентов, включая информацию о ФИО, емейлах, телефонах, адресах покупателей сливает куда-то в Аризону на сервер, который зарегистрирован уже 15 лет.

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

Как это соотносится с законами о персональных данных (GDPR, № 152-ФЗ), думаю, объяснять не надо.

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

Источник: https://habr.com/ru/post/558852/


Интересные статьи

Интересные статьи

В обновлении «Сидней» Битрикс выпустил новый продукт в составе Битрикс24: магазины. Теперь в любом портале можно создать не только лендинг или многостраничный сайт, но даже интернет-магазин. С корзино...
У некоторых бизнес-тренеров в области е-коммерса и консультантов по увеличению интернет-продаж на многие вопросы часто можно слышать универсальную отмазку — «надо тестировать» или другую (чтобы не...
Когда мы перешли от разработки веб-сайтов, страницы которых формируются на сервере, к созданию одностраничных веб-приложений, которые рендерятся на клиенте, мы приняли определённые правила игры. ...
Привет, Хабр! Данная статья обязательна к прочтению всем, кто работает с Vue SSR, в частности с Nuxt. Речь пойдет об утечке памяти при использовании axios. Предыстория Пол года назад я попал ...
Реализация ORM в ядре D7 — очередная интересная, перспективная, но как обычно плохо документированная разработка от 1с-Битрикс :) Призвана она абстрагировать разработчика от механики работы с табл...