A estas alturas todo el mundo está familiarizado con SSL, es la capa de seguridad mediante cifrado que incorpora HTTP para proteger las comunicaciones.
Bajo las siglas SSL se encuentra un complejo entramado de longitudes, algoritmos y tipos de certificados. La forma en la que se combinan estos parámetros hace que un servidor ofrezca una conexión SSL mas o menos robusta. Como tantas cosas en el mundo de la seguridad, se cumple el axioma: mas robusto = mas inversión.
Teóricamente y sobre el papel la banca online debería ser ejemplo a la hora de implementar SSL en sus servicios por dos motivos:
1- Son entidades que manejan mucha inversión
2- El tipo de actividad a la que se dedican requiere todas las garantías
Pero ... ¿Es así? Hemos realizado un estudio sobre los principales portales de banca online Españoles analizando diversos parámetros para evaluar la robustez del servicio.
Criterios evaluados:
- Soporte a SSL v2: Se puntúa como Bien no dar soporte a negociaciones SSL v2 (obsoletas y con numerosos vectores inseguros) y Mal si el servidor lo admite
- Tipo de certificado: Puntúa como Mal tener un certificado SSL normal y corriente (ver post sobre Agencia Pituitaria) y bien tener un certificado con Validación extendida (mucho mas riguroso y caro)
- Longitud de la clave RSA del certificado: Puntúa como Mal tener un certificado de 1024 o menos y Bien tener 2048
- Soporte de algoritmos 'débiles': Se entiende por algoritmo débil aquel que cuya longitud de clave es 56 o 64 bits y puntúa como Mal admitir esos algoritmos para cifrar la conexión y Bien no hacerlo
Los resultados (click en la imagen para mayor definición):
Por contra, hay que destacar muy positivamente al Banco Popular, Bankinter, Deutsche Bank y Bancaja que sacan un Sobresaliente merecido.
Por último mencionaré de soslayo algo que me llama poderosamente la atención. En el mundo bancario existe una normativa llamada PCI-DSS que especifica niveles de seguridad y buenas prácticas en las entidades bancarias. En el punto 4.1 dice: 'Utilice criptografía y protocolos de seguridad sólidos como SSL/TLS o IPSEC para salvaguardar los datos confidenciales de los titulares de las tarjetas durante su transmisión a través de redes públicas abiertas' Y mas concretamente: 'Controle que se implemente la solidez de cifrado adecuada para la metodología que se utiliza'
Esto, que suena tan vago e inconcreto, por lo general se suele interpretar como el NO uso de SSL v2 y el NO uso de algoritmos débiles.
Ficha técnica
Urls analizadas:
Banco Pastor https://pastornetparticulares.bancopastor.es/
Banco Popular https://www2.bancopopular.es
Banco Santander https://www.gruposantander.es
Banesto https://extranet.banesto.es
Bankinter https://www.bankinter.com/
BBVA https://www.bbva.es
Deutsche Bank https://ww3.deutsche-bank.es
Citibank https://www.production.citibank.es
ING https://www.ingdirect.es/
Bancaja https://www.bancaja.es/
Caja España https://www.cajaespana.net/
Caja Madrid https://oi.cajamadrid.es/
La Caixa http://portal.lacaixa.es/
Banco Popular https://www2.bancopopular.es
Banco Santander https://www.gruposantander.es
Banesto https://extranet.banesto.es
Bankinter https://www.bankinter.com/
BBVA https://www.bbva.es
Deutsche Bank https://ww3.deutsche-bank.es
Citibank https://www.production.citibank.es
ING https://www.ingdirect.es/
Bancaja https://www.bancaja.es/
Caja España https://www.cajaespana.net/
Caja Madrid https://oi.cajamadrid.es/
La Caixa http://portal.lacaixa.es/
Metodología empleada:
Verificación SSL v2:
openssl s_client -ssl2 -connect servidor:443
Tipo de certificado (Normal / EV):
Cualquier navegador actual (Chrome, Firefox, IE)
Longitud clave pública:
openssl s_client -connect servidor:443
Soporte de algoritmos débiles:
openssl s_client -cipher LOW:EXP -connect servidor:443
32 comments :
Me ha gustado mucho la comparativa, y sobretodo la explicación a los 1023 bits de BBVA. Si lo hubiera visto antes, no le habría encontrado ningún sentido. Gracias por la aclaración.
Por otro lado comentar que la CAM también sale bien parada. La longitud de su clave pública es de 2.048 bits, y supera todas las otras pruebas. Por si alguien que tuviera cuenta allí tuviera curiosidad por saberlo :)
Me parece bastante sospechoso que una entidad financiera como es BBVA, tenga ese tipo de "configuración". Y con esa clave de 1023 bits... a mí me huele a intención más que otra cosa...
He revisado https://www.bbva.es y la clave que observo es RSA/1024, ¿de qué url has sacado ese certificado? (el que yo estoy viendo caduca el 14 de agosto de 2011)
La URL de ING Direct, destinada al acceso clientes no es la que analizais en este documento, sino https://ing.ingdirect.es que es la que aparece en las contrataciones y el acceso a clientes. En esa configuración no se permiten cifrados débiles.
Un saludo
Solo una puntualización en referencia al estándar PCI-DSS. Es importante tener en cuenta que el alcance de dicho estándar es para las plataformas que almacenan, transmiten o procesan datos de titulares de tarjeta (entendiendo por estos, el PAN y la fecha de caducidad, el nombre del titular y el CVV2).
Por tanto, en la medida en la que las webs comentadas no estuvieran dentro del alcance, no estarían obligadas a cumplir con el estándar y con ese requerimiento en concreto.
No obstante, una vez dicho esto, está claro que las entidades financieras deberían dar ejemplo y asumir el cumplimiento con el estándar de la manera más global posible y no escatimando medios en su cumplimiento (sobre todo, cuando lo que establece son medidas de protección más que razonables).
bbva.es --> 1023
bbva.com --> 1024
@Roman y @omarbv, ¿Que software estáis empleando para ver la longitud? con openssl obtengo esto:
openssl s_client -connect www.bbva.es:443
SSL handshake has read 2755 bytes and written 311 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 1023 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
@Anónimo De ING, tengo apuntada esta URL como 'portal de acceso' https://www.ingdirect.es/WebTransactional/Transactional/AccesoING_1408.asp ¿ha cambiado hace poco?
En efecto, esa URL está deprecated desde hace más de 6 meses, se sigue dejando activa por ciertos usuarios que lo tienen en favoritos, no obstante hace un redirect a la nueva que es la que se enlaza desde el portal de clientes:
https://ing.ingdirect.es/W/Transactional/faces/selectOption?select_op=initLogin
En esa instancia SSl no se permiten cifrados débiles.
Un saludo
@anonimo ;-)
Sería interesante también el mostrar si esos bancos están actualizados para contrarrestar el bug de renegociación SSL/TLS, que es un bug muy grave (y ya está solucionado... si actualizas).
Tambien es posible efectuar estas pruebas con la herramienta CryptoNark: "CryptoNark is a perl-based PCI compliance remediation validation checker. It's primary purpose is to allow an administrator to check to see whether configuration changes have been successfully implemented when fixing PCI Compliance related vulnerabilities."
Ya verás cuando vayas a pedir la hipoteca al BBVA Yago.
He visto que la Caixa soporta SSLv3 aunque no soportan SSLv2
Desde el Cajamar nos parece muy interesante este post. Hemos aprovechado para pedir a nuestro departamento de Seguridad que haga el mismo test y hemos obtenido este resultado:
- Soporte a SSL v2: No.
- Tipo de certificado:Certificado SSL EV.
- Longitud de la clave: 2048
- Soporte de algoritmos débiles: No.
Creo que salimos bastante bien :-)
¡No nos olvidéis en próximos estudios|
Te faltó poner en la picota a bancoonline.openbank.es
Te faltó poner en la picota a bancoonline.openbank.es
Te faltó poner en la picota a bancoonline.openbank.es
Para un usuario que aunque sigue tu blog tiene más bien poca idea de todos estos temas, podriáis comentar la seguridad de la bbk??
https://portal.bbk.es
Estupendo trabajo. Puede que os resulte interesante compararlo con otro estudio que yo hice hace poco ... !en 1998!
http://www.cripto.es/informes/info
005.htm
Salu2. Arturo Quirantes.
Hola, si interesa a alguíen. He hecho pruebas con www.uno-e.com y tengo generado un documento. No me atrevo a sacar conclusiones públicamente (aunque me huele mal, muy mal los resultados) pero si alguien me ayuda a entender los mensajes de openssl le ofrezco el documento.
una pena que no hayais incluido a triodos (www.triodos.es) en la comparativa :(
Realmente acojonante
http://losbancosycajas.com/2010/10/26/analisis-de-la-seguridad-en-los-bancos-online/
No hay palabras...
¿Cómo era aquello de apuntar a la fuente?
:)
Hola a todos,
Hay que tener en cuenta una cosa ...
Si hay un proxy con modsecurity protegiendo el servidor, es posible que dé como permitido sslv2 y que no sea así. Lo mismo pasa con los cifrádos débiles permitidos (de menos de 128 bits). Los permite modsecurity, pero ahí se quedan.
Obviamente habría que configurar el servidor con modsecurity para que eso no ocurra.
Saludos
Eduardo.
@Eduardo: Dices que mod_security sobrepasa las rules de mod_ssl a la hora de configurar los ciphers ?? Tienes algun link sobre el tema ?
Me ha gustado tu artículo.
Quería pedirte permiso para, como cliente de La Caixa, hacerles llegar tu comparativa y "pedir explicaciones" sobre el bajo nivel de seguridad.
@Yago: el test del ssl va contra el servidor proxy corriendo modsecurity que hay delante del servidor web.
Por eso, si no has tocado la config del ssl en el proxy, aunque el servidor web esté bien, el resultado del test está mal.
Nos saltó a nosotros en una auditoría justo hace unos días ...
¿Por qué ponéis como mala nota que el certificado usado por la entidad sea de 1024 bits?
Aunque muchos de los certificados en la sentidades bancarias no se hayan obtenido por EV, son firmados por CA's da alta confianza (VerySign, por ejemplo)
Lo que sñi es grave es lo de permitir comunicación con claves simétricas débiles.
@Anónimo: Los certificados cuya longitud sea de 1024 no están recomendados actualmente (debido a los significativos avances en factorización de claves RSA). Se recomiendan de 2048
@Eduardo: Dices que mod_security sobrepasa las rules de mod_ssl a la hora de configurar los ciphers ?? Tienes algun link sobre el tema ?
Para un usuario que aunque sigue tu blog tiene más bien poca idea de todos estos temas, podriáis comentar la seguridad de la bbk??
https://portal.bbk.es
Te faltó poner en la picota a bancoonline.openbank.es
Curioso el tema de la caixa, a día de hoy salvo que se teclee expresamente https://..... entra con http!! estoy pensando en sslstrip, etc...esto es así?
Depende, si la parte del acceso a la banca electrónica es igualmente accesible desde http, entonces si
Publicar un comentario