miércoles, 8 de agosto de 2012

BANCO ESTADO EXPONE INFORMACIÓN SOBRE LAS TRANSFERENCIAS REALIZADAS



Me llegó un correo informándome de una vulnerabilidad crítica que afecta al Banco Estado, específicamente a la plataforma móvil del banco estado. Se trata de la divulgación de un log de transacciones ubicado en los servidores del Banco, accesible libremente por cualquier usuario. El log no se encontraba protegido bajo ningún mecanismo de seguridad y la información que exponía es increíble.

La información expuesta en este archivo corresponde a nombre de la persona que está realizando la transferencia, nombre del destinatario, email del destinatario, cuenta de origen y destino, montos asociados a la cuenta, información de la tarjeta de coordenadas y además, la password que utiliza el usuario para ingresar al portal. Todo esto debería estar cifrado, ya que utilizan SSL para las peticiones, pero en este log aparecía todo en plano.

La vulnerabilidad afecta a todos quienes hayan realizado algún tipo de transacción en el portal, al parecer corresponde a un log que va rotando diariamente, por lo que solo se podía acceder a la información del día.

Específicamente, la dirección donde se alojaban estos archivos corresponde a https://m.bancoestado.cl/log/log.txt, una URL fácil de adivinar. Sin protección.

Dentro del archivo aparecían líneas como por ejemplo

[13] DEBUG Transferencias_Paso3 – TxtCoord1 [78]
[13] DEBUG Transferencias_Paso3 – TxtCoord2 [17]
[13] DEBUG Transferencias_Paso3 – TxtCoord3 [64]

Que corresponden a los tres números de la tarjeta de coordenadas que el banco solicita al usuario: 78, 17 y 64. Si bien no es posible obtener a que numero de coordenadas corresponden (por ej: B1, C5, H3), es información sensible que podría ser utilizada por un atacante.

Luego de eso, aparecían otras líneas que contienen información como:


08-07 00:02:36 [14] DEBUG BankingService – POST FINAL [controlBack=1&NumClick=1&FuncionalidadPlantillas=SI&ProdDestino=Cuenta Corriente&RutTercero=5.XXX.XXX-1&NomTercero=GRXXXXX OLIVARES&NomOrigen=ROBERTO XXXXXX           PONCE                     XXXXXXX&NomTrans=Transferencia a Terceros&CtaTercero=0000000050010001XXXX&MailTercero=&MailOrigen=roxxxxx@hotmail.com&CodBancoTercero=504&NomBanco=BANCO BILBAO VIZCAYA ARGENTARI&txtCodBcoterc=CCT&SaldoDisponible=XXX.XXX&SaldoDisponibleLCR=0&SaldoDisponibleTOTAL=XXX.056&TipoAuth=GRID&Serie=XXXXXX&Parte_1=F&Parte_2=2&Parte_3=F&Parte_4=3&Parte_5=C&Parte_6=2&CuentaDestino=0000000050010001XXXX&txtUserName=ROBERTO XXXXXX           PONCE                     XXXXXX&coord_1=27&coord_2=22&coord_3=95&PWD=LA_PASSWORD!&strIP=ip.interna.del.banco]
08-07 00:02:36 [14] DEBUG BankingService – URL FINAL [https://personas.bancoestado.cl/bancoestado/process.asp?MID=9902&AID=NEWTRFATERCEROS-004&RQE=7A9C462B11054802BA7EDCBE2FE57DEB&rnd=11FF5C6C&ssnid=399E8BD1]
08-07 00:02:36 [14] INFO  WebBrowser – Invocando [https://personas.bancoestado.cl/bancoestado
08-07 00:02:37 [56] INFO  Global – breadcum: [161280380][https://m.bancoestado.cl/SubMenu.aspx?smn=chee]
08-07 00:02:37 [56] DEBUG SessionWebAuthentication – False
08-07 00:02:37 [14] DEBUG WebResponse – Leerá HTML usando Charset: [ISO-8859-1] y Encoding: [System.Text.Latin1Encoding]
08-07 00:02:37 [14] DEBUG WebBrowser – <html>


Obviamente, modifiqué algunos datos cambiándolos por “X” para proteger la información del afectado.
Los datos en negrita es lo que nos interesa, donde se divulga información sensible de las personas:
1.    RutTercero
2.    NomTercero
3.    NomOrigen
4.    MailOrigen
5.    NomBanco
6.    SaldoDisponible
7.    coord_1
8.    coord_2
9.    coord_3
10. PWD
Hay una parte interesante que probablemente corresponde a los datos de la coordenada que nos hace falta:
Parte_1=F&Parte_2=2&Parte_3=F&Parte_4=3&Parte_5=C&Parte_6_2
Lo traducimos a
F2 = 28
F4 = 22
C2 = 95
Que corresponden a los datos solicitados por el banco para realizar la transferencia. Luego de hacer un seguimiento al log es posible ir obteniendo todos los datos de las coordenadas, hasta que obtengamos TODAS.
Información suficiente para suplantar la identidad de esa persona.
Luego de varios intentos, logré hacer llegar este fallo/bug/vulnerabilidad a la gerencia de informática o de tecnología del banco, quienes recibieron la información y se pusieron a trabajar en el asunto.
Independiente de que si el banco soluciona el problema o no, tengo varias dudas al respecto:
1.    ¿Notificará el banco a los usuarios afectados para informarles que sus datos fueron expuestos?
2.    ¿Informará el banco a los afectados para que cambien su contraseña?
3.    ¿Se preocupará el banco de renovar las tarjetas de coordenadas a sus clientes?
4.    ¿Cuántos usuarios fueron los afectados?
5.    ¿Cuántas personas pudieron acceder a ese archivo log?
Yo pienso que el banco debería notificar a todos los afectados, ofrecerles un seguro anti-fraude de forma gratuita, ya que el banco fue quien expuso su información y además ofrecerles algún tipo de indemnización.
¿Qué dice la superintendencia de bancos frente a estos asuntos?
Este post ha sido publicado luego de que Banco Estado haya sido informado y solucionado el problema.

FTE : blog.zerial.org




No hay comentarios:

Publicar un comentario