BandaAncha.eu

  • 🔍 en 📰 artículos ⏎
  • 🔍 en 💬 foros ⏎
  • 🔍 en 👇 este 💬 foro ⏎
  • 🔍 en 👇 este 💬 tema ⏎
Regístrate Regístrate Identifícate Identifícate

Saber si un fichero binario se ha modificado

Flikis

Quisiera saber si existe alguna manera de saber si el contenido de un fichero hexadecimal (archivo .bin), que datos de bytes se ha modificado, por decir algo, mirando la fecha de modificación de ese byte.

¿Se puede averiguar? En mi caso el tamaño del fichero es pequeño. Puedo entretenerme y mirarlo byte por byte.

rbetancor
1

No, aunque con matices … porque depende del sistema de ficheros sobre el que esté alojado el fichero en sí.

Con un sistema de ficheros como BTRFS, por ejemplo, podrías llegar a saber que bloques de información fueron alterados, activando la opción de snapshoot.

Pero así, de forma genérica … NO.

alezz

Técnicamente no es posible hacer eso que pides de la fecha. Las fechas se guardan por fichero y no por sección del mismo.

De todas maneras explica un poco más lo que estás haciendo ya que si el fichero que quieres comparar pertenece a la distribución siempre podrías sacarlo del paquete original y hacer la comparación.

Además, no sería lo mismo si el fichero se ha modificado o si se ha borrado y copiado otro con el mismo nombre, ya que en ese caso son inodos diferentes y es posible que el inodo donde estaba el fichero antiguo aún no se haya sobreescrito y sea posible acceder a él con herramientas de análisis forense.

calanor

Guarda un hash como MD5 de los ficheros que quieras vigilar. Así sabrás si han sido manipulados.

🗨️ 1
PezDeRedes

Ya que vamos a usar resúmenes, usemos resúmenes seguros y no rotos, como SHA-2 o SHA-3.

vukits

¿Quién es el fabricante/constructor del fichero?

Nombre de usuario

Como parece que te aburres:

$ od -Ax -tx1z -v fichero.bin

e-chus

¿Tienes fichero original con el que comparar?

Si tuvieras el fichero original, el comando cmp de Linux/Unix es lo que buscas :

cmp - compare two files byte by byte

Con el modificador -b te saca los bytes diferentes :

  • b, –print-bytes

print differing bytes

Flikis

Pongo un ejemplo… en un coche tenemos una centralita airbag (normalmnete se instala en la zona del freno de mano)… en ella se le programa en una memoria Eeprom un fichero.bin con sus datos

originales de fabrica… al saltar los airbag tras un accidente, este fichero se modifica indicandole a la centralita del coche que ha sufrido un impacto… por ese motivo era mi pregunta, si habia alguna forma de saber que bytes son los que se han alterado … partimos del caso que no sabemos los datos originales de ese fichero, por eso preguntaba si había alguna forma de averiguarlo.

Saludosy gracias por vuestra ayuda