Hace menos de una semana os di la vara con el tema de los metadatos Exif y os presente un [par de PoC] para ver como se podía extraer y eliminar. La verdad es el código que utilice para la PoC de extraer metadatos utilizaba una librería un poco desfasada y de la que ya me queje [en la siguiente] entrada.
Así que me había llegado hace ya semanas el libro de Python para Pentesters y sabiendo que había un capitulo donde se hablaba de metadatos, he decidido volver a mirar el código a ver si podía sacar una idea y no solo me he encontrado con una idea si no con la solución entera. Ademas, utilizando la librería PIL así que no voy a tener que importar tantas cosas cuando junte los dos scripts y va a quedar un código mas bonito.
from PIL.Exif.Tags import TAGS
from PIL import Image
def testForExif(imgFileName):
try:
exifData = {}
imgFile = Image.open(imgFileName)
info = imgFile._getexif()
print info
if info:
for (tag,value) in info.items():
decoded = TAGS-get(tag,tag)
exifData[decoded] = value
exifGPS = exifData['GPSInfo']
if exifGPS:
print '[*] ' + imgFiileName + 'GPS Data: ' + exifGPS
except:
pass
testForExif('D:\\StateXMola.png')
La verdad es que me parece una solución cojonuda, solo que la mía estaba hecha con menos lineas de código. Pero, con esto ganamos unificar librerías y trabajar con una libreria que no está en desuso. Os recomiendo encarecidamente este libro porque la verdad es que es una maravilla.
Mas información del libro:
Sed Buenos ;)
No hay comentarios:
Publicar un comentario