воскресенье, 22 февраля 2009 г.

IMspector, перехват сообщений ICQ

Всем привет!
Вот на работе поставили интересную задачу:

Требуется писать всю историю ICQ переписки сотрудников для руководства.

Немного погуглив и почитав форумов наткнулся на замечательный проект IMspector

Вот что это маленькое чудо умеет:

IMSpector is an Instant Messenger proxy with monitoring, blocking and content-filtering capabilities. Currently it supports MSN, Jabber/XMPP, AIM, ICQ, Yahoo, IRC and Gadu-Gadu to different degrees. MSN is the principle protocol, as it’s the most popular these days, at least in the UK where I’m based. The supported platforms are at present Linux and BSD when using the pf firewall, but porting to other UNIXs should be trivial. It is able to log to plain files, as well as several types of SQL database including MySQL, SQLite and PostreSQL.

Иными словами эта штука работает с : MSN, Jabber/XMPP, AIM, ICQ, Yahoo, IRC and Gadu-Gadu протоколами, работает в Linux, *BSD системах и поддерживает СУБД.
И умеет подсовывать свои сертификаты, что-бы самых умных с SSL обломать.
Ещё можно отключить WEB камеры, пересылку файлов и блокировать сообщения.

От себя добавлю что с Русским языком IMspector работает.

Поскольку ICQ протокол меняется чуть-ли не каждый день я решил ставить IMspector из daily snapshots
Скачиваем, компилируем устанавливаем:

cd /tmp
wget http://www.imspector.org/downloads/snapshots/imspector-20090221.tar.gz
tar xvfz imspector-20090221.tar.gz
cd imspector
make
make install

Если нужны сертификаты выполните

make install-ca-cert

Всё будет установлено в директорию /usr

* /usr/sbin/imspector - the imspector binary.
* /usr/lib/libimspector.so - a shared library that the main program and plugins share.
* /usr/lib/imspector/*protocolplugin.so - the protocol plugins.
* /usr/lib/imspector/*loggingplugin.so - the logging plugins.
* /usr/lib/imspector/*filterplugin.so - the filtering and content-manipulation plugins.
* /usr/etc/imspector/imspector.conf - an example config file, good enough for quick playing.
* /usr/etc/imspector/badwords.txt - an example list of swear words to block.
* /usr/etc/imspector/acl.txt - an example of a trivial and useless ACL.
* /usr/etc/imsepctor/servercert.pem - optional server ssl certificate.
* /usr/etc/imspector/serverkey.pem - optional server ssl key.
* /usr/etc/imsepctor/cacert.pem - optional ca ssl certificate.
* /usr/etc/imspector/cakey.pem - optional ca ssl key.

И добавим NAT правила с этой странички.

Поскольку меня интересует только ICQ я вписал:

ICQ/AIM: iptables -t nat -A PREROUTING -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667

И открыл NAT доступ для 5190 порта

-A POSTROUTING -s 192.168.1.0/255.255.255.0 -p tcp -m tcp --dport 5190 -j MASQUERADE

И ещё закрыл ICQ доступ на проксе SQUID

acl icq_dom dstdomain .icq.com .aol.com
acl icq_addr src 64.12.0.0/255.255.0.0 255.188.0.0/255.255.0.0
http_access deny icq_dom
http_access deny icq_addr

2 комментария:

  1. вот сейчас сижу решаю ту же задачу. Проблема с iptables написал строку которая переправляет исходящие соеденения
    -A OUTPUT -p tcp -m tcp --dport 5190 -j REDIRECT --to-ports 16667 на порт имспектра, не надо делать чтобы аська работала без прокси, мног надо перенастроить клиентов опять. Вот только ничего на этот порт не попадает. Незнаю пока почему. Да и еще есть ведь такая штука как qip и он по умолчанию на 443 порт. И если верить tcpdump то у меня они все такие.

    ОтветитьУдалить
  2. пробовал на миранде
    она юзает порт 5190

    написал редирект с 5190 на 16667 порт. Ничего не вышло. такое впечатление либо прокси не работает или редирект не работетат или данные не попадают на этот порт... Хз что происходит.

    вот вопрос как проверить работоспособность этой программы? аська должна же по идее конектиться через нее?



    у меня тоже ничего не получилось с маршрутизацией порта 5190

    ОтветитьУдалить