Подтвердить что ты не робот

Хранение кредитной карты в Интернете?

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

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

После извлечения информации с внутренней страницы номер кредитной карты и CVV2 немедленно удаляется (автоматически вызывается PHP script). Информация также удаляется, если эта страница не доступна в течение 7 дней. Таким образом, существует вероятность того, что вся информация будет находиться в базе данных в виде обычного текста за семь дней до обработки транзакций.

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

Мой вопрос: кроме того, что это небезопасно, является ли это незаконным или нарушением условий использования (PCI DSS)? И если да, то как я могу доказать это ему, чтобы он позволил мне изменить свои пути (очевидно, я не хочу вкладывать свои руки в нечто незаконное. Кроме того, иногда формулировка условий использования может кажутся субъективными)? Наконец, каковы наилучшие варианты устранения этой проблемы (сторонний интернет-продавец, становясь совместимым с PCI DSS или что-то еще)?

4b9b3361

Ответ 1

Это нарушение PCI DSS. Вы не только сохраняете информацию, которую вы не должны хранить (CVV), но вы не шифруете номер кредитной карты (также нарушение).

Хуже того, он нарушает правила Visa и MasterCard, в которых говорится, что все онлайн-транзакции должны обрабатываться с использованием устройства или программного обеспечения, совместимого с ECI, и интернет-заказы должны иметь отдельную учетную запись продавца. Их терминал для кредитных карт определенно не соответствует требованиям ECI, так как ни один из них не является. Им нужно получить новую учетную запись продавца и использовать платежный шлюз, например Authorize.Net, для обработки этих заказов.

Edit

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

Я настоятельно рекомендую получить учетную запись интернет-продавца и использовать платежный шлюз, например Authorize.Net. Помимо того, что PCI и ECI совместимы и просто умный способ, потенциал для бизнеса не только потерять свою учетную запись продавца, но и быть включенным в черный список и запрещен, чтобы когда-либо иметь реальный торговый счет снова, очень высок. Все, что требуется, - это один платеж для своего торгового провайдера, чтобы понять, что они делают, и начать работу.

Ответ 2

Это серьезное нарушение правил PCI. Вы можете получить документы здесь: https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml  Было бы разумно пойти на третью сторону, такую ​​как Google Checkout или что-то подобное. Становление совместимости с PCI является большой головной болью и включает в себя ежегодные обзоры (может быть оценена самостоятельно), которые могут включать в себя тестирование на проникновение и т.д. Если вы действительно изучили его, ему, вероятно, вообще не нужно иметь доступ к информации о кредитной карте, ID транзакции. Вам не только нужно шифровать данные, у вас должна быть сложная схема защиты ключей шифрования. Это намного больше, чем то, что хочет получить маленький бизнес. Некоторые из приведенных выше советов звучат хорошо, но это не соответствует спецификации PCI. Прочтите документы, и вы быстро увидите, что это большое дело. В настоящее время я поддерживаю встроенную PCI-совместимую систему и должен был потратить значительные усилия, чтобы довести ее до стандартов. Нам также пришлось внести ряд изменений в сеть. Это будет дешевле для бизнеса конвертировать в третью сторону.

Ответ 3

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

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

Ответ 4

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

Шлюз оплаты кредитной карты предоставляется такими компаниями, как Authorize.net, LinkPoint Central - даже PayPal попадает в игру. Все основные шлюзы имеют существующий код для интеграции корзины покупок с большинством популярных платформ веб-программирования (.NET, PHP, Java и т.д.). Кроме того, большинство крупных торговых тележек поддерживают основные шлюзы из коробки или, по крайней мере, имеют устанавливаемые модули для большинства шлюзов.

Итак, ваш клиент должен установить настройку интернет-платежного шлюза, и вы должны интегрировать свой существующий код со шлюзом.

Ответ 5

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

Как минимум, рассмотрим следующие шаги:

  • Убедитесь, что онлайн-форма заказа использует HTTPS для сбора данных.
  • Если БД и веб-сервер являются разными блоками, обеспечьте безопасный путь между ними.
  • Шифровать данные оплаты в БД. Справочник по MySQL.
  • Обеспечьте надежное управление доступом к внутренней веб-странице (это физически доступно для внешнего мира? Требуется ли вам надежный пароль? Это HTTPS?)
  • Убедитесь, что нет журналов (например, журнала отладки), которые в конечном итоге записывают информацию о платежах в файловую систему.

Ответ 6

Это, безусловно, нарушение правил PCI. Тем не менее, не обязательно добавлять шифрование к сохраненным данным, особенно если это редкость человеку придется посмотреть на него.

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