Hace 10 años | Por skyweb07 a skydev.es
Publicado hace 10 años por skyweb07 a skydev.es

BBVA Wallet es una nueva aplicación que ha llegado a las plataformas de iOS y Android hace pocos días. Es la primera cartera virtual en España que te ofrece realizar pagos desde el móvil utilizando tecnologías como son NFC y Contactless. La aplicación nos permite realizar pagos desde nuestras tarjetas almacenadas en nuestra “cartera virtual” de una forma fácil y “segura”. No estoy de acuerdo con la afirmación de que la aplicación es segura por eso en esta entrada explicaré brevemente porque la aplicación no es segura...

Comentarios

D

#6 No way. 9/54 en dos meses es demasiado. Tu perfil muestra muy poca actividad para el promote que haces de tu blog.

lo siento: eres un spammer

TenienteDan

#6 Cámbiate el nombre en el perfil; evitarás los votos "al segundo";
se vota mucho con solo leer el nombre y la fuente.

Megharah

#28 No te haces una idea de la razón que llevas.... "Servicios Prestados por Terceros" , o como remplazar la gente competente y con experiencia, por gente que cobra dos duros , sin ganas de trabajar , sin experiencia y sin ganas de obtenerla .
Y ese.. es el resultado.

#34 Es el banco quien ha cambiado la forma de subcontratación a sabiendas de que esto sucedería y con gran parte de los empleados del propio banco en contra . Se ha cambiado de subcontratar personas , para subcontratar paquetes de personas : te pago X por 15 personas , donde el montante de X es una risa , por lo que las 15 personas contratadas no están por norma general cualificadas para desempeñar el trabajo.

l

#41 Al menos donde yo estoy, de pagar poco nada, y te puedo asegurar que la gente subcontratada cumple el perfil, tiene experiencia y está cualificada. Otra cosa es que cada día que pase, estén más hasta los cojones. Ganar 15, 18 con suerte y que BBVA pague el doble o más por tí, estar doblemente subcontratado, en cesión ilegal, encima en una empresa fantasma de la primera subcontrata, que tu empresa no se ponga jamás en contacto contigo, salvo para echarte la bronca, que en 4 años no pases ni un reconocimiento médico, etc. Eso si afecta a la calidad del software.

Por supuesto, no le voy a restar culpa a las cabezas pensantes del banco, que permiten esto, en lugar de exigir calidad. Pero sigo diciendo que el verdadero cancer son las cárnicas, no el cliente al que estafan o se deja estafar.

misato

#44 Estoy de acuerdo en que la culpa es de la cárnica pero desde luego el banco es al primero al que no le interesan estas cosas (o no debería).
Los clientes son los que también deberían frenar estar prácticas, pero desgraciadamente no pasa y así tenemos montado lo que hay en España con las consultoras.

l

#45 Meter gente en plantilla no se puede por "Política de empresa". Luego pelear con la cárnica, unos no tienen poder, a otros les parece que está bien, otros pasan de peleas, otros solo saben que el programa esta en producción y el resto no les interesa, otros supongo que sacarán beneficio de la situación (estamos en España ¿no?). Total, que si no le tocas los cojones directamente a alguien con mucho poder, a poner la mano y disfrutar.

D

#23 Joer, Everis lol lo sabia, vaya panda de subnormales...

S

#39 y bien que hacéis, es que no se puede exigir menos.
Lo que no tengo claro es que la culpa sea de los programadores, me gustaría ver el diseño y requisitos de la app, para descartar que la culpa no la tenga algún alma cándida que ni ha reparado en estos pequeños detalles de seguridad.
Lo ideal es que se involucre a seguridad en el diseño y se hagan pruebas en diferentes etapas del desarrollo, vamos lo que viene siendo SSDLC. Pero ya que eso no se hace muy a menudo, como mínimo una auditoría de la app debería ser un must!

misato

#42 No no, no es de los desarrolladores. Igual me he explicado mal. He trabajado muchos años en consultoras, y también en banca en España y normalmente la culpa no es de los desarrolladores, es de los de arriba. Y me imagino que en este caso es eso mismo. En mi caso mis jefes de proyecto y los que hacían análisis funcional en muchos proyectos ni siquiera eran informáticos ni habían programado en su vida (recuerdo especialmente un proyecto en el que el que diseñaba el programa era un MEDICO que había hecho un cursillo de java cuando salió y ale). Que no por ser clasista, sino que si nunca has programado ni has hecho otra cosa que hablar con clientes, no puedes hacer un buen diseño (porque no te has tenido que pegar con ello).
Yo no he trabajado en Everis, pero en las otras que he estado ha sido así. Supongo que ese ha sido el caso.
Y en serio, no tengo nada en contra de los pobres chavales que les haya tocado el marrón de hacer esto (porque fijo que para ellos ha sido un marrón, que ya nos conocemos cómo funcionan las consultoras en España).

editado:
Y tienes razón, algo como lo que he dicho de una auditoría de seguridad en una app de un banco es lo mínimo que se puede exigir. Y es cómo se tienen que hacer las cosas.

skyweb07

#9 simple: Malos programadores detrás de la plataforma.

sorrillo

#11 Sí, es lo único que tiene sentido. Que hayan adaptado el entorno de banca online a las limitaciones propias de un sistema pensado para cajeros automáticos y poco más.

En iBanesto (ahora creo que cambian el portal) ocurre algo similar. Para entrar te pide nombre de usuario y un pin de cuatro cifras. Después para la mayoría de operaciones ya sí te piden algunos caracteres de una contraseña de 8 caracteres (creo que deben ser cifras y mayúsculas, las minúsculas no las acepta) y también confirmación por SMS.

Pero vamos, que la sensación general es que han metido la banca online con calzador a un sistema que nunca estuvo pensado para ella.

skyweb07

#11 yo pensaba lo mismo y me puse a verificar la aplicación de BBVA, la de la cartera virtual no, sino la oficial que entras a tus cuentas etc y tiene las mismas incidencias asi que mejor ir preparando la guillotina :I

skyweb07

#15 Claro esta que se tuvo que configurar un proxy para poder ver esta información pero que no saltara ninguna alarma ni diese error de certificado es lo que realmente preocupa en este tipo de aplicaciones y si además luego no cifran los datos mal vamos. Es cierto que el SSL Pinning es complicado de aplicar a un proyecto que debe estar activo por años pero es que aquí no se molestaron ni en confirmar que la entidad que genero ese certificado era la adecuada

alephespoco

#16 Que la app no chequee que el cert. está expedido por una AC válida es lo mas grave de todo. Y no lo mencionas en el post, sino cosas como el pinning y que van cosas en claro, en lugar de esto que si que es importante.

skyweb07

#17 Intente hacer la entrada lo más leíble posible pero tienes razón, lo voy a incluir en la entrada ahora. Saludos!!!

ann_pe

#56 Lo dice en #16 #17 y #18 , tienes razón en que en artículo no se entiende muy bien.

NuTTyX

#59 He decidido hacer una prueba de concepto para ver si verdaderamente es como dice el autor del artículo.
Con un proxy interceptando SSL y una CA autofirmada, da error al iniciar la conexión SSL y no deja continuar.
Levantando un servidor suplantando el del BVVA y realizando DNS spoofing, el mismo comportamiento.

Conclusión: si no añades CA al móvil, la aplicación no te deja continuar ni envía un sólo dato.

Para mi gusto, igual de segura que cualquier navegador de cualquier dispositivo.

ann_pe

#60 Si lo has probado entonces tendrás razón. O quizá han arreglado la aplicación al ver el post en menéame lol

n

#60 y #47 si es como decis, entonces al app no es vulnerable y el post es directamente falso e incorrecto.
En el post no da a entender que hay que cambiarse la CA.
Coincido en que cifrar otra vez es un absurdo con con que este https bien implementado es suficiente.

misato

#62 Claro que sí hombre, implementar más seguridad en una aplicación de PAGOS es tontería lol

ann_pe

#63 Según entiendo con mis conocimientos básicos del tema, si como dice #60 hace falta tener una CA ¿o un certificado? corrupto previamente instalado en el teléfono la aplicación tendría la misma seguridad que cualquier navegador ¿no? pero está claro que la aplicación puede tener más seguridad llevando el certificado embebido o comprobando que la CA es tal y no es otra, una seguridad extra que no les cuesta nada de implementar y que puede evitar muchos problemas.

NuTTyX

#64 Como ya dije en #47, "utilizando su propio almacén de CAs de confianza mejoraría bastante la seguridad", ya que el control de las CA pasaría del usuario del dispositivo al desarrollador.

No obstante la situación actual de la aplicación no es ni mucho menos como para dedicarle un post alarmista en el que no se explica claramente los requisitos previos (instalar una CA autofirmada en iOS, lo cual es un acto que pide confirmación y saltan advertencias de seguridad, y si es un móvil de empresa NO deja instalarla) y se tergiversa la realidad (texto plano es cuando NO hay SSL y en las capturas se aprecian siempre URL con https, y en ningún momento se indica que sin el requisito previo la aplicación NO envía ni un sólo dato)

ann_pe

#66 Bueno no sé si alarmista es el post o los lectores (yo me incluyo), el post no aclara como hace todo el proceso y eso nos a confundido un poco, pero el post sigue siendo interesante.

n

#63 Todo lo que se añada suma, pero si ya estas cifrando con un método, mas vale que cifrar bien con ese método, y no cifrar con dos y los dos mal.

kobecaf

#60 Hola, yo también he probado con varios proxies ssl y nada, sin instalar el certificado fake en el móvil esto no rula... El post da a entender que directamente interceptando el tráfico ssl con un certificado falso se ve todo y no es cierto. Es alarmista y confuso en mi opinión.

D3S1GN

#17 Ios comprueba de por si cuando se usa https que el certificado ssl está expedido por una autoridad válida o devuelve error. Lo que sí es grave es que el servidor acepte cualquier certificado válido y no SU certificado expedido por una AC apropiada.

skyweb07

#20 El problema es que se están fiando de un CA que no es el suyo, como dice el #17 estos aceptan cualquier CA válido o no, incluso los autogenerados, no comprueban que el servidor que los expidió sea el suyo.

ann_pe

#49 #47 #31 Según dice el autor del post ( #21 ) no es necesario añadir ninguna CA ni modificar nada en el teléfono, ya que la aplicación acepta certificados autofirmados sin mostrar siquiera un mensaje de warning.

D

#50 No, para nada. Los certificados los maneja el sistema operativo y algunas aplicaciones (en escritorio) como Firefox, que tienen su propio contenedor de certificados. Dudo mucho que BBVA haya implementado su propio contenedor en una pequeña aplicación o implementado su propia librería SSL. ¿Alguna prueba que sostenga lo que dice Oscar o tu?

ann_pe

#51 Yo te digo lo que dice la noticia, no lo he probado por que no tengo cuenta en BBVA ni tengo interés. Muchas aplicaciones se pueden configurar para ignorar los errores de certificados, por ejemplo wget si le pasas el parámetro --no-check-certificate se comerá cualquier certificado.

misato

#51 perdón? Cualquier app de Android puede detectar certificados SSL no válidos y por ejemplo no seguir ejecutando nada, mostrar un warning o lo que sea.
De hecho puedes como en la propia web de development de Android hablan de ello: http://developer.android.com/training/articles/security-ssl.html
También puedes no aceptarlos por defecto cambiando parámetros en el manifest, como dicen en esta respuesta de StackOverflow: http://stackoverflow.com/questions/2012497/accepting-a-certificate-for-https-on-android
De hecho como he dicho antes, yo hago una app para un banco grande y es lo primero que se hace en la app, comprobar que el certificado es válido.

Si a ti te la pela la seguridad que te pueda dar una app de un banco, bien. A mi no me gustaría que NADIE pudiera ver mis contraseñas para poder hacer una transferencia o lo que sea por internet.
Creo que toda seguridad es poca en algo tan sensible como datos bancarios. Nosotros ofuscamos el código, encriptamos la base de datos temporal(que guarda mientras la app está activa la lista de movimientos y cuentas, cuando no usas la app durante 5min, te desloga y se borra. También ocurre si cierras la app, obviamente), se verifican los certificados, además nunca se mandan los datos sensibles en texto plano y no recuerdo qué mas cosas se le metieron a la app. Sólo por si acaso pasa algo.

NuTTyX

#50 Según el texto del artículo "ya que el usuario ha podido instalar en su teléfono móvil el certificado del atacante así que todas las comunicaciones quedarían expuestas".
Sobre #21, no dice que no haya añadido estos certificados autofirmados manualmente a través de los ajustes de iOS, sólo "que se están fiando de un CA que no es el suyo".

D

#10 Malos programadores? o malos gestores de proyecto/arquitectos/analistas funcionales/analistas técnicos?
En un proyecto un programador hace lo que le manda el analista ni más ni menos. El programador es un albañil del software que hace lo que se le manda (y cobra como tal). No puedes acusar al albañil de poner una puerta de casa que no es suficientemente segura si el que le da las órdenes le dijo que pusiera esa puerta.
La responsabilidad tiene que estar en el diseño, no en el que lo aplica (si lo ha aplicado tal y como se le pidió)

NuTTyX

#40 Para que eso funcionase, también necesitaría añadir una CA propia a tu teléfono, y no sólo "compremetería" la aplicación del BBVA, sino todo el tráfico de tu navegador, el correo y muchas otras aplicaciones (facebook, twitter, etc)... Que no es una vulnerabilidad "exclusiva" de la aplicación, si no de todo el dispositivo.
No voy a negar que utilizando su propio almacén de CAs de confianza mejoraría bastante la seguridad (el SSL Pinning es una exageración con muy poca visión de futuro), pero confiar en el almacén de CA del teléfono no es una vulnerabilidad en sí ni mala seguridad, como mucho un exceso de confianza.
A ver, no seamos alarmistas. Si en el navegador de tu PC te meten una CA de un "hacker" estás igual de jodido o peor.

Y sobre lo de cifrar con AES los datos... ya van cifrados así! El SSL usa AES desde hace años como principal algoritmo. Cifrar de nuevo los datos sólo traslada el problema a cómo almacenas esa segunda contraseña para el AES adicional y cómo se gestiona en caso de reinstalar la aplicación.

Y en cuanto a meterse con los programadores (#10 : Malos programadores detrás de la plataforma) me parece absurdo y de mal gusto: el programador debe ajustarse a las especificaciones que le piden. Muy posiblemente hubiese dos (o más) equipos, uno para la App móvil y otro para el servidor y se decidiese comunicar ambos de una manera concreta (xml + https o cualquier otra variante).
No echemos las culpas del diseño a un programador...

bringer

#47 Bravo a tu comentario en lo concerniente a los programadores. Cualquiera que se dedique (o se haya dedicado) al tema de la consultoría informática en España, sabrá que el programador, que con suerte anda cobrando 24K, es el último mono. A veces incluso, le habrán reportado ese problema al Jefe de Proyecto de turno, pero al final, el equipo de trabajo suele ser una barco en la tormenta creada por el comercial de turno.

Es más, me jugaría el cuello a que han echado mas horas que la puerta para poder cumplir con "los compromisos" adquiridos por el comercial/gerente/[inserte aquí al tocapelotas de turno]

D

#9 Lo habran subcontratdo a una cárnica.

Juan_Esmíz

"simplemente les basta con conectarse mediante HTTPS que no es lo recomendado ya que el usuario ha podido instalar en su teléfono móvil el certificado del atacante así que todas las comunicaciones quedarían expuestas y veríamos la información en texto plano"
Lo siento pero no estoy de acuerdo. Fiarse de un CA que está en la lista de CAs seguros no es un problema de seguridad, es lo que se supone que tienen que hacer las aplicaciones. Para este ataque se requiere acceso físico al dispositivo antes de poder hacer nada. Y una vez tienes acceso físico ya no hay seguridad posible, solo se puede obstruir más o menos el acceso.

El resto de datos enviados, aunque el artículo diga "en claro" parece que se envían también por https, aunque estoy de acuerdo en que muchas de las cosas enviadas parecen innecesarias (p.ej. numeros de tarjeta con fechas de caducidad y saldos).

#9 El mundo del software para bancos parece estar completamente separado del resto. Allí, pobrecicos, todavía no han acabado de descubrir muy bien como va el tema de las contraseñas, entre otras cosas. Dales 15 o 20 años más y ya verás como se dan cuenta.

trasier

#9 a parte de solo permitirte 6 caracteres, si no lo han cambiado podías poner más, pero al intentar identificarte siempre te salíua "contraseña errónea", así perdí bastante rato... hasta que en algún lugar vi "máximo 6 carácteres" la puse así y perfect...

Lo que también es raro, curioso, como para (y más después de saber el espionaje americano) fue para mi, ver en la oficina que la chica que estaba enseñandome las ofertas miraba el correo del banco (el suyo de blablabla@bbva.es) en gmail, imagino tienen su servidor de listas ahí.

pawer13

#30 BBVA tiene contratado los servicios de correo interno con Google. Usan cuentas de Gmail pero con dominio "@bbva.es"

trasier

#67 sí, eso dije en el comentario. Solo, que no lo entiendo. No entiendo como una empresa que mueve millones permite que sus correos pasen por medio de otra empresa así.

Frippertronic

#9 Lo normal es que en otros lugares te lo limiten... como un mínimo, no como un máximo (y suele ser 8, no 6).

Vamos que te están diciendo que no aceptan contraseñas seguras.

D

#9 En muchos otros bancos es un PIN, es decir, 4 dígitos, que a veces es el mismo de la tarjeta de débito. Normalmente se bloquea tras un número de intentos erróneos, pero parece bastante débil. Eso sí, para los movimientos hay lo que llaman firma que no es más que una contraseña un poco más fuerte o tarjeta de coordenadas.

PythonMan8

#5. El articulo no deja claro si se envía en texto plano o en texto plano a traves de una conexión cifrada. Supongo que es una versión inicial e irán puliendo los detalles. Todo lo que critican es fácilmente solucionable en una semana. En general no deja de ser una buena noticia la aparición de BBVAWallet. !menuda diferencia entre la forma de trabajar de la banca privada, creando aplicaciones de pago seguro en el móvil y las antiguas cajas gobernadas por politicos, sindicatos y botarates invirtiendo en urbanizaciones en mitad del campo!

NuTTyX

#48 Según todas las capturas del artículo, todo el "texto plano" va cifrado bajo la conexión SSL.

jonolulu

Pwned!

D

Joer, DNI, numero de cuenta, saldo en TEXTO PLANO……lol

l

A ver, para todos los que dicen que BBVA paga poco, con cacahuetes y demás símiles. Si el programador cobra 15.000 euros, el banco paga por él 40.000. Así que el problema está en los ladrones que hay por medio, no en el banco.

n

Por explicar un poco mas el problema, un posible escenario seria que te conectas desde un hotel, wifi bar, etc y alguien ha hackeado el router y ha puesto un DNS que la web de BBVA la redirige a un proxy que captura todo el tráfico. En pocos días tendrías usuarios, contraseñas de acceso y de operación de los clientes de BBVA. ( según comentan en banca móvil tienen el mismo problema).
Muy mal Everis y muy mal BBVA.

g

#0 Eres consciente del domingo y lunes que vas a hacer pasar en alguna carnica¿

skyweb07

#24 no entiendo lo que quieres decir...

g

Llamadas del BBVA, algún gerente poniéndose blanco, el banco buscando el contrato, un "esto tiene que estar el lunes arreglado"....

skyweb07

#26 interesante... por si las moscas saque mi capital del banco a tiempo

wikimonki

Creo que es un poco offtopic lo que voy a decir, pero viendo el anuncio del BBVA sobre el empleo (el que la gente se pone a relatar su primer día de trabajo como si fuese el primer día de colegio) habrán contratado a algún pobre becario superfeliz por tener trabajo, no un programador/diseñador experto de esos tan "caros".

Por favor, trátennos con dignidad, un trabajo debería ser un derecho, no un privilegio o un regalito que nos hacen los dioses para que estemos superfelices con su magnaminidad.

D

No veo ninguna irresponsabilidad en BBVA Wallet. Si te instalas el certificado del atacante estás jodido, pero eres tu como usuario el responsable no BBVA.

D

No entiendo que diga que la comunicación usa HTTPS y luego diga que sus datos personales no van encriptados

polvos.magicos

Es que no se puede decir mas claro re-PUTA-ción

M

Teneis que redirigir el trafico a traves del PC, instalar Charles, y cargar ahi el certificado. Yo lo he probado y funciona

Aun asi, me parece una gran cagada de BBVA, pero el riesgo no es demasiado alto... Para que sea un riesgo real, hay que conseguir introducir un certificado "fake" en el telefono, y eso parece mas complicado

kobecaf

#71 lo que funciona es que ves el tráfico cifrado como dice al principio de su post. Lo que no funciona hasta que pones el certificado fake en el teléfono es que veas el tráfico sin cifrar, por eso como tu bien dices hasta que no instales el certificado en el teléfono no hay riesgo real.

danao

Pero vamos a ver, #71, si cargas el certificado para romper el tunel, está claro que vas a ver los datos! Estás diciendole a tu movil que confíe!

Los proxies de intercepción negocian con el servidor final porque usan un certificado válido como puede ser el que usa tu navegador, solo te pueden hacer esto si te conectas a una wifi no fiable y pasa tanto en esta aplicación como en todas, como si lo haces a través del PC con una VPN de la leche, estás aceptando usar un certificado no fiable (el del proxy de intercepción).

¿Habeis probado a ver si conseguis "hackearos" capturando los paquetes con Wireshark? De verdad, si no tenéis ni idea de seguridad, no hagais el magufo como e la persona que ha escrito el blog.

D

#0 "explicaré por qué..."

D

Dejadme a mi que manipule las CAs de vuestros dispositivos como me de la gana y veremos que aplicación no es vulnerable...

Si es que vaya gilipollez. Ya puestos se podría haber instalado un rootkit (troyano) en el móvil, a ver a que información tiene acceso.

D

#0 Ni el SPAM el tuyo

jonolulu

#2 Pues es una pena porque es un buen post... ahora, tu entropía de envíos no es muy diferente

D

#3 9/54 meneos a skydev.es por skyweb07 Dado de alta 17-10-2013

blanco y en botella = spammer

yo nunca me fijo en la entropia, una lastima que buenos meneos se pierdan por usuarios que solo se dan de alta para promocionar su web.

robespain

#2 Esto no es Spam. No te confundas. No está prohibido mandar cosas propias. Spam es abusar..