Каковы некоторые рекомендации для обработки конфиденциальной информации? - PullRequest
4 голосов
/ 09 октября 2008

В настоящее время я создаю приложение для клиента, которое позволит им автоматически выставлять счета своим клиентам по кредитным картам.

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

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

Не то, чтобы это имело значение, но мы разрабатываем программное обеспечение, используя Microsoft SQL Server для базы данных и используя C # и ASP.NET.

Ответы [ 6 ]

5 голосов
/ 09 октября 2008

Прочитайте Требования PCI . Все будет там.

На самом деле, вы должны следовать за ними.

3 голосов
/ 09 октября 2008

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

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

Запрограммируйте защиту, чтобы избежать атак с использованием SQL-инъекций и подобных эксплойтов.

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

Попробуйте разделить различные части приложения ... то есть не используйте один и тот же просмотрщик или контроллер для «общего» и «частного» доступа.

Знайте и соблюдайте все местные законы, касающиеся обработки этих данных ... Их там много.

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

3 голосов
/ 09 октября 2008

1 - даже не собирайте SSN, если они вам действительно не нужны. И если вы не банк или правительство, скорее всего, нет.

2 - не собирайте другую конфиденциальную информацию, если вам действительно не нужно

3 - используйте все необходимые элементы управления (отдельный компьютер для базы данных, межсетевой экран, контроль доступа и т. Д.) Для вещей, которые вам действительно нужно хранить.

1 голос
/ 09 октября 2008

Для разных приложений требуется соответствие стандартам PCI. Если ваше приложение просто собирает номера CC и затем отправляет их в сторонний платежный шлюз, совместимый с PCI, ваши требования к соответствию не так уж плохи - при условии, что вы не сохраните номер карты или CVV.

С точки зрения регистрации, вы должны "убрать" номер кредитной карты, например, сохраните первые 6 цифр и последние 3 цифры, но затемните промежуточные цифры. Не регистрируйте CVV вообще.

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

1 голос
/ 09 октября 2008

Не - я имею в виду, вам действительно нужно?

Существует сильный рынок сторонних платежных услуг, которые могут получить данные для вас и просто отправить вам сообщение, когда оплата будет произведена. Существуют альтернативы, такие как PayPal, и вы можете защитить данные с помощью MD5 или SHA1, отбрасывая такие мелочи, как точная строка цифр.

0 голосов
/ 09 октября 2008

Будьте интимны с угрозами OWASP и точно знаете, как противостоять им в вашем приложении и инфраструктуре. Трудно поверить, сколько людей принимают глупые полу-решения для SQL-инъекций и атак на межсайтовый скриптинг.

...