9 декабря 2016 в 02:45

Разработка → VeraCrypt, EFI загрузчик, пароль картинка

Аудит проекта VeraCrypt прошел, но к сожалению результаты не включили обзор новых возможностей проекта. Эти статья опишет некоторые дополнения.

Многие возможности VeraCrypt пока доступны только из текстовой конфигурации. Пример — это пароль картинка.

image

Если на компьютере или планшете с Windows есть сенсорный экран, то можно попробовать настроить вход в систему по касанию точек. Для этого потребуется проверить доступность сенсорного экрана из EFI

Конфигурационный файл DcsProp находится на загрузочном разделе EFI. Изменения можно вносить на этапе тестирования совместимости загрузчика и после того как диск зашифрован.

Для доступа к конфигурации DcsProp, из Windows консоли с правами администратора, надо выполнить:

mountvol o: /s
notepad o:\efi\veracrypt\DcsProp

Кроме этого потребуется скопировать свою картинку, в формате bmp, на диск o:\EFI\Veracrypt\login.bmp (пример выбран т.к. содержит много заметных частей — люди, лошади, камни, деревья, оружие и т.д.).

Настройка DcsProp (комментарии к параметрам по тексту):

<?xml version="1.0" encoding="utf-8"?>
<VeraCrypt>
	<configuration>
		<!-- PasswordType 0 - text 1 - picture -->
		<config key="PasswordType">1</config>
		<config key="PasswordMsg">Enter password:</config>
		<config key="PasswordPicture">EFI\Veracrypt\login.bmp</config>

		<!-- PimRqt 0 - use paramter 1 - request from user-->
		<config key="PimMsg">Pim:</config>
		<config key="Pim">0</config>
		<config key="PimRqt">0</config>

		<!-- AuthorizeVisible 0/1 - show/hide chars  -->
		<config key="AuthorizeVisible">0</config>
		<!-- AuthorizeMarkTouch 0/1 - show/hide touch area  -->
		<config key="AuthorizeMarkTouch">0</config>

		<!-- AuthorizeRetry - number of retry  -->
		<config key="AuthorizeRetry">10</config>

		<!-- GraphDevice  -1 autodetect; -2 ignore; <n> number in list of devices (use DcsCfg.dcs -gl)-->
		<config key="GraphDevice">-1</config>
		<!-- GraphMode -1 default (to test DcsCfg -gm <N>)-->
		<config key="GraphMode">-1</config>

		<!-- TouchDevice -1 autodetect; -2 ignore; <N> number in list of devices (use DcsCfg -tl and to test DcsCfg -tt <N>)-->
		<config key="TouchDevice">-1</config>

		<!-- TouchSimulate to use keyboard keys to move cursor-->
		<config key="TouchSimulate">1</config>

		<!-- Beep -->
		<config key="Beep">1</config>
		<config key="BeepDuration">200</config>
  </configuration>
</VeraCrypt>

Посмотреть новый пароль и сменить его можно из VeraCrypt в Windows.

Прим. После перезагрузки и ввода пароля с клавиатуры, можно нажать F2, для смены пароля. Затем ввести пароль картинку касаниями и подтвердить. Это требует генератора случайного числа, для создания новой соли. К сожалению, аудиторы попросили выключить встроенный генератор по умолчанию. Для включения, потребуется версия загрузчика с поддержкой TPM или включенным генератором.

Специальные клавиши:

F2 — смена пароля
F4 — звук ввода
F5 — просмотр ввода пароля
F11 — замедлить перемещение курсора стрелками
F12 — ускорить перемещение курсора стрелками

В следующей статье опишу настройку условной авторизации по сценарию: если подключена USB флешка, то запросить пароль и после удачной авторизации загрузить Windows, если флешки нет, то загрузить Linux.