Buenas noches.
Esto es una especie de traducción de un documento muy bueno que encontré, se encuentra a traducción literal pero es mucho mejor visitar la fuente en su idioma original.
_________________________________________________________________________
Creación de material de prueba con fines docentes o de prueba herramienta informática forense ha sido un problema conocido. Me encontré con el problema en mis estudios de Informática Forense de la Universidad de Westminster. Nos asignaron una tarea de comparar herramientas forenses informáticas y resultados del informe. Tener imágenes de prueba ya analizados por Brian Carrier ( http://dftt.sourceforge.net ) una y otra vez, me encontré la creación de imágenes de forma manual, lo que parece ser la mejor y única manera de hacer esto. Uno de mis profesores, Sean Tohill, confirmó este es el caso y un generador de imagen de prueba desde hace tiempo.
La necesidad de una herramienta de este tipo es doble. En entorno educativo, el problema del plagio puede ser mitigado por dar a cada estudiante una imagen individual para analizar.
En las pruebas de calidad de las aplicaciones, una de las pruebas debe
ser alimentar varias imágenes similares pero no idénticas a la
herramienta forense, y comparar los resultados, que deberían ser
idénticos.
El diseño y la creación de una herramienta como se convirtió en mi
proyecto de tesis de maestría, que ahora he terminado, y el Sr. Tohill
se convirtió en el director de obra. Uno de los resultados fue una solicitud, que crea imágenes basadas en un escenario definido por el usuario.
Cada imagen que representa el escenario es ligeramente diferente, pero
todos ellos debe ser igual en complejidad, lo que permite su uso en las
pruebas de la educación y software.
En este artículo se describe el proyecto e introduce la aplicación
resultante, que he publicado bajo GPL para que cualquiera pueda utilizar
o modificar. La herramienta está disponible en Github ( https://github.com/hannuvisti/forge.git ).
Se garantiza que funcione en Ubuntu 12.04, pero otros Linuxes son
probablemente muy bien, así como siempre que tengan / dev / loopX
dispositivos para montajes de bucle.
Principios de diseño y selección de herramientas
El diseño original tenía dos objetivos: crear imágenes de prueba
forense basada en escenarios con un elemento aleatorio añadido, y para
el diseño de la herramienta de tal manera que se puede extender
fácilmente sin necesidad de modificar el código existente. Esto llevó a la siguiente serie de requisitos:
- Crear sistemas de archivos NTFS - FAT12 / 16/32 habría sido otra opción pero NTFS fue elegido debido al interés personal y manejo detallado marca de tiempo.
- Proporcionar navegador web interfaz de usuario basada en crear escenarios, iniciar la creación de imágenes y contenido de la imagen de la pantalla.
- Diseño modular - código del sistema de archivos y datos reales métodos escondidos deben estar fuera del bucle principal del procesador. Su interfaz debe ser documentado para permitir la adición de nuevos sistemas de archivos y métodos de ocultación de datos.
- Implementar varios métodos de ocultación de datos diferentes para proporcionar una prueba de concepto.
- Permitir administración de los tiempos en los escenarios - diseñar la aplicación para proteger contra la contaminación de la línea de tiempo debido a las operaciones del sistema de archivos de la aplicación.
- Proporcionar medios para crear automáticamente varianza entre las imágenes
NTFS se adapte bien a la programación orientada a objetos debido a su diseño. Por falta de tiempo, lenguajes y herramientas de programación no se evaluaron a fondo.
Después de un corto período de pruebas y prototipos, elegí Python 2.7.x
como el lenguaje de programación sobre Java, principalmente debido a
que carecen de las variables Java sin firmar.
Interfaz de usuario y la conectividad de base de datos fue construida con Django.
Django es un framework complejo pero su interfaz "admin" incorporado
dio la parte de administración de base de datos utilizado en el diseño
de escenario y sin esfuerzo de programación.
La construcción de un escenario
Los únicos requisitos y acciones preparatorias son la base de datos de
inicialización - en el sistema de archivo de prácticas de inserción y
los datos que ocultan información sobre el método de la base de datos
con fines de modularidad - y la carga de archivos de las materias
primas. La aplicación proporciona los medios para realizar estas tareas. Inicialización de base de datos debe hacerse una vez después de la instalación inicial. Archivos RAW se pueden cargar en cualquier momento y compartidos entre los escenarios. Archivos crudos se clasifican a los "archivos triviales" y "archivos secretos". Archivos triviales se utilizan como mayor para poblar el sistema de archivos con información irrelevante. Estos archivos se clasifican automáticamente por su especie; imágenes, audio, ejecutables, documentos etc. Archivos secretos son los que se utilizan en los métodos de ocultación de datos. El usuario debe asignar un "grupo" numérico a estos archivos, por razones que se harán evidentes más tarde.
Caso
El núcleo de un escenario en el Forge se llama un caso. Caso define los parámetros de nivel de sistema de archivos. Actualmente, sólo se admite NTFS, FAT ya está en la tubería. Cada caso puede crear varias imágenes que todo cumplir el escenario global, pero no son idénticos.
Estrategia Trivial
Estrategias Trivial instruyen al creador de cómo construir la mayor parte o carente de interés de la imagen.
Puede haber muchas estrategias triviales en un caso como el escenario
requiere, pero al menos una estrategia trivial debe estar presente.
Estrategias secretas generalmente requieren "materia prima" sobre la
imagen y esta materia prima es proporcionado por estrategias triviales. Los archivos individuales son elegidos al azar desde el repositorio de archivos trivial según el parámetro "tipo".
Estrategia Secret
Estrategias secretas implementan datos ocultando métodos a las imágenes. Datos implementados actualmente métodos escondidos son:
- Secuencias de datos alternativas
- Cambio Extensión de archivo
- Concatenación de archivos
- Supresión de un archivo
- Archivo espacio de inactividad
- "No oculto" - sólo tiene que colocar el archivo en la imagen.
Mientras que una estrategia trivial coloca varios archivos a la imagen,
una estrategia secreta siempre opera exactamente en un archivo, que se
elige entre el repositorio secreto de acuerdo con un parámetro de
"grupo". Si un archivo es único en su grupo, el archivo se coloca siempre en la imagen.
Esto permite a los escenarios en el que todos los estudiantes deben
localizar determinados archivos, sino también los escenarios, donde se
elige el archivo al azar de una piscina.
Ocultación métodos tienen parámetros "tiempo" acción "acción" adicional y.
Si éstos están presentes, las marcas de tiempo MACE se modifican para
corresponder a la acción de archivo elegido, por ejemplo, leer, copiar o
cambiar el nombre.
Gestión de la línea de tiempo
Forge gestiona líneas de tiempo mediante la modificación de datos del sistema de archivos en bruto en una imagen sin montar.
Esto evita la contaminación de las marcas de tiempo, donde una
operación de disco para modificar archivos o marcas de tiempo cambiar
uno o más parámetros de fecha y hora.
En NTFS, tanto atributo $ STANDARD_INFORMATION y $ FILE_NAME son
modificados para corresponder a presentar el tiempo o el tiempo de la
acción.
La versión actual no modifica las marcas de tiempo en los índices de
directorio, pero voy a agregar esto a una versión del futuro cercano.
Un caso puede contener "la variación de tiempo". Si esto se establece en 0, cada imagen se vuelve una línea de tiempo idénticos.
Tras un parámetro de variación de tiempo distinto de cero, se elige un
número al azar entre 0 y el parámetro de variación de tiempo a cada
imagen individual. Esto representa el número de semanas añadidos a cada atributo de tiempo en el disco. El beneficio de tener la variación del tiempo en semanas es en la preservación de la hora del día y día de la semana.
Si un escenario educativo se basa en algo que sucede en una noche entre
el sábado y el domingo, este sería el caso en cada imagen, a sólo
semanas diferentes.
Resultados
Forge informa el éxito o fracaso de cada imagen creada. Las fallas pueden ocurrir en algunas o todas las imágenes si por ejemplo el sistema de archivos se queda sin espacio. Forge también se puede utilizar para imprimir una "hoja de trucos" para mostrar el contenido de una imagen.
La hoja de trucos muestra los resultados de las estrategias triviales (directorios docs / pic y /). Los elementos ocultos explican, que los archivos se han escondido y dónde. Por ejemplo, scotland.png se puede encontrar en una secuencia de datos alternativa de archivo /pic/IMG_8568.jpg. England.png está oculto en el archivo de holgura y podría ser extraído con el comando
dd if = hidingmethodtest-1 bs = 1 skip = 12720128 count = 1353 = de england.png
Objetivos y ubicaciones para objetos ocultos se eligen al azar, por lo
que cada imagen que representa el escenario similar, pero no idéntico.
Las imágenes deben ser iguales en la complejidad, así como los mismos
datos que ocultan los métodos se utilizan en todo el escenario, sólo
lugares, marcas de tiempo y, posiblemente, los archivos de origen
varían.
Extendiendo Forge
Para crear un nuevo método de ocultación de datos, una nueva clase de Python debe ser creado. La interfaz de clase es muy simple y se incluye en la documentación.
Básicamente, la clase debe implementar un hide_file método que toma el
archivo y matriz de parámetros como parámetros y devuelve un conjunto de
instrucciones o lanza una excepción en caso de fallo. Esta nueva clase se debe declarar en la base de datos, pero el código existente no necesita ser modificado.
La imagen ilustra esto. Los elementos de base de datos necesarios son ruta del archivo a incluir y el nombre de la clase ocultación de datos. La prioridad debe establecerse así y la igualdad de las prioridades están permitidos. Esto es para asegurar la creación de la imagen no contamina en sí.
Por ejemplo, si un archivo se oculta en un archivo de holgura y el
archivo eliminado, y luego otro archivo se escribiría en la imagen, es
posible que el archivo se sobrescribe. Por lo tanto, la prioridad uno métodos son los que modifican un sistema de archivos montado directamente. Prioridad 2 maneja supresiones y prioridad 3 del sistema de archivos sin montar modificaciones primas. Más prioridades se pueden establecer, si es necesario, esta es la configuración actual.
Los sistemas de archivos se pueden agregar de manera similar, pero la interfaz es más compleja. Documentación para ello se incluye en la documentación de forja.
Conclusión
Forge es una herramienta para crear imágenes de prueba relativamente simples rápidamente. Creación de diez imágenes tarda menos de un minuto. Su limitación en la actualidad es su enfoque en archivos individuales.
Si las estructuras más complejas, por ejemplo, historial de navegación,
deben ser incluidos, forja no es capaz de hacer eso con una cantidad
razonable de trabajo. Incluso en esos casos, Forge aceleraría la creación de las imágenes base.
Pros:
- Rápido
- Crea imágenes NTFS. La mayoría de las imágenes de prueba disponibles parecen ser FAT
- Interfaz gráfica de usuario
- Presta atención a la orden de las acciones en la construcción de imágenes, para evitar la contaminación en el escenario o línea de tiempo
- Fácil de instalar y configurar
Contras:
- Funciona en archivos individuales solamente - no pueden ser utilizados para crear archivos de correo electrónico, historial del navegador, etc.
- Gestión de base de datos no es perfecta - si por ejemplo el usuario desea eliminar archivos en los archivos ocultos repositorio, deben eliminar tanto las entradas de base de datos con la interfaz de usuario y los archivos físicos con rm.
- Atributo archivo de sistema NTFS veces corresponden principalmente a la creación de imágenes. Raíz tiempo directorio está establecido pero $ Bitmap etc. indican la hora de la última acción en la creación de imágenes. Decidir lo que serían las marcas de tiempo MACE correctos para cada archivo del sistema de acuerdo con el escenario de acciones no es una tarea trivial y en la actualidad no se han aplicado.
Este fue un proyecto interesante que hacer y actualmente estoy trabajando en FAT16 / 32 extensión. También voy a añadir la modificación del índice del directorio marcas de tiempo breve. NTFS es un sistema de archivos versátil que permite la manipulación timestamp complejo;
Forge intenta abandonar la línea de tiempo como no contaminado como sea
posible y es capaz de utilizar algunos de los más complejos rarezas de
marca de hora NTFS.
Yo estaría encantado de escuchar comentarios y solicitudes de mejora.
Hannu Visti
Fuente:
http://articles.forensicfocus.com/2013/10/18/forge-computer-forensic-test-image-generator/
http://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.co&sl=en&u=http://dftt.sourceforge.net/&usg=ALkJrhg80TwIxtkSRd9vyMLhuAZaPo3pFg
http://articles.forensicfocus.com/2013/10/18/forge-computer-forensic-test-image-generator/
http://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.co&sl=en&u=http://dftt.sourceforge.net/&usg=ALkJrhg80TwIxtkSRd9vyMLhuAZaPo3pFg
No hay comentarios:
Publicar un comentario