veracrypt / VeraCrypt

Disk encryption with strong security based on TrueCrypt
https://www.veracrypt.fr
Other
6.93k stars 950 forks source link

VeraCrypt does not update the Date Modified for containers #209

Closed NannoSilver closed 3 years ago

NannoSilver commented 7 years ago

Hi,

I am running VeraCrypt 1.21 64 bits version on my Windows 10 Pro x64 with all updates. The computer runs smooth without any issue. VeraCrypt is installed as a regular software, instead portable. Containers are in a NTFS partition and they have no hidden containers.

I have a number of VeraCrypt containers named like "mycontainer.hc". I can mount, dismount and perform all regular operations with files inside the containers without any problem.

The problem is... the mycontainer.hc file "Date Modified" property registered on the file system and visible with Windows Explorer is not updated. The Date Modified remains the same as Date Created, does not matter how much I change the files inside the container.

This problem is tricking my backup software that is assuming mycontainer.hc was not changed and, because of that, the latest container file version is not backed-up.

I can set my backup software to force the backup for containers, but that is not a good solution for many reasons:

I think many people doing backup for containers are not even aware of such problem.

Eyremba commented 7 years ago

That's fully intentional.

VeryCrypt resets the modify and the last access date everytime, to leave no hints for attackers.

As far as I know, this can't be disabled in the current versions.

Maybe there will be a config option for that later, if the author of VeraCrypt implements this.

panther2 commented 7 years ago

@sukhoi47

There has been and is a setting that can be disabled in order to get the Date modified:

vc

NannoSilver commented 7 years ago

Thanks for the info, @panther2.

All set now!

sir106 commented 6 years ago

I tried this, but this has no effect (veracrypt 1.21, 64-bit) - did anyone suceed on this?

jncraton commented 6 years ago

You can also avoid having the modified time overwritten by mounting with --mount-options=timestamp from the command line. That's working for me currently, but I'm still on 1.17.

metal450 commented 6 years ago

I'm also having this issue with regards to backup software, also tried Preferences->Preserve modification timestamp=disabled, and like sir106 noted, it seems to have no effect either way. I still see no way to ensure that my modified containers get backed up.

I've googled around and found a number of other forums w/ users expressing the same issue (i.e. https://www.tenforums.com/antivirus-firewalls-system-security/91468-veracrypt-container-timestamp-wont-change.html)

Bender- commented 6 years ago

Hi everyone,

for those waiting for a fix for this. I experience the same issue when checking that option in the GUI. The container date does not change. However i am using the commandline to mount my container and use the option "/m ts" and there it is working for me now. (Veracrypt 1.22 64-Bit)

Notice: I only mount via commandline and the parameter. When i dismount i still use the gui for that.

This is the full commandline i use:

"C:\Program Files\VeraCrypt\veracrypt.exe" /q  /l s /m ts  /v d:\data\<filename>.<extension>

/q for quiet mode
/l s for setting the drive letter, in this case s
/m to disable protecting the timestamp
/v ...  the containerfile to be mounted
wbrells commented 6 years ago

Bender,

Thanks very much for the info on using Veracrypt with the command line. The "/m ts" option does appear to work and results in the "date modified" being updated appropriately. HOWEVER, the "date modified" time seems to also (incorrectly!) get updated every time the volume is mounted, even though NOTHING HAS BEEN WRITTEN to it! (I do see that some data is READ from the mounted volume, but that shouldn't trigger an update to the "modified" time.) This behavior is causing my Veracrypt volume to be backed up more frequently than necessary, and I wonder if there is any way to keep the "date modified" from being updated when the volume is just being mounted?

Thanks, Wayne

NannoSilver commented 6 years ago

This subject has been clarified already! The non-changing date is an intended security feature that can be turned off/on in the VeraCrypt settings.

Check the post written by @panther2 that has an animated GIF file showing how to turn off/on. Here is the direct link to such comment: https://github.com/veracrypt/VeraCrypt/issues/209#issuecomment-329992402

wbrells commented 6 years ago

Folks,

I've found, like several other users, that the "Preserve modification timestamp of file container" option in the VeraCrypt GUI does not appear to work. If the GUI is used to mount a volume the modification timestamp never gets changed regardless of the above-mentioned option. However, using the command line way of mounting a volume (see comment from Bender, above) DOES cause the modification timestamp to be updated appropriately. MY PROBLEM is just that the modification timestamp is INCORRECTLY updated when all I do is mount a volume and DON'T update any files! I'm hoping there is some way to keep this from happening & to PREVENT the 'mount' operation from updating that timestamp...

Wayne

wbrells commented 6 years ago

Folks,

Now I'm very confused! In my latest testing it doesn't seem that using the command line to mount a VeraCrypt volume really helps with the "date modified" problem! Also, I noticed in at least one case just dismounting a volume (using the GUI) caused the "date modified" to get updated. In other words, VeraCrypt seems VERY ERRATIC when it comes to when/if it updates the "date modified" time!

Does anyone have a better insight as to what is happening when it comes to VeraCrypt and "date modified"?

Thanks, Wayne

ghost commented 5 years ago

The solution described in this post https://github.com/veracrypt/VeraCrypt/issues/209#issuecomment-329992402 worked in the 64-bit version 1.23-Hotfix-2 that I‘m using. Thanks for that tip.

pacproduct commented 4 years ago

Was facing the same issue for backing-up the container.

I'm on 64-bit version 1.24-Hotfix-1 and unchecking the checkbox "Preserve modification timestamp of file containers" as mentionned in https://github.com/veracrypt/VeraCrypt/issues/209#issuecomment-329992402 did do the trick for me too. Cheers.

Although I think this label could be clarified because I wouldn't have guessed what it does on my own. Thanks for the tip!

alt3r-3go commented 4 years ago

All, this (preserving the timestamps on containers) is actually a standard feature of VC, enabled by default, in order to be more privacy-oriented. @idrassi, based on apparent non-zero popularity of this issue, do you think it would be helpful to elaborate on this a bit in the docs? I currently see a mention in CLI version docs only (here).

MyCoolAnvil commented 4 years ago

Unfortunately having read this and other threads I am still experiencing an issue with Veracrypt not updating the modified date on the volume file.

In my instance this was something that was previously working but then suddenly stopped (i'm not sure if it was related to a Windows 10 update). It stopped working a while ago (probably over a year) but didn't have the time to investigate until today. I have tried all of the following:

In all instances the modified date remains unchanged after the contents of the volume have been modified and the drive dismounted.

Any ideas on what my issue might be? As mentioned I'm on Windows 10 Pro (running the most recent updates).

Thanks,

Michael.

egorshulga commented 4 years ago

~I have "Preserve modification timestamp of file containers" flag unchecked, and still timestamps are not modified. Could this flag be broken?~

Apparently I was wrong, I observed modifying of timestamps during dismount. Sorry for inaccurate report

MyCoolAnvil commented 4 years ago

Just an update from my post above but the modified date started to update a couple of days later. Whether it was the fact that I restarted Windows in between, I don't know. This was with Veracrypt 1.24-Update6 - I have a desktop still running 1.23-Hotfix-2 and confirmed that this version still doesn't work.

Note however that whilst 1.24-Update6 now updates the modified date, I have observed what others have stated about it being updated every time you dismount regardless of whether the volume has been modified or not. This is far from ideal when sync'ing across devices as the most recently accessed will seem like the most up to date version when this might not be the case, resulting in data loss.

I think enough people are reporting issues with this flag that it should be investigated by VeraCrypt.

alt3r-3go commented 4 years ago

@MyCoolAnvil, let's split this to make sure the specific issue to fix (if any) is isolated. What do you think should be investigated/fixed here:

  1. The fact that the timestamp is not updated (which seems to be actually not an issue for the latest 1.24-Update6 as you have found out yourself)
  2. The fact that the timestamp is always updated, even if the user seemingly hasn't done any volume modifications? Please note that this one can actually be a side effect of the OS doing some housekeeping, indexing, creating thumbnails or something like antivirus checking stuff and modifying access timestamps - all behind the scenes from the user's point of view.

?

MyCoolAnvil commented 4 years ago

Hi @alt3r-3go,

As you state it seems that the timestamp is in fact being updated now with the latest version of VeraCrypt so this appears to be resolved.

With regards to the timestamp always updating, I'm not sure this is down to the OS or antivirus software. I've observed that if I mount the volume and then immediately dismount (without ever accessing the mounted drive) then the modified time changes. I think this is definitely something that needs investigated as this could lead to data loss when sync'ing across multiple locations.

amitblockchaindev commented 3 years ago

I am using older version 1.21....the issue does not exist.

alt3r-3go commented 3 years ago

@agupta1979, what about the current release, does on the same system where you tested 1.21, step 2a in your list actually change the timestamp for you?

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 3 years ago

This issue has been automatically closed because it has not had recent activity. This probably means that it is not reproducible or it has been fixed in a newer version. If it’s an enhancement and hasn’t been taken on for so long, then it seems no one has the time to implement this. Please reopen if you still encounter this issue with the latest stable version. You can also contribute directly by providing a pull request. Thank you!

grahamkeen commented 3 years ago

This issue still exists for me even though I am using V1.24 Update 7 (64bit) The unchecking of the preference has no effect. Regards, Graham.

rune-b commented 3 years ago

@grahamkeen I just unchecked this preference and now the modified date updates for me. But not until I actually changed a file in the volume. Just mounting it did not alter the date.

Using 1.24-Update6 (64 bit), Windows 10

gety9 commented 2 years ago

VeraCrypt 1.24-Update7 (64-bit), Windows 10 Pro

Unchecking "Preserve modification timestamp for file containers" updates Date Modified

-, on file changes inside of container (good)

-, on any open/close of container (bad)

2nd part is the issue.

Vinfall commented 2 years ago

But not until I actually changed a file in the volume. Just mounting it did not alter the date.

@rune-b Did you just mount the volume and unmount it without data being READ? As mentioned by @wbrells, VeraCrypt should not update the timestamp by just "reading" the file (instead of "writing"/"overwriting").

The followings are tested on VeraCrypt 1.25.9 on Windows 10. Just mounting & unmouting the volume does not change the timestamp, which is good. However, accessing the volume without modification should not update the timestamp.

Checking Preserve modification timestamp for file containers File Timestamp Result
Yes No read or overwritten Preserved Good
Yes Read Preserved Good
Yes Overwritten Preserved Good
No No read or overwritten Preserved Good
No Read Changed Bad
No Overwritten Changed Good
alexagranov7 commented 11 months ago

I'm using 1.26.7(64-bit) on Windows 11. How can I get the container timestamp to update so that my backup software picks it up?

Vinfall commented 11 months ago

It's mentioned above but anyway, Settings -> Preferences -> Uncheck Preserve modification timestamp of file container. Or alternatively you can switch to a backup solution that supports delta sync.

thamulot commented 7 months ago

FYI - for the Preserve modification timestamp for file containers option to work, I had to initially restart the application after unchecking it. Please note that the modification date only change uppon unmounting the volume.