Iconos SCW
héroe bg sin separador
Blog

安全编码技术:让我们来谈谈 Tapjacking

Pieter De Cremer
Publicado el 31 de octubre de 2017
Última actualización el 9 de marzo de 2026

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.

Permitir que la aplicación acceda a su ventana emergente de contacto

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.

Secure Code Warrior Vídeo de introducción

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

手里拿着手机的用户
手里拿着手机的用户
Ver recursos
Ver recursos

有时,应用程序必须能够在用户完全知情和同意的情况下验证操作是否正在执行

¿Te interesa saber más?

Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor

Más información

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.

Reservar una demostración
Compartir en:
marcas de LinkedInSocialx logotipo
Autor
Pieter De Cremer
Publicado el 31 de octubre de 2017

Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor

Compartir en:
marcas de LinkedInSocialx logotipo
手里拿着手机的用户
手里拿着手机的用户

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.

Permitir que la aplicación acceda a su ventana emergente de contacto

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.

Secure Code Warrior Vídeo de introducción

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

Ver recursos
Ver recursos

Rellene el siguiente formulario para descargar el informe.

Nos gustaría obtener su permiso para enviarle información sobre nuestros productos y/o temas relacionados con la codificación de seguridad. Trataremos su información personal con el máximo cuidado y nunca la venderemos a otras empresas con fines comerciales.

Enviar
Icono de éxito de SCW
Icono de error scw
Para enviar el formulario, habilite las cookies de análisis. Una vez completado, puede desactivarlas nuevamente si lo desea.
手里拿着手机的用户

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.

Permitir que la aplicación acceda a su ventana emergente de contacto

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.

Secure Code Warrior Vídeo de introducción

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

Ver el seminario web
Empecemos.
Más información

Haga clic en el siguiente enlace y descargue el PDF de este recurso.

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.

Ver informeReservar una demostración
Ver recursos
Compartir en:
marcas de LinkedInSocialx logotipo
¿Te interesa saber más?

Compartir en:
marcas de LinkedInSocialx logotipo
Autor
Pieter De Cremer
Publicado el 31 de octubre de 2017

Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor

Compartir en:
marcas de LinkedInSocialx logotipo

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.

Permitir que la aplicación acceda a su ventana emergente de contacto

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.

Secure Code Warrior Vídeo de introducción

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

Descargar PDF
Ver recursos
¿Te interesa saber más?

Investigador de seguridad de aplicaciones - Ingeniero de I+D - Candidato a doctor

Más información

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.

Reservar una demostraciónDescargar
Compartir en:
marcas de LinkedInSocialx logotipo
Centro de recursos

Recursos para ayudarle a empezar

Más publicaciones
Centro de recursos

Recursos para ayudarle a empezar

Más publicaciones