Técnica de codificación segura: Hablemos de Tapjacking
Tapjacking, una combinación de "tap" y "hijacking", significa precisamente eso. Se trata de un ataque en el que el atacante secuestra los toques del usuario y lo engaña para que haga algo que no pretendía. Entonces, ¿cómo funciona y cómo lo prevenimos?
Empezamos nuestra historia con las superposiciones de pantalla. Las superposiciones de pantalla o, como Google las llama, las ventanas que utilizan el tipo TYPE_APPLICATION_OVERLAY. Son ventanas que se dibujan encima de otras aplicaciones y normalmente sólo oscurecen una parte de la pantalla. Suelen utilizarse (como la imagen de ejemplo de abajo) cuando una app solicita nuevos permisos.
Esta es una función genial y divertida y cada vez más aplicaciones están empezando a utilizarla, piensa en las burbujas de chat de Facebook, o en la navegación de Google Maps en una esquina de la pantalla, como en la captura de pantalla de abajo.
Sin embargo, hay algunos riesgos de seguridad con estas superposiciones. Cualquier superposición de pantalla activa puede escuchar los toques, ¿de qué otra forma podría saber Facebook que hemos tocado o arrastrado la burbuja? Esto permite que las aplicaciones nos espíen y puedan robar contraseñas y datos de tarjetas de crédito.
Un paso más allá, y de ahí viene el término tapjacking, las superposiciones pueden dibujar cosas encima de otras aplicaciones engañando al usuario para que realice diferentes acciones. El usuario cree que está interactuando con la superposición, pero en realidad sus toques también realizan acciones en la aplicación subyacente. De este modo, la superposición puede engañarle para que habilite ciertos permisos o cambie algunos ajustes peligrosos, como se demuestra en este viejo vídeo de YouTube.
El vídeo de demostración de arriba fue subido a YouTube en 2010, por lo que se hizo en una versión antigua de Android. Pero el ataque sigue siendo relevante hoy en día, ya que salieron a la luz vulnerabilidades que permiten el tapjacking en versiones más recientes de Android como Nougat y Marshmallow.
¿Qué puedes hacer al respecto? Como usuario, es importante darse cuenta de las consecuencias de estas superposiciones y estar atento a las apps que las utilizan. A partir del nivel 23 de la API (Android 6.0 Marshmallow), esto se ha convertido en un permiso que tiene que ser concedido explícitamente por el usuario. Sin embargo, eso deja al 50% de los usuarios de Androidtodavía vulnerables. Todavía puedes comprobar qué aplicaciones hacen uso de este permiso en los ajustes, en "Mostrar sobre otras aplicaciones".
Como desarrolladores, depende de nosotros asegurarnos de que las acciones del usuario se realicen con pleno conocimiento y consentimiento del mismo. Android proporciona un ajuste para sus vistas que hace precisamente eso, llamado filterTouchesWhenObscured. Cuando está activado, el framework descartará los toques que se reciban siempre que la ventana de las vistas esté oscurecida por otra ventana visible. Es tan simple como eso, establece filterTouchesWhenObscured a true, y tu aplicación estará a salvo del tapjacking.
Buena suerte y hasta la próxima semana.
A veces es esencial que una aplicación pueda verificar que una acción se realiza con el pleno conocimiento y consentimiento del usuario, como conceder una solicitud de permiso, realizar una compra o hacer clic en un anuncio. Lamentablemente, una aplicación maliciosa podría intentar engañar al usuario para que realice estas acciones, sin saberlo, ocultando el propósito de la vista.
https://developer.android.com/reference/android/view/View.html
A veces es esencial que una aplicación pueda verificar que una acción se realiza con el pleno conocimiento y consentimiento del usuario
Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónInvestigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor
Tapjacking, una combinación de "tap" y "hijacking", significa precisamente eso. Se trata de un ataque en el que el atacante secuestra los toques del usuario y lo engaña para que haga algo que no pretendía. Entonces, ¿cómo funciona y cómo lo prevenimos?
Empezamos nuestra historia con las superposiciones de pantalla. Las superposiciones de pantalla o, como Google las llama, las ventanas que utilizan el tipo TYPE_APPLICATION_OVERLAY. Son ventanas que se dibujan encima de otras aplicaciones y normalmente sólo oscurecen una parte de la pantalla. Suelen utilizarse (como la imagen de ejemplo de abajo) cuando una app solicita nuevos permisos.
Esta es una función genial y divertida y cada vez más aplicaciones están empezando a utilizarla, piensa en las burbujas de chat de Facebook, o en la navegación de Google Maps en una esquina de la pantalla, como en la captura de pantalla de abajo.
Sin embargo, hay algunos riesgos de seguridad con estas superposiciones. Cualquier superposición de pantalla activa puede escuchar los toques, ¿de qué otra forma podría saber Facebook que hemos tocado o arrastrado la burbuja? Esto permite que las aplicaciones nos espíen y puedan robar contraseñas y datos de tarjetas de crédito.
Un paso más allá, y de ahí viene el término tapjacking, las superposiciones pueden dibujar cosas encima de otras aplicaciones engañando al usuario para que realice diferentes acciones. El usuario cree que está interactuando con la superposición, pero en realidad sus toques también realizan acciones en la aplicación subyacente. De este modo, la superposición puede engañarle para que habilite ciertos permisos o cambie algunos ajustes peligrosos, como se demuestra en este viejo vídeo de YouTube.
El vídeo de demostración de arriba fue subido a YouTube en 2010, por lo que se hizo en una versión antigua de Android. Pero el ataque sigue siendo relevante hoy en día, ya que salieron a la luz vulnerabilidades que permiten el tapjacking en versiones más recientes de Android como Nougat y Marshmallow.
¿Qué puedes hacer al respecto? Como usuario, es importante darse cuenta de las consecuencias de estas superposiciones y estar atento a las apps que las utilizan. A partir del nivel 23 de la API (Android 6.0 Marshmallow), esto se ha convertido en un permiso que tiene que ser concedido explícitamente por el usuario. Sin embargo, eso deja al 50% de los usuarios de Androidtodavía vulnerables. Todavía puedes comprobar qué aplicaciones hacen uso de este permiso en los ajustes, en "Mostrar sobre otras aplicaciones".
Como desarrolladores, depende de nosotros asegurarnos de que las acciones del usuario se realicen con pleno conocimiento y consentimiento del mismo. Android proporciona un ajuste para sus vistas que hace precisamente eso, llamado filterTouchesWhenObscured. Cuando está activado, el framework descartará los toques que se reciban siempre que la ventana de las vistas esté oscurecida por otra ventana visible. Es tan simple como eso, establece filterTouchesWhenObscured a true, y tu aplicación estará a salvo del tapjacking.
Buena suerte y hasta la próxima semana.
A veces es esencial que una aplicación pueda verificar que una acción se realiza con el pleno conocimiento y consentimiento del usuario, como conceder una solicitud de permiso, realizar una compra o hacer clic en un anuncio. Lamentablemente, una aplicación maliciosa podría intentar engañar al usuario para que realice estas acciones, sin saberlo, ocultando el propósito de la vista.
https://developer.android.com/reference/android/view/View.html
Tapjacking, una combinación de "tap" y "hijacking", significa precisamente eso. Se trata de un ataque en el que el atacante secuestra los toques del usuario y lo engaña para que haga algo que no pretendía. Entonces, ¿cómo funciona y cómo lo prevenimos?
Empezamos nuestra historia con las superposiciones de pantalla. Las superposiciones de pantalla o, como Google las llama, las ventanas que utilizan el tipo TYPE_APPLICATION_OVERLAY. Son ventanas que se dibujan encima de otras aplicaciones y normalmente sólo oscurecen una parte de la pantalla. Suelen utilizarse (como la imagen de ejemplo de abajo) cuando una app solicita nuevos permisos.
Esta es una función genial y divertida y cada vez más aplicaciones están empezando a utilizarla, piensa en las burbujas de chat de Facebook, o en la navegación de Google Maps en una esquina de la pantalla, como en la captura de pantalla de abajo.
Sin embargo, hay algunos riesgos de seguridad con estas superposiciones. Cualquier superposición de pantalla activa puede escuchar los toques, ¿de qué otra forma podría saber Facebook que hemos tocado o arrastrado la burbuja? Esto permite que las aplicaciones nos espíen y puedan robar contraseñas y datos de tarjetas de crédito.
Un paso más allá, y de ahí viene el término tapjacking, las superposiciones pueden dibujar cosas encima de otras aplicaciones engañando al usuario para que realice diferentes acciones. El usuario cree que está interactuando con la superposición, pero en realidad sus toques también realizan acciones en la aplicación subyacente. De este modo, la superposición puede engañarle para que habilite ciertos permisos o cambie algunos ajustes peligrosos, como se demuestra en este viejo vídeo de YouTube.
El vídeo de demostración de arriba fue subido a YouTube en 2010, por lo que se hizo en una versión antigua de Android. Pero el ataque sigue siendo relevante hoy en día, ya que salieron a la luz vulnerabilidades que permiten el tapjacking en versiones más recientes de Android como Nougat y Marshmallow.
¿Qué puedes hacer al respecto? Como usuario, es importante darse cuenta de las consecuencias de estas superposiciones y estar atento a las apps que las utilizan. A partir del nivel 23 de la API (Android 6.0 Marshmallow), esto se ha convertido en un permiso que tiene que ser concedido explícitamente por el usuario. Sin embargo, eso deja al 50% de los usuarios de Androidtodavía vulnerables. Todavía puedes comprobar qué aplicaciones hacen uso de este permiso en los ajustes, en "Mostrar sobre otras aplicaciones".
Como desarrolladores, depende de nosotros asegurarnos de que las acciones del usuario se realicen con pleno conocimiento y consentimiento del mismo. Android proporciona un ajuste para sus vistas que hace precisamente eso, llamado filterTouchesWhenObscured. Cuando está activado, el framework descartará los toques que se reciban siempre que la ventana de las vistas esté oscurecida por otra ventana visible. Es tan simple como eso, establece filterTouchesWhenObscured a true, y tu aplicación estará a salvo del tapjacking.
Buena suerte y hasta la próxima semana.
A veces es esencial que una aplicación pueda verificar que una acción se realiza con el pleno conocimiento y consentimiento del usuario, como conceder una solicitud de permiso, realizar una compra o hacer clic en un anuncio. Lamentablemente, una aplicación maliciosa podría intentar engañar al usuario para que realice estas acciones, sin saberlo, ocultando el propósito de la vista.
https://developer.android.com/reference/android/view/View.html
Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Ver el informeReservar una demostraciónInvestigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor
Tapjacking, una combinación de "tap" y "hijacking", significa precisamente eso. Se trata de un ataque en el que el atacante secuestra los toques del usuario y lo engaña para que haga algo que no pretendía. Entonces, ¿cómo funciona y cómo lo prevenimos?
Empezamos nuestra historia con las superposiciones de pantalla. Las superposiciones de pantalla o, como Google las llama, las ventanas que utilizan el tipo TYPE_APPLICATION_OVERLAY. Son ventanas que se dibujan encima de otras aplicaciones y normalmente sólo oscurecen una parte de la pantalla. Suelen utilizarse (como la imagen de ejemplo de abajo) cuando una app solicita nuevos permisos.
Esta es una función genial y divertida y cada vez más aplicaciones están empezando a utilizarla, piensa en las burbujas de chat de Facebook, o en la navegación de Google Maps en una esquina de la pantalla, como en la captura de pantalla de abajo.
Sin embargo, hay algunos riesgos de seguridad con estas superposiciones. Cualquier superposición de pantalla activa puede escuchar los toques, ¿de qué otra forma podría saber Facebook que hemos tocado o arrastrado la burbuja? Esto permite que las aplicaciones nos espíen y puedan robar contraseñas y datos de tarjetas de crédito.
Un paso más allá, y de ahí viene el término tapjacking, las superposiciones pueden dibujar cosas encima de otras aplicaciones engañando al usuario para que realice diferentes acciones. El usuario cree que está interactuando con la superposición, pero en realidad sus toques también realizan acciones en la aplicación subyacente. De este modo, la superposición puede engañarle para que habilite ciertos permisos o cambie algunos ajustes peligrosos, como se demuestra en este viejo vídeo de YouTube.
El vídeo de demostración de arriba fue subido a YouTube en 2010, por lo que se hizo en una versión antigua de Android. Pero el ataque sigue siendo relevante hoy en día, ya que salieron a la luz vulnerabilidades que permiten el tapjacking en versiones más recientes de Android como Nougat y Marshmallow.
¿Qué puedes hacer al respecto? Como usuario, es importante darse cuenta de las consecuencias de estas superposiciones y estar atento a las apps que las utilizan. A partir del nivel 23 de la API (Android 6.0 Marshmallow), esto se ha convertido en un permiso que tiene que ser concedido explícitamente por el usuario. Sin embargo, eso deja al 50% de los usuarios de Androidtodavía vulnerables. Todavía puedes comprobar qué aplicaciones hacen uso de este permiso en los ajustes, en "Mostrar sobre otras aplicaciones".
Como desarrolladores, depende de nosotros asegurarnos de que las acciones del usuario se realicen con pleno conocimiento y consentimiento del mismo. Android proporciona un ajuste para sus vistas que hace precisamente eso, llamado filterTouchesWhenObscured. Cuando está activado, el framework descartará los toques que se reciban siempre que la ventana de las vistas esté oscurecida por otra ventana visible. Es tan simple como eso, establece filterTouchesWhenObscured a true, y tu aplicación estará a salvo del tapjacking.
Buena suerte y hasta la próxima semana.
A veces es esencial que una aplicación pueda verificar que una acción se realiza con el pleno conocimiento y consentimiento del usuario, como conceder una solicitud de permiso, realizar una compra o hacer clic en un anuncio. Lamentablemente, una aplicación maliciosa podría intentar engañar al usuario para que realice estas acciones, sin saberlo, ocultando el propósito de la vista.
https://developer.android.com/reference/android/view/View.html
Índice
Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónDescargarRecursos para empezar
Evaluación comparativa de las competencias en materia de seguridad: optimización del diseño seguro en la empresa
El movimiento Secure-by-Design es el futuro del desarrollo de software seguro. Conozca los elementos clave que las empresas deben tener en cuenta cuando piensan en una iniciativa Secure-by-Design.
DigitalOcean reduce su deuda de seguridad con Secure Code Warrior
El uso por parte de DigitalOcean de la formación Secure Code Warrior ha reducido significativamente la deuda de seguridad, permitiendo a los equipos centrarse más en la innovación y la productividad. La mejora de la seguridad ha reforzado la calidad de sus productos y su ventaja competitiva. De cara al futuro, SCW Trust Score les ayudará a seguir mejorando las prácticas de seguridad y a continuar impulsando la innovación.
Recursos para empezar
La puntuación de confianza revela el valor de las iniciativas de mejora de la seguridad mediante el diseño
Nuestra investigación ha demostrado que la formación en código seguro funciona. Trust Score, que utiliza un algoritmo basado en más de 20 millones de puntos de datos de aprendizaje procedentes del trabajo de más de 250 000 alumnos en más de 600 organizaciones, revela su eficacia a la hora de reducir las vulnerabilidades y cómo hacer que la iniciativa sea aún más eficaz.
Seguridad reactiva frente a seguridad preventiva: Prevenir es mejor que curar
La idea de introducir la seguridad preventiva en el código y los sistemas heredados al mismo tiempo que en las aplicaciones más recientes puede parecer desalentadora, pero un planteamiento basado en el diseño seguro, aplicado mediante la mejora de las competencias de los desarrolladores, puede aplicar las mejores prácticas de seguridad a esos sistemas. Es la mejor oportunidad que tienen muchas organizaciones de mejorar su seguridad.
Ventajas de la evaluación comparativa de las competencias de seguridad de los desarrolladores
La creciente atención que se presta al código seguro y a los principios del diseño seguro exige que los desarrolladores reciban formación en ciberseguridad desde el principio del proceso de desarrollo de software, con herramientas como Secure Code Warrior's Trust Score, que ayudan a medir y mejorar sus progresos.
Impulsando iniciativas de seguridad por diseño para empresas con éxito significativo
Nuestro último documento de investigación, Benchmarking Security Skills: Streamlining Secure-by-Design in the Enterprise, es el resultado de un análisis profundo de iniciativas reales de Secure-by-Design a nivel empresarial y de la derivación de enfoques de mejores prácticas basados en hallazgos basados en datos.