Funkcjonariusz jest w stanie automatycznie wykryć i odszyfrować w locie partycje zaszyfrowane VeraCryptem, pod warunkiem że są to partycje systemowe i kluczem jest jedynie hasło użytkownika.
Nie są obsługiwane pliki kluczy i PIN-y, a także partycje bezsystemowe, ukryte wolumeny, całe dyski systemowe i partycje utworzone przez TrueCrypta.
Zobacz repozytorium keys-veracrypt-demo. Zawiera ono przykładowy plik veracrypt.keys
.
Możesz stworzyć wiele takich repozytoriów - np. dzieląc wszystkie posiadane hasła wg działów atakowanej firmy (albo wg dowolnego innego kryterium). Każde takie repozytorium powinno:
/opt/drivebadger/config/keys-veracrypt-twojanazwa
veracrypt.keys
z odpowiednią zawartością (patrz niżej)Lokalny katalog /opt/drivebadger/config/keys-veracrypt-twojanazwa
tak naprawdę nie musi zawierać podkatalogu .git
, ani być kopią repozytorium - równie dobrze może to być ręcznie wgrany katalog, który będziesz aktualizował w inny sposób. Natomiast jeśli będzie to kopia repozytorium, będziesz mógł wszystkie takie katalogi aktualizować jednym skryptem: /opt/drivebadger/update.sh
.
Jeśli udało Ci się wejść w posiadanie haseł sparowanych bezpośrednio z numerami seryjnymi dysków twardych, możesz takie hasła zapisać w katalogu "keys directory" - zwróć uwagę, że katalog ten różni się dla Funkcjonariusza i Funkcjonariusza Mobilnego.
Jeśli posiadasz dodatkowe informacje o hasłach, pozwalające je jakoś podzielić operacyjnie (np. na budynki, piętra, działy firmy, specjalności pracowników), ale nie pozwalające na powiązanie ich bezpośrednio z dyskami twardymi, wówczas możesz spróbować:
veracrypt.keys
Plik veracrypt.keys
może zawierać:
#
, bez żadnych spacji na początku)Przykładowy plik veracrypt.keys
:
# haslo do laptopa
MyFancyPassword
# haslo do komputera glownego
MyVCBootPassword123
W przeciwieństwie do szyfrowania LUKS, partycje zaszyfrowane VeraCryptem nie są wykrywane przez systemd
/udevd
i tym samym nie mają przydzielonego UUID. Dlatego też są one wykrywane i eksfiltrowane w drugiej kolejności.
Mechanizm dopasowujący hasła działa następująco:
get-drive-encryption-keys.sh
ładuje listę dostępnych haseł ze wszystkich znalezionych plików veracrypt.keys
(jeśli występują na niej hasła przypisane do bieżącego dysku, są ładowane na samym początku listy)save-drive-encryption-key.sh
zapisuje je w katalogu "keys directory"