О данном аспекте в столь
распространенной программе я почти ничего не нашел в интернете и по этому
решил написать данную статью, дабы сохранить ваши пароли от ась т.п. В
данной статье я хотел бы описать, как защитить ваш пароль в миранде от
кражи троем, описать плагины связанные с безопасностью и дать еще пару
рекомендаций. Для написания статьи использовалась Miranda 0.3.2
.
Пароль у миранды хранится в профиле
юзера (в dat-файле) по этому кража пароля злоумышленником сводится либо к
краже всего dat файла (мало вероятно из-за большого размера, если большая
хистори) или расшифровка пароля на компьютере жертвы и отправка к
злоумышленнику. Алгоритм поиска профиля у трояна может быть:
Ищет в каталоге, который указывается по
умолчанию при установки миранды инсталлером (C:\Program Files\Miranda\
или C:\Program Files\Miranda IM\). Отсюда правило: скачивайте с сайта
zip версию и распаковывайте желательно не на диск C, а там где
злоумышленник вообще бы не догодался искать программу.
По ключу в реестре
(HKEY_LOCAL_MACHINE\SOFTWARE\Miranda), в строковом параметре Install_dir
, значение которого равно адресу папки миранды с профилями (лично мне
вообще не понятно для чего разработчики сделали функцию добавления этого
ключа, для троянов специально что ли?). Избавиться от этой проблемы тоже
можно: открываем в любом HEX-редакторе (например, WinHex) исполняемый
файл миранды (miranda32.exe), находим в нем "Install_dir" и меняем на
что ни будь типа "Install_xxx". Теперь заходим в реестр и удаляем старый
параметр "Install_dir" (если до этого вы запускали миранду).
Теперь давайте представим такую
ситуацию, что злоумышленник смог выпытать у вас (социальной инженерией)
реальный путь на вашем компьютере к миранде. Но и из этого есть выход,
теперь нам необходимо, чтобы пароль в профиле был зашифрован или его
вообще не было (при каждой загрузке вы вводите его вручную). В такой
ситуации нам на помощь приходят следующие плагины:
LSecurity (http://miranda-im.org/download/details.php?action=viewfile&id=173),
PassProt, Secure Login и д.р. - данные плагины ограничивают доступ к
миранде паролем, который служат для аутентификации к профилю и вашему
уину (при загрузке пароль временно записывается в профиль). После
выгрузки миранды этот пароль удаляется из профиля. Данный способ не
очень хорош тем, что используется один и тот же пароль и его может
украсть злоумышленник любым кейлогером.
Теперь давайте подробней разберем
плагин mSecure (кстати, его написал наш соотечественник). И так, скачиваем
плагин, кидаем в соответствующую папку, идем в настройки и задаем любой
пароль, который будет запрашиваться у вас теперь при каждом запуске
миранды. Алгортим работы плагина следующий (описание дал сам
автор):
Запуск плагина.
Если пароль mSecure не установлен, плагин
никак себя не проявляет.
Установим пароль mSecure (будем называть его
мастер-пароль).
При выгрузке миранды, если установлен
мастер-пароль, mSecure берет все пароли от протоколов (далее просто
пароли), шифрует их с помощью мастер-пароля, записывает зашифрованные
пароли в профайл, записывает хеш-функцию от мастер-пароля в профайл и
стирает пароли от протоколов (напоминаю, мы оставили только
зашифрованные пароли).
При остальных загрузках миранды, если мы
находим хеш-функцию от мастер-пароля, значит мастер-пароль установлен.
Выводим диалог, просим ввести мастер-пароль. Если хеш от введенного
мастер-пароля совпадает с сохраненным хешем, мы расшифровываем пароли от
протоколов, записываем их в профайл и продолжаем загрузку миранды.
Когда мы обнуляем мастер-пароль (ставим
пустой), mSecure стирает его хеш из профайла и все зашифрованные данные.
Так что при следующем запуске mSecure никак себя проявлять не будет.
К сожалению есть и ложка дегтя, даже
две:
В тот момент, когда Миранда запущена,
настоящий пароль от номера аси записан в положенном месте в dat-файле и
в этот момент его может расшифровать троян.
Если работу миранды завершить не стандартным
способом (например, она вылетит), то пароль не сможет удалиться.
К сожалению на данный момент мне не
известно как устранить (или чем) первое утверждение, т.к. сама архитектура
миранды не позволяет написать плагина который бы не держал пароль к уину в
профайле, даже при запущенной миранде. Да и вообще миранда в плане
безопасности написана крайне не корректно. Но я считаю использовать советы
приведенные выше на много лучше, чем ничего, особенно если у вас пятизнак
или красивый шестизнак.
Другие плагины безопасности
(Security and Privacy)
SecureIM - позволяет устанавливать
безопасное соединение с другим пользователем такого же плагина, чтобы
злоумышленник не смог наснифать разговор собеседников.
GnuPG Plugin - добавляет возможность GnuPG
шифрование/де шифрование передаваемых сообщений. Из подобных плагинов
хочу упомянуть Scrambler.
History Sweeper - позволяет очищать хистори,
как конкретных пользователей из контекстного меню, так и системной
хистори и создавать разные правила очищения хистори при включении и
выключении миранды. Так же хочу обратить ваше внимание на утилиту
dbtool.exe (http://miranda-im.org/download/index.php?action=display&id=22),
которая тоже позволяет чистить хистори.
ContactVisibility - позволяет выбирать из
контекстного меню юзера опции: всегда быть в OnLine или OffLine для
этого юзера.
Так же в разделе по безопасности много
плагинов, позволяющих не пропускать вам ICQ-спам.