Я собираюсь наследовать и работать на небольшом веб-сайте малого бизнеса, который очень плохо разработан. Среди прочего, наибольшую озабоченность вызывает текущая обработка кредитных карт.
В настоящее время владелец получает информацию о кредитной карте (имя, номер, CVV2 и дату истечения срока действия) из формы онлайн-заказа и сохраняет всю эту информацию в виде обычного текста в базе данных MySQL. Затем уведомление отправляется на его электронную почту, которую кто-то заказал. После этого у него есть административная серверная страница, на которой он просматривает заказы и информацию о кредитной карте, которую он использует для обработки в автономном режиме со своим собственным торговцем.
После извлечения информации с внутренней страницы номер кредитной карты и CVV2 немедленно удаляется (автоматически вызывается PHP script). Информация также удаляется, если эта страница не доступна в течение 7 дней. Таким образом, существует вероятность того, что вся информация будет находиться в базе данных в виде обычного текста за семь дней до обработки транзакций.
Это не похоже на хороший дизайн и может быть незаконным. Если это незаконно, мне придется сломать это ему, потому что он этого еще не осознает.
Мой вопрос: кроме того, что это небезопасно, является ли это незаконным или нарушением условий использования (PCI DSS)? И если да, то как я могу доказать это ему, чтобы он позволил мне изменить свои пути (очевидно, я не хочу вкладывать свои руки в нечто незаконное. Кроме того, иногда формулировка условий использования может кажутся субъективными)? Наконец, каковы наилучшие варианты устранения этой проблемы (сторонний интернет-продавец, становясь совместимым с PCI DSS или что-то еще)?