Cumplimiento del estándar «PCI DSS» y el Testing asociado

PCI DSS, son las siglas que corresponden a : Payment Card Industry Data Security Standard, significa Estándar de Seguridad de Datos para la Industria de Tarjeta de Pago.

Este estándar ha sido desarrollado por un comité conformado por las compañías de tarjetas (débito y crédito) más importantes, comité denominado PCI SSC (Payment Card Industry Security Standards Council) como una guía que ayude a las organizaciones que procesan, almacenan y/o transmiten datos de tarjetahabientes (o titulares de tarjeta), a asegurar dichos datos, con el fin de prevenir los fraudes que involucran tarjetas de pago débito y crédito.

Las compañías que procesan, guardan o trasmiten datos de tarjetas, deben cumplir con el estándar o arriesgan la pérdida de sus permisos para procesar las tarjetas de crédito y débito (Perdida de franquicias), enfrentar auditorías rigurosas o pagos de multas.

Bien, hasta aquí lo que se puede encontrar desde wikipedia.

Investigando un poco sobre este estándar, aparecen conceptos como:
-Hacking ético externo e interno
-Revisión de código de aplicaciones !!!
-Entrenamiento en PCI DSS y desarrollo seguro de software !!!
-Test de vulnerabilidades en aplicaciones web
-Test de Intrusión

  • ¿Alguién puede contarnos si tiene alguna experiencia al respecto?
  • ¿Alguien tiene conocimiento más detallado como para hacer Test de Intrusión o de Vulnerabilidad en web app?

Comentario 1
Experiencia en el tema no tengo más allá de haber concurrido a alguna charla. Creo que el mejor aporte que puedo hacer en este caso es referenciarlos al sitio de OWASP, que es una comunidad libre y abierta sobre seguridad en aplicaciones.
Quizás muchos ya conozcan esta comunidad, pero los que no pueden ingresar al sitio (www.owasp.org) y descubrir el material que hay allí (libros, presentaciones, incluso herramientas).
En particular tienen un proyecto relacionado con PCI : https://www.owasp.org/index.php/Category:OWASP_PCI_Project
Saludos
Sebastian Godoy Fumagalli
Ingeniero Computación en ANTEL

Comentario 2
Hola Gustavo

Desde 2009 he realizado inspección de código (servicio externo, con un equipo de profesionales) en dos de las más importantes procesadoras de tarjetas de crédito en Chile. En ambos casos, el origen de la necesidad era dar cumplimiento a PCI-DSS.

Hay varias formas de enfrentar este tipo de testing de caja blanca, a saber:

_En forma manual (existen máximos de LOCs por hora-revisor *recomendables*)
_Con apoyo de herramientas (PCI exige revisores *humanos* apoyados por herramientas, y no una revisión 100% automática )
_Inspección de la lógica de control
_Revisión de buenas prácticas (calidad, auto-documentación, OWASP TOP10)

Con una experiencia directa de revisión sobre más de 6millones de LOCs de variadas tecnologías: (java, .NET, COBOL, RPG, SQL, ETLs). puedo mencionar que los equipos de desarrollo sometidos a estas revisiones y con una adecuada canalización de los hallazgos, logran:

_Importantes tasas de reducción de «malas prácticas de programación»
_Homologación de normas de calidad entre equipos, independiente de la tecnología que usen.
_Mejorar la seguridad y reducir vulnerabilidades del código
_Mejora del rendimiento en apps y erradicación de «instrucciones y código con alto uso de recursos»

Finalmente comentar que la inspección de código es una de las «piedras angulares» para establecer un buen proceso de desarrollo seguro. En lo particular recomiendo OpenSAMM de OWASP como modelo de referencia, porque va de menos a más usando el concepto de maduración de capacidades.

saludos.
Carlos Allendes Droguett
Presidente del capítulo chileno en OWASP

Gus Terrera

Apasionado por el agile testing y la ia.

Deja una respuesta