Speichern von Kreditkartendaten

60

Ich muss Kreditkartennummern für wiederkehrende Abrechnungen über unseren Drittanbieter speichern.

Gibt es irgendwelche Standards, die ich bezüglich der Speicherung der Daten einhalten muss? Wir akzeptieren seit Jahren Kreditkarten, haben deren Daten jedoch verworfen, sobald wir damit fertig waren. Unsere Kunden haben uns gebeten, ihre Daten zu speichern, damit sie ihre Abonnementgebühr nicht jeden Monat manuell bezahlen müssen.

Der Wechsel zu PayPal zur Nutzung der Abonnements ist keine Option. Wir müssen sie aufbewahren, und ich muss sicherstellen, dass die Aufbewahrung sicher ist!

Wir verwenden MSSQL 2005 für unsere Daten und alles ist bereits SSL-geschützt.

Mark Henderson
quelle

Antworten:

86

Sie müssen den PCI-DSS- Standard befolgen und diesen vorzugsweise übertreffen . Dies ist in keiner Weise leicht zu bewerkstelligen und sollte auch nicht trivial erfolgen.

Ich empfehle dringend , dass Sie einen Drittanbieter suchen, der dies für Sie erledigt und in Ihr Abrechnungssystem integriert. Es geht weit darüber hinaus, nur SSL zu haben und die Informationen in der Datenbank zu verschlüsseln. Sie müssen auch den Zugriff überwachen, Einbrüche erkennen, über Systeme verfügen, die im Falle eines Verstoßes nur betroffene Personen benachrichtigen können (und ermitteln, welche Daten möglicherweise kompromittiert wurden) usw.

Dann besteht physischer Zugriff auf die Server, das Netzwerk usw. Dies bedeutet, dass ein gesperrter Schrank nicht auf Servern gemeinsam genutzt wird, deren Eigentümer das physische LAN ist. Compliance wird nicht billig oder einfach sein.

Tatsächlich, geben Sie jede Anstrengung auf, um dies an Dritte weiterzugeben. Die Haftung allein ist das Risiko einfach nicht wert, es sei denn, Sie sprechen monatlich von Transaktionen, die sich auf Hunderttausende belaufen (fügen Sie hier Ihre Währung ein). In diesem Fall könnten die von Ihnen gesparten Gebühren es rechtfertigen, das für die Implementierung und Überwachung von Systemen, in denen die Informationen gespeichert sind, erforderliche Personal einzustellen. Du brauchst:

  • Systemprogrammierer (Sie benötigen Prüf-Hooks auf Kernel- und Dateisystemebene)
  • IDS / IPS-Gurus (es sei denn, Sie lieben die Lieferantenbindung)
  • Das Personal ist rund um die Uhr für Sie da, um die Warnungen zu überwachen, die von den von den Experten entwickelten Systemen generiert wurden. Diese Leute sind nicht billig, sie treffen die Entscheidung, den Rechnungsstecker zu ziehen oder einen Fehler in den von Ihnen verwendeten Algorithmen zu melden.

Und andererseits könnten Sie all das recht billig an einen Dritten auslagern.

Tim Post
quelle
Hmm, wir sind schon auf halbem Weg, weil wir uns im Namen unserer Kunden mit vertraulichen Informationen befassen (gesperrte Server und Intrusion Detection und IPSec in der DMZ sind bereits vorhanden). Ich werde eine gute Lektüre haben, danke.
Mark Henderson
@Farseeker - Abgesehen von der Verhinderung des illegalen Zugriffs ist es das Wichtigste, diesen zu erkennen und herauszufinden, was möglicherweise kompromittiert wurde und wer sehr schnell benachrichtigt werden muss. Beachten Sie, dass dies auch das unbefugte Kopieren der Dateien einschließt, die die Datenbank sichern.
Tim Post
5
Die Tatsache, dass Sie jetzt Kreditkartendaten verarbeiten, auch wenn Sie diese nicht dauerhaft speichern, bedeutet, dass Sie PCI DSS einhalten müssen.
Stephen Jennings
@Stephen - Handhabung und Lagerung sind bei PCI völlig getrennte Dinge. Um damit umzugehen, müssen nur einige Daten an ein Gateway gesendet und auf eine Antwort gewartet werden. Das Speichern ist eine einzigartige Dose Würmer.
Tim Post
PCI DSS-Anforderung 3.2 gibt an, dass der Track- und Verifizierungscode nach der Autorisierung nicht gespeichert werden kann, selbst wenn er verschlüsselt ist. Dies umfasst ALLE Protokolle, einschließlich Transaktionsprotokolle für die Datenbank.
Leigh Riffel
23

Es ist niemals eine gute Idee, Kreditkartendaten jemals zu speichern . Sie bereiten sich nur auf einen Sturz vor. Mit jedem anständigen Zahlungs-Gateway können Sie wiederkehrende Transaktionen mit einem Token ausführen, bei dem Sie die Kreditkartendaten nicht speichern müssen.

Schneebesen
quelle
3
+1 für die Idee, niemals CCs in Ihrer Datenbank zu speichern. Unser Payment Gateway-Anbieter speichert jetzt alle diese Informationen, was eine enorme Erleichterung für unser Sicherheitsrisiko darstellt.
Milner
Ein Beispiel ist ein solches Angebot Authorize.net Customer Information Manager (CIM) authorize.net/solutions/merchantsolutions/merchantservices/cim und da wiederkehrende Abrechnung wurde erwähnt automatisierte Recurring Billing (ARB) authorize.net/solutions/merchantsolutions/merchantservices/ … Sie können sie aufbewahren, aber sie werden niemals sicher sein. Am Ende zahlen Sie, was die Services Sie durch Reputationsverlust, Umsatzverluste, Bußgelder von Ihrem Prozessor und eventuelle Rechtsstreitigkeiten aufgrund von Datenkompromittierungen gekostet haben.
Fiasko Labs
13

Viele Antworten, die Sie suchen, finden Sie auf der Website des Payment Card Industry Compliance Guide . Ihre Links- Seite ist besonders nützlich.

Der beste Vorschlag wäre, diesen Speicher von einem Dritten verwalten zu lassen.

Bryson
quelle
Ich habe dieses PCI-Ding schon seit ein paar Jahren gesehen und hatte nie eine Ahnung, was es eigentlich war. Vielen Dank.
Mark Henderson
8

Beinhaltet Ihr Drittanbieter nicht die Option für kontinuierliche Kreditkartenzahlungen - die meisten der wichtigsten hier in Großbritannien (DataCash, RBS World Pay usw.).

Grundsätzlich senden Sie die Kartendaten einmal mit der Aufforderung an eine CCC-Behörde (die, wenn ich mich recht erinnere, den erwarteten Zeitplan und den regulären Betrag angeben muss) an diese Personen und erhalten dann von ihnen einen Token zurück. Wenden Sie sich dann jeden Monat an den Händler mit dem Token, und er verarbeitet die nachfolgenden Transaktionen für Sie. In der Regel können Sie diese auch für variable Ad-hoc-Anforderungen einrichten. Die wichtigste Anforderung an Sie ist, den Kunden (in der Regel mindestens 10 Tage) vor der Zahlung zu benachrichtigen.

Auf diese Weise werden die CC-Details nirgendwo gespeichert. Dies alles wird von Personen erledigt, die die Anforderungen erfüllt haben.

Dies ähnelt dem Ausführen von Vorautorisierungen für eine Karte, sodass Sie niemals die Kreditkarte speichern müssen, sondern nur einen Token des Händlers, den Sie bei Bedarf anrufen können.

Zhaph - Ben Duguid
quelle
4

Wir müssen sie aufbewahren, und ich muss sicherstellen, dass die Aufbewahrung sicher ist!

Eine Frage: Warum?

Das frage ich nur, weil ich mich selbst mit PCI auseinandersetzen muss und es mühsam ist, damit Schritt zu halten. Obwohl meine tägliche Arbeit uns als niedrigste Stufe für PCI-Konformität qualifiziert, steckt noch viel dahinter. Verschlüsselung, Überlegungen zu geringsten Rechten, Sicherheit des Serverbetriebssystems, Sicherheit des internen Netzwerks, Grenzsicherheit, Audits von Drittanbietern ... all dies muss beachtet werden. Und das ist auch bei uns nicht das Speichern von Kreditkarteninformationen!

(Anmerkung: Wenn Sie E-Commerce betreiben, müssen Sie PCI-konform sein, auch wenn Sie die CC-Daten nicht speichern. Wenn Sie sich jetzt nicht beschweren, können Sie sich glücklich schätzen, dass Sie noch nicht gebissen wurden.)

Lassen Sie Ihren Prozessor damit umgehen. Wir verwenden Authorize.net und sie haben eine wunderbare API, so dass wir unser eigenes benutzerdefiniertes Front-End erstellen können, aber sie kümmern sich um die Speicherung und Abwicklung der tatsächlichen Zahlungen. Wenn wir eine wiederkehrende Abrechnung einrichten wollten, haben sie ein System, um die Informationen zu speichern. Ehrlich gesagt vertraue ich ihnen mehr als mir selbst.

Drachenmantel
quelle
4

Wie bereits erwähnt, suchen Sie nach PCI-DSS. Wie bereits von anderen erwähnt, ist die Einhaltung von Vorschriften für kleine Standorte wahrscheinlich unerschwinglich.

Der Wechsel zu PayPal zur Nutzung der Abonnements ist keine Option. Wir müssen sie aufbewahren, und ich muss sicherstellen, dass die Aufbewahrung sicher ist!

Sie können lokal eine ID speichern, die die Kreditkarteninformationen des Kunden auf Ihrem Zahlungsgateway identifiziert. Ich bin nicht sicher, ob PayPal diese Option anbietet, aber es gibt andere Zahlungs-Gateways, die dies tun.

Bedenken Sie auch, dass einige PCI-DSS-Anforderungen weiterhin erfüllt sind, selbst wenn Sie keine Kreditkartendaten auf der Festplatte speichern. Die bei weitem einfachste Art der Konformität besteht darin, keine CC-Daten zu erfassen (dh das Zahlungsformular direkt an das Zahlungsgateway zu senden).

Thiago Figueiro
quelle
3

Dienste wie http://chargify.com/ bieten eine zusätzliche Schicht über bestehende Zahlungsgateways. Sie bieten wahrscheinlich alle möglichen Möglichkeiten, Kreditkarten für Sie zu speichern, wiederkehrende Zahlungen durchzuführen und sogar Berichte für Sie zu erstellen.

Auf diese Weise können Sie das gesamte Problem der Haftung und PCI-Konformität umgehen. Eine Sorge, die ich habe, ist, ob Sie eines Tages Anbieter, Händlerkonten oder Gateways ändern möchten. Wie nehmen Sie Ihre 10.000 Kunden mit? Übergeben sie eine Datenbank mit Kreditkarten? Wird die Arbeit mit einem Konkurrenten, um die Kreditkarteninformationen zu verschieben?

Das bezweifle ich. Möglicherweise müssen Sie alle Ihre Kunden auffordern, ihre Zahlungsinformationen erneut zu übermitteln, wenn Sie den Anbieter wechseln. Dies ist ein kleines Argument, um die Kreditkarteninformationen selbst zu speichern. Wahrscheinlich nur dann lohnenswert, wenn Sie viele Kunden und viel Umsatz haben werden. Ich wäre sehr gespannt auf die Gedanken anderer Leute zu diesem speziellen Rätsel.

zaqintosh
quelle
Das ist ein sehr guter Punkt, daran hatte ich nicht gedacht. Wir verwenden SecurePay seit ungefähr 5 bis 6 Jahren und hatten keine Bedenken mit ihnen. Ich denke, wir würden bei ihnen bleiben, aber wer weiß, was die Zukunft bringt ...
Mark Henderson,
2

Ich habe noch nicht genug Repräsentanten, um zu stimmen oder zu kommentieren, daher wird dies in einer neuen Antwort beantwortet. Wie zhaph ausführte , bieten viele Händlerunternehmen ein wiederkehrendes Zahlungssystem an, bei dem sie den Speicher für Sie verwalten.

Wir haben Authorize.net für alle Kunden verwendet, die PayPal nicht verwenden möchten, und es hat ziemlich gut funktioniert (unsere einzige große Beschwerde ist, dass der API-Schlüssel alle 6 Monate zurückgesetzt wird und sie sich nicht darum kümmern, Sie zu benachrichtigen, wenn dies geschieht Seite funktioniert einfach nicht mehr). Ihre API ist XML-basiert und Sie können Wrapper dafür in nahezu jeder Sprache finden.

ChiperSoft
quelle
1

Beachten Sie, dass Sie unter keinen Umständen den dreistelligen Kartensicherheitscode speichern sollten, wenn Sie sich dazu entschließen, die Kreditkarteninformationen in Ihrer eigenen Datenbank zu speichern . Dies ist von den Kartenzuordnungen strengstens untersagt.

Übrigens benötigen Sie den Kartensicherheitscode nicht, um eine Transaktion durchzuführen. Es verbessert die Betrugserkennungsrate, aber Sie sollten es nicht benötigen, wenn Sie eine dauerhafte Beziehung zum Kunden haben. (Und selbst wenn Sie denken, dass Sie es brauchen, können Sie es nicht aufbewahren. Egal was.)

Ich stimme auch den anderen Empfehlungen zu, die Informationen nicht zu speichern. Der Customer Information Manager von Authorize.Net ist einfach und kostengünstig zu bedienen. Es ist VIEL billiger für Sie, es zu verwenden, als die PCI-Kosten zu verursachen, die mit dem Speichern der Informationen auf Ihren eigenen Servern verbunden sind.

Larry K
quelle
1

Wenn Sie Kreditkarten in Ihrer Datenbank speichern möchten, ist die Verschlüsselung der Schlüssel. Sie möchten (oder müssen) auch, dass ein Drittanbieter routinemäßige Compliance-Tests durchführt, um sicherzustellen, dass Ihre Systeme auf dem neuesten Stand sind.

Milner
quelle
5
Speichern Sie CCs jedoch nicht in Ihrer Datenbank. Nicht.
Dimo414
Verschlüsselung ist nur der Anfang. Laden Sie den entsprechenden SAQ-Fragebogen (Self Assessment Questionnaire) pcisecuritystandards.org/merchants/self_assessment_form.php herunter und beginnen Sie herauszufinden, dass die Datenbankverschlüsselung ganz unten in der Anforderungsliste steht. Es gibt so viele Möglichkeiten, Kreditkarteninformationen zu verlieren, die Sie bei der Speicherung von Kreditkarten noch nicht einmal berührt haben.
Fiasco Labs