-
-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FileVault trigger #58
Comments
Hey @Technoprenerd thanks for the ticket :) Sorry, I'm not especially familiar with the internals and usage of FileVault. Are you saying that if:
And then, if we remove "User B" from having access to the FileVault volume, then the FileVault volume effectively can no longer be decrypted (even by the root user)? Does apple have any decent documentation describing how all this works? In LUKS there's 8-32 keyslots, and the way LUKS works is very clearly documented in the whitepapers:
Is there an equivalent whitepaper describing FileVault so I can wrap my head around its headers/footers/keyslots/encodings/recovery/etc? I think the deliverable here would be to not only write a self-destruct trigger for FileVault, but to thoroughly document that it works (with forensic evidence), as was done for our LUKS Self-Destruct Trigger: |
@maltfield me neither, but from my limited understanding the above should be correct. There are multiple FileVault Analysis or Filevault reverse engineering papers, but I haven't found official documentation from Apple. Filevault Wikipedia and Apple site: Filevault analysis from Scheiner: And on: Some schematics in slide 11 in this pdf: Maybe there are other sources I haven't looked at yet (like forensics or re papers). Since there is no official documentation, I don't think we can get to a forensic evidence stage. |
Great links, thanks!
That's really shocking but also not surprising. Honestly I'm not sure if I'll be investing effort in implementing a self-destruct feature on a disk encryption scheme that doesn't have official documentation. All we'd get is a time-sink of effort into something that we can't prove actually works or not :( It's unfortunate because I do think a lot of our users are using MacBooks. I generally recommend veracrypt instead of bitlocker on Windows, but a quick check suggests that veracrypt "System Encryption" is supported in Windows, but not MacOS Are there any open-source FDE tools that are fully supported and actively used for MacOS? |
It's unfortunate but it seems that there was one FOSS FDE tool for MacOS, but not anymore FOSS and usable. PGP Whole Disk Encryption for MacOS - https://tidbits.com/2010/05/14/pgp-whole-disk-encryption-and-pgp-desktop-professional-10-0/ Not much is known for FDE in MacOS (besides non-foss FileVault and out of date applications). |
Agreed. I think the best thing is to tell Mac users to, yes, use FileVault -- but only store really sensitive stuff in veracrypt volumes. @Technoprenerd I know MacOS is designed to sleep rather than shutdown, but can you tell me: if a MacOS machine is shutdown by BusKill (via the soft-shutdown trigger), does that already dismount veracrypt volumes (ie after booting the computer again, will it or will it not require a password again to decrypt/mount a veracrypt volume that was mounted at the time the shutdown trigger executed)? |
See also #60 |
@maltfield: Yes. I've executed the script : https://github.com/BusKill/buskill-app/blob/master/src/packages/buskill/root_child_mac.py The output of the logging is:
What is interesting is that the screen froze for 2 or 3 seconds, I couldn't do anything (no mouse/keyboard i/o). |
This is an idea for a FileVault trigger.
After the cable is detached, the trigger should be possible to remove the user that has access to Filevault (like: https://brendanthompson.com/til/2021/07/remove-user-from-filevault).
The command to remove a user from FileVault is:
sudo fdesetup remove -user <Username>
This way, another (non admin) user can be first setup with access/login to filevault (for good opsec with an unkown password, but that would make it unusable after reboot), so that when the shutdown is triggered, the specific filevault user is removed.
The best option is to delete the whole FileVault key, but AFAIK that's not possible on a running Mac since it's also the boot/system partition, which has to be running when the trigger activates.
Links from my research:
https://discussions.apple.com/thread/7169436
https://apple.stackexchange.com/questions/261537/i-was-able-to-erase-filevault-encrypted-drive
Any thoughts or ideas are greatly appreciated.
The text was updated successfully, but these errors were encountered: