БесплатноБесплатный аудит сайта и кода на 1С-Битрикс при заказе доработки или поддержки

Безопасное хранение и обработка данных карт

Безопасная обработка платежей и данных карт в интернет-магазине на 1С-Битрикс: PCI DSS, платёжный шлюз, WAF

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

Эта статья — о том, как правильно обрабатывать платежи в магазине на 1С-Битрикс: почему данные карт не должны попадать на ваш сервер, как работает платёжный шлюз, что такое PCI DSS и токенизация, и как защитить тот периметр, что остаётся под вашей ответственностью. Практическую настройку безопасности и разбор рисков мы закрываем услугой поддержки и аудита.

Коротко

  • Данные карт не хранят на своём сервере — их вводят на стороне платёжного шлюза, а магазин получает только статус оплаты.
  • Такая модель переводит вас в самый лёгкий уровень PCI DSS (SAQ A) и снимает основную ответственность.
  • Для подписок и повторных платежей используют токенизацию у провайдера, а не хранение номеров.
  • Периметр всё равно защищают: HTTPS, проактивная защита и WAF Битрикс, разграничение прав, обновления и бэкапы.

Главное правило: не хранить данные карт

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

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

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

Что такое PCI DSS и уровни соответствия

PCI DSS (Payment Card Industry Data Security Standard) — международный стандарт безопасности данных платёжных карт. Он обязателен для всех, кто эти данные обрабатывает, передаёт или хранит. Объём требований к конкретному магазину зависит от того, как именно он работает с картой.

Модель приёма оплатыФорма самооценкиНагрузка на магазин
Ввод карты на стороне провайдера (редирект/iframe банка)SAQ AМинимальная
Встроенная форма провайдера на странице сайтаSAQ A-EPСредняя
Сайт сам принимает и передаёт данные картыSAQ DМаксимальная, дорого
Хранение данных карт в своей базеSAQ D + аудитКрайне высокая, не рекомендуется

Вывод прямой: чем дальше данные карты от вашего сервера, тем проще соответствие. Модель с вводом карты на стороне банка (SAQ A) — самая безопасная и дешёвая. Именно к ней стоит стремиться при проектировании платёжного узла магазина.

Эшелоны защиты магазина на 1С-Битрикс WAF и фильтрацияотсекает вредные запросыАутентификация и 2FAкто получает доступВалидация вводазащита от инъекцийШифрование данныхTLS и хранениеЛоги и мониторингвидим атаки вовремя
Схема: безопасность строится слоями — от WAF на входе до мониторинга внутри. Пробить один слой мало: за ним стоит следующий.

Как устроен безопасный платёж через шлюз

В 1С-Битрикс приём оплаты картой реализуется через платёжные системы модуля «Интернет-магазин» и обработчики платёжных провайдеров. Логика безопасного платежа выглядит так:

  1. Формирование заказа. Покупатель оформляет заказ, магазин фиксирует сумму, состав и создаёт запись о платеже.
  2. Передача шлюзу. Сайт передаёт провайдеру сумму и идентификатор заказа — но не данные карты, которых у него и нет.
  3. Ввод карты у провайдера. Покупатель попадает на защищённую страницу банка (редирект) или во встроенную форму провайдера и вводит карту там.
  4. Возврат статуса. Провайдер сообщает магазину результат — оплачено или нет — и идентификатор транзакции.
  5. Обновление заказа. Магазин переводит заказ в статус «оплачен» и запускает дальнейшую логику: уведомления, обмен с 1С, отгрузку.

Ключевая идея: карта физически проходит мимо вашего сервера. Магазин оперирует статусами и идентификаторами, а не PAN и CVV. Именно поэтому корректная настройка обработчика платежей — это не только про удобство, но и про безопасность и юридическую защиту бизнеса.

Токенизация для повторных платежей

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

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

Что магазин всё-таки хранит и как это защищать

Отказавшись от данных карт, вы всё равно храните персональные данные покупателей, и они тоже требуют защиты — уже по 152-ФЗ, а не по PCI DSS. К ним относятся имя, телефон, email, адрес доставки и история заказов.

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

Проактивная защита и WAF в 1С-Битрикс

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

Эти инструменты идут «из коробки», но требуют осознанной настройки под проект. Их включение и калибровка — обязательная часть подготовки магазина к боевой эксплуатации, а не опция «когда-нибудь потом».

HTTPS, доступы и разграничение прав

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

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

Обновления, журналирование и мониторинг

Безопасность — это процесс, а не однократная настройка. Три вещи, которые нужно поддерживать постоянно:

Крепкое, регулярно обновляемое окружение — фундамент всей защиты. Как его выстроить, мы разбирали в статье про хостинг и инфраструктуру BitrixVM, а безопасную выкладку обновлений без простоя — в материале про CI/CD и деплой Битрикс.

Юридическая сторона и ответственность

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

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

Частые ошибки

Чек-лист безопасности платежей

  1. Карта не касается сервера. Ввод данных карты — только на стороне платёжного провайдера, магазин получает статус и идентификатор.
  2. Уровень PCI DSS определён. Целитесь в SAQ A, форма оплаты вынесена за периметр сайта.
  3. Повторные платежи — по токену. Подписки и рекуррентные списания через токенизацию, без хранения номеров.
  4. Персональные данные защищены. Минимизация, HTTPS, разграничение прав, резервные копии.
  5. Проактивная защита включена. WAF, журнал вторжений, контроль целостности настроены под проект.
  6. Доступы под контролем. Персональные учётки, сильные пароли, двухфакторность для админов.
  7. Обновления и мониторинг. Ядро, модули и окружение обновляются, логи и оповещения работают.
  8. Юридическая база готова. Политика конфиденциальности, согласия, корректная обработка ПДн.

Вывод

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

Всё, что остаётся под вашей ответственностью, — персональные данные покупателей и периметр сайта — защищается штатными средствами 1С-Битрикс: проактивной защитой и WAF, HTTPS, разграничением прав, обновлениями и мониторингом. Выстройте эти уровни один раз правильно — и приём оплаты станет не зоной риска, а надёжной частью вашего бизнеса.

Частые вопросы

Можно ли хранить данные банковских карт в базе своего магазина на 1С-Битрикс?

Практически всегда — нет, и почти никогда это не нужно. Хранение номеров карт, сроков и CVV требует полного соответствия стандарту PCI DSS высокого уровня, а это дорого, сложно и берёт на себя огромную ответственность. Правильная модель — не касаться данных карты вообще: их вводят на стороне платёжного шлюза, а магазин получает только результат оплаты и идентификатор транзакции.

Что такое PCI DSS и обязателен ли он для интернет-магазина?

PCI DSS — международный стандарт безопасности данных платёжных карт, обязательный для всех, кто их обрабатывает, передаёт или хранит. Уровень требований зависит от того, как именно магазин работает с картой. Если данные карты вводятся на стороне банка или платёжного провайдера, а сайт их не видит, для магазина применяется упрощённая форма самооценки (SAQ A) — это самый безопасный и дешёвый путь.

Как правильно принимать оплату картой, не храня её данные?

Через платёжный шлюз с редиректом или встроенной формой самого банка. Покупатель нажимает «Оплатить», сайт формирует заказ и передаёт его сумму и идентификатор шлюзу, а ввод номера карты и подтверждение проходят на защищённой странице провайдера. Магазин на 1С-Битрикс получает обратно только статус платежа. Так карта физически не попадает на ваш сервер.

Зачем нужен модуль проактивной защиты и WAF в Битрикс?

Проактивная защита и веб-экран приложения (WAF) в 1С-Битрикс фильтруют вредоносные запросы, защищают от SQL-инъекций, XSS и других атак, ведут журнал вторжений и ограничивают активность подозрительных сессий. Даже когда данные карт не хранятся, магазин обрабатывает персональные данные покупателей и деньги, поэтому периметр всё равно нужно защищать.

Что делать с сохранёнными картами для повторных платежей и подписок?

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

Какие персональные данные покупателей всё-таки хранит магазин и как их защищать?

Магазин хранит имя, телефон, email, адрес доставки, историю заказов — это персональные данные по 152-ФЗ. Их защищают ограничением доступа по ролям, шифрованием канала (HTTPS), регулярными обновлениями, резервным копированием и разграничением прав в админке. Данные карт в этот список не входят и храниться не должны.

Кто отвечает за утечку данных карт — магазин или платёжный провайдер?

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

Нужно ли самим шифровать номера карт, если очень нужно их хранить?

Самостоятельное шифрование не делает хранение карт законным и безопасным — требования PCI DSS этим не закрываются. Если бизнес-сценарий действительно требует повторных списаний, единственно верное решение — токенизация у сертифицированного провайдера. Хранить зашифрованные PAN и тем более CVV на своём сервере нельзя ни при каких условиях.

Поделиться:

Хотите принимать оплату безопасно и без лишних рисков?

Проверим платёжный узел и настройки защиты магазина на 1С-Битрикс, приведём обработку данных к безопасной модели и закроем уязвимости.

Поддержка и аудит

Игорь Воскресенский

Команда B2Bsite. С 2014 года разрабатываем и сопровождаем интернет-магазины на 1С-Битрикс: настраиваем платёжные узлы, проактивную защиту и обработку персональных данных без лишних рисков.

← Все статьи блога