О данном аспекте в столь распространенной программе я почти ничего не нашел в интернете и по этому решил написать данную статью, дабы сохранить ваши пароли от ась т.п. В данной статье я хотел бы описать, как защитить ваш пароль в Миранде от кражи троянской программой, описать плагины связанные с безопасностью и дать еще пару рекомендаций. Для написания статьи использовалась Miranda 0.3.2 .
Как украсть и расшифровать пароль Для расшифровки паролей на данный момент мне известно две утилиты: Miranda Password Decryptor и mimpd (http://www.web-hack.ru/download/info.php?go=62). Так же красть и одновременно расшифровывать пароли от Миранды и других популярных программ может троян Pinch (http://www.web-hack.ru/download/info.php?go=49).
Защита пароля от троянских вирусов Пароль у Миранды хранится в профиле пользователя (в 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" (если до этого вы запускали Миранду).
Теперь давайте представим такую ситуацию, что злоумышленник смог выпытать у вас (социальной инженерией) реальный путь на вашем компьютере к миранде. Но и из этого есть выход, теперь нам необходимо, чтобы пароль в профиле был зашифрован или его вообще не было (при каждой загрузке вы вводите его вручную). В такой ситуации нам на помощь приходят следующие плагины:
- mSecure (http://miranda-im.org/download/details.php?action=viewfile&id=848) - позволяет шифровать пароль (используется SHA для хеширование и Blowfish для шифрование) и ограничивать вход в профиль по паролю.
- LSecurity (http://miranda-im.org/download/details.php?action=viewfile&id=173), PassProt, Secure Login и д.р. - данные плагины ограничивают доступ к миранде паролем, который служат для аутентификации к профилю и вашему UIN (при загрузке пароль временно записывается в профиль). После выгрузки Миранды этот пароль удаляется из профиля. Данный способ не очень хорош тем, что используется один и тот же пароль и его может украсть злоумышленник любым кейлогером.
Теперь давайте подробней разберем плагин mSecure (кстати, его написал наш соотечественник). И так, скачиваем плагин, кидаем в соответствующую папку, идем в настройки и задаем любой пароль, который будет запрашиваться у вас теперь при каждом запуске миранды. Алгоритм работы плагина следующий (описание дал сам автор):
- Запуск плагина.
- Если пароль mSecure не установлен, плагин никак себя не проявляет.
- Установим пароль mSecure (будем называть его мастер-пароль).
- При выгрузке миранды, если установлен мастер-пароль, mSecure берет все пароли от протоколов (далее просто пароли), шифрует их с помощью мастер-пароля, записывает зашифрованные пароли в профайл, записывает хеш-функцию от мастер-пароля в профайл и стирает пароли от протоколов (напоминаю, мы оставили только зашифрованные пароли).
- При остальных загрузках миранды, если мы находим хеш-функцию от мастер-пароля, значит мастер-пароль установлен. Выводим диалог, просим ввести мастер-пароль. Если хеш от введенного мастер-пароля совпадает с сохраненным хешем, мы расшифровываем пароли от протоколов, записываем их в профайл и продолжаем загрузку миранды.
- Когда мы обнуляем мастер-пароль (ставим пустой), mSecure стирает его хеш из профайла и все зашифрованные данные. Так что при следующем запуске mSecure никак себя проявлять не будет.
К сожалению есть и ложка дегтя, даже две:
- В тот момент, когда Миранда запущена, настоящий пароль от номера ICQ записан в положенном месте в dat-файле и в этот момент его может расшифровать троян.
- Если работу миранды завершить не стандартным способом (например, она вылетит), то пароль не сможет удалиться.
К сожалению на данный момент мне не известно как устранить (или чем) первое утверждение, т.к. сама архитектура миранды не позволяет написать плагина который бы не держал пароль к UIN в профайле, даже при запущенной миранде. Да и вообще миранда в плане безопасности написана крайне не корректно. Но я считаю использовать советы приведенные выше намного лучше, чем ничего, особенно если у вас пятизначный или красивый шестизначный номер.
Другие плагины безопасности (Security and Privacy) По данной ссылке (http://miranda-im.org/download/index.php?action=display&id=38) располагаются плагины связанные с повышением безопасности миранды. Я бы хотел дать не большое описание наиболее хороших плагинов:
- SecureIM - позволяет устанавливать безопасное соединение с другим пользователем такого же плагина, чтобы злоумышленник не смог наснифать разговор собеседников.
- GnuPG Plugin - добавляет возможность GnuPG шифрование/де шифрование передаваемых сообщений. Из подобных плагинов хочу упомянуть Scrambler.
- History Sweeper - позволяет очищать истоию, как конкретных пользователей из контекстного меню, так и системной истоии и создавать разные правила очищения истоии при включении и выключении миранды. Так же хочу обратить ваше внимание на утилиту dbtool.exe (http://miranda-im.org/download/index.php?action=display&id=22), которая тоже позволяет чистить истоию.
- ContactVisibility - позволяет выбирать из контекстного меню пользователя опции: всегда быть в OnLine или OffLain для этого пользователя.
- Так же в разделе по безопасности много плагинов, позволяющих не пропускать вам ICQ-спам.
Если у вас имеется какой-то новый совет, то обязательно пришлите его мне. А если у вас появился вопрос, то обсуждение статьи проходит в данной теме (http://forum.web-hack.ru/index.php?showtopic=5476).