<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Рутокен &mdash; RuToken и luks (Linux)]]></title>
	<link rel="self" href="https://forum.rutoken.ru/feed/atom/topic/1624/" />
	<updated>2021-03-02T07:15:25Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.rutoken.ru/topic/1624/</id>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/15377/#p15377" />
			<content type="html"><![CDATA[<p>Здравствуйте, <strong>AgentOwl</strong>, <br />У нас появилась статья по <a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=81527216">подготовке Рутокен ЭЦП 2.0 для работы c luks</a>, рекомендуем вам с ней ознакомиться.<br />Рутокен S не рекомендуем использовать для работы с luks, так как он не является криптографическим токеном.</p>]]></content>
			<author>
				<name><![CDATA[Фатеева Светлана]]></name>
				<uri>https://forum.rutoken.ru/user/11129/</uri>
			</author>
			<updated>2021-03-02T07:15:25Z</updated>
			<id>https://forum.rutoken.ru/post/15377/#p15377</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/15364/#p15364" />
			<content type="html"><![CDATA[<p>Такое можно реализовать с ruToken ECP и c ruToken S?<br /><a href="https://github.com/swoopla/smartcard-luks">https://github.com/swoopla/smartcard-luks</a></p>]]></content>
			<author>
				<name><![CDATA[AgentOwl]]></name>
				<uri>https://forum.rutoken.ru/user/10886/</uri>
			</author>
			<updated>2021-02-28T22:03:44Z</updated>
			<id>https://forum.rutoken.ru/post/15364/#p15364</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/14859/#p14859" />
			<content type="html"><![CDATA[<p>С моей точки зрения есть куда большая опасность при использовании USB смарткарт ридеров&nbsp; и криптографических USB токенов для шифрования/дешифрования чего-либо и в частности для дешифрования пароля/ключа для открытия LUKS дисков.</p><p>Подробности в этой теме:<br /><a href="https://forum.rutoken.ru/topic/3254">https://forum.rutoken.ru/topic/3254</a></p><p>В контексте атак по каналам ПЭМИ подписание со смарткарты выглядит более безопасной операцией чем дешифрование, но как результат подписи/проверки подписи использовать для открытия LUKS слота ?&nbsp; - я не знаю :(</p><p>Может быть, Rutoken 3000 + ФКН2 чем-то лучше для защиты от атак по каналам ПЭМИ?<br />Но можно ли установить КриптоПро v5 в initrd/initramfs - его текстово консольную часть - самый необходимый минимум?</p><p>Более подробно вопросы по Rutoken 3000 для открытия LUKS2 слотов обозначены в теме:<br /><a href="https://forum.rutoken.ru/post/14860/#p14860">https://forum.rutoken.ru/post/14860/#p14860</a></p>]]></content>
			<author>
				<name><![CDATA[sanyo]]></name>
				<uri>https://forum.rutoken.ru/user/9932/</uri>
			</author>
			<updated>2020-10-04T11:35:57Z</updated>
			<id>https://forum.rutoken.ru/post/14859/#p14859</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/12942/#p12942" />
			<content type="html"><![CDATA[<p>Я НЕ имел ввиду Rutoken в качестве носителя, который может вычитать RAM. </p><p>С другой стороны не думаю, что если устройство работает по HID, то оно не может переключаться и в другие режимы работы, в которых бы оно имело доступ и к DMA через какие-нибудь недокументированные режимы работы контроллера USB, специально заложенные в них заранее как раз для такого случая.</p><p>Могу согласиться, что описанная в этой ветке защита может предотвратить утечку данных при СЛУЧАЙНОЙ утере носителя владельцем.</p><p>Если же мы пытаемся защититься от целеноправленного несанкционированного доступа к данным при наличии&nbsp; у атакующих физического доступа к компьютеру, то они могут установить троян в BIOS и/или прошивку HDD. </p><p>У SATA контроллера (как и USB контроллера) есть доступ ко всей RAM через DMA? Он может вычитывать любые области памяти в т.ч., где хранятся ключи в слотах LUKS? Может ли закрытая прошивка диска посылать какие-нибудь недокументированные команды котроллеру на чтение областей RAM для поиска ключей LUKS?</p><p>На разных сайтах пишут разное относительно опасности USB и SATA в плане утечек через DMA, не уверен чему верить. </p><p>Мне кажется, что на безопасной рабочей станции не должно быть внешних проприетарных устройств, подключенных по шинам, контроллеры которых видно по lspci, должна быть open source прошивка матплаты типа Libreboot вместо BIOS и загрузчики, защищенные от прошивок носителей, либо&nbsp; шифрованием либо использованием очень старых флэшек или старых SD карт и старых ридеров. <br />Наверно можно попытаться найти open source Ethernet контроллер и подключать остальные устройства (диски, USB и т.п.) на другом компьютере, который предоставляет доступ к этим устройствам по Ethernet (iSCSI, iFC, USBIP и т.п.).</p><p>Может быть, кого-то бы даже заинтересовала платформа Talos2:<br /><a href="https://www.raptorcs.com/content/TL2WK2/intro.html">https://www.raptorcs.com/content/TL2WK2/intro.html</a><br />Якобы на маплате нет закрытых блобов, но ктож проверит.</p>]]></content>
			<author>
				<name><![CDATA[sanyo]]></name>
				<uri>https://forum.rutoken.ru/user/9932/</uri>
			</author>
			<updated>2019-05-20T09:07:18Z</updated>
			<id>https://forum.rutoken.ru/post/12942/#p12942</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/12940/#p12940" />
			<content type="html"><![CDATA[<p>Добрый день, <strong>sanyo</strong>.</p><p>У Вас какая-то очень странная модель угроз. Никакой CCID драйвер не даст DMA (не говоря уже о том, что надо будет написать специальную прошивку для токена), он вообще для смарт-карт не имеет смысла. А если Вы считаете, что можете на компьютер устанавливать любые вредоносные драйверы (полный доступ с root правами), то ключи шифрования можно даже не искать, а просто почитать диск.<br />В большинстве случаев в которых применяется LUKS защищаются не от администратора с полным доступом, а защищаются от утери устройства или от несанкционированного доступа.</p>]]></content>
			<author>
				<name><![CDATA[Владимир Салыкин]]></name>
				<uri>https://forum.rutoken.ru/user/10195/</uri>
			</author>
			<updated>2019-05-20T08:42:28Z</updated>
			<id>https://forum.rutoken.ru/post/12940/#p12940</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/12939/#p12939" />
			<content type="html"><![CDATA[<p>А какой смысл в таком шифровании диска, если прошивка носителя может вычитывать ключи LUKS из оперативки компа через DMA, а потом делать с вашими данными на диске все, что угодно ее разработчикам и их начальству ?</p>]]></content>
			<author>
				<name><![CDATA[sanyo]]></name>
				<uri>https://forum.rutoken.ru/user/9932/</uri>
			</author>
			<updated>2019-05-20T08:03:01Z</updated>
			<id>https://forum.rutoken.ru/post/12939/#p12939</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/12116/#p12116" />
			<content type="html"><![CDATA[<p>Добрый день, <strong>AgentOwl</strong>.</p><p>Рады, что Вам удалось решить свою задачу, хоть и с помощью Yubikey.<br />На самом деле аутентификация с помощью Yubikey не является двухфакторной. Здесь есть только один фактор -владения ключем. Любой, у кого есть ключ, сможет осуществить вход. В токенах для этого и есть дополнительный фактор - знания PIN кода, который и защищает от подобного сценария.</p><p>Реализовать аутентификацию в LUKS с помощью Рутокен S безопасно невозможно, так как он не является криптографическим токеном. Такой сценарий действительно можно реализовать с помощью Рутокен ЭЦП, а настройку сделать проще. Но пока Вы первый, кто обратился с таким сценарием. Как только этот сценарий станет распространенным, мы сделаем более удобные средства для настройки.</p>]]></content>
			<author>
				<name><![CDATA[Владимир Салыкин]]></name>
				<uri>https://forum.rutoken.ru/user/10195/</uri>
			</author>
			<updated>2018-09-17T09:01:58Z</updated>
			<id>https://forum.rutoken.ru/post/12116/#p12116</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/12114/#p12114" />
			<content type="html"><![CDATA[<p>В общем пока я для себя лично пошел более простым путем и стал к тому же обладателем Yubikey 4.<br />Нужную информацию по реализации двухфакторной аутентификации с помощью Yubikey при монтировании зашифрованного раздела LUKS легко найти.<br />Я стараюсь Вас заинтересовать предложить аналогичную схему для ruToken ECP, и как показывает практика для очень распространенных ruToken S.</p>]]></content>
			<author>
				<name><![CDATA[AgentOwl]]></name>
				<uri>https://forum.rutoken.ru/user/10886/</uri>
			</author>
			<updated>2018-09-16T08:38:14Z</updated>
			<id>https://forum.rutoken.ru/post/12114/#p12114</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/11715/#p11715" />
			<content type="html"><![CDATA[<p>Добрый день, <strong>AgentOwl</strong></p><p>Чтобы добавить что-то в initrd в Debian используется initramfs-tools (смотрите <a href="https://manpages.debian.org/stretch/initramfs-tools-core/initramfs-tools.8.en.html">https://manpages.debian.org/stretch/ini … .8.en.html</a>)</p>]]></content>
			<author>
				<name><![CDATA[Владимир Салыкин]]></name>
				<uri>https://forum.rutoken.ru/user/10195/</uri>
			</author>
			<updated>2018-04-12T07:11:01Z</updated>
			<id>https://forum.rutoken.ru/post/11715/#p11715</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/11714/#p11714" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ettavolt пишет:</cite><blockquote><p>Скорее всего в initrd не упакован /usr/bin/pkcs11-tool...</p></blockquote></div><p>Спасибо за подсказки :-) </p><p>Да, скорее всего, так оно и есть, вопрос, как бы его туда добавить тогда? Или это надо на форуме Debian спрашивать?</p><p>Оказывается, что в основной консоли (скрипт открывает дополнительную) также пишутся ошибки:<br /></p><div class="quotebox"><blockquote><p>…sh: line 7: pcscd: not found<br />…sh: line: shred: not found</p></blockquote></div><p>Что касается основных дополнений (не по части initrd) - это все найдено в сети и позаимствовано. Мне бы пока добиться для начала, чтобы на этапе загрузки ключ вообще прочитался из ruToken-а, потом, конечно, разберусь с остальным тщательно.</p>]]></content>
			<author>
				<name><![CDATA[AgentOwl]]></name>
				<uri>https://forum.rutoken.ru/user/10886/</uri>
			</author>
			<updated>2018-04-12T06:11:04Z</updated>
			<id>https://forum.rutoken.ru/post/11714/#p11714</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/11712/#p11712" />
			<content type="html"><![CDATA[<p>Скорее всего в initrd не упакован /usr/bin/pkcs11-tool.</p><p>P.S. У shred есть ключ -u. ☺<br />А почему после чтения ключа не размонтируется /crypto/ram?<br />И вообще, pkcs11-tool пишет (т.е. должен, судя по коду) в stdout, если не указан output-file.</p>]]></content>
			<author>
				<name><![CDATA[ettavolt]]></name>
				<uri>https://forum.rutoken.ru/user/10014/</uri>
			</author>
			<updated>2018-04-10T10:22:33Z</updated>
			<id>https://forum.rutoken.ru/post/11712/#p11712</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/11707/#p11707" />
			<content type="html"><![CDATA[<p>Добрый день, <strong>AgentOwl</strong>.</p><p>Попробуем у себя воспроизвести.</p>]]></content>
			<author>
				<name><![CDATA[Владимир Салыкин]]></name>
				<uri>https://forum.rutoken.ru/user/10195/</uri>
			</author>
			<updated>2018-04-05T12:38:01Z</updated>
			<id>https://forum.rutoken.ru/post/11707/#p11707</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/11703/#p11703" />
			<content type="html"><![CDATA[<p>Здравствуйте! Есть интерес использовать ruToken для разблокировки на этапе загрузки LVM, защищённых dm-crypt &amp; LUKS. «Astra Linux Special Edition» пока что не интересует, т. к. на сегодня поставок ещё не было, поэтому для начала прошу подсказать, как все довести до рабочего состояния для варианта с Debian (stable).</p><p>Итак, текущий вариант: для универсальности рассматриваем компьютер с Debian 9.4 Stretch, где СЗИ от НСД не установлена, есть под рукой ruToken ECP и ruToken S (в пределах территориального органа их очень много, желание повысить защищенность информации), SSD разбит на тома 1) /boot и 2) CryptLVM, в последнем в свою очередь тома swap, /, /tmp и /home. Дополнительно, хотя для поставленной цели это неважно, реализована двухфакторная аутентификация пользователя по инструкции отсюда — <a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=3440665">https://dev.rutoken.ru/pages/viewpage.a … Id=3440665</a> с имеющимся сертификатом.</p><p>В реализации работы с LUKS для простоты и отдельных своих соображений опять-таки первоначально пробую реализовать вариант с ruToken ECP, обращаться к librtpkcs11ecp.so, но не к pkcs15, а также заведомо не прибегаю к ассиметричному шифрованию.</p><p>Мои действия:<br />1) создаю симметричный ключ шифрования, который в случае чего можно будет использовать просто, как пароль, записываю его в ruToken ECP и в один из слотов LUKS:</p><div class="codebox"><pre><code>LUKS_KEY=`openssl rand -base64 99` &amp;&amp; echo &quot;$LUKS_KEY&quot; &gt;&gt; ~/LVM_LUKS.tmp
dd if=~/LVM_LUKS.tmp of=~/LVM_LUKS.key bs=1 skip=0 count=64
shred ~/LVM_LUKS.tmp
rm ~/LVM_LUKS.tmp
sudo cryptsetup luksAddKey /dev/sda2 ~/LVM_LUKS.key
pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --login --write-object ~/LVM_LUKS.key --type data --label LVM_LUKS.key --application-label cryptsetup --private
shred ~/LVM_LUKS.key
rm ~/LVM_LUKS.key</code></pre></div><p>2) создаю папку /crypto, а в ней файл «luks_unlock.sh» с атрибутами 0755 (при этом рабочий файл luks_unlock.sh делаю без комментариев и пустых строк):</p><div class="codebox"><pre><code>#!/bin/bash -i
PATH=$PATH:/usr/bin

# Use RAM-disk for temporary storage
# Unlike tmpfs, ramfs does not use swap, making it
# somewhat more suitable for keeping data off persistent storage.
RAMDISK=&quot;/crypto/ram&quot;
mkdir -p $RAMDISK
mount -t ramfs -o size=1m ramfs $RAMDISK
chmod -R u=rwx,g=,o= $RAMDISK

# Plaintext written to RAM at this location
DESTINATION=$RAMDISK/luks_output

# Ensure PCSC daemon is running
pcscd -d

echo &quot;Decrypting LUKS volume with card from $CRYPTTAB_KEY (also $1)&quot; &gt;&gt; /tmp/luks_status

# Run pkcs15-crypt on a different terminal
openvt -fsw -c 2 -- pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --login --read-object --type data --label LVM_LUKS.key --output-file $DESTINATION 2&gt; /tmp/luks_errors

# This is used to unlock the disk
cat $DESTINATION

# Overwrite and remove copy on ramdisk
shred $DESTINATION
rm $DESTINATION</code></pre></div><p>3) файл /etc/crypttab привожу к виду:</p><div class="codebox"><pre><code># &lt;target&gt; &lt;device&gt; &lt;key file&gt; &lt;options&gt; 
sda2_crypt UUID=56fe86c5-a589-4b52-a296-03c1eac5c54f none luks,keyscript=/crypto/unlock.sh 
# sda2_crypt UUID=56fe86c5-a589-4b52-a296-03c1eac5c54f none luks</code></pre></div><p>4) выполняю команды ниже и перезагружаюсь</p><div class="codebox"><pre><code>update-initramfs -u
update-grub</code></pre></div><p>На этапе загрузки получаю ошибку: «<strong>openvt: can&#039;t execute pkcs11-tool no such file or directory</strong>»</p><p>Как это все исправить и довести до рабочего состояния? По возможности я хочу избежать работы с pkcs15 и асимметричного шифрования.</p>]]></content>
			<author>
				<name><![CDATA[AgentOwl]]></name>
				<uri>https://forum.rutoken.ru/user/10886/</uri>
			</author>
			<updated>2018-04-04T14:17:27Z</updated>
			<id>https://forum.rutoken.ru/post/11703/#p11703</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8337/#p8337" />
			<content type="html"><![CDATA[<p>Целостность ключа проверить невозможно, если он работает (на нем можно подписать) - он скорее всего цел.</p>]]></content>
			<author>
				<name><![CDATA[Кирилл Мещеряков]]></name>
				<uri>https://forum.rutoken.ru/user/6786/</uri>
			</author>
			<updated>2015-05-19T15:41:13Z</updated>
			<id>https://forum.rutoken.ru/post/8337/#p8337</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: RuToken и luks (Linux)]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8142/#p8142" />
			<content type="html"><![CDATA[<p>Мда.<br />Три года все проработало не плохо и тут на тебе.<br />truecrypt volume.cnt&nbsp; /share/ --keyfiles=token://slot/0/file/ss.key --token-lib=/usr/lib/opensc-pkcs11.so -p &quot;&quot; --protect-hidden=no<br />Enter password/PIN for token &#039;Rutoken S (User PIN)&#039;: ввожу, как обычно, пинкод.<br />Incorrect keyfile(s) and/or password or not a TrueCrypt volume.</p><p>Enter password for volume.cnt:</p><p>И не понятно, кто виноват. То ли файл разрушен, то ли что-то с ключом не так.<br />По truecrypt --list-token-keyfiles --token-lib=/usr/lib/opensc-pkcs11.so ключ как бы есть, но вот цел ли он, вопрос.</p>]]></content>
			<author>
				<name><![CDATA[Dmitry]]></name>
				<uri>https://forum.rutoken.ru/user/7845/</uri>
			</author>
			<updated>2015-03-16T22:05:23Z</updated>
			<id>https://forum.rutoken.ru/post/8142/#p8142</id>
		</entry>
</feed>
