Post194 nn

Extrayendo evidencia digital de imágenes con Python Imago Forensics


Profile
Omar Jacobo Muñoz Veliz

INTRODUCCIóN

 

Imago es una herramienta de Python que extrae evidencias digitales de imágenes de forma recurrente. Esta herramienta es útil a lo largo de una investigación forense digital. Si necesita extraer evidencias digitales y tiene muchas imágenes, a través de esta herramienta podrá compararlas fácilmente. Imago permite extraer las evidencias en un archivo CSV o en una base de datos sqlite. Si en un exif JPEG están presentes las coordenadas GPS, Imago puede extraer la longitud y la latitud y puede convertirlas a grados y recuperar información relevante como ciudad, nación, código postal ... Imago también ofrece la posibilidad de calcular el Análisis de Nivel de Error, y para detectar la desnudez estas funcionalidades están en BETA.

 

La herramienta está disponible en https://github.com/redaelli/imago-forensics

 

INSTALACIÓN

 

Esta herramienta la podemos instalar con pip.

 

1) Instalar imago

 

$ pip install imago

 

2) Una vez instalado el un nuevo binario estará disponible

 

$ imago 

 

Requerimientos

 

python 2.7
exifread 2.1.2
python-magic 0.4.15
argparse 1.4.0
pillow 5.2.0
nudepy 0.4
imagehash 4.0
geopy 1.16.0

 

Uso

 

usage: imago.py [-h] -i INPUT [-x] [-g] [-e] [-n] [-d {md5,sha256,sha512,all}]
                [-p {ahash,phash,dhash,whash,all}] [-o OUTPUT] [-s]
                [-t {jpeg,tiff}]

optional arguments:
  -h, --help            show this help message and exit
  -i INPUT, --input INPUT
                        Input directory path
  -x, --exif            Extract exif metadata
  -g, --gps             Extract, parse and convert to coordinates, GPS exif
                        metadata from images (if any)It works only with JPEG.
  -e, --ela             Extract, Error Level Analysis image,It works only with
                        JPEG. *BETA*
  -n, --nude            Detect Nudity, It works only with JPEG, *BETA*
  -d {md5,sha256,sha512,all}, --digest {md5,sha256,sha512,all}
                        Calculate perceptual image hashing
  -p {ahash,phash,dhash,whash,all}, --percentualhash {ahash,phash,dhash,whash,all}
                        Calculate hash digest
  -o OUTPUT, --output OUTPUT
                        Output directory path
  -s, --sqli            Keep SQLite file after the computation
  -t {jpeg,tiff}, --type {jpeg,tiff}
                        Select the image, this flag can be JPEG or TIFF, if
                        this argument it is not provided, imago will process
                        all the image types(i.e. JPEG, TIFF)

 

El único argumento requerido es -i, que es el directorio base desde el cual imago comenzará a buscar un archivo de imagen. También debe proporcionar al menos un tipo de extracción (es decir, exif, data, gps, digest).

 

Ejemplo

 

$ imago -i /home/solvent/cases/c23/DCIM/ -o /home/solvent/cases/c23/ -x -s -t jpeg -d all

 

En donde los argumentos son:

 

-i ruta: Es el directorio base, donde imago buscará el archivo.
-o ruta: El directorio de salida donde imago guardará el archivo CSV, con los metadatos extraídos.
-x: Imago extraerá metadatos EXIF.
-s: La base de datos temporal de SQLite no se eliminará después del procesamiento.
-t jpeg: Imago buscará solo imágenes jpeg.
-d todo: Imago calculará md5, sha256, sha512 para las imágenes jpeg.



Artículos que te pueden interesar

Charly face
Rodrigo Quiñones
ha comentado hace 5 meses

Hola, los requerimientos hay que instalarlos manualmente ?python 2.7exifread 2.1.2python-magic 0.4.15argparse 1.4.0pillow 5.2.0nudepy 0.4imagehash 4.0geopy 1.16.0

Profile
Omar Jacobo Muñoz Veliz
ha comentado hace 5 meses

Hola, si estos hay que instalarlos manualmente. Saludos