¿Cómo salvaguardar la privacidad y seguridad de los clientes cuando llevan bancos en el bolsillo?
La llegada de la tecnología móvil al mundo bancario ciertamente lo ha perturbado profundamente. Un sistema centralizado tradicional que operaba en espacios altamente controlados comenzó a migrar para atender a los clientes a través de dispositivos móviles. Sin duda, esta fue una revolución que implicó la redefinición de numerosos flujos de trabajo, estándares y prácticas.
También planteó un enorme desafío: ¿cómo salvaguardar la privacidad y la seguridad de los clientes cuando llevan bancos en sus bolsillos? Las aplicaciones de banca móvil actuales son omnipresentes, por lo que el desafío es más relevante que nunca. Los desarrolladores de aplicaciones de banca móvil deben comprender las necesidades del sistema bancario y sus usuarios y encontrar formas de satisfacerlas preservando al mismo tiempo datos altamente confidenciales protegidos en operaciones, transacciones y diversos puntos vulnerables.
Naturalmente, el sistema se ha fortalecido con leyes y regulaciones que buscan orientar cómo lograr esta difícil tarea. Por lo tanto, los ingenieros de aplicaciones móviles deben tener un conocimiento profundo del marco regulatorio al crear aplicaciones. No es una tarea fácil, pero hoy en día, los desarrolladores de dispositivos móviles tienen una comprensión más profunda de lo que se necesita para crear una aplicación de banca móvil teniendo en cuenta el cumplimiento de la privacidad y la seguridad. Así es como se ve.
Comprender los conceptos básicos de la banca móvil
Una de las primeras cosas que debe hacer un equipo de ingeniería de software en un proyecto de aplicación de banca móvil es comprender los conceptos básicos. Además del desarrollo real de la aplicación, hay muchas cosas a considerar, especialmente en los aspectos de seguridad y privacidad del proyecto, que son las máximas prioridades en cualquier aplicación de banca móvil.
Dada la naturaleza altamente dinámica del entorno móvil, la cantidad de amenazas y vulnerabilidades está aumentando, lo que hace aún más difícil mantener la protección al más alto nivel. Por lo tanto, los desarrolladores de dispositivos móviles han categorizado mejor los riesgos y vulnerabilidades potenciales para abordarlos durante el ciclo de vida del desarrollo de la aplicación. Existe una “superficie de ataque” que se divide en estas categorías según el área objetivo del ataque.
Siguiendo esta línea de pensamiento, los desarrolladores identificaron tres partes principales de la superficie de ataque:
- Dispositivos: Los componentes de los dispositivos móviles, como el navegador, el propio dispositivo, las aplicaciones o el sistema operativo, tienen múltiples vulnerabilidades que pueden ser puertas de entrada a infracciones. Así, los actores maliciosos atacan esto con intentos de phishing, ataques de fuerza bruta, SMishing e inyección dinámica de tiempo de ejecución, entre muchos otros.
- Redes: los dispositivos móviles dependen principalmente de conexiones inalámbricas para realizar sus tareas, por lo que es natural que las redes que utilizan para hacerlo sean objetivos de ataques. Si bien los dispositivos móviles utilizan algo más que Wi-Fi para conectarse, son estas conexiones las más vulnerables a problemas de cifrado, ataques de intermediario y certificados SSL de Facebook, entre otros.
- Centros de datos: Estas conexiones conectan dispositivos móviles a servidores que manejan mucha información y tienen sus vulnerabilidades. Por lo tanto, los ataques maliciosos se dirigen a estos puntos finales (incluidos servidores web y bases de datos) mediante validaciones de entrada débiles, configuraciones incorrectas del servidor, volcado de datos y ataques de inyección SQL.
Este panorama describe el panorama completo de la seguridad móvil. Es cierto que los desarrolladores que trabajan en una aplicación de banca móvil no pueden manejarlos todos. Deben preocuparse por las amenazas y vulnerabilidades más comunes relacionadas con este tipo de aplicaciones. Por un lado, las vulnerabilidades comunes involucran a los sistemas bancarios móviles, la forma en que se utilizan y los dispositivos que utilizan, incluyendo:
- Dispositivos con jailbreak y rooteados. Jailbreak y root significan eliminar ciertos límites de seguridad para acceder a partes protegidas del sistema operativo. Si bien esto le da al usuario más control sobre el sistema, también lo expone a ataques que pueden tomar el control del sistema más fácilmente.
- Almacenamiento de datos en el teléfono. Almacenar información bancaria confidencial en su teléfono es una gran señal de alerta, ya que cualquier aplicación con permisos suficientes puede acceder a ella y explotarla para cometer fraude bancario.
- Yo uso no SSL. Por un lado, el uso de enlaces sin SSL brinda a los atacantes la oportunidad de interceptar el tráfico e inyectar un mensaje de inicio de sesión falso. Por el contrario, enviar información específica (como códigos de activación) sin un certificado de seguridad podría proporcionar al mismo atacante los datos necesarios para secuestrar una sesión.
- Conexiones obsoletas. Las redes Wi-Fi abiertas son muy vulnerables a los ataques.
Estas cuatro vulnerabilidades importantes muestran que los desarrolladores de aplicaciones móviles deben considerar algo más que las brechas en los sistemas: también deben comprender las debilidades de los dispositivos y sus usuarios, las cuales brindan vulnerabilidades adicionales que exceden las encontradas en una aplicación bancaria.
Los actores maliciosos explotan estas vulnerabilidades de diferentes maneras, pero algunos ataques son más comunes que otros. Los ingenieros móviles que trabajan en aplicaciones bancarias suelen desarrollar sus sistemas de seguridad, prestando especial atención a lo siguiente:
- Ataques Man-in-the-middle (MiTM): cuando la aplicación bancaria se comunica con el banco, información vital va y viene. Los piratas informáticos intentan interceptarlo para luego utilizarlo para acceder a la cuenta del usuario.
- Violaciones de infraestructura: dirigidas principalmente a servidores, son ataques que buscan recopilar credenciales (como nombres de usuario, contraseñas y otra información personal).
- Aplicaciones pirateadas: los piratas informáticos realizan ingeniería inversa en una aplicación legítima para luego distribuir su versión infectada, obteniendo así acceso a la información de las personas que sin darse cuenta instalan la versión pirateada.
- Malware móvil: al igual que ocurre con los sistemas de escritorio, existe una gran cantidad de malware móvil dirigido a dispositivos móviles. Las aplicaciones bancarias son algunos de sus principales objetivos.
- Secuestro de clics: una técnica que intenta engañar a los usuarios para que hagan clic en un botón o elemento para realizar una acción aparentemente inocua pero que desencadena una respuesta maliciosa (como descargar malware o recopilar información confidencial).
Naturalmente, los ataques no sólo se dirigen a las aplicaciones móviles en sí, sino también a problemas del sistema y al comportamiento inseguro de los usuarios de dispositivos móviles. Esto significa que los esfuerzos de seguridad del equipo de desarrollo móvil deben estar estrechamente alineados con esfuerzos de seguridad más amplios que brinden protección adicional al resto del sistema.
Cómo los equipos de desarrollo móvil garantizan la seguridad de las aplicaciones bancarias
Todo lo anterior debería informar al equipo de desarrollo móvil en las primeras etapas de su SDLC. Armado con esta información, el equipo puede identificar mejor los riesgos asociados con las aplicaciones de banca móvil y crear una aplicación más sólida. Los desarrolladores pueden hacer esto de varias maneras, especialmente siguiendo prácticas de seguridad estándar para el desarrollo de aplicaciones. Sin embargo, existen otras prácticas específicas que pueden seguir, que incluyen:
- Las políticas de seguridad del equipo de desarrollo deben depender del cumplimiento del usuario.
- Existen muchas prácticas que pueden ayudar a reducir los riesgos asociados con el desarrollo de una aplicación de banca móvil, incluida la mitigación de riesgos, la verificación de integridad, la detección de reempaquetado, las obligaciones de cumplimiento normativo, el cifrado de datos y la identificación de vulnerabilidades en el código fuente.
- Una aplicación de banca móvil siempre debe incluir autenticación multifactor, ya sea mediante SMS o (preferiblemente) datos biométricos.
- Además, debe tener una protección de contraseña confiable que no permita al usuario guardar contraseñas.
- Es obligatorio cerrar sesión automáticamente después de un período fijo de inactividad. El tiempo puede variar, pero nunca debe exceder 1 minuto.
- La aplicación debe utilizar lo último en firmas digitales y protocolos de transferencia segura.
- Los desarrolladores siempre deben incluir comprobaciones de certificados SSL y cifrado de extremo a extremo.
- Las pruebas y el control de calidad deben ser extensos y estar presentes en todo el SDLC.
Además de todo esto, el equipo de desarrollo debe prestar especial atención a la normativa de gestión y manejo de datos. Puede haber varias regulaciones aplicables a una aplicación específica según la región, el país o incluso el estado en el que se utilizará. Un buen equipo de desarrollo mantendrá el cumplimiento en la parte superior de la lista de prioridades. Estar alineado con estas regulaciones no sólo evita multas, sino que también sigue principios de seguridad probados que pueden reducir los riesgos asociados con el desarrollo móvil para los bancos.
Todo esto demuestra que desarrollar una aplicación de banca móvil no es una tarea fácil. De hecho, es algo que no todos los equipos de desarrollo móvil pueden hacer. Se necesita un equipo de ingenieros bien versados y con suficiente conocimiento y experiencia en la industria para resolver este problema multifacético.
Por lo tanto, cualquier empresa que desee crear su aplicación bancaria debe analizar cuidadosamente el mercado y elegir una empresa de desarrollo móvil con experiencia que mantenga la seguridad, la privacidad y el cumplimiento como su principal objetivo. Quienes consideran todos los aspectos descritos anteriormente son las mejores alternativas, ya que todo es fundamental para abordar el desarrollo de la banca móvil. Considerar toda esta información es la única forma de desarrollar una aplicación segura que proteja a los consumidores y a los bancos.