Centralizar & Organizar los mejores artículos de Seguridad informática.
Base 64 es un sistema de numeración posicional que usa 64 como base. Es la mayor potencia de dos que puede ser representada usando únicamente los caracteres imprimibles de ASCII. [Wikipedia]
Como tal, es un sistema de codificación de información y no de cifrado de la misma, es decir, es una forma distinta de representar la misma información, que no añade ninguna medida de seguridad extra. Es por eso, que me llamó mucho la atención cuando encontré que el diccionario de sinónimos de Word propone codificar como sinónimo de cifrado. Para ilustrar aquel rápido post desde un aeropuerto, se me ocurrió buscar algunos ejemplos que ilustraran ese hecho, algo rápido. Sin embargo, al hacer las pruebas, me encontré con la sorpresa de que se puede encontrar mucho más de lo que al principio supuse. Es por ello, que pospuse los ejemplos hasta tener realizadas más pruebas. Y estas van en este artículo
Jugando con Admin
La primera de las pruebas que hice fue buscar la codificación de admin, que en base64 es YWRtaW4= a ver que salía, y me hizo gracia encontrar cosas como estas:
Figura 2: Metadatos en la página de la UGT con el usuario admin como creador
Figura 3: Log de ficheros subidos por el usuario admin
Figura 4: “Extraño” valor en la cookie de una aplicación de la rfef
Por supuesto, de jugar con la palabra admin, a utilizar este truco para buscar credenciales, solo iba un paso, así que, a por ello.
Jugando con Username y Password
Tras ver la cantidad de información que aparecía codificada en Base64, decidí que era momento de buscar ficheros de log que guardasen datos de conexiones. Para ello basta con utilizar las palabras Username (VXNlcm5hbWU=) y Password (UGFzc3dvcmQ6) – ojo que Base64 es case-sensitive – en las búsquedas de ficheros de texto o lde tipo log, y esto es lo que apareció.
Figura 6: Usuario admin autenticado. Password en Base64
En algunos casos no es necesario ni decodificar los valores, basta con seguir leyendo el log.
Jugando con localhost
Otra de las cadenas chulas para encontrar cosas curisosas es la palabra localhost: bG9jYWxob3N0. Con esta cadena aparecen cosas muy curiosas como la cadena de conexión a una base de datos configurada en local.
Otra de las cosas curiosas que se pueden hacer consiste en buscar direcciones IP concretas puestas en formato Base64. Esto puede servir para detectar fallos de configuración, encontrar ficheros de log, o encontrar más información de una determinada dirección IP en Internet que se esté traceando.
Muchas aplicaciones intentan ocultar la fuente de contenido para que el usuario menos avezado no sepa donde está el fichero original, y utilizan sistemas en Base64 para ocultar la ubicación de estos. Esto se puede encontrar casi con cualquier tipo de fichero multimedia.
- Averiguar la ubicación de la foto de “la señorita”.
- Averiguar la ubicación de el video del gol del Diego.
- Averigura la ubicación de la canción de Rosendo Mercado.
Armas de destrucción masiva
Los ejemplos anteriores, en los que se averiguan las rutas, tienen la gracia, todos ellos, de que están cargando el contenido desde rutas accesibles vía web. Es decir, que si se le cambian las URLs se puede hacer que estas aplicaciones hagan GET a la URL que a ti te interese, con lo que se podría hacer un ataque como el que se explicaba en el artículo de “Buscadores como arma de destrucción masiva“.
Acceso local (LFI) o a contenido remoto
Otra de las curiosidades de este sistema es que las peticiones se hacen desde la dirección IP del servidor, así que será el servidor el que realice la petición desde su URL y a donde tenga acceso. En este ejemplo, de la Universidad de Camberra, se puede ver que utilizan una variable para cargar el resultado de las búsquedas.
Buscando rutas locales
Para encontrar algunas webs que hicieran cosas graciosas con Base64, se me ocurrió buscar algunas rutas de fichero típicas para ver que veíamos. Aquí hay algunos ejemplos.
/Home:
Con /home/, cuya codificación es L2hvbWUv, encontré esta URL, con un parámetro muy divertido.
Buscar por /etc/, cuya codificación es L2V0Yy8=, aparece en la caché de Google una shell devolviendo un fichero de configuración de un sitio vulnerado, curiosa casualidad. Aunque visto lo visto con las shells y Google.
El tema es que las posibilidades de uso de Base64 se me escapan de las manos, ya veo Base64 en cualquier sitio. El otro día, revisando una obra de teatro apareció este parámetro.
Saludos Malignos!
Publicaciones Anteriores
Publicaciones Siguiente
Los comentarios están cerrados.