Безопасность в Miranda IM
О данном аспекте в столь распространенной программе я почти ничего
не нашел в интернете и по этому решил написать данную статью, дабы
сохранить ваши пароли от ась т.п. В данной статье я хотел бы описать,
как защитить ваш пароль в миранде от кражи троем, описать плагины
связанные с безопаснотью и дать еще пару рекомендаций. Для написания
статьи использовалась Miranda 0.3.2 .
Как украсть и расшифровать пароль
Для расшифровки паролей на данный момент мне известно две утилиты: Miranda Password Decryptor и mimpd. Так же красть и одновременно расшифровывать пароли от Миранды и других популярных мессенджеров может троян Pinch.
Защита пароля от троев
Пароль у миранды хранится в профиле юзера (в dat-файле) по этому
кража пароля злоумышленником сводится либо к краже всего dat файла
(мало вероятно из-за большого размера, если большая хистори) или
расшифровка пароля на компьютере жертвы и отправка к злоумышленнику.
Алгоритм поиска профиля у трояна может быть:
1) Ищет в каталоге, который указывается по умолчанию при установки
миранды инсталлером (C:\Program Files\Miranda\ или C:\Program
Files\Miranda IM\). Отсюда правило: скачивайте с сайта zip версию и
распаковывайте желательно не на диск C, а там где злоумышленник вообще
бы не догодался искать программу.
2) По ключу в реестре (HKEY_LOCAL_MACHINE\SOFTWARE\Miranda), в
строковом параметре Install_dir , значение которого равно адресу папки
миранды с профилями (лично мне вообще не понятно для чего разработчики
сделали функцию добавления этого ключа, для троянов специально что
ли?). Избавиться от этой проблемы тоже можно: открываем в любом
HEX-редакторе (например, WinHex) исполняемый файл миранды
(miranda32.exe), находим в нем "Install_dir" и меняем на что ни будь
типа "Install_xxx". Теперь заходим в реестр и удаляем старый параметр
"Install_dir" (если до этого вы запускали миранду).
Теперь давайте представим такую ситуацию, что злоумышленник смог
выпытать у вас (социальной инженерией) реальный путь на вашем
компьютере к миранде. Но и из этого есть выход, теперь нам необходимо,
чтобы пароль в профиле был зашифрован или его вообще не было (при
каждой загрузке вы вводите его вручную). В такой ситуации нам на помощь
приходят следующие плагины:
*) mSecure- позволяет шифровать пароль (используется SHA для хеширование и
Blowfish для шифрование) и ограничивать вход в профиль по паролю.
*) LSecurity,
PassProt, Secure Login и д.р. - данные плагины ограничивают доступ к
миранде паролем, который служат для аутификации к профилю и вашему уину
(при загрузке пароль временно записывается в профиль). После выгрузки
миранды этот пароль удаляется из профиля. Данный способ не очень хорош
тем, что используется один и тот же пароль и его может украсть
злоумышленник любым кейлогером.
Теперь давайте подробней разберем плагин mSecure (кстати, его
написал наш соотечественник). И так, скачиваем плагин, кидаем в
соответствующую папку, идем в настройки и задаем любой пароль, который
будет запрашиваться у вас теперь при каждом запуске миранды. Алгортим
работы плагина следующий (описание дал сам автор):
* Запуск плагина. * Если пароль mSecure не установлен, плагин никак себя не проявляет. * Установим пароль mSecure (будем называть его мастер-пароль). * При выгрузке миранды, если установлен мастер-пароль, mSecure беретвсе
пароли от протоколов (далее просто пароли), шифрует их с помощью мастер-пароля, записывает зашифрованные пароли в профайл, записывает
хеш-функцию от мастер-пароля в профайл и стирает пароли от протоколов
(напоминаю, мы оставили только зашифрованные пароли). * При остальных загрузках миранды, если мы находим хеш-функцию от
мастер-пароля, значит мастер-пароль установлен. Выводим диалог, просим ввести мастер-пароль. Если хеш от введенного мастер-пароля совпадает с
сохраненным хешем, мы расшифровываем пароли от протоколов, записываем
их в профайл и продолжаем загрузку миранды. * Когда мы обнуляем мастер-пароль (ставим пустой), mSecure стирает его
хеш из профайла и все зашифрованные данные. Так что при следующем запуске mSecure никак себя проявлять не будет.
К сожалению есть и ложка дегтя, даже две:
1) В тот момент, когда Миранда запущена, настоящий пароль от номера
аси записан в положенном месте в dat-файле и в этот момент его может
расшифровать троян. 2) Если работу миранды завершить не стандартным способом (например, она вылетит), то пароль не сможет удалиться.
к сожалению на данный момент мне не известно как устранить (или
чем) первое утверждение, т.к. сама архитектура миранды не позволяет
написать плагина который бы не держал пароль к уину в профайле, даже
при запущенной миранде. Да и вообще миранда в плане безопасности
написана крайне не корректно. Но я считаю использовать советы
приведенные выше на много лучше, чем ничего, особенно если у вас
пытизнак или красивый шестизнак.
Другие плагины безопасности (Security and Privacy)
По данной ссылке распологаются плагины связанные с повышением безопасности миранды. Я бы
хотел дать не большое описание наиболее хороших плагинов:
*) SecureIM - позволяет устанавливать безопасное соединение с другим
пользователем такого же плагина, чтобы злоумышленник не смог наснифать
разговор собеседников. *) GnuPG Plugin - добавляет возможность GnuPG шифрование/де шифрование
передаваемых сообщений. Из подобных плагинов хочу упомянуть Scrambler. *) History Sweeper - позволяет очищать хистори, как конкретных
пользователей из контекстного меню, так и системной хистори и создавать
разные правила очищения хистори при включении и выключении миранды. Так
же хочу обратить ваше внимание на утилиту dbtool.exe, которая тоже позволяет чистить хистори. *) ContactVisibility - позволяет выбирать из контекстного меню юзера опции: всегда быть в OnLine или OffLain для этого юзера. *) Так же в разделе по безопасности много плагинов, позволяющих не пропускать вам ICQ-спам.
Если у вас умеется какой то новый совет, то обязательно пришлите
его мне. А если у вас появился вопрос, то обсуждение статьи проходит в
данной теме. Автор: Terabyte
Любое, полное или частичное копирование материалов сайта без согласования с автором запрещено.
|