Análisis a las vulnerabilidades publicadas de Banco Estado

banco-estado

Joshua Provoste publicó en su blog una lista de vulnerabilidades que afectan a Banco Estado, catalogandolo como el banco menos seguro de Chile.
Cuando empece a leer el artículo y analizar mentalmente las vulnerabilidades, se me vinieron varias cosas a la cabeza (cosas buenas y cosas malas), tambien me trajo varios recuerdos… Por ejemplo, me acordé de los episodios en que Banco Estado publicó un log con las transacciones o cuando permitia el acceso por cualquier persona a los comprobantes de depositos y cheques, y para que hablar de la decenas de vulnerabilidades Cross-Site Scripting que se han reportado. Ante todas estas incidencias, Banco Estado ha reaccionado oportunamente y corregido las fallas de seguridad, por lo menos en mi experiencia siempre he tenido respuesta por parte del Banco cuando reporto algo, sea cierto o no.

Joshua expone basicamente cinco problemas de seguridad, que segun el estan catalogados bajo los siguientes nombres o conceptos

  • Descarga desprotegida y XSS
  • Fuzzing & SQL Injection
  • Exposición de base de datos de clientes
  • Cambios arbitrarios de datos y contraseñas
  • XSS, HTML Inyection & Ingenieria Social

Desde mi punto de vista y segun el analisis realizado, el problema de la descarga desprotegida no es tan asi ya que es una herramienta que puede ser descargada desde distintas fuentes. Corresponde a una aplicación de un tercero que Banco Estado simplemente la adoptó (pagó por ella o que se yo…), debe ser algo asi como el Trusteer Rapport que el Banco Santander pone a disposición de sus clientes. Lo del XSS en esta página de descarga al parecer el Banco está filtrando el contenido, ya que sin preparamos una URL con un simple tag html, como por ejemplo “><em>hola, el sistema escapa y parsea el valor de la variable y muestra lo siguiente:

URL: https://personas.bancoestado.cl/imagenes/detectsafe/detectsafe.asp?rut=%22%3E%3Cem%3Ehola&Nombre= bestado_hola

Sin embargo, esta vulnerabilidad persiste en otros enlaces del banco.

Respecto al Fuzzing y a la Inyección SQL, la verdad es que el fuzzing solo funciona para información que es publica o links de libre acceso. La URL a la que se refiere Joshua, corresponde a

https://www.bancoestado.cl/bancoestado/inteditorformularios/genera.asp?datos=99

Modificando la variable “datos” se puede acceder a distinta planilla, por ejemplo probar con datos=100, datos=101, etc. Sin embargo, esto no corresponde a información confidencial ni de uso interno como él indica en el post. Y tampoco es vulnerable a inyección sql.

Respecto al punto donde él se refiere a Exposición de base de datos de clientes, la verdad es que esa información debe estar publicada por Ley, por el caso Conadecus. Hace un tiempo hice una mini publicación al respecto, tambien averigue al interior de banco respecto a esta información y se me informó que por el caso Conadecus debe estar disponible por lo menos por 3 años. Lo disponibilizan mediante la URL https://www.bancoestado.cl/83617C429A994E009BA0B6DFB9916156/2600FCBA22114E36931C5D80A1D5A917/EA666CEA723A48F88E6ED9E3CF1621FD/articulo/37628.asp.

Y por ultimo, tocamos los dos casos que desde mi punto de vista son los mas criticos: Modificación de datos de clientes y la inyección de código javascript/html.

Joshua accede a un formulario para modificar contraseña y otra información de usuarios de la Cuenta RUT, sin embargo, este cambio no se hace efectivo, o al menos en el post que él escribió no lo demuestra. Lo unico que demuestra es un mensaje que dice que en 48 horas se hará efectivo el cambio. Para realizar el cambio es necesario completar un formulario con un par de preguntas, quizas las mismas preguntas que te hacen cuando llamas al callcenter. Yo creo que acá el problema está en el protocolo que utiliza el banco para solicitar la modificación. Si el usuario no tiene cuenta o se le olvidó, debe haber un mecanismo de protección o de validación más allá que un par de preguntas secretas. Si bien esto es una debilidad, no pude verificar que realmente se trate de una vulnerabilidad o que pueda ser explotada, ya que no se sabe si realmente se modifica la clave o no. El banco muestra el mensaje de que se recibió una solicitud de modificación de información, me imagino que internamente harán algun tipo de validación para determinar si corresponde o no realizar esa modificación.

Lo que si es cierto y es critico es el XSS. No solo existe como Joshua lo demuestra, sino que existen otros links donde es posible inyectar codigo sin que el sistema lo detecte.  Esto tiene un riesgo e impacto alto, ya que mediante esta tecnica se puede utilizar el sitio web de Banco Estado (incluso con SSL/HTTPS) para engañar a usuarios y solicitarles información confidencial, robo de credenciales, robo de cookies/sesiones, etc.

Si es así, un XSS no transforma a Banco Estado en el banco menos seguro, ya que el Itaú, Security, Corpbanca, Banco Chile, BBVA y  Santander entre otros tambien son vulnerables a este tipo de ataques.

Lo que realmente me llama la atención es que el Cross-Site Scripting (XSS) ha estado siempre dentro del TOP 10 OWASP, por lo tanto perfectamente podriamos concluir que los bancos en chile no cumplen con el minimo estandar de seguridad.

topten

7 comentarios

  1. Buen review…aunque la actitud del Banco frente al reporte, pese a que fueron informando antes de que los hallazgos fueran publicados, dejan mucho que desear…

    Juega acá 😀

    https://m1qa.bancoestado.cl/mobileportal-bancoestado/inicioWap.action

    Al parecer en una versión QA de BE publicada…raro no?

    Saludos.

  2. Hola m8l8th,

    Si, frente a la actitud del banco de simplemente no responder, nada que decir..

    Eso de exponer sistemas de QA es muy comun en los bancos y aun no lo puedo entender.. si para eso existen las VPN! Ademas muchos sistemas de QA si bien son de “prueba” tienen información real

  3. Muy bien, faltaba que alguien desmintiera.

    Impresentable y muy poco profesional que se haya guiado por los resultados de google. Asumió que porque decía XSS en el

    valor de una variable, la URL inmediatamente estaba comprometida. Así mismo publico una supuesta vulnerabilidad hace un

    tiempo atrás en Banco Santander que encontró en los resultados de búsqueda de Google.

    Estado: https://www.google.cl/search?q=Detect%20Safe%20Browsing%20inurl:XSS%20site:bancoestado.cl

    Santander: https://www.google.cl/search?q=site%3Asantander.cl+Hacked&oq=site%3Asantander.cl+Hacked

    Ni siquiera verifico las supuestas vulnerabilidades, El XSS en la primera url que expuso simplemente NO EXISTE.

    Respecto a la Inyección SQL, esta correspondía a Time-Based Blind SQL Injection y se podía obtener el largo del usuario de

    la base de datos (10 caracteres) pero después no dejaba avanzar. La misma fue mitigada hace mucho tiempo atrás.

    Respecto al Joven Provoste… como “Security Research” no sé, pero como Marketero con 8 años de experiencia es muy bueno!!

    redacta muy bonito, es como una película de acción jajajaja

    Saludos.

  4. A3RCR3A: Que gran aporte! Se agradece!

  5. Se nota que tienes vincul con el BancoEstado. Cuanto te pagaron por esta publicidad??
    El Bancoestado es vulnerable por que no ajusta la seguridad con las otras entidades que uiltizan su pltaforma de datos com Plusconsulting.
    Decir que el Bancoestado responde rápido es un chiste i bien es actitud de un chupamedias como tú

  6. Hola. Me hackearon mi chequera electrónica al momento de realizar una transferencia. Cuando puse mi tercera clave para transferir a un proveedor ya inscrito. Aparece una ventana dentro de la página del banco estado, donde decía descargando software de seguridad ttusteer banco estado ( cargando). Ante la desconfianza desenchufe el computador y entre a mi cuenta desde mi celular , reviso mi saldo y me doy cuenta de que me sacaron $2.900.000.-
    Informó al banco y pongo denuncia en carabineros, llevo el número de parte al banco. Y lo primero que me preguntan es que si tengo seguro de fraude. A lo cual yo respondo que no, pero que deben prestar ayuda y solución, ya que la super intendencia de banco dio un comunicado de que los seguros no son obligatorios ante fraudes. Obligando al banco a investigar y dar solución. Lo cual el banco me dice que debo esperar 10 días de investigación. Llega el día de la resolución y el banco se dio en negativa. Sin darme más soluciones ni anclarecer nada . Ni siquiera me consta de que hayan realizado una investigación. Estoy algo desesperado. Y sin tiempo. Ya que el dinero era un anticipó de un trabajo el cual tuve que cumplir igual. Pero sin trabajadores, sacandome la cresta con mi papá los dos solos para cumplir con los compromisos con el cliente. Ni si quiera tuve tiempo de ir a sernac o a la super intendencia de bancos. Ahora debo esperar hasta el 4 de octubre para la audiencia . De mi denuncia. Y desde el hackeo ya a pasado más de un mes. Si alguien puede orientarme. Les dejo mi correo. victoorvaargas@gmail.com

    🙁

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Esto sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.