Commit Graph

442 Commits

Author SHA1 Message Date
Patrick Schleizer
33d97a2560
improve output of remount-secure dracut module 2023-10-22 09:39:54 -04:00
Patrick Schleizer
c409e3221e
implement remount-secure 2023-10-22 09:36:03 -04:00
Patrick Schleizer
90f2b5e11c
code simplification 2023-10-22 08:51:37 -04:00
Patrick Schleizer
e065f85c88
add remount-secure dracut module 2023-10-22 08:10:48 -04:00
Raja Grewal
7a4212dd76
Update copyright 2023-03-30 17:08:47 +11:00
Patrick Schleizer
7bda2ad3e8
move ram-wipe scripts to dedicated ram-wipe package 2023-01-24 06:34:17 -05:00
Patrick Schleizer
d769099db1
use warn instead of info for now
because dracut does not show info messages when kernel parameter quiet is set
2023-01-09 05:34:07 -05:00
Patrick Schleizer
2fd302f580
output 2023-01-07 18:02:21 -05:00
Patrick Schleizer
080abe574b
output 2023-01-07 17:48:21 -05:00
Patrick Schleizer
5689c07f97
comment 2023-01-07 17:37:46 -05:00
Patrick Schleizer
8e2db269b0
cleanup 2023-01-07 17:36:51 -05:00
Patrick Schleizer
539156c0da
drop_caches 2023-01-07 17:23:25 -05:00
Patrick Schleizer
02f44459ad
DRACUT_QUIET=no 2023-01-07 17:22:45 -05:00
Patrick Schleizer
ab89d0e06e
cleanup 2023-01-07 16:59:00 -05:00
Patrick Schleizer
2e833b40a1
prevent "wait: pid 55 is not a child of this shell" 2023-01-07 16:43:09 -05:00
Patrick Schleizer
3777ecba85
comment 2023-01-07 16:34:19 -05:00
Patrick Schleizer
e0ded5e69d
comment 2023-01-07 16:34:04 -05:00
Patrick Schleizer
4fca8f4225
comment 2023-01-07 16:28:11 -05:00
Patrick Schleizer
2456fed361
output 2023-01-07 16:00:42 -05:00
Patrick Schleizer
c0b5fea680
protect against wipe RAM reboot loop 2023-01-07 15:59:52 -05:00
Patrick Schleizer
91aedb234a
output 2023-01-07 15:36:36 -05:00
Patrick Schleizer
368ad8e636
cleanup 2023-01-07 15:36:05 -05:00
Patrick Schleizer
d8bf40f7a2
refactoring 2023-01-07 15:35:45 -05:00
Patrick Schleizer
166a6863a1
output 2023-01-07 15:35:15 -05:00
Patrick Schleizer
20596488be
long options 2023-01-07 15:34:20 -05:00
Patrick Schleizer
6e0926eece
long options 2023-01-07 15:22:58 -05:00
Patrick Schleizer
51a5f68c76
refactoring 2023-01-07 15:22:25 -05:00
Patrick Schleizer
059ebb212d
comment 2023-01-07 14:35:30 -05:00
Patrick Schleizer
c0304ec029
minor 2023-01-07 14:35:09 -05:00
Patrick Schleizer
e83ba18553
minor 2023-01-07 14:29:12 -05:00
Patrick Schleizer
bb121e52bb
chmod +x 2023-01-07 14:27:22 -05:00
Patrick Schleizer
d37b19fb6b
comment 2023-01-07 12:55:05 -05:00
Patrick Schleizer
0367250dc7
comment 2023-01-07 12:54:35 -05:00
Patrick Schleizer
c1df2fd601
comment 2023-01-07 12:52:14 -05:00
Patrick Schleizer
c2b20603fd
output 2023-01-07 12:49:18 -05:00
Patrick Schleizer
999a82ed94
output 2023-01-07 12:46:21 -05:00
Patrick Schleizer
2860560edb
minor 2023-01-07 12:43:07 -05:00
Friedrich Doku
b8e82fffca Get rid of /dev/kmsg 2023-01-07 11:31:02 -05:00
Friedrich Doku
78a4fad667 Change echo to info. Included more reliable way of getting initrd and kernel. Allow user custom kexec 2023-01-07 11:14:31 -05:00
Friedrich Doku
7cf51a1b43 Checking job queue instead of dbus 2023-01-06 21:32:57 -05:00
Friedrich Doku
4b7053a635
Update wipe-ram.sh 2023-01-06 13:53:28 -05:00
Friedrich Doku
779ad24b57
Update wipe-ram-needshutdown.sh 2023-01-06 13:53:18 -05:00
Friedrich Doku
d45ba826bc
Update module-setup.sh 2023-01-06 13:53:10 -05:00
Friedrich Doku
b3d4314a06
Update wipe-ram.sh 2023-01-06 13:52:51 -05:00
Friedrich Doku
3387725017
Update wipe-ram-needshutdown.sh 2023-01-06 13:52:42 -05:00
Friedrich Doku
ec68ee6ded
Update module-setup.sh 2023-01-06 13:52:32 -05:00
Friedrich Doku
37a5264696
Update wipe-ram.sh 2023-01-06 13:47:34 -05:00
Friedrich Doku
7ac45acd0f
Update wipe-ram-needshutdown.sh 2023-01-06 13:47:23 -05:00
Friedrich Doku
114a37fcd3
Update module-setup.sh 2023-01-06 13:47:14 -05:00
Friedrich Doku
1eeb32b7b9
Update wipe-ram.sh 2023-01-06 13:47:01 -05:00
Friedrich Doku
c5accc5ad1
Update wipe-ram-needshutdown.sh 2023-01-06 13:46:51 -05:00
Friedrich Doku
f9ebc3cfa8
Update module-setup.sh 2023-01-06 13:46:40 -05:00
Friedrich Doku
d67d3c1d7d
Update wipe-ram.sh 2023-01-06 12:51:18 -05:00
Friedrich Doku
7fa64d6842
Update wipe-ram-needshutdown.sh 2023-01-06 12:50:58 -05:00
Friedrich Doku
14c7239681
Update module-setup.sh 2023-01-06 12:50:42 -05:00
Friedrich Doku
73913ea5af Added checks 2023-01-06 12:49:34 -05:00
Friedrich Doku
a7015f4ddf added files 2023-01-06 10:50:34 -05:00
Patrick Schleizer
82da4ed18f
comments 2022-07-28 09:56:24 -04:00
Patrick Schleizer
a6bee1493d
cold-boot-attack-defense wait longer to make messages readable by user 2022-07-28 09:55:12 -04:00
Patrick Schleizer
053142cdb5
fix 2022-07-26 10:00:21 -04:00
Patrick Schleizer
69af8be7b8
drop_caches before and after sdmem 2022-07-02 19:10:55 -04:00
Patrick Schleizer
67bdd58bf2
sync 2022-07-02 19:07:06 -04:00
Patrick Schleizer
973f117aa6
wipe RAM at shutdown: Ensure any remaining disk cache is erased by Linux' memory poisoning
by running:
`echo 3 > /proc/sys/vm/drop_caches`

Inspired by Tails:
https://gitlab.tails.boum.org/tails/tails/-/blob/master/config/chroot_local-includes/usr/local/lib/initramfs-pre-shutdown-hook
2022-07-02 18:12:36 -04:00
Patrick Schleizer
95187bd357
fix 2022-07-02 17:21:33 -04:00
Patrick Schleizer
148a050468
fix 2022-07-02 16:03:45 -04:00
Patrick Schleizer
82e7863d5b
improvement 2022-07-02 16:02:28 -04:00
Patrick Schleizer
1144b39e5e
debugging 2022-07-02 15:50:59 -04:00
Patrick Schleizer
c29b21c08a
output 2022-07-02 15:45:19 -04:00
Patrick Schleizer
d34fe21963
fix 2022-07-02 15:32:42 -04:00
Patrick Schleizer
32fdcf522b
- introduce wiperam=skip kernel parameter to skip wipe ram
- introduce `wiperam=force` kernel parameter to force wipe ram inside VMs
2022-06-30 14:47:45 -04:00
Patrick Schleizer
036f518ddc
improvement 2022-06-30 13:56:29 -04:00
Patrick Schleizer
0e2fae2b69
skip ram wipe inside VMs
https://forums.whonix.org/t/is-ram-wipe-possible-inside-whonix-cold-boot-attack-defense/5596/40
2022-06-30 13:50:18 -04:00
Patrick Schleizer
e06405c7be
undo 2022-06-29 16:56:16 -04:00
Patrick Schleizer
1b97d9cb76
fix 2022-06-29 16:30:31 -04:00
Patrick Schleizer
92c543e71f
output 2022-06-29 16:24:52 -04:00
Patrick Schleizer
d4161b2748
output 2022-06-29 16:23:42 -04:00
Patrick Schleizer
1ce7b27297
improvement 2022-06-29 16:23:12 -04:00
Patrick Schleizer
f5e0c1742a
credits 2022-06-29 16:02:05 -04:00
Patrick Schleizer
42e24f3c24
update file names 2022-06-29 15:54:49 -04:00
Patrick Schleizer
52aaac9b6d
rename 2022-06-29 15:53:52 -04:00
Patrick Schleizer
619bb3cf4d
rename 2022-06-29 15:53:24 -04:00
Patrick Schleizer
2a8504cf1b
move 2022-06-29 15:51:14 -04:00
Patrick Schleizer
af8b211c23
improvements 2022-06-29 15:50:20 -04:00
Patrick Schleizer
e9cd5d934b
copyright 2022-06-29 15:24:27 -04:00
Patrick Schleizer
9ab81d4581
do not power off too fast so wipe ram messages can be read 2022-06-29 15:22:00 -04:00
Patrick Schleizer
19439033de
copyright 2022-06-29 15:19:56 -04:00
Patrick Schleizer
fc202ede16
delete no longer required usr/lib/dracut/modules.d/40sdmem-security-misc/README.md 2022-06-29 15:18:28 -04:00
Patrick Schleizer
6d3a08a936
improvements 2022-06-29 15:17:40 -04:00
Patrick Schleizer
8a072437cc
ram wipe on shutdown: fix, added need_shutdown hook
Otherwise dracut does not run on shutdown.

Without `need_shutdown` file `/run/initramfs/.need_shutdown` does not get created.
And without that file `/usr/lib/dracut/dracut-initramfs-restore`,
which itself is started by `/lib/systemd/system/dracut-shutdown.service` does nothing.
2022-06-29 14:13:30 -04:00
Patrick Schleizer
924077e04c
verbose 2022-06-29 13:02:53 -04:00
Patrick Schleizer
db301dfd7f
comment 2022-06-29 13:02:39 -04:00
Patrick Schleizer
73d2ada0de
comment 2022-06-29 13:02:01 -04:00
Patrick Schleizer
295811a88f
improvements 2022-06-29 11:14:52 -04:00
Patrick Schleizer
024d52a67e
improve usr/lib/dracut/modules.d/40sdmem-security-misc/module-setup.sh 2022-06-29 09:52:53 -04:00
Patrick Schleizer
29253004b6
minor 2022-06-29 09:38:18 -04:00
Patrick Schleizer
6f19af1542
add shebang /bin/sh
to fix lintian warning
security-misc: executable-not-elf-or-script usr/lib/dracut/modules.d/40sdmem-security-misc/wipe.sh
2022-06-29 09:35:08 -04:00
Patrick Schleizer
38cdf2722b
- Wipe LUKS Disk Encryption Key for Root Disk from RAM during Shutdown to defeat Cold Boot Attacks
- Confirm in console output if encrypted mounts (root disk) is unmounted. (Because that is a pre-condition for wiping the LUKS full disk encryption key from RAM.)

Thanks to @friedy10!

https://github.com/friedy10/dracut/tree/master/modules.d/40sdmem

https://forums.whonix.org/t/is-ram-wipe-possible-inside-whonix-cold-boot-attack-defense/5596
2022-06-29 09:32:55 -04:00
Patrick Schleizer
2d37e3a1af
copyright 2022-05-20 14:46:38 -04:00
Patrick Schleizer
4fadaad8c0
lintian FHS 2021-08-03 12:52:10 -04:00
Patrick Schleizer
6607c1e4bd
move /usr/lib/helper-scripts and /usr/lib/curl-scripts to /usr/libexec/helper-scripts as per lintian FHS 2021-08-03 12:48:57 -04:00