IT.Tux.Droid 15.08.2011 22:34
Скрипты — Ввод пароля по хоткею.
Как-то придумал себе надежный длинный пароль и теперь при виде таких вот окошек (см. ниже), меня бросает в дрожь только от одной мысли, что сейчас придется нервно стучать по клавиатуре.Решил немного упростить себе жизнь и написал небольшой скриптик на Python’е:
Все что он делает, так это эмулирует нажатие клавиш* клавиатуры. В данном случае набирает “qwerty” и жмет “Enter”.
*получить коды клавиш можно командой:
1 |
|
Зависимости: python, python-pyatspi.
1 |
|
Сохранить где-нибудь файл AutoEnterPass.py, сделать исполняемым, назначить на его запуск горячую клавишу (Система/Параметры/Комбинации клавиш клавиатуры), …, profit!
tn1 15.08.2011 23:58 #
+ 8 -
Пароль рута в файле? нет пути!
Ну не в открытом виде же ;) Можно и зашифровать коды клавиш, добавить "мусора" и уже отбирать их по определенному алгоритму, который находится в другом файле другого пользователя под другим паролем =)
> Можно и зашифровать коды клавиш, добавить "мусора" и уже отбирать их по определенному алгоритму, который находится в другом файле другого пользователя под другим паролем =)
костыли. чем плох $ghjcnjq_123_gfhjkm$, как пароль?
костыли. чем плох $ghjcnjq_123_gfhjkm$, как пароль?
Да, можно и $ghjcnjq_123_gfhjkm$ использовать, но соль же в том, что бы он сам вводился по хоткею ;)
Тащемта, в /etc/shadow хранится SHA512-хэш, а не пароль в открытом виде. Для ввода по хоткею такое "шифрование" не подходит, потому что получить входное значение по хэшу нельзя.
спасибо, кэп. вот только про шифрование в комменте tn1 - ни слова, только про файлы
Пароль рута в файле? нет пути!
+1 этому параноику...Другими словами, при оценке надёжности шифрования необходимо предполагать, что противник знает об используемой системе шифрования всё, кроме применяемых ключей.
опираясь на эту казалось бы всем очевидную истину можно сказать: "предполагается, что атакующий знает где хранится ключ".
> что не меняет сути?
plain-text-root-password в файле с сомнительными правами доступа.
plain-text-root-password в файле с сомнительными правами доступа.
Сохранить где-нибудь файл AutoEnterPass.py, сделать исполняемым, назначить на его запуск горячую клавишу (Система/Параметры/Комбинации клавиш клавиатуры), …, уязвимость!
Сэр, да вы параноик! ;)
Где вы его сохраните, под каким названием и что это вообще за файл будете знать только вы. =)
Где вы его сохраните, под каким названием и что это вообще за файл будете знать только вы. =)
Как-то поставил себе надежную бронированную дверь, но ключ лень носить, поэтому вешаю его снаружи на гвоздик.
Самая лучшая защита та, о которой кроме вас никто не знает ;)
У неё даже название есть, Security by obscurity. XD
А почему не сделать себе NOPASSWD в sudoers?
А почему не сделать себе NOPASSWD в sudoers?
Скрипт не отменяет пароль, а только "нажимает" в определенной последовательности клавиши, и _только_тогда_ когда я его вызову с помощью хоткея ;)
> Скрипт не отменяет пароль, а только "нажимает" в определенной последовательности клавиши
plain-text-passwd
plain-text-passwd
Я не к тому. Пароль -- это средство защиты от чего-то, правильно? В данной комбинации пароль явно защищает только возможность входа в компьютер, локально или удалённо.
Поэтому было бы логично просто поставить NOPASSWD в sudoers -- уровень "защиты" останется неизменным, а набирать будет проще.
Если от локальных пользователей опасности нет, так и вообще можно пароль убрать и всё, а в ssh поставить логин только по сертификату.
ЗЫ. Есть классная команда xte. Шлет нажатия клавиш куда угодно.
Поэтому было бы логично просто поставить NOPASSWD в sudoers -- уровень "защиты" останется неизменным, а набирать будет проще.
Если от локальных пользователей опасности нет, так и вообще можно пароль убрать и всё, а в ssh поставить логин только по сертификату.
ЗЫ. Есть классная команда xte. Шлет нажатия клавиш куда угодно.
...поэтому вешаю его на гвоздик внутри коробочки под крышей заброшенного сарая в нескольких метрах от дома, в котором у меня квартира =)
Пост полезный! Просто полезный и все. Никто вас не призывает так делать.
P.S. А в терминале работат?
P.S. А в терминале работат?
Ведь необязательно вводить логин/пароль (как в случае с sudo в консоли, например), можно скопировать лишь пароль и вставить его привычным копипастом.
В случае с gksudo скопировать пароль перед запуском приложения с расширенными правами и вставить в приглашении ввести пароль.
В случае с gksudo скопировать пароль перед запуском приложения с расширенными правами и вставить в приглашении ввести пароль.
Нет, я имею в виду вставку пароля по горячей клавише, для консолей это работает, надо только прописать названия приложений куда будет вставляться пароль из нужной записи. Так вот для gksudo я не знаю что указывать.
К примеру я открываю guake, на запрос пароля нажимаю ctrl-d и все. Это полностью заменяет велосипед ТС да еще и все хранится в удобном и зашифрованном виде.
К примеру я открываю guake, на запрос пароля нажимаю ctrl-d и все. Это полностью заменяет велосипед ТС да еще и все хранится в удобном и зашифрованном виде.
KeePass(X)'ом никогда не пользовался, так что извините, не знал что там все уже давно реализовано.
А вот вам ломалка. Костыли мои, писалось на скорую руку, ногами не бить.
Если и использовать ваш метод - то только с уже скомпилированным *.рус файлом, внутри которого бинарная каша, что, позволит хотя бы защититься от простого cat-а.
...скомпилированным *.pyc файлом, который декомпилируется за 2 минуты.
gnome-keyring с доступом по приложению, думаю решил бы проблему с хранением пароля в текстовом файле. Один раз разблокировали за сеанс и другое приложение не получит доступ к паролю.