¿Puede parecer que un archivo ha sido modificado antes de su creación?

¿Puede parecer que un archivo ha sido modificado antes de su creación?

¿Es posible tener un archivo que tenga una fecha de modificación anterior a su fecha de creación? ¿Qué acciones provocarían que este evento ocurriera?

Respuesta1

Si crea un archivo desde cero, obtendrá una hora de creación de "ahora" y una fecha de modificación de "ahora". Ahora imagina copiar este archivo a otra unidad. Windows mantendrá la hora de modificación, pero la hora de creación de ese archivo se establecerá en la hora en que copió el archivo en esa unidad (es decir, la hora en que se creó el archivo).esoconducir). Simple como eso.

En realidad es correcto:

  • La última vez que se cambió el contenido del archivo se almacena en la hora de modificación.
  • La hora en que se creó el archivo en esta misma unidad se almacena en la hora de creación.

Respuesta2

En Windows, es muy fácil configurar (falsificar, si se quiere) las horas de creación y modificación de un archivo. No es necesario cambiar el reloj de la computadora; ni siquiera necesitas acceso de administrador local. Todo lo que necesitas es acceso de escritura al archivo en cuestión.

Para establecer la hora de creación de un archivo con PowerShell usandoSetCreationTime:

[System.IO.File]::SetCreationTime("C:\path\to\file.ext", (Get-Date "8/8/2088"))

Para configurar la hora de la última modificación usandoSetLastWriteTime:

[System.IO.File]::SetLastWriteTime("C:\path\to\file.ext", (Get-Date "7/4/1776"))

En Linux, puede cambiar fácilmente la hora de la última modificación de un archivo con la -dmarca touch, como se muestra enesta respuesta de Preguntar a Ubuntu. Realmente no existe una noción de una fecha de creación para los archivos en los sistemas de archivos Linux (lecturas adicionales en Unix y Linux).

Respuesta3

Considere un archivo .tar extraído. Normalmente, los archivos extraídos tendrán una marca de tiempo de la última modificación asignada a partir del contenido del archivo (que generalmente es del pasado, a menos que sea un viajero en el tiempo). En lo que respecta al sistema de archivos, estos archivos acaban de crearse.

También existen utilidades para cambiar la hora de modificación de archivos existentes, en Linux por ejemplo esta es latocardominio.

Respuesta4

Lo más importante a tener en cuenta aquí es que el tiempo de modificación del archivo no es realmente especial: se almacena como cualquier otro dato. No hay forma de saber cuándo se publicaron los datos.de hechoúltimo escrito o leído.

Desde aquí, podemos ver que siempre es posible (excluyendo medios de escritura única como un CD) ir y modificar directamente los bits en una unidad que almacena la hora de la última modificación, o incluso la hora de creación.

De manera más práctica, esto también es posible desde los sistemas operativos comunes, como lo han señalado otras respuestas. En Windows, esto lo proporciona WinAPI.SetFileTimefunción, y puedes hacer esto conutimeen Linux. Herramientas como touchconstruir sobre estas API.

El uso legítimo más común de estas API es preservar el tiempo de modificación, por ejemplo, al copiar archivos, extraerlos de archivos, etc.

información relacionada