Sécurité Informatique

La gestion des paiements sécurisés sur Internet suivant le guide PCI DSS

Auteur : Frédéric Charpentier, consultant sécurité Xmco Partners
Couriel : fcharpentier@xmcopartners.com
Date : Octobre 2006

Les paiements en ligne
La gestion des paiements sécurisés
Le développement sécurisé des applications e-commerce
Le standard PCI DSS
Les Meilleures Pratiques
Les codes de confirmation
Gérer les paiements récurrents
Les remboursements et les virements créditeurs


>Les données bancaires sur Internet

Cet article s'adresse aux développeurs et aux responsables qui risquent de mettre en place des systèmes de paiements en ligne. Cette étude est basée sur le PCI DSS, le Livre Blanc Bancaire et sur le guide OWASP consacré aux paiements en ligne.

Les paiements en ligne

Le commerce électronique est en plein essor. Les internautes utilisent de plus en plus les paiements en ligne pour toutes sortes d'achats. En mai 2005, les ventes en ligne avaient déjà augmentées de 53% par rapport à 2004.

Dans un tel contexte, la question du paiement sur Internet est primordiale à la fois pour l'acheteur et le vendeur. D'une part, le consommateur a besoin d'être rassuré face à l'usage d'outils informatiques et des techniques qu'il ne maîtrise pas forcément.

D'autre part, le professionnel a besoin de solutions de paiement efficaces, rapides et fiables permettant au consommateur de réaliser, de la manière la plus fluide possible son acte d'achat. Ainsi les internautes jugent la sécurité des achats en ligne insuffisante et 32% des français estiment que la sécurité des échanges bancaires n'est pas assurée.

La gestion des paiements sécurisés

La gestion des paiements en ligne est un point critique et constitue, ainsi, une pièce maîtresse des achats via Internet. D'un côté, la plupart des clients font confiance au logo HTTPS en bas de leur navigateur et ne se soucient pas du fait que leurs données bancaires sont courtisées par les pirates.

carte bleue sur internet
De l'autre coté, sans le savoir, des entreprises ne respectent pas les règles et les bonnes pratiques pour assurer la confidentialité des données bancaires de leurs clients. La sécurité des sites d'achats en ligne et, en particulier, la gestion des données critiques représente donc un enjeu crucial qui ne doit pas être négligé par les développeurs et les responsables Sécurité.

Le développement sécurisé des applications e-commerce

Le standard PCI DSS : Payment Card Industry Data Security Standard

Le PCI DSS est le standard industriel pour le traitement sécurisé des paiements par carte de crédit sur les sites web.

visa mastercard amex

Le PCI est maintenu par un consortium d'entreprises comme VISA, Mastercard ou encore American Express.


Voici les 12 grands chantiers du PCI :


Objectifs Actions
Construire et maintenir une infrastructure sécurisée 1. Installez et maintenez un firewall pour protéger vos données.

2. N'utilisez pas les mots de passe par défaut fournis avec les équipements et les logiciels.

Protéger les données du propriétaire de la carte 3. Protégez les données stockées.

4. Toutes les transmissions contenant des données bancaires sur des réseaux publics (Internet, X25, ..) doivent impérativement être correctement chiffrées (VPN, SSL).

Maintenir un processus de gestion des vulnérabilités 5. Utilisez et maintenez vos antivirus à jour.

6. Développez et maintenez la sécurité de vos systèmes et de vos applications (appliquez les correctifs de sécurité).

Implémenter des mesures strictes en termes de contrôles d'accès 7. Restreignez l'accès aux seules données dont l'utilisateur a besoin ("business need-to-know'").

8. Chaque utilisateur doit posséder un identifiant unique.

9. Restreignez l'accès physique aux serveurs contenant des données sur les cartes bancaires des clients.

Surveiller et tester le système d'information 10. Surveillez et stockez les événements d'accès aux ressources et aux données bancaires des clients (Conservation et analyse de logs).

11. Testez régulièrement la sécurité de vos systèmes et de vos processus par des audits de sécurité.

Maintenir une politique de sécurité 12. Assurez le maintien et la communication de la politique de sécurité pour tous les collaborateurs.


Les Meilleures Pratiques


D'autres mesures sont à adopter afin d'assurer la sécurité de telles applications.
L'OWASP et les Meilleures Pratiques du PCI bancaire conseille de respecter les point suivants :

- Traitez les transactions immédiatement sur le site ou externalisez cette tâche auprès de votre banque.

electronique paiement best practices
- Ne stockez jamais les numéros de carte de crédit. Si ces numéros doivent être stockés, vous devez absolument suivre à la lettres les recommandations de votre PCI. Nous recommandons fortement de ne pas stocker des informations sur les cartes de crédit.

- Vous ne devez en aucun cas stocker les codes CCV, CCV2, PVV et le code PIN. Ces codes constituent des champs de validation utilisés par les systèmes bancaires pour protéger vos paiements et contrôler la validité de la carte. [Ce sont en quelques sortes les mots de passe de la carte].Le stockage de ces données est strictement interdit par le PCI.

Les codes de confirmation

Après chaque transaction correctement validée, un code de confirmation est retourné. Ce code est unique pour chaque transaction et ne possède pas de valeur intrinsèque. Il est important de conserver ce code, de l'écrire dans les logs, de le conserver pour le BackOffice et de l'envoyer par courriel au client.

Gérer les paiements récurrents

La seule raison commerciale de conserver les numéros de carte de crédit réside dans la gestion des paiements récurrents.
Cependant, vous avez plusieurs responsabilités importantes au regard de ce mode paiement :

- Vous devez vous soumettre aux réglementations commerciales. La réglementation impose que vous conserviez une autorisation signée du possesseur de la carte de crédit. Ce morceau de papier sera d'une grande aide en cas de désaccord ou de conflit avec le client.

paiement visa internet
- Vous devez chiffrer obligatoirement les numéros de carte de crédit. Ceci est imposé par votre PCI et les meilleurs pratiques le conseillent.

- Vous devez limiter les paiements récurrents à une période d'un an maximum et ce, particulièrement lorsque le propriétaire de la carte n'est pas physiquement présent lors des transactions (ce qui est quasiment toujours le cas avec le commerce en ligne).

- Enfin il est impératif d'effacer toutes les données relatives à la carte de crédit dès que la période de paiement récurrent est terminée.

Le problème du chiffrement réside dans le fait que vous devez être capable de déchiffrer les données au moment opportun. Lors du choix de la méthode de chiffrement (3DES, RSA, AES, DEA, etc) et de stockage, gardez en mémoire le fait que le serveur web frontal n'a pas besoin et ne doit pas être capable de déchiffrer ces données.


Les remboursements et les virements créditeurs

Il est possible de prendre quelques mesures simples pour réduire le risque associé à la gestion des remboursements :

- L'argent ne peut pas être négatif. Renforcez vos logiciels pour n'accepter que des valeurs positives ou nulles afin de prévenir l'utilisation de nombres négatifs.

- Tous les remboursements et les virements sur le compte d'un client doivent être tracées, auditées et confirmées par une autorisation manuelle.

- Votre site ne doit en aucun cas posséder des interfaces ou des fonctions permettant de créditer un compte client ou d'y effectuer des remboursements.

- N'envoyez pas la marchandise avant d'avoir reçu l'autorisation de votre passerelle de paiement (ou de votre banque).

- La grande majorité des numéros de cartes de crédit possède un lien entre le code banque (BIN) et le pays d'origine de la banque émettrice de la carte. Réfléchissez à ne pas envoyer des marchandises payées avec une carte étrangère ou provenant de pays «douteux».

- Pour les paiements de grande valeur, préférez un paiement par téléphone avec une confirmation par fax.

Des clients vont essayer de se faire créditer leur compte trop souvent. Gardez un oeil sur les clients qui demandent des remboursements et décidez s'ils présentent un risque trop élevé ou non.

Demandez toujours l'adresse email et le numéro de téléphone du client enregistré à la banque.

Dernier conseil

Faites savoir sur votre site que vous poursuivez en justice toutes les tentatives de fraudes (conformément à l'article L.323 du code pénal français) et que toutes les transactions sont enregistrées.

Bibliographie

Payment Card Industry (PCI) Data Security Standard https://www.pcisecuritystandards.org/pdfs/pci_dss_v1-1.pdf







> Vous recherchez des experts PCI-DSS ?

+ Le cabinet XMCO est capable de vous accompagner vers la certification Merchant Level 2 et Level 1.

+ Gap Analysis, Self Assessment Questionnaire

+ Conduite de scans de vulnérabilités ASV, gestion des logs, Remediation plans, Security Policy, ...

info@xmcopartners.com


> Aller plus loin :

+ Le guide PCI DSS version 1.1

+ PCI SSC New Self-Assessment Questionnaire (SAQ)

+ AIS: Visa's compliance programme