Ola leitores,Estou de volta apos um longo periodo sem postagens. Essa ausencia foi devido a festas de fim de ano, projetos pessoais e um projeto longo em que estive envolvido e que me consumiu quase que 16 horas por dia, 7 dias por semana. Enfim, ca estou de volta com mais um artigo.Vou falar um pouco sobre a norma PCI DSS, e suas implicacoes no desenvolvimento de solucoes para auto-atendimento em geral.O que e PCI DSS?PCI - Payment Card Industry: Esta associada as industrias de cartoes de credito e debito, ATM, terminais POS e etc, e seu conselho foi originalmente formado pelas principais bandeiras de cartoes de credito no mundo, como Visa, Master Card e American Express. O objetivo desse conselho e manter e evoluir o PCI DSS. DSS e a sigla para Data Security Standard, que e uma norma de seguranca da informacao, de abrangencia mundial, para ajudar a evitar fraudes junto a industria de pagamentos a cartao.Essa norma descreve 12 requisitos que devem ser atendidos integralmente para garantir a seguranca, ou dirimir as chances de fraudes em qualquer sistema que lide com cartoes de credito. Alem disso, a PCI estabelece uma certificacao a qual as empresas devem se submeter, para serem reconhecidas como empresas aderentes ao PCI DSS.Abaixo seguem os 12 requisitos:Control ObjectivesPCI DSS RequirementsBuild and Maintain a Secure Network1. Install and maintain a firewall configuration to protect cardholder data2. Do not use vendor-supplied defaults for system passwords and other security parametersProtect Cardholder Data3. Protect stored cardholder data4. Encrypt transmission of cardholder data across open, public networksMaintain a Vulnerability Management Program5. Use and regularly update anti-virus software on all systems commonly affected by malware6. Develop and maintain secure systems and applicationsImplement Strong Access Control Measures7. Restrict access to cardholder data by business need-to-know8. Assign a unique ID to each person with computer access9. Restrict physical access to cardholder dataRegularly Monitor and Test Networks10. Track and monitor all access to network resources and cardholder data11. Regularly test security systems and processesMaintain an Information Security Policy12. Maintain a policy that addresses information securityEsses sao os 12 principais requisitos, mas existem cerca de 220 sub-requisitos aplicaveis a todas as areas de um sistema que envolva pagamento com cartao de credito.O que isso tem a ver com voce?Bom, se voce desenvolve sistemas para auto-atendimento, ou mesmo drivers proprietarios, SPI ou DS para esses sistemas, entao voce precisa realmente observar bem esses requisitos e, em especial, os itens 3 e 4, que compoem o objetivo "Protect Cardholder Data", ou seja, Proteja os Dados do Cliente contidos no cartao.Isso pode parecer obvio mas, na pratica, as pessoas realmente nao se dao conta das implicacoes:Cardholder Data: diz respeito a todos os elementos de dados contidos no cartao (tanto no chip quanto nas trilhas magneticas), tais como: PAN (Primary Account Number), nome do cliente, codigo de servico (service code), data de expiracao do cartao, alem de dados ainda mais sensiveis como PIN Block ou senha do cartao, e os dados completos das trilhas magneticas.Quando o sistema executa em ambiente de producao, se voce armazenar em log sem criptografia