Monitoramento e controle de comunicadores instantâneos através de software livre Ricardo Vergutz Curso de Pós-graduação em Redes e Segurança de Sistemas Pontifícia Universidade Católica do Paraná Curitiba, novembro de 2009 Resumo Este trabalho tem a finalidade de apresentar a avaliação dos softwares IMSpector, MSN-Proxy e IM Sniffer, ambos baseados em licença de uso GPL, com a finalidade de controlar e monitorar comunicadores instantâneos dentro de uma rede local. Avaliando o processo de instalação, protocolos monitorados, interface de configuração e visualização de relatórios, eficiência dos bloqueios configuráveis, configurações necessárias no servidor e/ou estações de trabalho que serão controladas. 1 Introdução O envio de mensagens instantâneas, também conhecido como IM (Instant Messaging), é uma forma de envio de mensagens em tempo real entre duas ou mais pessoas através de texto. As mensagens são enviadas para os computadores/dispositivos através de uma rede, podendo ser através de uma rede interna, intranet ou Internet. Projetados inicialmente para a transferência de apenas texto, atualmente a grande maioria dos comunicadores instantâneos agregaram outras ferramentas de comunicação como o envio de imagens, animações, conversação através de áudio e/ou vídeo e transferência de arquivos. Os softwares de comunicação instantânea se tornaram rapidamente populares pela sua velocidade de comunicação, pois a conversação acontece em tempo real com o alerta de mensagens recebidas, diferentemente do e-mail que possui um atraso maior na entrega das mensagens pelo longo caminho a percorrer. Os mais populares são Windows Live™ Messenger (antigo MSN Messenger), ICQ, Yahoo! Messenger. Segundo pesquisa realizada em fevereiro de 2008 pela comScore, 47% dos usuários da internet utilizam sistemas de comunicação instantânea sendo que 59% destes utilizam o Windows Live™ Messenger.[1] No Brasil o uso destes sistemas é feito por 61% dos internautas e também o Windows Live™ Messenger é o mais utilizado com 81% dos usuários. [6,7] Este formato de comunicação vem crescendo muito nos últimos anos no setor corporativo, isso ocorre pela agilidade de comunicação interna e com os parceiros de negócios, além da economia em telefonia. Mas a falta de controle destas ferramentas causam diversos problemas no âmbito empresarial como: queda da produtividade, aumento de ameaças digitais e possibilidade de vazamento de informações confidenciais. Para isto é necessário a implantação de sistemas de controle para que o uso dos comunicadores seja estritamente empresarial. Existem diversas soluções de software proprietários para esta área, mas que em sua grande maioria tem um alto custo de implantação e manutenção, inviabilizando a sua implantação em empresas de pequeno e médio porte. Este trabalho tem a motivação de mostrar que existem soluções neste ramo na comunidade de software livre, avaliando o desempenho, funcionalidade e estabilidade da solução. O artigo é formado pelo processo de instalação e configurações iniciais de cada ferramenta encontrada, logo após temos os procedimentos que foram adotados nos testes, resultado das funcionalidades testadas e a avaliação geral das 3 ferramentas. 2 Descrição do Contexto Com o aumento do uso dos comunicadores instantâneos no setor empresarial e o seu uso descontrolado levam as empresas a adotar medidas para a redução deste problema, existem quatro opções possíveis a serem adotadas: a) bloquear totalmente o uso destas ferramentas, mas que poderá acarretar aumento de custos em outras áreas, como telefonia; b) monitoramento das conversas dos usuários; c) controle sobre quais usuários poderão utilizar as ferramentas e com quem poderão conversar; d) controle e monitoramento dos usuários. Num primeiro momento as empresas tendem a adotar a opção de bloqueio das ferramentas, porém a proibição desta ferramenta trás grandes problemas de agilidade de diversos processos e do próprio negócio, sendo necessário buscar novas soluções para aumentar a agilidade das decisões. Ao repensar os conceitos a maioria das empresas esbarra na questão legal do monitoramento das conversas, pois até onde é legal monitorar as conversas dos funcionários? 2.1 Legalidade do monitoramento Uma das maiores preocupações dos gestores é a legalidade da implantação de sistemas para monitoramento de conversas, navegação na internet e e-mail. Esta dúvida ocorre pelo direito constitucional de privacidade e inviolabilidade da correspondência, mas de acordo com a advogada especialista em direito digital Patrícia Peck, tanto os computadores como a internet e a conta de e-mail corporativa pertencem à empresa e, portanto, podem ser monitorados e controlados.[17] Decisões da justiça vêm se atualizando quando o assunto é o correto uso das ferramentas tecnológicas no ambiente de trabalho. Abaixo um resumo da evolução do judiciário brasileiro em relação às principais questões do direito digital:[16] • 2000 a 2003: o monitoramento de email é invasão de privacidade e o uso de email como prova é restrita, podendo apenas complementar outras provas; • 2004 a 2006: o monitoramento de email passa a ser admitido nos casos em que havia ciência prévia do empregado e passou-se a admitir o email como prova única; • 2007 a 2009: monitoramento é aceito, já que a ferramenta de trabalho é do empregador e ele é responsável por seu uso indevido por parte dos empregados, começou-se a admitir o uso de novas tecnologias (email, Orkut, You Tube, fotografia digital, mensagens SMS, etc.) como prova, desde não haja comprovação de alteração dos dados. O monitoramento do uso de ferramentas de trabalho não é apenas um direito do empregador, mas sim uma obrigação. A empresa é responsável pelos danos causados a terceiros pelo mau uso de seus recursos, inclusive os tecnológicos, sejam eles por funcionários, estagiários ou terceirizados. Apesar de já existirem diversas decisões judiciais favoráveis ao empregador é fundamental realizar o aviso prévio formal, tendo que ser por escrito, na rede ao usuário quando ele realizar a entrada no sistema, em uma norma ou em um contrato. [15] Em geral, há dois tipos de usuários: os “sem noção” e os “de má-fé”. A grande maioria dos usuários não tem noção, não conhece as leis, não sabe quais os riscos nem imagina as conseqüências. Este grupo em geral teria evitado a conduta se tivesse sido bem orientado e capacitado, logo, as empresas também precisam investir em treinamentos não apenas em sistemas para monitoramento.[15] 2.2 Testes e verificações necessárias Os testes de funcionalidades dos softwares encontrados foram realizados apenas para controle/monitoramento dos principais softwares utilizados hoje no Brasil, ou seja, Windows Live™ Messenger, Yahoo Messenger e ICQ. A avaliação de qualidade dos softwares será baseada em compatibilidade de protocolos de monitoramento, facilidade de instalação, configuração e acesso ao monitoramento, qualidade das interfaces, funcionalidades propostas e documentação. Uma das principais funcionalidades a ser testada é se o software permite alertar os usuários sobre a utilização do sistema de monitoramento, ficando assim o empregador com um respaldo jurídico maior. Como clientes dos comunicadores instantâneos foram utilizados o Windows Live Messenger 2009, Windows Messenger, Yahoo! Messenger 9.0 e ICQ 6.5. 3 Ferramentas de controle/monitoria As ferramentas encontradas que atendem totalmente ou parcialmente a proposta do projeto foram o IMSpector, MSN-Proxy e IM Sniffer. Para a montagem de uma plataforma de testes foi utilizado um microcomputador: • Intel® Pentium® Dual Core E5300 • 1 Gb de memória RAM • Disco rígido de 320Gb • 2 Placas de rede Gigabit O sistema operacional selecionado foi o CentOS 5.4. Abaixo a versão dos principais componentes instalados: • Kernel 2.6.18-164 • Apache 2.2.3 • PHP 5.1.6 • MySQL 5.0.77, incluindo pacote de desenvolvimento • Libevent 1.1a, substituída pela versão 1.4.11 devido à limitação do MSN-Proxy • Libpcap 0.9.4, incluindo pacote de desenvolvimento • Iptables 1.3.5 • Perl 5.8.8 • SqLite 3.3.6, incluindo pacote de desenvolvimento • gcc e gcc++ 4.1.2 3.1 IMSpector Criado por Lawrence Manning, desenvolvido em C++ e interface em Perl, possui licença de uso GPL v2, teve a primeira versão lançada em 15 de outubro de 2006. O software é um proxy de comunicadores instantâneo com monitoramento, bloqueio e capacidades de filtragem de conteúdo. Atualmente ele suporta MSN, Jabber/XMPP, AIM, ICQ, Yahoo, IRC e Gadu-Gadu, a compatibilidade dos protocolos possui diferentes níveis de implementação. As plataformas suportadas são Linux e BSD, a utilização deve ser preferencialmente no roteador da rede. O sistema de gravação do monitoramento pode ser feito através de arquivo texto, MySQL, SQLite ou PostgreSQL, por padrão apenas o registro em arquivo texto está ativo sendo necessária a compilação das bibliotecas adicionais para funcionamento da gravação em banco de dados. Ainda segundo o desenvolvedor o software possui opção para emitir avisos sobre o monitoramento das conversas, sendo que apenas no ICQ/AIM este processo não é suportado, enquanto que a manipulação do conteúdo, através da substituição de palavras não permitidas por outros caracteres está suportada em todos os protocolos. Outro ponto importante é o suporte de utilização de regras para conversação, podem realizar a limitação de quais usuários poderão utilizar os comunicadores dentro da rede local e com quem poderão conversar. 3.1.1 Processo de instalação A versão testada foi a 0.9 e a instalação realizada através do código-fonte. A documentação contida juntamente com o código-fonte tanto o arquivo README quanto o INSTALL não apresentavam nenhum informação para instalação indicando apenas o site do software, http://www.imspector.org. Enquanto que no site continha as informações básicas necessárias, com os comandos, arquivos que serão instalados e regras genéricas para o redirecionamento das portas para utilização como proxy transparente de comunicadores instantâneos. Um problema encontrado é ausência de sistema de autoconfiguração para definição dos parâmetros a serem instalados, seleção de bibliotecas e diretório destino. Com isto é necessário uma configuração manual dos parâmetros, caso necessário, e consequentemente um conhecimento mais aprofundado sobre compilação de software em Linux. Caso não seja modificado o arquivo de compilação os pacotes openssl e libssl-dev serão necessários para a compilação. Com a configuração padrão o sistema funciona apenas para gravação dos monitoramentos para arquivo texto e não permite a utilização da técnica de alerta sobre o monitoramento e bloqueios efetuados. Para ativação existem duas opções: • Antes da compilação, adicionar a variável ADD_PLUGINS no arquivo Makefile, conforme abaixo: ADD_PLUGINS = dbresponderplugin.so • Ou depois de compilado, executar os comandos abaixo para compilar apenas o pacote dbresponderplugin.so e copiar o arquivo, segundo o exemplo abaixo: make dbresponderplugin.so cp dbresponderplugin.so /usr/lib/imspector/ O principal cuidado que se deve ter ao compilar novas bibliotecas individualmente é a não execução do comando make install, pois o mesmo substitui os arquivos acl.txt, badwords.txt e imspector.conf, causando a exclusão das regras existentes. O processo de instalação foi baseado nos tutoriais postados por Gelber Arruda Junior, em seu blog, apenas modificando a versão e as configurações do imspector.conf, portanto a instalação foi feita através do seguintes comandos: [2] # # # # # wget http://www.imspector.org/downloads/imspector-0.9.tar.gz tar -zxvf imspector-0.9.tar.gz cd imspector-0.9 make make install # make install-ca-cert # make dbresponderplugin.so # cp dbresponderplugin.so /usr/lib/imspector/ A instalação da interface gráfica deve ser feita manualmente, sendo a melhor maneira a cópia do arquivo imspector.cgi da pasta contrib para o diretório cgi-bin do Apache, que neste caso encontra-se em /var/www/cgi-bin. 3.1.2 Configuração Para a realização das configurações foi usada como base de consulta o próprio arquivo de configuração, através dos comentários contidos nas opções, e o site através da opção Configuration e suas sub-sessões que exemplificam cada categoria e opção que o sistema possui. As configurações usadas para o ambiente de testes inicialmente foram: response_prefix=Mensagem do Administrador: -= response_postfix==responder_filename=/usr/etc/imspector/responder.db notice_days=1 notice_response=Esta conversa esta sendo monitorada. filtered_mins=15 filtered_response=Esta mensagem ou ação foi bloqueada icq_protocol=on msn_protocol=on yahoo_protocol=on file_logging_dir=/var/log/imspector acl_filename=/usr/etc/imspector/acl.txt block_files=on block_webcams=on badwords_filename=/usr/etc/imspector/badwords.txt badwords_replace_character=* badwords_block_count=2 Para iniciar o monitoramento e controle dos comunicadores instantâneos desejados é necessário que seja feito um redirecionamento das portas, nos testes o software utilizado para isto foi o iptables com as regras abaixo, lembrando que 192.168.2.0/24 deve ser substituída pelo endereço da rede local. • MSN: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -s 192.168.2.0/24 -p tcp -destination-port 1863 -j REDIRECT --to-ports 16667 • Jabber: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 5222 -j REDIRECT --to-ports 16667 • Jabber over SSL: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destinationport 5223 -j REDIRECT --to-ports 16667 • ICQ/AIM: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667 • Yahoo: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 5050 -j REDIRECT --to-ports 16667 • IRC: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 6667 -j REDIRECT --to-ports 16667 • Gadu-Gadu: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 8074 -j REDIRECT --to-ports 16667 3.2 MSN-Proxy Inicialmente criado e mantido pelo brasileiro Luiz Otavio Oliveira Souza, o software é desenvolvido em C e interface em PHP, já possui diversas colaborações da comunidade. Segundo o site oficial, “msn-proxy é um proxy leve e transparente para os clientes do MSN Messenger e permitem controlar e monitorar o uso do Messenger na rede”.[4] Como o próprio nome sugere este software consegue controlar apenas o Windows Live™ Messenger, ou MSN Messenger, diferentemente do IMSpector. O projeto esta registrado no SourceForge desde 05 de junho de 2007, com a primeira publicação apenas 3 meses depois já como versão 0.5 e a última versão é 0.7 lançada em 22 de março de 2009. [4] O software deve ser rodado como daemon no computador que controlará o fluxo MSN, preferencialmente o gateway da rede, pois para o efetivo controle todo o tráfego da rede interna com destino a porta 1863 deverá ser redirecionado para o IP do computador que estará rodando o MSN-Proxy e porta 1863. Assim sempre que os usuários tentarem utilizar qualquer cliente MSN o tráfego será interceptado e as regras aplicadas. [3] A interface web roda em um servidor HTTP e é de simples instalação, sendo desenvolvida em PHP. Nela você irá configurar as opções gerais de acesso, protocolos bloqueados e funções bloqueadas, e também as opções personalizadas para cada usuário que podem ser a liberação ou proibição de uma regra geral, contatos permitidos e bloqueados, bem como controlar quem está online e a opção de monitoramento das conversas. O MSN-Proxy tem como principais característica: gravação de histórico em banco de dados (por padrão), o bloqueio instantâneo de contatos, interface de configuração e monitoramento, personalização de regras por usuário. 3.2.1 Processo de instalação A instalação foi realizada através de código fonte versão 0.7, sendo que no processo de instalação foram encontrados diversos problemas na instalação e alguns de difícil solução. O principal fator que contribui para a dificuldade foi a falta de informação sobre os softwares requeridos para a compilação e funcionamento. No site oficial não foram encontradas informações dos procedimentos de configuração, instalação, requisitos, etc., enquanto a documentação encontrada foi apenas em tutoriais na internet que explicavam com instalar, quase todos sem constar as versões necessárias ou com os requisitos, mas para a instalação de versões anteriores do MSN-proxy. Primeiramente, ocorreu erro na instalação devido a não localização das chamadas necessárias na libevent, que possuía a versão 1.1a, após consulta a outros tutoriais, dicas e no fórum no SourceForge foi encontrada a necessidade de substituição pela versão 1.4 ou superior. [11] Após a instalação da última versão instável a 1.4.12, lançada em 24 de julho de 2009, ocorreu erro pela não localização da biblioteca e include do MySQL, sendo este problema mais facilmente solucionado após a leitura da dica no blog de Evandro S. Stein[10] de como configurar as variáveis MYSQLINC e MYSQLLIB no Makeconfig. Após modificações do Makeconfig e atualização da libevent 1.4.12 a compilação ocorreu normalmente sem erros, apenas sendo necessários fazer a criação do banco de dados e inserção da configuração padrão do servidor. Mesmo com a instalação sem problemas durante os testes foram observados alguns problemas ao utilizar a libevent 1.4.12 como: • Mensagem de erro no debug “closed connection to ns server. flushing queue.”; • Eventualmente usuário fica online, mas para os contatos continua como offline; • Mensagens eventualmente não enviadas ou recebidas. Para tentativa de correção dos problemas foi instalada a versão 1.4.11 da libevent como informava o artigo anterior[10], após esta instalação não apresentou mais os problemas acima citados. A instalação teve como base a dica publicada no site Viva o Linux [5], com alteração da versão do software, substituição da versão libevent para a 1.4.11 e utilização do MySQL através do localhost e não por sockets. Para teste da interface foi realizada a cópia da pasta php, que encontra-se juntamente com o código-fonte, para o diretório raiz do apache. Abaixo os comandos básicos para instalação do MSN-Proxy e libevent, modificações no Makeconfig: Instalação da libevent 1.4.11 # tar xvfz libevent-1.4.11-stable.tar.gz # cd libevent* # ./configure # make # make install # ldconfig Instalação do msn-proxy 0.7 # tar -zxvf msn-proxy-0.7.tar.gz # cd msn-proxy-0.7 # make # make install # cp –r php /var/www/html/msnproxy Alterações que foram necessárias no Makeconfig MYSQLINC=/usr/include/mysql MYSQLLIB=/usr/lib/mysql # mysql -u root -p mysql> create database msnproxy; mysql> grant all privileges on msnproxy.* to msnproxy@localhost identified by 'sua senha'; mysql> use msnproxy; mysql> insert into defaults (internal_host) VALUE ('192.168.2.1'); mysql> flush privileges; 3.2.2 Configuração O software exibe apenas algumas modificações inicias que são os ajustes de conexão de banco de dados, nos arquivos /usr/local/etc/msn-proxy/mysql/conf e mysql.inc.php da interface. Também é necessário ajustar o número máximo de clientes simultâneos, parâmetro encontrado em /usr/local/etc/msn-proxy/msn-proxy.conf, variável max_clients, onde deverá ser colocado o número desejado de clientes, para os testes foram usados o valor padrão de 10 clientes. # echo “localhost|0|msnproxy|sua proxy/mysql/conf /var/www/html/msnproxy/mysql.inc.php $host = "localhost"; $user = "msnproxy"; $pass = "sua senha"; $db = "msnproxy"; $port = 3306; senha|msnproxy” > /usr/local/etc/msn- Assim como o IMSpector é necessário o redirecionamento do tráfego da porta 1863 para o IP local porta 1863, nos testes o software utilizado para isto foi o iptables com a regras: iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --destination-port 1863 -j REDIRECT --to-ports 1863 3.3 IM Sniffer Segundo informações contidas na página do projeto no SourceForge, o IM Sniffer é baseado na tecnologia de captura de pacotes através da biblioteca pcap. Possui licença de uso GPL v2 e sua primeira versão pública foi 0.02 lançada em 19 de maio de 2005 e a última versão lançada é 0.04 em 02 de setembro de 2005.[18] O software captura o tráfego de mensagens instantâneas na rede, sendo capaz de registrar as conversas, lista de contatos, informação de perfil, de notificações de email, entre outros eventos de MSN.[18] Foi construído apenas para captura do protocolo do MSN, não é possível realizar inclusão de mensagem de alerta e bloqueios, apenas o monitoramento. A sua instalação deve obrigatoriamente ser realizada no roteador da rede. 3.3.1 Processo de instalação A versão utilizada para os testes foi a 0.04 e o procedimento de instalação é um pouco confuso, devido a estrutura do código-fonte e ausência do uso de ferramentas como autoconf e make, mas conforme mostrou o tutorial do Viva o Linux[13] o sistema é de fácil instalação, tendo como requisitos apenas a biblioteca libpcap, o pacote de desenvolvimento da libpcap e o compilador gcc++. Para instalação basicamente são necessário os seguintes comandos: # # # # # mkdir imsniff tar -zxvf imsniff_0.04.tgz -C imsniff cd imsniff/linux/ ./build cp ../docs/imsniff.conf.sample /etc/imsniff.conf mkdir /tmp/chats /tmp/debug # cp imsniff /usr/sbin/ # # echo "/usr/sbin/imsniff" >> /etc/rc.local 3.3.2 Configuração Este sistema exige apenas alguns ajustes, para isso é necessário a edição do arquivo /etc/imsniff.conf . Os parâmetros que são obrigatórios fazer ajustes são: • daemonize: alterando para 1, para que o software trabalhe como um daemon; • interface: inserindo a interface onde serão capturados os pacotes; • chatdir: diretório onde serão gravadas as conversas; • debugdir: arquivo de log do software, para verificação de possíveis problemas. Caso sejam alterados quaisquer parâmetros deste arquivo será necessário o reinicio do imsniff, sendo que ao serem alterados os parâmetros chatdir e/ou debugdir é também necessário que sejam criados os diretórios, pois o sistema não consegue criá-los automaticamente. 4 Procedimentos de Teste e Avaliação Para realização de testes foram utilizadas as últimas versões dos softwares oficiais dos comunicadores instantâneos, todos os testes foram feitos com configuração padrão. Os softwares de monitoramento foram instalados no servidor Linux que funciona como o roteador da rede. Os testes foram realizados através dos computadores da rede interna se comunicando com usuários externos e também internos para verificação se os controle/monitoramento seriam aplicados em qualquer ambiente. 4.1 IMSpector Nos testes realizados o software demonstrou que o uso de recursos do servidor é bem baixo, tanto de processador como de memória, podendo ser utilizando em servidores com baixo nível de recursos. Figura 1: interface do imadmin As regras de bloqueios de usuários inicialmente foram realizadas através da edição do arquivo acl.txt e posteriormente foi utilizada à ferramenta disponibiliza em tutorial do blog Linux & Cia [2] e também distribuída com licença GPL v2, este script necessita a instalação do pacote dialog. Na Figura 1 pode-se observar uma amostra da interface montada pelo script, nela serão inseridos os usuários internos, tipo do usuário (restrito ou aberto) e usuários externos, no caso de um usuário aberto ele poderá conversar com qualquer outro usuário e vice-versa, já o restrito só poderá conversar com os usuários que estiverem cadastros em externos. Único problema encontrado nesta ferramenta é a não personalização por usuário, permitindo apenas uma configuração global das acl’s. Um ponto falho do IMSpector é a necessidade de reinicialização do software para aplicar a novas regras, assim desconectando todos os usuários. Um ponto verificado é a permissão de inicialização dos usuários que não estão liberados, ainda os contatos que são bloqueados aparecem como on-line, sendo bloqueadas as conversas. A opção log_typing_events e filtro de palavras proibidas funcionaram em todos os protocolos, enquanto que block_files e block_webcam não funcionaram em nenhum. Em relação ao monitoramento e bloqueio, os principais problemas foram: • eventualmente contatos do Yahoo conseguem encaminhar mensagens estando bloqueados; • mensagens recebidas off-line ou em status invisível passam pelo bloqueio, o mesmo ocorre quando o contato esta aparecendo como offline; • exibição erroneamente de usuário online como offline, mas o envio e recebimento continuou funcionando normalmente; • gravação de conversas entre usuários do MSN (local) e contato do Yahoo as mensagens foram gravadas como se o contato local utilizasse o Yahoo; • exibição da mensagem de monitoramento e bloqueio de ações funcionou apenas no MSN. Não foram encontradas interface para o uso da opção do monitoramento em banco de dados, ficando assim o teste restrito a utilização da gravação em arquivo texto. Esta interface poderá ter problemas na busca de dados, pois é feita uma busca em todos os diretórios para organização por data, dependendo da quantidade de usuários e dias gravados ela poderá ficar lenta. Na Figura 2 podemos observa modelo da interface incluída no pacote. Figura 2: Interface web para exibição das conversas monitoradas 4.2 MSN-Proxy Com uma web interface de fácil uso e utilizando técnicas de gravação dinâmicas das opções selecionadas ou usuários bloqueados, traz um ótimo desempenho para configuração. Figura 3: Interface para alterar configurações gerais (esq.) e do usuário (dir.) Podemos observar na Figura 3 a interface onde são aplicadas as configurações gerais e personalizadas do usuário, existem apenas 2 diferenças entre as configurações gerais e específicas, que são: IP do servidor e parâmetros para geração da mensagem de monitoramento. Nos testes quatro opções apresentaram ineficácia sendo elas: salva contatos, bloquear chat, transferência de arquivos e P2P. A opção para salvamento da lista de contatos estando ou não marcada sempre é gravada a lista dos contatos do usuário. O bloqueio de transferência de arquivos funcionou perfeitamente para o protocolo MSNP8, enquanto que para o Windows Live Messenger 2009 não funcionou nem a opção de bloqueio de arquivo e nem P2P. A transferência de arquivo por P2P já esta relacionada, juntamente com outras correções, a serem disponibilizados na próxima versão, estes erros ocorreram pela alteração da maneira de envio de arquivo nos protocolos mais novos do MSN.[14] O erro mais grave ocorreu com o bloqueio de chat, aparentemente serve para proibir a troca de mensagens de texto, que gerou um grave erro, pois ao ser habilitada para o usuário além de não bloquear a troca de mensagens, não faz o monitoramento das conversas e não exibe a mensagem de alerta. Os bloqueios de protocolos só foram possíveis de realizar testes com o MSNP8 e MSNP18, devido às limitações impostas pela Microsoft de obrigatoriedade para a última versão suportada pelo sistema operacional, mas ambos os bloqueios funcionaram sem apresentar nenhum erro. As opções abaixo tiveram um bom funcionamento com alguns detalhes observados: • Conecta: não permitirá que o usuário faça logon no MSN, pode ser usada para bloquear usuários que já possuam acesso ou nas opções gerais para fazer uma seleção dos usuários; • Salva mensagens: caso seja marcada como Não, não serão exibidos alerta de monitoramento, mesmo com a opção selecionada; • Bloquear datacast: bloqueia winks e pedidos de atenção. Ao receber ou enviar um datacast é realizado o bloqueio e encerramento da conversa ativa; • Bloquear emoticons animados: bloqueia apenas os emoticons personalizados, não bloqueou os oficiais, inclusive os de destaques, também finaliza a conversa ativa; • Bloquear novos usuários: bloqueará a tentativa de adicionar novos usuários e todos os usuários que não estiverem na lista gravada no banco de dados serão marcados como bloqueado, ou seja, se a opção estiver marcada na primeira busca da lista irá marcar todos os contatos como bloqueados; • Bloquear o uso de imagem do contato: removendo a imagem para exibição atual e não permite que o usuário adicione uma imagem; • Bloquear a visualização de imagens dos contatos: não exibe as imagens dos contatos; • Avisa ao usuário que a mensagem esta sendo monitorada: com esta opção marcada serão exibidos avisos a cada nova sessão de chat, seja ela iniciado pelo usuário ou o seu contato. A mensagem só é exibida para o usuário local o seu contato não recebe os alertas. Figura 4: tela de listagem e bloqueio/liberação de contatos Na interface de configuração foram encontrados erros que causavam lentidão muito grande na visualização dos históricos na existência de conversas em aberto, este problema foi solucionada através da alteração do arquivo view.php como indicado no fórum do SourceForge.[12] A Figura 4 mostra a interface de autorização de contatos, nesta tela é feita através da seleção de S ou N para liberação ou bloqueio, localizados ao lado do contato, também é possível configurar a regra padrão para novos contatos do usuário, assim como acontece com a opção Bloquear novos usuários. Nesta interface foi encontrado erro na classificação por grupos, onde eventualmente não são exibidos os grupos e não exibe a opção para autorização/bloqueio. Outros dois problemas foram encontrados, as mensagens entre usuários do Yahoo Messenger e Windows Live não são monitoradas e é possível o envio de mensagens para contatos bloqueados, sendo que as mesmas chegaram como estivessem sido encaminhadas off-line, mas o usuário não receberá as mensagens do contato enquanto ele estiver bloqueado. Toda e qualquer modificação dos parâmetros e bloqueios só serão aplicados aos usuários na próxima vez em que entrarem no serviço Windows Live Messenger. 4.3 IM Sniffer Após a instalação o software ficou ativo e para a captura dos pacotes do MSN, sendo que ocorreram várias falhas na captura, não monitorando diversas conversas. Um dos principais problemas é que a conversa só começará a ser monitorada quando o usuário remoto encaminhar uma mensagem, portanto é possível o envio de diversas mensagens ao destinatário sem que sejam monitoradas. Como não possui uma interface para a verificação dos históricos fica bem onerosa a visualização por pessoas diferentes do setor de TI, pois a análise destes históricos na grande maioria é feita por gerente e/ou supervisor de setores. Outro problema encontrado, e muito mais grave, é a queda constante do software, necessitando o seu reinicio manual e ocasionando maiores perdas de históricos. 5 Conclusão Dos softwares testados apenas o IM Sniffer não apresentou um desempenho satisfatório, pois não gravou diversas conversas, não consegue fazer o alerta do monitoramento, ausência de interface para visualização de relatório e eventuais fechamento automático do software. Com isto a solução se mostrou pouco eficiente para implantação em um ambiente de produção. O IMSpector tem como pontos fortes a documentação, facilidade de instalação, trabalhar com múltiplos protocolos, possibilidade de bloqueios/liberação por contato ou domínio, bloqueio de palavras e a exibição de mensagem de alerta sobre o monitoramento. Os pontos negativos identificados, e que servem de sugestão para implementações futuras, do IMSpector foram a ausência de interface para manipulação dos contatos, interface para listagem do histórico só funciona com a gravação em arquivo texto, permissão de usuários bloqueados façam logon do sistemas, falha no bloqueio de transferência de arquivos e webcam, exibição de mensagem de alerta sobre o monitoramento apenas para o MSN. Na implantação e testes do MSN-Proxy também foram encontrados alguns problemas, sendo os principais a documentação, os erros ocorridos na instalação, o bloqueio de chat, transferência de arquivo, conversas entre contatos MSN e Yahoo não monitoradas, lentidão da interface web (corrigida após aplicação de patch de correção), contato não é alertado sobre o monitoramento apenas ao usuário. As principais correções necessárias são: transferência de arquivos, alertar o contato remoto sobre o monitoramento, Tendo como pontos fortes, a interface web para históricos e configurações, bloqueios de protocolos do MSN, datacast, emoticons personalizados, imagens do usuário e seus contatos, alerta de monitoramento, configuração por usuário do uso ou não de monitoramento, bloqueios personalizados por usuário da lista de contatos. Apesar dos problemas encontrados na implementação das soluções MSN-Proxy e IMSpector, ambas apresentaram um bom desempenho e são recomendáveis para uso em ambientes corporativos, pois conseguem fazer o controle dos usuário e seus contatos, bem como o monitoramento e alerta sobre este monitoramento, assim tento um maior respaldo jurídico em relação ao monitoramento. Para implantação em uma rede corporativa uma ótima solução é a utilização de ambos os softwares, utilizando o MSN-Proxy para controlar os usuários do MSN, devido a sua facilidade de configuração e visualização de relatórios, e o IMSpector para controle dos outros comunicadores, tendo em vista que o consumo de recurso de ambos é muito pequeno ficando o total de memória utilizada abaixo de 10Mb com os dois sistemas ativos. Para implementações futuras no MSN-Proxy e IMSpector, algumas sugestões: • bloquear alteração do nome do usuário e mensagem pessoal; • permitir que o administrador defina o nome do usuário, mensagem pessoal e imagem a ser exibida; • bloquear uso de webcam e/ou conversa com áudio; • bloquear a utilização da assistência remota; • correção do protocolo de transferências de arquivos; • bloquear envio/recebimento de links; • controle por horário e limite de tempo; • criação de filtros para listagem dos históricos; • utilização da ferramenta autotools na instalação; • gravação de histórico das conversas entre usuário do MSN e Yahoo. 6 Referências [1] Media Advisory: Microsoft Bids on Yahoo!, comScore, http://www.comscore.com/Press_Events/Press_Releases/2008/02/Microsoft_Bids_on_Yahoo! [2] Imspector um proxy de IM, Gelber Arruda Junior, http://gelberarrudajr.blogspot.com/2009/05/neste-artigo-nos-vamos-aprender.html [3] Controlando o uso do MSN com o msn-proxy, Mundo Open Source, http://mundoopensource.blogspot.com/2008/08/controlando-o-uso-do-msn-com-o-msn.html [4] msn-proxy: the msn connection control, SourceForge, http://sourceforge.net/projects/msn-proxy/ [5] Monitorar o Messenger com o MSN-Proxy, Viva o Linux, http://www.vivaolinux.com.br/dica/Monitorar-o-Messenger-com-o-MSNProxy/ [6] Pesquisa sobre o Uso das Tecnologias da Informação e da Comunicação no Brasil : TIC Domicílios e TIC Empresas 2008. São Paulo: Comitê Gestor da Internet no Brasil, 2009. [7] Conexão Microsoft Advertising. Edição nº 43 – Julho/Agosto de 2009, http://advertising.microsoft.com/brasil/WWDocs/User/pt-br/NewsAndEvents/Conexao43.pdf [8] ICQ, Wikipédia, http://pt.wikipedia.org/wiki/ICQ [9] The ICQ Story, ICQ LLC. http://www.icq.com/info/story.html [10] Instalando o MSN-PROXY para controlar o MSN, Evandro S. Stein http://evandro.net/artigos/linux-msn-proxy.html [11] SourceForge.net: msn-proxy: Topic: Ajuda na instalação no slackware, http://sourceforge.net/projects/msn-proxy/forums/forum/702817/topic/3298437 [12] SourceForge.net: msn-proxy: Topic: Interface web lenta - possível solução –patch, http://sourceforge.net/projects/msn-proxy/forums/forum/702817/topic/3279446/ [13] Monitorando o uso do MSN com o IM Sniffer, Cleber Andrade, Viva o Linux, http://www.vivaolinux.com.br/artigo/Monitorando-o-uso-do-MSN-com-o-IM-Sniffer/ [14] msn-proxy: the msn connection control, http://msn-proxy.sourceforge.net/ [15] Regras no trabalho, Patricia Peck, IDG Now!, http://idgnow.uol.com.br/mercado/digitalis/idgcoluna.2009-05-23.5275598595 [16] Direito Digital Corporativo, Patricia Peck Pinheiro Advogados, http://pppadvogados.com.br/Publicacoes.aspx?v=1&nid=413 [17] Como você utiliza a internet no trabalho?, Patricia Peck Pinheiro Advogados, http://pppadvogados.com.br/Publicacoes.aspx?v=1&nid=152 [18] IM Sniffer | Get IM Sniffer at SourceForge.net. http://sourceforge.net/projects/im-snif/