Основы хакерства


Глава 3. Пароли и контроль над доступом - стр. 15


Более логичный способ — заставить программу генерировать похожий на случайный пароль, основанный на некоторой информации о пользователе, которую можно почерпнуть из легко доступных источников (дата рождения, номер Социальной Безопасности и т. д.). После этого вы просто вставляете эти данные в копию программы на вашем домашнем компьютере и создаете новый пользовательский пароль.

Один неплохой шифровочный алгоритм работает следующим образом: берутся синусы ASCII-кодов первых шести или восьми букв имени пользователя, затем берутся две предпоследние цифры из синусов, изменяются до подходящего размера, и соединяются в соответствующие ASCII-кодам буквы, формируя “слово”. Таким образом, вы получаете похожий на случайный пароль, который изготавливается практически вручную. Если имя пользователя состоит менее чем из шести букв, оставшееся место можно заполнить условными символами.

В данном примере имя пользователя превращается в ничего не значащий пароль в соответствии с методом, приведенным в тексте. На первый взгляд получившийся пароль кажется случайным и безопасным, но хакер может его разгадать, прибегнув к общедоступной информации о пользователе (здесь это фамилия пользователя).

Это достаточно простой пример; в жизни вам придется в соответствии с требованиями вводить в пароль строчные и прописные буквы, укорачивать его или удлинять, либо вставлять в пароль цифры, если понадобится. Такое внедрение пароля может оказать вам услугу, если вы занимаетесь системой электронных сообщений или объявлений: пользователям могут так понравиться их новые безопасные пароли (а разве “rueavz” не кажется безопасным паролем?), что они начинают пользоваться ими и в других местах.

Еще одна возможность, также предполагающая, что вы можете изменить генератор паролей незаметно — заменить начальное число генератора случайных чисел постоянной величиной (наберите в начале программы: 5 Randomize 0, тем самым заставив программу производить одни и те же серии случайных чисел при каждом запуске (до тех пор, пока компьютер включен и программа не возвращена в первоначальное состояние).


Начало  Назад  Вперед