Menu
in

Depix: Recuperar contraseña de imágenes pixeladas

¿Crees que unos pocos píxeles son suficientes? Piénsalo de nuevo

Recuperar contraseña de imágenes pixeladas

Una práctica bastante común a la hora de censurar contraseñas u otra clase de información sensible en imágenes es aplicar el clásico «pixelado». También existe la posibilidad de usar distorsión direccional o bombardear la imagen con ruido, pero en general, los píxeles son más populares. Ahora, imagina un mecanismo para recuperar la contraseña de imágenes pixeladas. El proyecto Depix va en esa dirección, y aunque lleva poco más de dos meses en desarrollo, su potencial es enorme.


Píxeles e «información perdida»

A mediados del año pasado hablamos sobre Face Depixelizer, una plataforma de inteligencia artificial que puede crear imágenes perceptualmente realistas a partir de rostros pixelados. El problema es que mucha gente en la Web creyó que esta tecnología permitiría identificar rostros censurados, cuando en la práctica no es así. De hecho, todo lo que presenta el algoritmo es «inventado», y a juzgar por sus resultados originales, tiene una imaginación muy amplia.

Sin embargo, el concepto de recuperación parcial se vuelve viable dependiendo del material a procesar. Por ejemplo, piensa en una contraseña pixelada. La información original queda destruida, pero en estos casos no se necesita un resultado perfecto: Es más que suficiente con conocer la estructura general de la contraseña (digamos, cuántos caracteres tiene en total) o algunas de sus letras para desarrollar un ataque más elaborado y preciso.


Cómo recuperar una contraseña de imágenes pixeladas con Depix

Eso nos lleva al proyecto Depix de Sipke Mellema, quien publicó en diciembre de 2020 un artículo llamado «Recovering passwords from pixelized screenshots». Allí explica el proceso básico de pixelización, y la historia de algunos algoritmos utilizados para «desenmascarar», que se remontan incluso a mediados de los ’90.


Una de las secuencias De Brujin que Depix utiliza en su procesamiento

¿Cómo funciona esto exactamente? El llamado «filtro de caja lineal» (nombre formal para el pixelado) utiliza un algoritmo determinista. En otras palabras, si decidimos pixelar el mismo valor una y otra vez, siempre vamos a obtener el mismo resultado. Y el texto no es inmune a esto. A continuación, un ejemplo de la letra J, repetida bajo el mismo filtro.


La letra J repetida 10 veces y pixelada. El patrón es idéntico.

Lo que hace Depix es analizar y comparar estos patrones, en un intento por identificar letras, números y símbolos específicos. Ahora, no es un trabajo tan sencillo que digamos: El algoritmo requiere el mismo tamaño de texto y color de fondo. Depix logra compensar utilizando como base una imagen que contiene una secuencia De Bruijn de todos los caracteres posibles.


Detalles técnicos y conclusión

Técnicamente, Depix es un script Python, y cualquier entorno preparado para recibirlos debería ser capaz de ejecutarlo. En lo personal recomiendo usar algún sabor de Linux, y prestar atención a la sección de dependencias, ya que no todas las distros tienen los elementos adecuados. Otro aspecto para destacar es que Depix se toma su tiempo. Todo depende de qué tan largo sea el pixelado a procesar, pero siempre vi al script usando un solo núcleo.


Probando a Depix en Kali
Los resultados fueron casi nulos en nuestro caso, pero lo intentaremos de nuevo…

En cuanto a los resultados, nuestra experiencia inicial fue bastante pobre. Tal vez sea necesario ajustar un poco más las condiciones previas de la imagen pixelada, pero no tenemos dudas de que su rendimiento mejorará con el paso del tiempo. Visita el perfil de Depix en GitHub, y haz la prueba.


Sitio oficial: Haz clic aquí


Escrito por Lisandro Pardo

Leave a Reply