Как я перестал хранить FTP-пароли в FAR’e

Опубликовано: 02.11.2017

Однажды в свободную минутку своего рабочего времени я решил слить конфиги рабочего и домашнего FAR'ов. Открыв в WinMerge оба FarSettings.User.reg, вяло покручивая колёсико мышки, внезапно я зацепился взглядом за знакомые ftp-адреса своих учётных записей на всяких серверах. Увидев их на экране казённого компьютера, я почувствовал себя очень неуютно. И решил разобраться, насколько надёжно FTP-плагин от FAR'а хранит мои пароли.

Создаю учётную запись, называю хост редким словом, чтоб потом было проще искать в реестре (именно там FAR хранит все настройки). В моём случае этим словом почему-то стало gremlin.

Ставлю пароль — восемь единичек. Мне так удобнее, у них код ascii — 0x31 (я дальше «0x» буду опускать).

Открываю regedit, запускаю поиск по слову gremlin, нахожу.

Вижу в поле Password свои восемь единичек (теперь они — 67). Нолик после них говорит нам о том, что данные хранятся строкой (нолик — конец строки). И эти данные закодированы . Первые два байта непонятны. Открываю в FAR'е диалог редактирования параметров учётной записи FTP, ничего не меняю, сохраняю. Поменялись первые два байта, и байт, заместивший «единичку». Ставлю пароль «1234», сохраняю. Закодированная последовательность принимает вид: «89 b2 4a 49 48 4f 00 …» Монотонность байтов пароля не сохранилась, значит, кодирование выполнено не сложением-вычитанием побайтово с какой-то константой, а…

…да. Им. Xor'ом. Исключающим ИЛИ. Сложением по модулю два. Самой таинственной операцией всех времён и народов. Супералгоритм пробегает по паролю одним байтом, ксорит их и… и всё. Набираю статистику, попутно с нервным хихиканьем ксоря между собой первые два таинственных байта. b0^b1 => xorbyte 0d 5d 0e 5e 18 58 30 70 33 73 3b 7b 3f 7f 49 59 53 53 57 57 58 58 69 79 7c 7c

Младший полубайт копируется, старший… короче, xorbyte=((b0^b1)&0x2f)|0x50.

Занавес, одинокие аплодисменты в темноте.

P.S. Программа под Windows и исходнички под VisualC .

Автор: nimblebots

Новости

Как сбалансировать юзабилити и дизайн при создании сайта — User House
Красота или уродство в веб-дизайне всегда связаны с восприятием конкретного человека. То, что для одного «красиво», может быть «ужасным» для другого и наоборот. Но как же так получается, что многие популярные

Чем лучше юзабилити сайта – тем больше лояльных клиентов
Хотите понять, как посетители воспринимают сайт? Это очень просто. Представьте, что вы говорите по телефону с директором, и в это время вам звонит кто-то из родственников, а у вас еще работы на четыре

Знакомство с юзабилити-тестированием сайта. // webknowledge.ru
Перевод статьи:   An Introduction To Website Usability Testing. Автор:   Thomas Churm. При создании нового сайта необходимо учитывать множество факторов. Для того чтобы у посетителей возникло

Специалист по web-usability – боец невидимого фронта
Ярослав Перевалов Что такое usability engineering? Часто ли вы, бродя по Сети, обращаете внимание на то, насколько качественно структурирована информация на сайте и насколько удобно устроена навигация?

Гид по UX исследованиям для начинающих
В индустрии, в основе которой лежит использование людьми наших продуктов, услуг и приложений, исследования просто необходимы. Мы задаем вопросы. Мы делаем пометки. Мы стараемся узнать все, что возможно,

25 советов как улучшить юзабилити (usability) вашего сайта. | Блог об интернет деятельности и трудовых буднях Максима Вячеславовича
Доброго времени суток, дорогие друзья! Сегодня мы поговорим с вами о такой важной вещи как U sability (юзабилити) сайта , о том, как улучшить данный фактор, зная его основные принципы и правила.

Что такое юзабилити и зачем оно нужно
Юзабилити включает простоту, удобство в пользовании, тестирование, проведение аудита проекта. Юзабилити сайтов, интернет-магазинов — это неотъемлимая часть выгодного ведения бизнеса. Задача юзабилити

Юзабилити тестирование сайта турагентства
«Когда информации много и она дешева, дорогим становится внимание». James Gleick Представим сайт, владелец которого считает его достаточно хорошим, удобным и привлекательным. Он размещает рекламные объявления

Юзабилити
Юзабилити (от англ. слова «usability» – практичность, простота использования) – это весьма распространенное ныне понятие объединяет максимальное удобство использования сайта и полезность информации, на

5 шагов для успешного юзабилити-тестирования приложения
Представьте: вы придумали и разработали мобильное приложение с приятным, на ваш взгляд, дизайном, удобным функционалом, полезными опциями, выпустили релиз продукта, но… Несмотря на мощную маркетинговую

Карта
rss