Investigadores de la Universidad Técnica de Graz (Austria) han identificado una serie de ataques a través de canales externos (PDF), realizados mediante mecanismos de seguimiento de cambios en el sistema de archivos. Estos ataques permiten rastrear la actividad de otros usuarios basándose en el análisis de eventos relacionados con el acceso a archivos y directorios a través de APIs como inotify en Linux, FileObserver en Android, ReadDirectoryChangesW en Windows y File System Events en macOS. La información obtenida puede utilizarse para reconstruir los datos introducidos por el usuario desde el teclado, identificar los sitios web abiertos o ejecutar ataques de clickjacking que superponen contenido en la ventana activa en el momento previo al clic. El código que implementa los métodos de ataque ha sido publicado bajo la licencia MIT.
El primer método de ataque ha sido demostrado en Linux y se debe a la posibilidad de determinar el acceso a archivos dentro de un directorio que no son directamente accesibles para lectura y seguimiento. Utilizando la función inotifywatch se pueden rastrear indirectamente los cambios en los archivos dentro de un directorio mediante la supervisión del propio directorio.
Un usuario no privilegiado no tiene derechos de acceso para leer el contenido y rastrear la actividad del dispositivo /dev/input/event4, que refleja los eventos de entrada del teclado. Sin embargo, los eventos que ocurren con el archivo /dev/input/event4 afectan el estado del directorio padre y pueden ser rastreados mediante la supervisión de cambios en los metadatos del directorio /dev/input. El cambio en el estado de /dev/input/event4 ocurre al ingresar datos y los retrasos entre los eventos detectados por inotify correlacionan con los retrasos entre las pulsaciones de teclas en el teclado.
Utilizando métodos de análisis estadístico y teniendo en cuenta que al teclear los retrasos entre las pulsaciones dependen de la disposición de las teclas en el teclado, se puede recrear con una cierta probabilidad la información introducida. Por ejemplo, la reacción al teclear la letra "F" es más rápida que al teclear "Q" o "X", ya que se requiere menos movimiento de los dedos para presionar, y también se logra una pulsación repetida más rápidamente con una sola tecla y al presionar teclas adyacentes ("s" después de "a" se presiona mucho más rápido que "g" después de "s").
El método también es aplicable para recrear la entrada en sesiones SSH al conectar dos usuarios diferentes a un mismo servidor SSH. En este caso, uno de los usuarios puede rastrear los eventos que ocurren debido a la entrada de datos del otro usuario, mediante la monitorización del archivo de dispositivo /dev/pts. El problema fue resuelto en las actualizaciones de enero del núcleo 5.10.248, 5.15.198, 6.1.160, 6.6.120, 6.12.65 y 6.18.3 mediante la prohibición de la generación de eventos ACCESS y MODIFY para el directorio padre al acceder o modificar archivos especiales dentro de él.
El segundo método de ataque permite determinar el momento en que la subsistema Polkit solicita parámetros de autenticación a través del seguimiento de la llamada al archivo ejecutable /usr/bin/pkexec. En ese momento, el atacante puede crear una ventana falsa, estilizada como el cuadro de diálogo de entrada de contraseña, y mostrarla encima de la solicitud real de contraseña. Un usuario que no note el engaño puede ingresar la contraseña de confirmación de la operación en la ventana del atacante. Esta posibilidad de llevar a cabo un ataque así ha sido demostrada en distribuciones con el entorno de escritorio KDE Plasma.
La API FileObserver proporcionada por la plataforma Android se puede utilizar para rastrear la actividad de archivos en los directorios privados de otras aplicaciones. Por ejemplo, analizando la actividad en el directorio /sdcard/Android/media/com.whatsapp/WhatsApp se pueden rastrear hechos de eliminación, envío y recepción de archivos, videos o imágenes en WhatsApp, así como conocer los nombres de los archivos enviados o recibidos.

En Windows, se encontró que habilitar el seguimiento de eventos para el directorio raíz (C:\) transmite información, incluyendo la ruta completa del archivo, sobre cualquier evento con todos los archivos en el sistema de archivos, independientemente de los permisos de acceso a los archivos. Los investigadores han demostrado la posibilidad de utilizar esta característica para rastrear en tiempo real qué sitios abren los usuarios en Firefox (se crea un directorio separado con el nombre del sitio para la base de datos IndexedDB y la caché en Firefox para cada sitio, cuyo acceso se puede rastrear). La reacción de Microsoft a este problema de seguridad ha sido nominada al Pwnies Award 2026 en la categoría de respuesta más inapropiada del fabricante (Lamest Vendor Response), ya que los representantes de la empresa inicialmente afirmaron que no era una vulnerabilidad, sino una capacidad no documentada.
Fuente: opennet.ru
