Помимо зараженного дома вирусами (а кейлогер и есть вирус) компьютера подобная проблема особенно актуальна в интернет-кафе и компьютерных клубах.
- Во-первых никогда не знаешь, что за программы там установлены и, вполне вероятно, что недобросовестный админ по-хитрому делает лог (запись) всех вводов паролей с помощью программки-кейлогера;
- Во-вторых, учитывая, что это место публичное кто-то может легко посмотреть и запомнить что же Вы там набрали (кстати в интернет-кафе или прочих публичных местах еще и иногда стоят камеры, которые ведут запись в беспрерывном режиме).
Сегодня я расскажу Вам о том как собрать пароль, устойчивый от воровства при помощи программ keyloger'ов (клавиатурные шпионы запоминающие вводимые Вами символы в формах логинов и паролей) и просто запоминания (если Вы вдруг вводите пароль при ком-то) кем бы то ни было.
К тому же многим будет интересно узнать о вводе с клавиатуры специфичных символов (как пару примеров: û ~ Ç ╟↓ ∟ П ┬ и тд и тп) без всяких сторонних программ, что кстати очень просто, но известно в основном только людям, связанным с компьютерами в качестве профессии.
Таблица ASCII как использовать расширенные символы
Я не буду особо разжевывать Вам принципы работы программ-кейлогеров (вирусов) скажу лишь общую схему: кейлогер следит за нажатием клавиш и собирает вводимые Вами логины и пароли в некий лог-файл, который потом отправляет (или взломщик забирает его сам, если имеет доступ к компьютеру) злоумышленнику.
Не для кого не секрет, что все вводимые буквы и цифры - это символы. Но символы можно разделить на два вида - простые и специфичные (расширенные). Простые - это, как я уже сказал, буквы, цифры, всякие там знаки препинания, собачки (@) и тд и тп, а специфичные - это что-то вроде û ~ Ç ╟↓ ∟ П ┬ и тд и тп.
Как Вы понимаете, использование специфичных символов значительно усложняет процесс взлома как методом подбора, так и методом использования кейлогеров (большинство из них не настроены на обработку и запись расширенных символов).
Все это чудесно, но Вы не знаете кое о чем, а именно о том, что помимо разных символов есть разные способы их ввода.
Еще немного подробностей и сама таблица ASCII
Точнее говоря, любую букву, цифру, знак препинания и тд и тп, тобишь любой символ можно ввести не просто вполне естественным образом (естественный способ для простого пользователя - это тычок пальчиком в соответствующую кнопку на клавиатуре), а еще и методом использования кнопки ALT и цифровой клавиатуры, а именно нажатие ALT+35 (где кнопка ALT зажата, а 35 вводится на цифрах (плюс жать не надо)) даст символ #.
Сочетание ALT+147 даст Вам букву У. Собственно, подобным образом можно вводить и специфичные символы, а именно, скажем ☺ - это нажатие ALT+1 , а ▀ - это ALT+1247 и тд и тп.
Думаю, чем такой способ ввода безопаснее объяснять не надо - выводы вполне логичны, а о том чем безопаснее добавлять в пароль расширенные символы я писал выше в скобочках.
Кстати о расширенных символах. Среди них есть такая вещь как неразрывный пробел- ALT+0160. Он отображается как обычный пробел и зачастую может обмануть тех, кто каким-то образом подглядел Ваш пароль.
Даже, если Ваш пароль будет записан кейлогером, то в лог-файле он (неразрывный пароль) будет выглядеть, как обычный пробел, что собьет с толку взломщика особенно, если он ведать не ведает ни о каких специфичных символах и неразрывных пробелах, т.е., даже получив пароль он не сможет им воспользоваться.
Подводные камни при таком подходе
Они не такие страшные, но без них, к сожалению, никак.
- Как Вы понимаете создание пароля со специфичными символами или ввод его по средством ALT+цифры требует большего нажатий клавиш, что тоже требует запоминания в первую очередь Вами самими (т.е. пароль из 5 символов будет требовать, например, 25 нажатий клавиш (ALT+1256, ALT+2341 и тд). Возможно проще было бы не заморачиваться и просто удлинить обычный пароль на несколько обычных символов. Это во-первых;
- Во-вторых, клавиатуры некоторых компьютеров (зачастую эта проблема наблюдается в ноутбуках) затрудняют ввод с цифровой клавиатуры;
- В-третьих, некоторые утилиты командной строки не поддерживают символы с большим ASCII-кодом. Например, вы можете использовать символ ALT+0127 в Windows, но не сможете набрать его в командной строке. И наоборот, коды некоторых символов, таких как Tabs (ALT+0009) или ESC (ALT+0027) могут быть использованы в cmd (командной строке), но совершенно никак не получится задействовать их в самой Windows.
Давайте перейдем к послесловию
Послесловие
Вот такие пироги про такую штуку как таблица ASCII и её использование для создания паролей (и не только).