Commit Graph

3028 Commits

Author SHA1 Message Date
Vojtech Trefny
3a7f03bae6 bitlk: Add test for dumping master key and opening using it 2020-11-12 12:16:32 +01:00
Vojtech Trefny
652081426b bitlk: Add support for activating BITLK devices using volume key
Both with "crypt_activate_by_volume_key" and using cli with
--master-key option.
2020-11-12 12:16:32 +01:00
Vojtech Trefny
406d2d8b0a bitlk: Allow dumping BitLocker master key (FVEK) using --dump-master-key 2020-11-12 12:16:32 +01:00
Vojtech Trefny
7a1df1c323 bitlk: Fix key sizes for BITLK encryption types
It makes more sense to return "real" key sizes, e.g. 256 bit for
AES-XTS 128 and 256/512 bit for AES-CBC with Elephant which has
a separate key for the Elephant mode.
2020-11-12 12:16:32 +01:00
Vojtech Trefny
5a44d14d97 bitlk: Allow running bitlk_metadata_free with NULL 2020-11-12 12:16:32 +01:00
Joerg Kastning
b444d1ecd7 Update cryptsetup.8
* Improved information about calling luksFormat on devices.
2020-11-12 12:14:47 +01:00
Joerg Kastning
0456670328 Update cryptsetup.8
* Rename "BASIC COMMANDS" to "BASIC ACTIONS"
 * Changed a sentence saying that luksFormat would work on unmapped luks containers, only.
 * Insert 6 examples of using cryptsetup for luks containers
2020-11-12 12:14:47 +01:00
lixiaokeng
eff4da95a1 lib: fix memory leak in crypt_pbkdf_check
There is a memory leak when PBKDF2_temp > UINT32_MAX. Here,
we change return to goto out to free key.

Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com>
Signed-off-by: Linfeilong <linfeilong@huawei.com>
2020-11-09 09:57:25 +08:00
lixiaokeng
ad7d16a1b4 lib: fix potential segfault in LUKS2_token_buffer_free
The value of h may be NULL. Check it vefore visiting its
memeber to avoid segfault.

Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com>
Signed-off-by: Linfeilong <linfeilong@huawei.com>
2020-11-09 09:57:21 +08:00
lixiaokeng
f5abfde1fa lib: fix potential segfault in _crypt_cipher_crypt
The value of header may be NULL. Check it to avoid
segfault.

Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com>
Signed-off-by: Linfeilong <linfeilong@huawei.com>
2020-11-09 09:57:16 +08:00
lixiaokeng
02d13d7257 lib: fix potential segfault in _keyslot_repair
The value of vk may be NULL in _keyslot_repair. It will
be dereferenced in LUKS_generate_phdr. Check it to avoid
segfault.

Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com>
Signed-off-by: Linfeilong <linfeilong@huawei.com>
2020-11-09 09:57:13 +08:00
lixiaokeng
941b82a8be lib: check return value of malloc in BITLK_read_sb
The return value of malloc vmk and params->fvek is not
checked. Here we add checking.

Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com>
Signed-off-by: Linfeilong <linfeilong@huawei.com>
2020-11-09 09:56:45 +08:00
Ondrej Kozina
482fcd0602 Do not set confirm callback when not needed.
It's currently used only in crypt_set_uuid and crypt_header_restore
API calls.
2020-10-18 13:06:43 +02:00
Ondrej Kozina
14c7148edd Enable user stored params with default log callback. 2020-10-18 13:06:20 +02:00
Ondrej Kozina
a00722e80c Fix cryptsetup resize using LUKS2 tokens.
Fix a bug where cryptsetup needlessly asked for passphrase
even though volume key was already unlocked via LUKS2 token.

Fixes: #601.
2020-10-18 13:05:23 +02:00
Milan Broz
42f4dcef88 Introduce crypt_logf and remove logger wrapper.
Export (alredy existing) log function with variable parameter count.
2020-10-18 13:03:44 +02:00
Мирослав Николић
37188482fe po: update sr.po (from translationproject.org) 2020-10-17 12:53:20 +02:00
Antonio Ceballos
eb3228233a po: update es.po (from translationproject.org) 2020-10-17 12:53:20 +02:00
dofrupisla
8dec7eac05 Fix typo 2020-10-05 23:03:48 +02:00
Samanta Navarro
e9c2aaccb5 fix typo in manual page 2020-10-03 11:26:46 +00:00
Milan Broz
112c0ff08b Add deferred removal test for all utilities. 2020-09-26 13:04:05 +02:00
Luca Boccassi
e431cbdfa7 integritysetup: add close --deferred and --cancel-deferred
Same effect as the equivalent options in cryptsetup and veritysetup

[mbroz: ported to new CLI parsing]
2020-09-26 13:04:01 +02:00
Luca Boccassi
6514d1bc2e veritysetup: add close --deferred and --cancel-deferred
Same effect as the equivalent options in cryptsetup

[mbroz: ported to new CLI parsing]
2020-09-26 13:03:53 +02:00
Luca Boccassi
53d3ca0062 cryptsetup: add close --cancel-deferred
Allows to remove a previously set deferred removal from the command
line.

[mbroz: ported to new CLI parsing]
2020-09-26 13:03:49 +02:00
Luca Boccassi
3062a9ba91 libcrypsetup: add CRYPT_DEACTIVATE_DEFERRED_CANCEL for crypt_deactivate_by_name
Allows to cancel a previously set deferred deactivation flag
for a specific device.

[mbroz: slight changes]
2020-09-26 13:03:16 +02:00
Vojtech Trefny
dcc2b252dd bitlk: Show better error when trying to open an NTFS device
Both BitLocker version 1 and NTFS have the same bootcode eb 52 90
so when trying to open an NTFS device user will get error message
saying that BitLocker version 1 is not supported. This patch
switches to check the superblock first to inform user that the
device is not a BITLK device.
2020-09-22 14:09:20 +02:00
Vojtech Trefny
66b3aa9582 bitlk: Fix test image for startup key
We zero data parts of the test images to make them as small as
possible and for the latest startup key image I deleted bigger
portion of the NTFS header by accident which caused older blkid
on CentOS/RHEL 6 to not identify the NTFS filesystem on the
cleartext device.
2020-09-22 13:32:10 +02:00
Milan Broz
32a141d548 bitlk: Fix a compiler warning. 2020-09-21 20:52:12 +02:00
Vojtech Trefny
69e7d64c49 bitlk: Add support for startup key protected VMKs (keyslots)
Fixes: #588
2020-09-21 20:35:42 +02:00
Vojtech Trefny
7d5025a865 bitlk: Try all keyslots even if some checks fails for passphrase
We can't easily distinguish between a passphrase and other
protectors like recovery passphrase or startup key during
activation so we can't stop when attempted passphrase activation
fails because a binary startup key can't be conveted to UTF-16
during KDF.
2020-09-21 20:35:35 +02:00
Sinan Kaya
c65cd4eb74 tests: refresh loop code to the library
Refresh loopback device loading code to support LOOP_CONFIGURE ioctl.

Signed-off-by: Sinan Kaya <sinan.kaya@microsoft.com>
2020-09-21 10:55:10 -04:00
Sinan Kaya
8ff3b0cd63 Support LOOP_CONFIGURE ioctl to improve speed
More data about the new IOCTL is here:
https://lwn.net/Articles/818870/

We see 200-500ms boot speed improvement on our platform.

Prefer to define IOCTL when kernel is older version. Also eliminate
duplication since as a result of introduced ifdef.

Signed-off-by: Sinan Kaya <sinan.kaya@microsoft.com>
2020-09-21 10:54:55 -04:00
Joe Richey
cc2d29dbf4 Include correct type definition in .h files
Right now, cryptsetup makes an attempt to include the correct
definitions in all of its header files, allowing the headers to
compile regardless of the context in which they are included.

A few files were missed, this change fixes them by adding the minimal
set of #includes needed to get them to compile.

Signed-off-by: Joe Richey <joerichey@google.com>
2020-09-19 20:35:55 +00:00
Milan Broz
6ed739d9ca Print a visible error if requesting resize on unsupported format.
Fixes: #571.
2020-09-19 22:05:42 +02:00
Milan Broz
5d07b0730c Allow to use backup header for tcrypt format.
TrueCrypt/VeraCrypt supports backup header, it seems to have
the same format as normal header.

Let's use --header option here, it can be used to unlock data partition
with header backup (open and dump commands).

Fixes: #587.
2020-09-19 21:42:08 +02:00
Antonio Ceballos
fe05e47656 po: update es.po (from translationproject.org) 2020-09-19 17:21:51 +02:00
Roland Illig
8399bd8309 po: update de.po (from translationproject.org) 2020-09-19 17:21:51 +02:00
Ondrej Kozina
a730d56e66 Do not print opt_io_size warning needlessly.
In fallback path min_io_size and opt_io_size could be
same and the warning was confusing.
2020-09-19 17:20:46 +02:00
Ondrej Kozina
6599ae1f2f Make tools_args_free double-free safe 2020-09-19 17:20:42 +02:00
Ondrej Kozina
0b5426da12 Add explicit ARG_SET_TRUE macro.
and dissalow ARG_SET() query macro to be abused to change
the value.
2020-09-19 17:20:38 +02:00
Milan Broz
be9c3cd979 Print warning if msgfmt utility from gettext is missing.
User have to install gettext package or manually disable translation
using --disable-nls.

Also remove links to GNU packages ftp, all of these should by provided
by native distro packaging systems.

Fixes: #591.
2020-09-06 10:41:49 +02:00
Milan Broz
02106c3292 Update Readme.md. 2020-09-03 20:40:54 +02:00
Milan Broz
e078650435 Add stable version release notes. 2020-09-03 19:10:02 +02:00
Yuri Chornoivan
7d6b4d9936 po: update uk.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Yuri Kozlov
ab087f7342 po: update ru.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Jakub Bogusz
962735cf7a po: update pl.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Hiroshi Takekawa
4ce7766e14 po: update ja.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Frédéric Marchal
cdc70991f7 po: update fr.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Petr Pisar
a1fe799afd po: update cs.po (from translationproject.org) 2020-09-03 16:19:28 +02:00
Milan Broz
157f72f611 Always store dm-verity hash algorithm in superblock in lowercase.
Fixes: #586.
2020-08-29 15:51:20 +02:00