He heredado el código base para una aplicación móvil heredada (tanto la versión nativa de Android como la versión nativa de iOS) y estoy ejecutando una revisión de seguridad, algunas cosas destacaron para mí.
La aplicación le permite al usuario almacenar los detalles de su tarjeta de crédito en el teléfono para futuras compras (nota: el número CSN no se almacena explícitamente como una medida de seguridad), cuando el número se presenta nuevamente, el número aparece enmascarado. Los números se almacenan en un estado hash / cifrado (llavero iOS, Android lo tiene como un valor cifrado hash). Al realizar una compra, la información de la tarjeta de crédito se envía a través de una URL configurable que usa https.
La aplicación actualmente no tiene integración con manejadores de tarjetas de crédito de terceros (Paypal, Stripe, etc.).
Voy a presionar para que todo el manejo de la tarjeta de crédito se realice a través de proveedores de terceros seguros y me pregunto si se están violando los estándares de PCI-DSS aquí, he leído las pautas de OWASP y PCI-DSS y no parece haber nada. ser violado directamente, pero parece estar bordeando el borde de hacerlo.
El almacenamiento de la tarjeta de crédito en un dispositivo de usuario solo me pone señales de alerta, así que me gustaría verificar si alguien más ha experimentado algo similar.