Ya he publicado algunas vulnerabilidad que afectan a los clientes del Santander, esta vez escribiré sobre una vulnerabilidad que afecta directamente al Banco y que permite al atacante obtener el codigo fuente de la banca. El atacante puede navegar por los directorios en busca de los archivos "asp" y descargar el archivo, teniendo acceso al codigo fuente del sistema.
Se trata de una vulnerabilidad Local File Include + Directory Traversal = Source Code Disclosure, solo debemos modificar el valor de una variable de la URL para obtener el archivo que necesitemos. Se trata de un fallo basico e irresponsable que ningun alto estandar de seguridad permite.
Lo curioso es que segun el aviso de seguridad oficial del banco santander, hay una empresa "lider" en seguridad informática que les hace auditoría periodica:
Cierto, parece un chiste.
La vulnerabilidad está presente en el archivo "VerRentabilidad.asp", que sirve para ver la rentabilidad de "algo". El archivo necesita que se le entregue una variable "Numero", al cual debemos pasarle especificamente un archivo y será descargado.
Al ver el código fuente de ese archivo, podemos ver que no tiene ningun tipo de validación al momento de realizar la descarga
PRE0
En la línea 01 almacena en la variable "nombrePDF" el valor que le entegamos por URL mediante la variable "Numero", en la variable 06 podemos ver una validación que claramente no funciona o bien no es suficiente, por lo que se ejecutan las lineas siguientes, iniciando la descarga del archivo por el lado del cliente.
Explotando esta vulnerabilidad podemos navegar por los directorios, obtener el listado de archivos, realizar descargas arbitrarias, etc.
Conociendo el arbol de directorios, ya podemos comenzar a descargar uno por uno los archivos de sistema
transa/ transa/ErrorDB/ transa/DHS/ transa/solicitud/ transa/include/ transa/Productos/ transa/Productos/include/ transa/preerror.asp transa/logteclado.asp transa/FuncBanco.asp transa/common.asp transa/cruce.asp transa/ErrorDB/LogHOB.asp transa/DHS/Constantes.asp transa/DHS/DHSFuncs.asp transa/solicitud/constantes_campana.asp transa/include/ReadWriteSesion.asp transa/include/TrampHBFC.asp transa/include/prodini.asp transa/Productos/include/ProdMenu.asp
Por ejemplo, ReadWriteSesion.asp:
PRE1
Otor ejemplo, el archivo cruce.asp:
PRE2
Segun lo que podemos leer en los comentarios del codigo fuente, corresponde a un desarrollo del año 2006, estamos casi en el 2012. El Banco Santander, ademas de mentirle a sus clientes y usuarios diciendoles que es un sitio seguro, fue denominado como el sistema de banco mas seguro de latinoamerica.
A todas las personas que lean este artículo:
- El banco santander NO es el mas seguro, probablemente sea el mas inseguro.
- Una falla de seguridad de este tipo no puede ser permitida, es una vulnerabilidad demasiado CRITICA como para que un banco la tenga presente.
- El Banco no implementa las mejores ni las ultimas tecnologias, tampoco implementa los ultimos estandares de seguridad. Usan tecnologias obsoletas y poco robustas.
- Esta es una vulnerabilidad que afecta al banco y que podria eventualmente afectar a TODOS sus clientes. El atacante que acceda a informacion como el codigo fuente de un sistema, probablemente pueda acceder a otro tipo de informacion.
- No es la unica vulnerabilidad que existe en este banco, ya he hecho publicar por lo menos 4 otras.
- Que el banco tenga un certificado de un millon de bits, no lo hace mas seguro.
A los encargados de seguridad de los bancos u otras entidades:
- La seguridad no es unicamente enviar emails y dar consejos tipo "no abras links"
- La seguridad de tu institucion no depende de un certificado SSL.
Los encargados de seguridad de este banco no pueden hacer oidos sordos a este tipo de anuncios, son vulnerabilidades presentes hace mas de 1 año. Pesonalmente llevo mas de 1 año intentando reportar por distintos medios este tipo de fallas. Es una falta de respeto hacia los clientes.
Ademas, la vulnerabilidad está indexada por Google, hagan la siguiente busqueda:
site:santander.cl inurl:VerRentabilidad
No es necesario estar logueado en el sistema para poder explotarla.
Solo me queda una pregunta... ¿Cual será esa empresa LIDER en seguridad informática que audita el sistema del Santander?

nótese el comentario del último ejemplo que pones...
El comentario dice:
'*** Obtiene Rut y Ping del Cliente *********
Para hablar del "pin"
pin= trim(Request.Form("pin")) 'recibe el pin
jajajaja wn's pencas.
Esa es la vulnerabilidad. ¿Arbitrary File download?
y se les olvido el codigo fuente que mermes
La entidad bancaria mas segura? como sera la peor entonces, no quiero ni saber.
Salu2
Salu2
Felicitaciones por tu trabajo @Zerial
Sigue adelante con lo que haces, me parece excelente.
Tienes algún link por ahi para lectura para los que queremos aprender?
Saludos
Como si fuera muy difícil ver el archivo para ir directo a la url y descargar lo que necesitemos...
Como dice Anonimo en el comentario de arribita, ya lo solucionaron .. Pero tuvimos que llegar a esto, una publicacion, vista por mas de 3 mil personas, cuestionada por MUCHOS usuarios, muchos clientes desconformes.. recien ahora lo solucionan. No se porque pero no me sorprende...
Me gustaría que muchos auditores, se dedicasen a programar y a desarrollar. Encontrar vulnerabilidades es una tontería. Sólo hay que tener tiempo libre.
ah, otra cosa, te invito a entrar a santander.cl y buscar una forma de contacto para reportar fallas, si la encurentras me avisas.. yo hasta contacte con una ejecutiva de cuentas. si no les llego la informacion a la empresa desarrolladora es problema de procedimientos, quiere decir que no tienen ningun estandar ni politica de seguridad de la informacion o informatica.
si piensas que es una tonteria encontrar vulnerabilidades, ok, entonces somos unos tontos? :)
Incitando al robo y más encima pidiendo plata para esos patudos de mierda de andha...mira, una lata que no puedan pagar su casa, pero eso NO es culpa del resto ni del gobierno...y para ti :
Chúpalo aweonao, anda a comentar a otra parte, si no entiendes de estas weas vírate, anda a lavarte la raja. Y eso que ando tranquilo.
como dice Anonimo " Sólo hay que tener tiempo libre" (hacer nada??)toda la razon pero uno le pone precio y valor a su tiempo.. tu lo ocupás y lo dedicas aprendiendo y investigando el resultadno esta a la vista .. si ademas cre q "Encontrar vulnerabilidades es una tontería" podriamos dejarlo invitado a que se una a los "tontos" y busque una falla y nos la comunique.
Saludos.
HinferNal esta usted en su derecho de no visitar mas es blog.
Saludos Zerial.
Ahora, hace rato que venía escuchando que Santander no modifica sus base de datos desde 2006 y más encima no ha cambiado diseño nada. Entonces, qué nos queda, capacito que también tengan alojado el server en uno gratuito jajajajá.
Un saludo para Santander y a todas las cuentas!
Es muy comun que no se valen esas peticiones por ajax a "escondidas" que hacen los sistemas para validar o autocompletar datos, es cosa de interceptar las llamadas GET o POST que hay cuando ingresas al sitio y podemos encontrar muchas cosas como estas...
Que sería mejor en tu opinion? Si hacer una llamada ajax y devolver una plantilla o devolver un JSON con datos de respuesta?
No puede ser que cualquier persona pueda llamarlos ..
por cierto, hay dos palabras que me gustan: neg.ocio (negar el ocio) y sacerd.ocio (volver sagrado el ocio)
un abrazo.
Saludos
@Zerial gracias por la respuesta, era obvio que no habia validación de sesión xD, no caché. Pero ojo que a veces, por logica de negocio, al menos los simuladores de crédito no deberían tener validación de sesión por correr en contextos públicos. Que se hace ahí?
Saludos
http://delitosinformaticos.com/legislacion/chile.shtml
:)
http://blog.zerial.org/seguridad/el-phishing-y-el-banco-santander-chile/
En ese entonces Zerial me dijiste que no habia fallo explotable en el archivo VerRentabilidad.asp
Lo bueno es que ahora si va a ser solucionado
Es impresionante la cantidad de gente que conocia esta vulnerabilidad ... Cuanta gener podria o pudo haber sacado provecho? Ante la negligencia del banco, lo mejor es el full disclosure para "obligarlos" a que lo solucionen
Tiene razon el dicho "descubre tierras nuevas y te dejan sin el pico ni las wevas"
Lo peor es que no son vulnerabilidades importantes ???aunque sí graves???, son cosas que cualquier desarrollador con medio dedo de frente no deja libradas al azar ni para un sitio web con una visita al mes. Son errores de irresponsables.
La primera el papi le habra conseguido ese puesto...
y la segunda.. Debe ganar el medio billete y no tiene idea como hacer su pega.
en fin... Los realmente capaces no los pescan porque no tienen pituto.. y los lammers abundan con sus teorias futuristas.. y llenas de conocimientos obsoletos.. y digo obsoletos porque ovbiamente al reprobar la carrera completa en la universidad creen que lo que aprendieron hace 6 años aun esta vigente.. siendo que de vigencia solo tienen su apellido aleman.
http://blog.zerial.org/seguridad/el-phishing-y-el-banco-santander-chile/#comment-99247