We understand that security and privacy are top priorities for any application that handles sensitive customer financial data. From the beginning stages of designing the app architecture, we had security experts review and advise on our approach. Some of the key things we implemented include:
Using encrypted connections. All network traffic within the app and between the app and our backend servers is sent over encrypted HTTPS connections only. This protects customer payment details and other sensitive data from being compromised during transmission. We implemented TLS 1.2 with strong cipher suites to ensure connection encryption.
Storage encryption. Customer payment card numbers and other financial details are never stored in plain text on our servers or in the app’s local storage. All such data is encrypted using AES-256 before being written to disk or database. The encryption keys are themselves securely encrypted and stored separately with access restrictions.
Limited data retention. We do not retain customer payment details for any longer than necessary. Card numbers are one-way hashed using SHA-256 immediately after payment authorization and the plaintext is deleted from our servers. Transaction history is stored but payment card details are truncated and not kept beyond a few days to limit exposure in case of a data breach.
Authentication and authorization. Multi-factor authentication is enforced for all admin access to backend servers and databases. Application programming interfaces for payment processing are protected with OAuth2 access tokens which expire quickly. Roles based access control restricts what each user can access and perform based on their assigned role.
Input validation. All inputs from the app are sanitized and validated on the backend before processing to prevent SQL injection, cross site scripting and other attacks. We employ whitelisting and escape special characters to avoid code injection risks.
Vulnerability scanning. Infrastructure and application code are scanned regularly using tools like OWASP ZAP, Burp Suite and Qualys to detect vulnerabilities before they can be exploited. We address all critical and high severity issues promptly based on a risk based prioritization.
Secure configuration. Our servers are hardened by disabling unnecessary services, applying updates/patches regularly, configuring logging and monitoring. We ensure principles of least privilege and defense in depth are followed. Regular security audits monitor for any configuration drift over time.
Penetration testing. We engage independent security experts to conduct penetration tests of our apps and infrastructure periodically. These tests help identify any vulnerabilities that may have been missed otherwise along with improvement areas. All high risk issues are resolved as top priority based on their feedback.
Incident response planning. Though we make all efforts to prevent security breaches, we recognize no system is completely foolproof. We have formal incident response procedures defined to handle potential security incidents quickly and minimize impact. This includes plans for appropriate notifications, investigations, remediation steps and reviews post-incident.
Monitoring and logging. Extensive logging of backend activities and user actions within the app enables us to detect anomalies and suspicious behavior. Customized alerts have been configured to notify designated security teams of any events that could indicate a potential threat. Logs are sent to a centralized SIEM for analysis and correlation.
Customer education. We clearly communicate to customers how their payment details are handled securely within our system through our privacy policy. We also provide educational materials to create awareness on secure online financial practices and how customers can help maintain security through vigilance against malware and phishing.
Third party security assessments. Payment processors and gateways we integrate with conduct their own security assessments of our apps and processes. This adds an extra layer of verification that we meet industry best practices and regulatory requirements like PCI-DSS. Dependencies are also evaluated to monitor for any risks introduced through third parties.
Keeping abreast with evolving threats. The cyber threat landscape continuously evolves with new attack vectors emerging. Our security team closely tracks developments to enhance our defenses against emerging risks in a timely manner. This includes adopting new authentication standards, encryption algorithms and other security controls as needed based on advisory updates from cybersecurity researchers and organizations.
The above measures formed a comprehensive security program aligned with industry frameworks like OWASP, NIST and PCI-DSS guidelines. We put security at the core of our app development right from the architecture design phase to ensure strong controls and protections for handling sensitive customer financial data in a responsible manner respecting their privacy. Regular monitoring and testing help us continuously strengthen our processes considering an attacker perspective. Data protection and customer trust remain top priorities.