Показаны сообщения с ярлыком security. Показать все сообщения
Показаны сообщения с ярлыком security. Показать все сообщения

20130305

encrypt & decrypt with openssh rsa-keys

можно ли использовать публичный ключ openssh для безопасной передачи информации владельцу секретной части того же самого ключа?
краткий ответ: да.
но, увы, не так удобно, как, например, с помощью gpg.
но, увы, только в случае rsa-ключа.

теоретические соображения:
  1. в openssh используется ассиметричное шифрование: пара, состоящая из публичного и секретного ключей;
  2. к сожалению, в openssh нет инструментов для (де-)шифрования с помощью этих ключей;
  3. к счастью, такие средства есть в openssl (по крайней мере для rsa-ключей);
  4. к сожалению, openssl (пока) не понимает формата, в котором openssh хранит публичные ключи;
  5. к счастью, openssh (точнее, программа ssh-keygen) умеет конвертировать свои публичные ключи в формат pkcs8, который уже может «понять» openssl;
  6. к сожалению, это умеет делать только openssh v5.6 и выше (в debian squeeze — v5.5);
  7. к счастью, публичные rsa-ключи можно сконвертировать с помощью такого, например, скриптика: https://gist.github.com/sash-kan/5081128.
практика:


ssh.pub — публичный rsa-ключ вашего адресата;
ssh.sec — секретный rsa-ключ вашего адресата (обычно ~/.ssh/id_rsa);
sshpub-to-rsa — скрипт по ссылке, приведённой выше.

шифрование (на вашей стороне) при наличии openssh v5.6 и выше:
$ echo 'secret!!11' | openssl rsautl -encrypt -pubin -inkey \
<(ssh-keygen -f ssh.pub -e -m pkcs8) > secret.message

шифрование (на вашей стороне) при наличии openssh v5.5 и ниже:
$ echo 'secret!!11' | openssl rsautl -encrypt -pubin -inkey \
<(sshpub-to-rsa ssh.pub) > secret.message

расшифровка (на стороне вашего адресата):
$ cat secret.message | openssl rsautl -decrypt -inkey ssh.sec
secret!!11

20120305

грабли-на-рельсах

предлагаю новый официальный перевод для термина ruby-on-rails: грабли-на-рельсах·
грабли (rake) — это вспомогательная программа для сборки ruby-пакетов, написанная на том же ruby·
поэтому небольшая подмена (ruby→rake) практически не меняет смысла наглоязычного термина, зато в результате получается чудесный перевод, отлично характеризующий этот замечательный фреймворк·

p.s. по мотивам http://www.opennet.ru/opennews/art.shtml?num=33268

20100125

sitedossier.com

набрёл на забавный сайтик,
из этой страничке можно узнать, что хостился линуксфорум на двух машинах, что одна из этих машин хостит 45 сайтов (список есть), другая — 4 (тоже список имеется).
но самым интересным для меня было обнаружить списочек имён, которые ведёт нэймсервер ns.mezon.ru. список, естественно, далеко не полный, но всё равно впечатляет.

в чём профит, спросите?
ну взломал я какой-нибудь сайтик, крутящийся на каком-нибудь дырявом проприетарном поделии типа smf. и хочу узнать, какие ещё сайтики крутятся на этой машине. ведь велика вероятность, что используют они ровно тот же (к примеру) smf.
вот и поможет мне в поисках сайтик этот: sitedossier.com.
а вы подобных не встречали?

20080228

aptgetupd.exe


страшный баян, но мне понравилось название файла:
«…незаметно для пользователя загружается специальный файл, который
"дотаскивает" с удаленного веб-узла непосредственно файл-носитель
"Bizex" (APTGETUPD.EXE)…» http://www.kompunet.com/kompunet/view.php?nid=194

20080226

воинские части, одноклассники и информационный мусор.

вот такую заметку прочитал. как замечательно, что на своей страничке в одноклассниках я не упомянул ни одной воинской части! шпионы ¡No pasarán!

конфиденциальность. обязанность скрывать определенную информацию. рано или поздно она должна отмереть как класс. вместе с еще очень многими вещами. мир становится прозрачнее. и для него мне более реальной видится не угроза в виде права читать, а, скорее, гибель под напором информационного мусора.

20080225

debian и pamusb аутентификация

навеяно этой заметкой
делал по инструкции
скачал по ссылке последний релиз.
как полагается, распаковал его в /usr/src/
со сборкой deb-пакета решил не заморачиваться, установить «по-грязному».
посмотрев на ошибки в выводе make, сделал вывод, что не хватает libhal-storage-dev.
с этим пакетом все замечательно собралось и установилось.
добавил флэшку:
$ sudo pamusb-conf --add-device MojaFleshka
добавил себя, привязав к уже описанной флэшке:
$ sudo pamusb-conf --add-user $USER

проверил. вроде как работает. дальше начинается рихтовка.

во-первых, жутко не понравилось, что флэшка автоматически монтируется после вставки (не люблю я этих автомаунтов). и, главное, так и висит смонтированной. что, как понимаете, чревато…
после некоторых разбирательств добавил в секцию <configuration> файла /etc/pamusb.conf строчку <option name="one_time_pad">false</option>.
стало, конечно, менее секурно — не проверяется ключ, записанный на флэшке в каталог .pamusb/ (когда я делал --add-device). ну, думаю, производителя, модели и идентификатора флэшки будет достаточно. чай не в кгб работаю.

во-вторых, захотелось воспользоваться pamusb-agent-ом. чтоб при вытаскивании флэшки экран блокировался, при вставке — соответственно, блокировка снималась.
началось с того, что агент при запуске ругался на отсутствие описания elementtree.ElementTree.
небольшое гугление и чесание в затылке (освоение python-а пока только в планах) натолкнуло на мысль поставить пакет python-elementtree. помогло.
в примере приводится использование gnome-screensaver-command. у меня таковая отсутствует, в любимом icewm-е пользуюсь классическим xlock. вот его-то вызов и решил прикручивать.
в секции <user>, относящейся ко мне, добавил строчки:
<agent event="lock">xlock -mode blank</agent>
<agent event="unlock">killall xlock</agent>
killall-ом пришлось воспользоваться потому, что не нашел у xlock ничего подобного параметру unlock.
проверяю — не работает. включаться заставка-то включается, а вот выключаться не хочет.
опять серия экспериментов. оказалось, что агент ожидает, что команда, закрепленная за событием lock, вернет управление обратно. а xlock этого, к сожалению, не делает. и жутко ругается на &, который я попробовал дописать в конец команды. ну что ж, быстренько накатал в ~/bin/ файлик следующего содержимого:
#!/bin/bash
xlock -mode blank &
и заменил вызов xlock-а на вызов этого скриптика.
уря. заработало.
последний штирх — добавил строчку
pamusb-agent --daemon &>/dev/null
в ~/.icewm/startup. чтоб при загрузке сеанса агент сразу стартовал.

p.s. сразу выявился один минус — я частенько отхожу от компьютера и столь же частое дергание флэшки не есть хорошо. пора разживаться bluetooth-адаптером и, воспользовавшись BlueProximity, задействовать неиспользуемый пока bluetooth в мобилке.