53
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO SOFTWARE DE AUXÍLIO NO MONITORAMENTO DA REDE E GERAÇÃO DE RELATÓRIOS CUSTOMIZADOS PARA O MICROSOFT ISA SERVER 2004 / 2006 Área de Redes e Banco de Dados por Rafael Alves Cabral Adriana Gomes Alves, M.Eng. Orientadora Itajaí (SC), junho de 2011

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS ...siaibib01.univali.br/pdf/Rafael Alves Cabral.pdf · Área de Redes e Banco de Dados por Rafael Alves Cabral ... VPN Virtual

  • Upload
    dokhanh

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

SOFTWARE DE AUXÍLIO NO MONITORAMENTO DA REDE E GERAÇÃO DE RELATÓRIOS CUSTOMIZADOS PARA O MICROSOFT

ISA SERVER 2004 / 2006

Área de Redes e Banco de Dados

por

Rafael Alves Cabral

Adriana Gomes Alves, M.Eng. Orientadora

Itajaí (SC), junho de 2011

UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

SOFTWARE DE AUXÍLIO NO MONITORAMENTO DA REDE E GERAÇÃO DE RELATÓRIOS CUSTOMIZADOS PARA O MICROSOFT

ISA SERVER 2004 / 2006

Área de Redes e Banco de Dados

por

Rafael Alves Cabral Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientadora: Adriana Gomes Alves, Mestre

Itajaí (SC), junho de 2011

ii

SUMÁRIO

LISTA DE ABREVIATURAS.................................................................. iv

LISTA DE FIGURAS ................................................................................. v

LISTA DE TABELAS ............................................................................... vi

RESUMO ................................................................................................... vii

ABSTRACT ................................................................................................. 1

1. INTRODUÇÃO ..................................................................................... 2

1.1 PROBLEMATIZAÇÃO ..................................................................................... 3

1.1.1 Formulação do Problema ................................................................................. 3

1.1.2 Solução Proposta ............................................................................................... 4

1.2 OBJETIVOS ........................................................................................................ 4

1.2.1 Objetivo Geral ................................................................................................... 4

1.2.2 Objetivos Específicos ........................................................................................ 4

1.3 METODOLOGIA ................................................................................................ 5

2. FUNDAMENTAÇÃO TEÓRICA ......................................................... 7

2.1 A INTERNET NO AMBIENTE CORPORATIVO .......................................... 7

2.2 SEGURANÇA DA INFORMAÇÃO ................................................................ 10

2.3 SEGURANÇA DE REDE ................................................................................. 12

2.4 MICROSOFT INTERNET SECURITY AND ACCELERATION SERVER ....... 14

2.5 ESTRUTURA DO ISA SERVER ..................................................................... 17

2.6 ADD-ONS PARA O ISA SERVER ................................................................... 19

3. PROJETO ............................................................................................. 22

3.1 ANÁLISE DE REQUISITOS ............................................................................ 23

3.1.1 REQUISITOS FUNCIONAIS ........................................................................ 23

3.1.2 REQUISITOS NÃO FUNCIONAIS .............................................................. 24

3.1.3 REGRAS DE NEGÓCIO ................................................................................ 24

3.2 DIAGRAMA DE CASOS DE USO .................................................................. 24

3.3 DESCRIÇÃO DAS TABELAS DO ISA SERVER ......................................... 26

4. DESENVOLVIMENTO ....................................................................................... 28

4.1 IMPLEMENTAÇÃO DO SOFTWARE ............................................................ 28

4.2 BANCO DE DADOS ........................................................................................... 29

4.3 FUNCIONALIDADES ........................................................................................ 30

CONCLUSÕES ......................................................................................... 39

TRABALHOS FUTUROS ....................................................................... 40

ANEXOS .................................................................................................... 41

iii

REFERÊNCIAS BIBLIOGRÁFICAS ................................................... 44

iv

LISTA DE ABREVIATURAS

API Application Programming Interface ASP Active Server Pages CERT Centro de Estudos, Resposta e Tratamento CSS Cascading Style Sheets HTML Hyper Text Markup Language IP Internet Protocol ISA Internet Security and Acceleration MBI Mayer & Bunge Institute MMC Microsoft Management Console MRS Microsoft Reputation Service PHP Hypertext preprocessor SDK Software Development Kit TCC Trabalho de Conclusão de Curso TI Tecnologia da Informação UNIVALI Universidade do Vale do Itajaí URL Uniform Resource Locator VPN Virtual Private Network

v

LISTA DE FIGURAS

Figura 1: Incidentes de segurança na Internet .................................................................................... 11

Figura 2: Posição comum de um firewall em uma rede ..................................................................... 13

Figura 3: Pesquisa de utilização de firewalls ..................................................................................... 14

Figura 4: Tela principal de administração do ISA Server 2006 ......................................................... 15

Figura 5: Estrutura do ISA Server ...................................................................................................... 18

Figura 6: Casos de uso ....................................................................................................................... 25

Figura 7: Tabela FirewallLog ............................................................................................................. 25 Figura 8: Tabela WebProxyLog ......................................................................................................... 25 Figura 9: Monitor de Acessos ........................................................................................................... 30 Figura 10: Relatórios .......................................................................................................................... 31 Figura 11: Relatório TOP 20 Usuários/Período ................................................................................. 32 Figura 12: Relatório TOP 20 Sites/Período ........................................................................................ 32 Figura 13: Bloqueio de Sites .............................................................................................................. 34

vi

LISTA DE TABELAS

Tabela 1. Comparativo das ferramentas similares....................................................................22

vii

RESUMO

CABRAL, Rafael Alves. Software de auxílio no monitoramento da Rede e Geração de Relatórios customizados para o Microsoft ISA Server 2004/2006. Itajaí, 2010. No f 45. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)–Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2010.

Uma empresa com conexão para acesso à rede mundial de computadores é condição básica

para a maioria dos negócios. Com isso, a utilização de firewalls se torna indispensável com o

objetivo de diminuir os riscos associados ao acesso livre à internet e aumentar a produtividade dos

colaboradores. Uma opção de software de firewall é o Microsoft ISA Server, um gateway integrado

de segurança de borda para gerenciamento de todas as conexões de rede. Esta ferramenta possui

algumas limitações principalmente para a geração de relatórios, monitoramento de logs e ainda a

necessidade de estar conectado no servidor constantemente para o monitoramento da rede. A

proposta deste trabalho visa o desenvolvimento de um software que trabalhe juntamente com o ISA

Server, atendendo à essas limitações, facilitando assim a administração da rede. Neste trabalho foi

desenvolvido um software, considerado um add-on do ISA Server, para aprimorar o monitoramento

dos acessos dos usuários à internet, agilizando o trabalho do administrador da rede no

gerenciamento e bloqueio de sites. Dentre as principais funcionalidades estão a geração de

relatórios customizados e o monitoramento dos logs dos acessos a páginas da internet.

Palavras-chave: Firewall. Gerenciamento de redes

ABSTRACT

Today a company with connections to access the world wide web is a basic condition for most

businesses. Thus, the use of firewalls will be indispensable in order to reduce the risks associated with free

internet access and increase employee productivity. Among the main existing solutions is the Microsoft ISA

Server, an integrated edge security management gateway for all network connections. This tool has some

limitations especially for the generation of reports, monitoring logs and still need to be logged on the server

to constantly monitor the network. The purpose of this study is to develop a software that works with ISA

Server, given just these limitations and thus facilitate network administration. In this work we developed a

software, which is considered an add-on ISA Server, which will facilitate the monitoring of users access the

Internet, speeding the work of the network administrator in managing and blocking websites. Among the

main features are the blocking by category and reporting customizable like user/period functions not

currently available in ISA Server.

Keywords: Net 1. Firewall 2. Management 3.

2

1. INTRODUÇÃO

Com o avanço da tecnologia, cada vez mais as corporações estão investindo em maneiras de

usufruir dessas tecnologias para obter um diferencial competitivo no mercado. Utilizar ferramentas

tecnológicas no intuito de maximizar a comunicação com o resto do mundo, tem se tornado a

maneira mais eficaz de obter os melhores resultados.

Uma empresa com conexão para acesso à rede mundial de computadores é condição básica

para a maioria dos negócios. Porém, é necessário evitar que essa ferramenta seja utilizada de forma

incorreta ou traga algum problema de segurança para os dados da empresa. Com isso surge a

necessidade de controlar o acesso a Internet proveniente da sua rede interna, no intuito de diminuir

os riscos associados ao acesso livre à rede mundial de computadores e aumentar a produtividade

dos colaboradores e consequentemente, da empresa como um todo.

Existem várias ferramentas que fazem a gerência das conexões de rede com a Internet que

são chamados de Firewall, como por exemplo, soluções em Linux, Cisco, Check Point e dentre as

mais conhecidas está o Microsoft Internet Security and Acceleration (ISA) Server, um gateway

integrado de segurança de borda que faz o gerenciamento de todas as conexões da rede interna para

a rede externa e vice e versa (SHINDER, 2006).

O Microsoft ISA Server possui vários recursos para monitoramento dos acessos dos usuários

sobre o uso da rede, possibilitando ao administrador da rede gerenciar de forma ágil todos os

acessos a sites e serviços externos e identificar possíveis “gargalos” e vulnerabilidades de

segurança. Além de monitorar o tráfego da rede, este software permite uma conexão segura via

VPN (Virtual Private Network) e várias outras funcionalidades que fazem do ISA Server uma

ferramenta utilizada por muitas empresas (MICROSOFT,2006).

Segundo pesquisa encomendada pela Impacta Tecnologia à empresa MBI Mayer & Bunge,

o Isa Server está entre as soluções mais utilizadas pelas empresas ficando atrás apenas das soluções

Linux(MBI,2009). Citando alguns exemplos de empresas que utilizam o ISA Server como solução

principal de firewall estão a Bovespa, Telesp Celular, Osram, Norcon entre outras

(MICROSOFT,2010).

Porém o ISA Server, em todas as suas versões, possui algumas limitações para um

monitoramento mais ágil e para geração de relatórios mais customizados. A ferramenta de geração

de relatórios do próprio ISA Server não possibilita definir, por exemplo, um relatório sobre os sites

3

mais acessados de determinado usuário entre um intervalo de tempo específico. Atualmente existem

alguns softwares como o Bandwidth Splitter, o GFI WebMonitor e o WEBSense WebFilter,

chamados de Add-ons1, que fornecem algumas funcionalidades que não estão disponíveis no ISA

Server, ampliando assim as possibilidades de gerenciamento da rede.

Entretanto, a maioria deles é cara e possuem características que podem tornar inviável a

utilização destes softwares, como por exemplo, consumo excessivo de hardware e rede, dificultando

ainda mais o trabalho do administrador da rede (ISASERVER,2010).

A proposta deste trabalho é criar uma ferramenta que trabalhe em conjunto com o ISA

Server e seja capaz de prover funcionalidades que possibilitem o gerenciamento dos acessos dos

usuários a internet e a geração de relatórios customizados do tipo usuário/período a partir dos dados

gerados pelo próprio ISA Server. Dentre os objetivos principais, está o de criar uma ferramenta que

facilite a administração dos acessos em tempo real, para que o administrador da rede não necessite

estar conectado remotamente no servidor para fazer tarefas simples como bloquear um site ou

visualizar logs de acessos.

1.1 PROBLEMATIZAÇÃO

1.1.1 Formulação do Problema

As versões 2004 e 2006 do Microsoft ISA Server monitoram, em tempo real, todos os

acessos dos usuários por meio de registro de logs de acessos que armazena esses logs em um banco

de dados. Porém, para o administrador da rede visualizar esses registros é necessário estar

diretamente ou constantemente conectado, através de acesso remoto, no servidor do ISA e com a

janela de monitoramento sempre aberta o que dificulta um monitoramento mais ágil. Para gerar um

relatório dos acessos dos usuários existe uma ferramenta de relatórios no próprio ISA Server. O

1 Exemplos encontrados em www.isaserver.org

4

problema está em gerar relatórios mais específicos, como por exemplo, relatórios dos sites mais

acessados por um usuário em um determinado período, o que é uma limitação do software da

Microsoft.

Percebendo todas as limitações do ISA Server, torna-se possível justificar a necessidade de

implementar um software que complemente suas funcionalidades, devido a importância da

agilidade para o administrador da rede em sua tarefa de gerenciamento dos acessos dos usuários a

Internet.

1.1.2 Solução Proposta

A proposta deste trabalho é criar uma ferramenta que trabalhe em conjunto com o ISA

Server e seja capaz de prover funcionalidades que possibilitem o gerenciamento dos acessos dos

usuários a internet e a geração de relatórios customizados do tipo usuário/período a partir dos dados

gerados pelo próprio servidor ISA. Dentre os objetivos principais desta proposta, está o de criar

uma ferramenta que facilite a administração dos acessos em tempo real, para que o administrador da

rede não necessite estar conectado remotamente no servidor para fazer tarefas simples como

bloquear um site ou visualizar logs de acesso.

Este é o fator principal que motivou a realização deste trabalho, visto que uma ferramenta

que possibilite um melhor gerenciamento da rede, contribui para um aumento na produtividade e da

eficiência da administração da rede.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

O objetivo principal deste trabalho é desenvolver um software de auxílio ao administrador

da rede, que possibilite o gerenciamento dos acessos dos usuários a internet sem conexão direta com

o servidor do ISA e a geração de relatórios customizados a partir dos dados gerados pelo Microsoft

ISA Server.

1.2.2 Objetivos Específicos

5

Os objetivos específicos para o desenvolvimento desta proposta são:

• Pesquisar sobre os conceitos e tecnologias envolvidas;

• Pesquisar soluções similares;

• Pesquisar o ISA Server e a estrutura de seu banco de dados;

• Definir e modelar as características a serem desenvolvidas no software;

• Definir e compreender as ferramentas e linguagens de programação a serem utilizadas;

• Implementar o software;

• Testar e validar o software;

• Documentar todo o desenvolvimento do projeto e os resultados obtidos com a conclusão

do software;

1.3 Metodologia

A metodologia aplicada para a realização deste projeto foi dividida em quatro fases, no

intuito de organizar e facilitar o desenvolvimento do trabalho.

• Pesquisa: A pesquisa será feita através da Internet e livros disponíveis na biblioteca

da Univali. Inicialmente será feita uma pesquisa nos principais portais de busca

como o Google, Bing e outros e se estenderá a quaisquer sites que tratem do assunto

e em seguida nos livros disponíveis na biblioteca da Univali para mais informações,

considerando a procedência das mesmas, relevância e características aplicáveis ao

desenvolvimento do trabalho. Também nesta fase será feita uma pesquisa sobre

softwares semelhantes para identificar quais deles possuem características similares

ao deste projeto. Posteriormente serão definidos os softwares a serem testados

conforme características similares, para identificar possíveis comportamentos ou

funcionalidades que ainda não foram desenvolvidas e que possam ser implementadas

para o ISA Server.

6

• Definição de Requisitos e Modelagem: Nesta fase serão definidas todas as

características a serem implementadas, através da modelagem do software e suas

funcionalidades, baseando-se nos dados das pesquisas da primeira fase. Em um

segundo momento será feita a definição e compreensão das ferramentas e linguagens

de programação a serem utilizadas para o desenvolvimento do projeto.

• Desenvolvimento: Esta fase será dedicada ao desenvolvimento do software,

baseando-se na modelagem definida na segunda fase deste projeto. Conforme a

implementação do software evoluir, serão feitos testes até que o software esteja

pronto, quando será feito uma bateria de testes final para validação do software.

• Documentação: Esta fase do projeto será desenvolvida em paralelo às outras três

fases anteriores, sendo a ultima a ser finalizada após o desenvolvimento de todo o

projeto. Será dedicada a documentar todos os dados referentes às fases de Pesquisa,

Modelagem e Desenvolvimento e será dividida em duas partes. A primeira parte será

dedicada às fases de Pesquisa e Modelagem chamada de Trabalho de Conclusão de

Curso I (TCCI). A segunda parte será para a fase de Desenvolvimento e

Documentação chamada de Trabalho de Conclusão de Curso II (TCCII), finalizando

com um artigo científico para divulgação da pesquisa realizada.

2. FUNDAMENTAÇÃO TEÓRICA

2.1 A Internet no Ambiente Corporativo

Antes da era da internet, a informática tinha pouca relevância para o negócio real da maioria

das empresas, atuando somente na retaguarda ou no aprimoramento de processos, mas dificilmente

era vista como um elemento de negócio. Com o avanço rápido da tecnologia, as empresas que

fizeram da tecnologia da informação uma ferramenta importante para o negócio se destacaram no

mercado, influenciando assim a rápida disseminação de ferramentas computacionais até então

pouco utilizadas, como a Internet.

Não há como negar a importância da utilização da internet como principal meio de

comunicação das empresas, oferecendo redução de custos, eficácia e rapidez na substituição de

outras ferramentas como o correio, fax e até mesmo o telefone. O acesso rápido a informação

também está entre os principais benefícios do acesso a rede mundial de computadores no ambiente

corporativo. Esta ferramenta tecnológica se tornou um dos principais diferenciais competitivos para

empresas de todos os tipos no mundo inteiro (NIC, 2010).

Essa facilidade de acesso a informações de todos os tipos através da internet faz com que o

seu uso se torne uma das principais ferramentas de trabalho para muitas empresas. Porém, abre

caminho para vários tipos de problemas relacionados a segurança da informação, como ataque de

hackers2, vírus3, espionagem e roubo de informações, problemas esses que fazem da segurança da

informação objeto de pesquisa por muitos profissionais da área de tecnologia da informação.

Os problemas associados ao acesso livre à rede mundial de computadores tem se tornado um

dos principais desafios das organizações, pois as conseqüências podem significar perda de dinheiro,

queda da produtividade, falta de credibilidade, entre outros problemas que podem gerar uma perda 2 Hackers – são profissionais especializados em invadir sistemas e burlar a segurança de redes, muito comumente relacionados com espionagem e roubo de dados (MICROSOFT, 2010). 3 Vírus - é um programa malicioso desenvolvido por programadores que, tal como um vírus biológico, infecta o sistema, faz cópias de si mesmo e tenta se espalhar para outros computadores, utilizando-se de diversos meios (MICROSOFT, 2010).

8

de competitividade no mercado. Como a segurança da informação se tornou uma área fundamental

para as empresas, cada vez mais elas têm tomado medidas para diminuir os riscos e evitar

problemas de segurança. A utilização de ferramentas computacionais para controle e proteção dos

dados da rede da empresa, em conjunto com a criação de regras de utilização de recursos

computacionais pelos seus empregados, tem se tornado o principal caminho a ser seguido pelas

organizações que se preocupam com a segurança da informação no ambiente corporativo.

As facilidades de comunicação com o uso da internet no ambiente corporativo, tem

auxiliado o trabalho e ao mesmo tempo tem gerado outros problemas que também necessitam de

cuidados por parte das empresas e também dos funcionários. O mau uso dos recursos tecnológicos

da empresa pode gerar demissão do funcionário que se utilizar desses recursos para, por exemplo,

divulgar informações sigilosas ou de teor pornográfico ou até mesmo cometer crimes. A empresa

tem o direito de controlar os acessos a sites e programas no ambiente de trabalho, assim como

responsabilizar e punir o funcionário que não seguir as regras. Regras essas que devem ser

divulgadas aos funcionários a fim de manter a ordem e a segurança no ambiente corporativo (RH,

2010).

Muitas delas não fazem nenhum tipo de controle sobre a utilização de seus recursos

tecnológicos por parte de seus funcionários, o que pode gerar desde problemas de segurança até

mesmo problemas jurídicos para a empresa caso um funcionário utilize esses recursos para fins

ilícitos. Caso um funcionário, utilizando alguma ferramenta tecnológica oferecida pela empresa,

cometer algum ato ilícito ou ilegal perante a lei, causando desta forma prejuízos a terceiros, a

empresa poderá ser responsabilizada civil e criminalmente, inclusive seus sócios, pelos danos

causados caso não consiga individualizar o agente criminoso (WANTOWSKY, 2005).

Com isso se faz necessário uma atenção constante no monitoramento e controle das ações

dos funcionários sobre a utilização da internet para garantir que estes problemas não ocorram e, se

acontecerem, que o funcionário culpado seja identificado e punido. A iniciativa para esse tipo de

controle no ambiente corporativo, deve partir do poder diretivo do empregador que deve ser

exercido sempre que houver problemas relacionados ao uso de novas ferramentas tecnológicas

pelos funcionários, possibilitando assim, elaborar normas e aplicar penalidades sempre que for

violada a ordem interna e os princípios estabelecidos pela organização.

9

Uma pesquisa feita no ano de 2009 pela Websense, uma das maiores empresas de segurança

da informação no mundo, mostra o panorama atual das práticas corporativas de segurança e dos

hábitos de utilização da Internet pelos funcionários, incluindo também a percepção dos gerentes de

TI quanto à utilização interna da Web (WEBSENSE, 2009). Foram realizadas 700 entrevistas em

companhias com o perfil de, no mínimo, 250 funcionários da Argentina, Brasil, Chile, Colômbia,

México, Peru e América Central (100 entrevistas em cada país, sendo 50 com funcionários e 50

com gerentes de TI). A seguir são apresentados alguns dados dessa pesquisa que merecem destaque:

- 50 minutos por dia é a média de tempo gasto com a navegação pessoal admitida pelos

funcionários nos países pesquisados;

- 39% dos funcionários entrevistados admitiram passar mais de 50 minutos por dia

acessando sites não relacionados ao trabalho, sendo que para os gerentes de TI esta percentagem é

de 72%;

- os sites mais acessados indicados pelos funcionários foram os sites de notícias (85%),

seguidos pelos de finanças e Internet Banking (79%) e sites governamentais (75%);

- O vazamento de informações está no topo da lista das ações que podem gerar demissão de

um funcionário (90%) e, em seguida o acesso a sites de conteúdo adulto (86%);

Atualmente no Brasil não existe uma legislação trabalhista específica sobre a utilização da

internet em ambiente corporativo, fazendo com que as empresas criem suas próprias regras com o

intuito de minimizar os riscos e consequentemente melhorar a produtividade. Muitas dessas regras

fazem uso de ferramentas computacionais como firewalls4, antivírus5 e controles de conteúdo para

garantir que elas sejam cumpridas com o máximo de eficiência (SUCESU, 2010).

4 Firewall - é o nome dado ao dispositivo de uma rede de computadores que tem por objetivo aplicar uma política de segurança a um determinado ponto de controle da rede (MICROSOFT, 2010). 5 Antivírus - são programas desenvolvidos por empresas de segurança, com o objetivo de detectar e eliminar vírus encontrados no computador(MICROSOFT, 2010).

10

2.2 Segurança da Informação

Para manter a integridade e gerenciar de maneira mais eficiente os negócios das

organizações, elas têm se tornado cada vez mais dependentes dos sistemas de informação. Esta

dependência faz com que cresça cada vez mais a preocupação das organizações em minimizar os

riscos inerentes da centralização de todas as informações essenciais ao negócio, em ferramentas

tecnológicas muitas vezes desconhecendo o quão vulneráveis elas são.

Nos últimos anos a área de Segurança da Informação tem ganhado cada vez mais atenção

das organizações devido ao crescente número de ameaças que diariamente aparecem no mundo da

tecnologia da informação. Estas ameaças fazem com que as empresas busquem novas metodologias

de trabalho e ferramentas para uma proteção cada vez maior de seus recursos tecnológicos a fim de

eliminar ou minimizar o impacto desses ataques ao negócio da empresa.

A forma como as organizações estão tratando a área de segurança da informação está

mudando, deixando de ser assunto somente da área técnica de TI e abrangendo todas as áreas com

medidas de segurança estrategicamente elaboradas com o envolvimento de todas as pessoas que

lidam com a informação direta e indiretamente, a fim de motivar e conscientizar sobre a

importância dessas informações para a organização.

Com o avanço da tecnologia, a quantidade e diversidade dos incidentes de segurança têm

preocupado todos os setores da sociedade no mundo todo. Um incidente de segurança pode ser

definido como um fato ou um evento adverso que possa comprometer a segurança de um sistema de

informação ou de uma rede. Esses incidentes variam desde apenas um simples vírus de computador

até a invasão de sistemas que comprometem serviços no mundo todo, afetando toda a sociedade.

No Brasil, o CERT.br - Centro de Estudos, Resposta e Tratamento de Incidentes de

Segurança no Brasil, é um grupo de respostas de incidentes de segurança para a Internet brasileira,

mantido pelo NIC.br, que faz um registro dos incidentes de segurança na internet reportados a eles.

A Figura 1 apresenta um gráfico com o total de incidentes por ano desde 1999 (CERT.br, 2010).

11

Figura 1: Incidentes de segurança na Internet

Fonte: CERT. br

Esses dados mostram o crescente número de incidentes que em 2009 atingiu o espantoso

número de 358343 registros de problemas de segurança dos mais variados tipos na Internet

brasileira. Esses dados fazem com que os profissionais de TI e as organizações se preocupem cada

vez mais com a segurança da informação, buscando novas tecnologias e aprimorando processos

com o intuito de diminuir os riscos de problemas de segurança.

O conceito de Segurança da Informação se aplica a todos os aspectos da proteção de dados e

informações contra uma ampla gama de ameaças, no sentido de preservar o valor que possuem para

um indivíduo ou organização (ISO, 2010). Este conceito possui três características básicas:

• Confidencialidade – Abrange a limitação de acessos a informação somente por parte das

pessoas explicitamente autorizadas pelo proprietário dos dados, para impedir que pessoas não

autorizadas tenham acesso ao mesmo.

• Disponibilidade – A informação deve estar sempre acessível no momento em que a mesma

for necessária pelos usuários autorizados;

12

• Integridade – A informação manipulada deve ser retornada em sua forma original,

mantendo suas características estabelecidas pelo proprietário da informação no momento em que foi

armazenada.

Atualmente este conceito de Segurança da Informação está padronizado pela norma

ISO/IEC 17799:2005, influenciada pelo padrão inglês (British Standard) BS 7799. Esta norma cita

como principais objetivos da proteção da informação para garantir:

• continuidade ao negócio;

• minimização do risco ao negócio;

• maximização do retorno sobre os investimentos;

• oportunidades de negócio.

A série de normas ISO/IEC 27000 foi reservada para tratar de padrões de Segurança da

Informação, incluindo a complementação ao trabalho original do padrão inglês. A ISO/IEC

27002:2005 continua sendo considerada formalmente como 17799:2005 para fins históricos

(ISO,2010). Esta norma afirma que a Segurança da Informação é:

‘Especialmente importante no ambiente dos negócios, cada vez mais interconectados. Como um resultado deste incrível aumento da interconectividade, a informação está agora exposta a um crescente número e a uma grande variedade de ameaças e vulnerabilidades.’

Para a maioria das organizações, a informação é considerada um dos bens de maior valor e

importância para o negócio, fazendo com que os investimentos em novas tecnologias e ferramentas

de proteção cresçam a cada ano, a fim de acompanhar o crescente avanço das ameaças que estão

cada vez mais diversificadas, sofisticadas e nocivas. Consequentemente, essa constante

preocupação das organizações com a segurança faz com que o profissional de TI também esteja

constantemente buscando o aprimoramento de suas habilidades e conhecimentos, a fim de prover o

melhor serviço dentro da realidade atual do cenário de segurança da informação.

2.3 Segurança de Rede

Conforme os ambientes computacionais crescem e se diversificam, cresce também os

problemas de segurança para os computadores destes ambientes inviabilizando soluções de proteção

13

somente locais, sendo necessária uma abordagem de proteção da rede como um todo. Assim como

surgem constantemente novas ameaças cibernéticas, também surgem novas ferramentas para

proteção e combate dessas ameaças, provendo uma maior segurança e minimizando os riscos ao

negócio das organizações.

Dentre as soluções de segurança mais utilizadas atualmente estão as ferramentas de controle

e segurança de rede, conhecidas como firewalls. Estes firewalls de rede existem tanto na forma de

software como de hardware ou uma combinação de ambos, caracterizando-se basicamente por

barreiras computacionais interpostas entre a rede privada e a rede externa, conforme modelo da

Figura 2, com a finalidade de liberar ou bloquear o fluxo de determinados tipos de dados e conexões

entre essas redes, atuando como um “filtro” onde será aplicado um conjunto de regras baseadas em

uma política de segurança pré-definida.

Figura 2: Posição comum de um firewall em uma rede

Fonte: MICROSOFT, 2006

As soluções mais utilizadas para a implementação de um firewall como um gateway de

borda são as soluções Linux, seguida pelo Microsoft ISA Server e soluções da Cisco, conforme

pesquisa efetuada pela MBI em setembro de 2009, com cerca de 120 empresas de médio e grande

porte no Brasil (MBI,2009). A Figura 3 apresenta um gráfico com os dados desta pesquisa referente

ao uso de firewalls:

14

Figura 3: Pesquisa de utilização de firewalls

Fonte: MBI, 2009

Soluções de firewall são frequentemente utilizadas por profissionais de TI em conjunto com

outras ferramentas de monitoramento, roteamento, controles de conteúdo, VPN, em um único

gateway centralizado chamado de gateway de borda, facilitando assim a administração do mesmo.

Para este conceito de gateway de borda existem poucas soluções que integram diversos tipos

de controles e serviços em um único software. Um gateway Linux, por exemplo, é comumente

implementado com um conjunto de ferramentas de software para atender algumas funcionalidades

específicas de controle na rede. Uma solução de software que consegue integrar várias ferramentas

de controle em um único software é o Microsoft ISA Server.

2.4 Microsoft Internet Security and Acceleration Server

O Microsoft ISA Server é um gateway de segurança de borda de rede que integra um

conjunto de funcionalidades de controle, possibilitando ao administrador da rede um gerenciamento

centralizado dos recursos de rede e dos acessos dos usuários para a rede externa. Esta ferramenta

15

possui funcionalidades centralizadas em um único software facilitando a instalação, configuração e

manutenção do mesmo (MICROSOFT, 2006).

Figura 4: Tela principal de administração do ISA Server 2006

Fonte: MICROSOFT, 2006

A Figura 4 mostra a tela principal de administração do Microsoft ISA Server 2006, contendo

um menu em árvore na esquerda, com as principais funcionalidades de administração do servidor.

Dentre elas:

• Monitoramento – onde se encontram todas as ferramentas de monitoramento,

visualização de sessões, logs, relatórios, gerenciamento de alertas e serviços

disponíveis no ISA Server;

16

• Diretiva de Firewall – nesta opção se encontram todas as regras do firewall e as

ferramentas de controle do mesmo;

• Redes Virtuais Privadas – nesta opção do menu se encontram as ferramentas de

administração dos acessos via VPN (Virtual Private Network);

• Configuração – nesta opção se encontram as configurações administrativas gerais

da rede, cache e suplementos.

A opção de ajuda do ISA Server fornece orientações sobre todas as funcionalidades do

servidor ISA, com detalhes sobre a configuração e gerenciamento do sistema, informações

sobre resolução de problemas e melhores práticas de utilização das ferramentas do ISA

Server. Dentre as principais funcionalidades disponíveis nas versões 2004 e 2006 estão:

• Suporte VPN;

• Firewall multinível;

• Controle de conteúdo;

• Servidor de Cache da web;

• Conversor de endereços NAT;

• Publicação protegida de servidores;

• Suporte a multi-redes;

• Balanceamento de carga de redes;

• Suporte FTP;

• Detecção de Intrusão;

• Suporte SecurID e RADIUS.

O ISA Server possui também integração aprimorada para outros produtos da Microsoft

como o Microsoft Exchange e Microsoft Windows SharePoint Services. Esse conjunto de

funcionalidades em uma única solução faz do ISA Server um dos softwares de gestão e controle de

rede mais utilizados no Brasil e no mundo, com várias empresas em todas as áreas utilizando este

software como solução principal na administração de suas redes. Alguns exemplos de empresas que

17

utilizam o ISA Server são a Bovespa, Norcon, Sucos Del Valle, Telesp, Osram e Petrobras

(MICROSOFT,2010).

Apesar de ser uma das soluções de gateway multifuncional mais completa do mercado, o

ISA Server possui algumas características que fazem com algumas organizações e profissionais de

TI não utilizem essa ferramenta. O principal motivo é o alto custo de implantação, pois o preço das

licenças é muito alto, fazendo com que a relação custo / benefício não seja equilibrada comparada

com soluções de softwares livre.

2.5 Estrutura do ISA Server

A Microsoft disponibiliza para todas as versões do Microsoft ISA Server, um kit de

desenvolvimento de software (SDK) que auxilia desenvolvedores na criação de filtros da web

adicionais, filtros de aplicação, ferramentas de relatório, comandos de script, gerenciamento de

alertas, entre outros. O SDK do ISA Server fornece documentação completa da API (Application

Programming Interface), que é a interface de programação da aplicação, facilitando a integração de

novas funcionalidades ao servidor (MICROSOFT, 2006).

A estrutura do ISA Server dispõe de filtros de protocolos e pacotes, web Proxy, cache para

acessos a web e o firewall conforme mostra Figura 5. Para cada característica o SDK descreve os

objetos internos de controle, os atributos e as funções programáveis, possibilitando a criação de

novas funcionalidades.

18

Figura 5: Estrutura do ISA Server

Fonte: SDK do ISA Server

O arquivo de ajuda do SDK do ISA Server 2006 disponibiliza as referências de cada

funcionalidade do software do ISA, permitindo o acesso dos desenvolvedores à arquitetura do

software. O detalhamento completo de cada referência se divide em quatro módulos principais

facilitando a compreensão da estrutura do ISA Server.

• Administration : Este módulo aborda toda a descrição dos Objetos, suas propriedades, os

métodos, os Tipos Enumerados, os campos de logs e os códigos de erro para cada

funcionalidade do ISA Server;

19

• Aplication Filter Documentation : Este módulo descreve os Filtros de Interface, que são os

objetos necessários para criação de filtros de aplicações, e a estrutura do firewall com a

descrição de cada objeto e seus eventos.

• Web Proxy Documentation : Este módulo descreve os pontos de entrada dos Filtros, as

estruturas de Notificações e referências para criação de filtros da web customizados.

• Extending ISA Server Management : Este módulo descreve como tornar extensível o

console de administração MMC (Microsoft® Management Console) do ISA Server,

possibilitando a criação de menus customizados e novas funcionalidades.

Para o gerenciamento dos acessos dos usuários a sites da rede externa, o SDK do ISA Server

disponibiliza, no tópico Politicas de Acesso, detalhes do objeto FPCPoliceRule, que é o objeto

usado internamente pelo ISA para adicionar novos bloqueios ou alterar os existentes. Este objeto

possui os principais controles como filtros de pacotes, regras de protocolos e regras de controle de

acessos a sites.

Além de toda a descrição dos objetos internos do ISA Server, o SDK fornece vários

exemplos de códigos em C++ e Visual Basic e alguns scripts prontos para facilitar a compreensão

da ferramenta. Essa documentação do SDK do ISA Server é utilizada por muitos profissionais de TI

para criação de scripts customizados e para a criação de softwares complementares para o ISA

Server chamados de add-ons.

2.6 Add-ons para o ISA Server

Existem no mercado vários softwares que foram desenvolvidos por empresas de segurança,

para complementar ou aprimorar funcionalidades do ISA Server, conhecidos como add-ons. Esses

softwares trabalham em conjunto com o ISA Server, adicionando novas funcionalidades ou

aprimorando as existentes, contribuindo assim para melhorar o gerenciamento da rede.

Estes add-ons são desenvolvidos para várias utilizações e são categorizados conforme sua

utilização. As categorias que dispõem de uma variedade maior de add-ons são as de controle de

conteúdo, controle de acessos e monitoramento (ISASERVER,2010). Estes softwares

20

complementares possibilitam que o administrador da rede implante soluções mais específicas para

determinados problemas que não são tratados pelo ISA Server. Conforme ISASERVER (2010).

Outras funcionalidades que comumente são adicionadas ao ISA Server através de add-ons

são as de antivírus e proteção contra programas espiões. Empresas de segurança como a Kaspersky,

Avast, Avira, Mcafee e Norton disponibilizam add-ons com funções integradas de antivírus que

protegem o servidor do ISA e, em algumas versões, também fazem uma varredura no conteúdo que

está sendo navegado e nos arquivos que estão sendo baixados pelos usuários, complementando a

segurança da rede.

Porém, além da maioria desses add-ons possuírem custo elevado, eles apresentam outras

características que podem inviabilizar sua implantação (ISASERVER, 2010). Dentre elas:

• Funcionalidades já existentes no ISA Server;

• Tráfego excessivo na rede;

• Alto consumo de recursos de hardware no servidor do ISA;

• Lentidão do acesso à internet pelos usuários;

• Problemas de adaptação com outros produtos e serviços como Active Directory e antivírus.

Para desenvolvedores interessados em criar add-ons para o ISA Server, a documentação do

SDK é a principal fonte de informações, com o detalhamento completo das funções, atributos e

especificações referentes a toda estrutura do ISA Server. Essas informações são essenciais para que

o desenvolvedor consiga utilizar os recursos de monitoramento e controles internos do ISA Server

no add-on a ser criado, integrando as novas funcionalidades com o servidor ISA.

Não foram encontrados softwares livres nas principais referencias deste trabalho, que

possuam funcionalidades de monitoramento e geração de relatórios customizados, sendo este um

diferencial deste projeto. Dentre os add-ons disponíveis no mercado que são similares ao

desenvolvido neste projeto destacam-se:

21

• Bandwidth Splitter – software de controle de banda e controle de cota de navegação, muito

utilizado para limitar a banda de determinados usuários da rede. Este software trabalha

integrado ao console do ISA Server e também possui funcionalidades de monitoramento em

tempo real. A ferramenta de monitoramento possui gráficos de utilização da internet para

cada usuário da rede em forma de listas informando também o site que está sendo acessado

no momento. Esta visualização dos logs em tempo real é similar à funcionalidade

implementada neste projeto e influenciou no desenvolvimento da ferramenta (BSPLITTER,

2010).

• GFI WebMonitor – Este software é direcionado para segurança e controle de internet e

possui verificação de antivírus de cada arquivo que está sendo baixado na rede, utilizando

três tipos de antivírus integrados ao software. Também possui controle de acessos a sites

com ferramentas de bloqueio que possibilitam o controle baseado na categoria do site

acessado, consultando uma base de sites pré-cadastrados, diretamente no servidor do

fabricante deste software. Possui também algumas funcionalidades muito similares ao

software desenvolvido neste projeto, por exemplo, relatórios em forma de ranking para

usuários e sites com maior ocorrência na rede e por ser direcionado para web (GFI

WEBMONITOR, 2011).

• WEBSense WebFilter – add-on para filtro de conteúdo e de controle de acesso de usuários,

permitindo implementar controles específicos em filtros de aplicação para cada usuário. É

possível bloquear o tráfego para determinados softwares através do uso de palavras-chave e

assinaturas de software. Este software também possui um filtro para controle da internet

baseado em categorias para bloqueio de sites, utilizando uma base própria para consulta de

sites e possibilitando que o usuário cadastre uma categoria desejada para um site

específico, influenciando também no desenvolvimento deste projeto (WEBSENSE, 2011).

22

A seguir uma tabela comparativa entre o software desenvolvido e as soluções similares citadas:

Tabela 1. Comparativo das ferramentas similares

CARACTERÍSTICAS EM COMUM

Bandwidth Splitter

GFI WebMonitor

WEBSense WebFilter

Software desenvolvido

Acesso pela Web NÃO SIM NÃO SIM

Monitoramento de Logs em tempo real

SIM SIM NÃO SIM

Ferramenta de relatórios por ranking

NÃO SIM SIM SIM

Bloqueio de sites NÃO SIM SIM SIM

Outro diferencial para o software deste projeto é que será implementado para web

possibilitando a visualização dos logs em qualquer lugar, sem a necessidade de estar conectado no

servidor do ISA, como é comum na maioria dos add-ons disponíveis. Este acesso via web será

restrito a rede interna para minimizar os riscos de problemas de segurança. O acesso aos logs e

geração de relatórios também poderá ser disponibilizado à outras pessoas que estejam autorizados,

como gerentes de TI, por exemplo, contendo no máximo os 5 mil primeiros registros para cada

relatório, evitando problemas de desempenho no servidor do ISA Server.

3. PROJETO

Para a fase de Projeto foram definidos os requisitos funcionais e não funcionais juntamente

com as regras de negócio para o desenvolvimento de um add-on para o ISA Server, baseados em

pesquisa desenvolvida nas principais referências sobre o tema na internet. Em seguida a descrição

do banco de dados do ISA Server juntamente com as principais características do software que são

acessíveis para o desenvolvimento de add-ons.

23

3.1 Análise de Requisitos

Para definição dos requisitos, foram analisadas as principais características dos softwares

similares no mercado (Bandwidth Splitter, GFI WebMonitor e WEBSense WebFilter ), obtendo

informações necessárias sobre o que é relevante para ser considerado neste projeto, por exemplo,

bloqueio de sites, relatórios por ranking e acesso via web. A listagem completa dos requisitos

funcionais e não funcionais está descrita a seguir.

3.1.1 Requisitos Funcionais

Os requisitos funcionais (RF) descrevem as funcionalidades que o software deve ser capaz

de executar ou fornecer. Alguns itens foram alterados em relação ao TCCI, principalmente em

relação ao bloqueio de categorias e estão justificados no capitulo quatro. A seguir os requisitos

funcionais para o software deste projeto.

• RF01- O sistema deverá permitir a visualização dos sites acessados em tempo real;

• RF02- O sistema deverá permitir visualizar qual o nome da conta do usuário

autenticado para cada site acessado;

• RF03- O sistema deverá permitir a visualização da data e hora de acesso para cada

site acessado;

• RF04- O sistema deverá permitir a geração de relatórios do tipo usuário/período, os

dez sites mais acessados por todos os usuários, os dez usuários que mais acessam a

internet e os dez sites mais acessados por determinado usuário;

• RF05- O sistema deverá permitir a filtragem por um ou mais usuários da

visualização dos logs de acesso a sites;

• RF06 - O sistema deverá permitir realizar bloqueio de sites.

• RF07 - O sistema deverá solicitar usuário e senha para acesso aos logs do servidor;

• RF08 - As consultas aos logs deverão ser restritas aos 10 mil primeiros registros;

• RF09 - O sistema deverá permitir o desbloqueio de sites que já estejam bloqueados.

24

3.1.2 Requisitos Não Funcionais

Os requisitos não funcionais (RNF) descrevem as características do software, bem como

suas limitações e composição. Para este projeto definiu-se como requisitos não funcionais:

• RNF01- O sistema deve ser voltado para Web;

• RNF02- O sistema deve ser desenvolvido com a linguagem de programação PHP;

• RNF03- O sistema deve utilizar as funções disponíveis no ISA Server e descritas no

SDK;

• RNF04- O sistema deve utilizar o banco de dados do próprio ISA Server.

3.1.3 Regras de Negócio

As Regras de negócio (RN) descrevem as características específicas sobre o funcionamento

do software:

• RN01- O bloqueio e desbloqueio de sites é aplicado para todos os usuários do

sistema;

• RN02- A exportação dos relatórios deverá ter opção para exportar para Excel

(formato CSV).

3.2 Diagrama de Casos de Uso

O diagrama de casos de uso (UC – Use Case) demonstra de forma mais objetiva e melhora a

compreensão de toda a interação dos atores com o sistema, apresentando as suas principais

funcionalidades do ponto de vista do usuário. Para este projeto definiu-se um conjunto de casos de

uso(UC), conforme descrito a seguir:

25

Figura 6: Casos de uso

UC01 – Monitora os acessos

Neste caso de uso o ator Administrador da Rede poderá visualizar os logs de acesso a sites,

clicando no botão INICIAR CONSULTA, nas três colunas de logs da tela principal do sistema, ou

parar uma consulta já iniciada no botão PARAR CONSULTA. Foi retirado o ator ‘GERENTE’

citado no TCCI, pois se considerou desnecessário a criação de perfis de usuário para utilização do

sistema, poupando recursos do servidor. A seguir a descrição de cada coluna de logs:

- USUÁRIO - o nome da conta do usuário autenticado na rede;

- SITES ACESSADOS - os sites que estão sendo acessados pelo usuário;

- DATA E HORA - a data e a hora para cada acesso.

Utilizando a opção FILTRO, o Administrador da rede poderá visualizar os logs de um

usuário específico ou de vários deles, digitando o nome da conta de cada usuário desejado separado

por vírgulas. Este caso de uso atende aos requisitos RF01, RF02, RF03 e RF05.

26

UC02 – Bloqueia sites indesejados

Neste caso de uso o ator Administrador da Rede pode bloquear sites indesejados para todos

os usuários na função BLOQUEIO DE SITE inserindo o endereço do site a ser bloqueado no campo

URL. No campo LISTA DE SITES BLOQUEADOS o Administrador da Rede terá uma lista dos

sites já bloqueados e a possibilidade de remover ou alterar qualquer site desta lista. Este caso de uso

atende o requisito funcional RF09 a regra de negócio RN01.

UC04 – Gera relatórios dos acessos

Neste caso de uso, o ator Administrador da Rede poderá gerar diferentes tipos de relatórios

dos acessos dos usuários. As opções são:

- USUÁRIO / PERÍODO: neste tipo de relatório é possível visualizar quais os sites

acessados por um usuário em determinado período;

- TOP 20 USUÁRIOS / PERÍODO: relatório para identificar os 20 usuários que mais

utilizaram a internet em determinado período;

- TOP 20 SITES / USUÁRIO: neste relatório é possível filtrar os 20 sites mais acessados por

um usuário em determinado período;

- TOP 20 SITES / PERÍODO: relatório para filtrar os 20 sites mais acessados por todos os

usuários em período.

Estes relatórios poderão ser acessados utilizando as opções do menu RELATÓRIOS. Este

caso de uso atende a regra de negócio RN02 e o requisito RF04.

3.3 Descrição das tabelas do Isa Server

A base de dados padrão do ISA Server, em todas as versões, é configurada no Microsoft

SQL Server 2000 Desktop Engine (MSDE, 2000), onde o ISA Server armazena os dados referentes

aos logs de acessos em duas tabelas distintas. A tabela WebProxyLog da Figura 08 registra os logs

27

referentes aos acessos filtrados pelo proxy do ISA Server e a tabela FirewallLog da Figura 07

registra os logs referentes aos atributos gerenciados pelo firewall do ISA Server. A seguir a lista de

atributos para cada tabela:

Figura 07: Tabela FirewallLog Figura 08: Tabela WebProxyLog

Cada tabela de logs é criada em uma base de dados diferente e são criadas bases

novas a cada dia, sendo referenciada uma base de dados diferente para cada dia. Para este projeto,

as duas tabelas citadas serão utilizadas para criação das regras de bloqueio, para as funcionalidades

de monitoramento e para geração de relatórios, utilizando alguns dos atributos das duas tabelas que

são referentes aos nomes das contas de acesso dos usuários, os sites acessados a data e a hora de

28

cada acesso e atributos de controle. Para isso serão utilizadas as informações disponíveis na

documentação do SDK do ISA Server onde se encontra o detalhamento do software e orientações

para desenvolvimento e integração de novas ferramentas. A lista completa da descrição dos

atributos das tabelas está em anexo (ANEXO I), retirado do SDK do ISA Server.

4. DESENVOLVIMENTO

Neste capítulo são descritos os resultados alcançados neste projeto, bem como as técnicas e

ferramentas utilizadas no processo de desenvolvimento do software. Também são apresentadas

todas as funcionalidades e telas implementadas e a interação do software com o Microsoft ISA

Server e o banco de dados Microsoft SQL Server 2000 Desktop Engine (MSDE 2000).

4.1 Implementação do software

Para o desenvolvimento do software foi utilizado o Adobe Dreamweaver CS5 para a

programação e modelagem das telas do sistema. Como o software foi desenvolvido para web e foi

concebido para ser instalado no mesmo servidor do ISA Server, foi necessária a instalação e

configuração do Internet Information Service (IIS), disponível no Windows Server 2003 em todas as

versões. Esta ferramenta possibilita a publicação de páginas na internet facilitando assim a

implementação do sistema sem gerar custos para o projeto.

Nas configurações do IIS foram dadas as permissões de leitura e execução para a Conta de

Convidado da Internet sobre o Site da Web Padrão definido. Esse tipo de permissão também foi

aplicado ao Prompt de Comando do Windows e é necessária para utilização correta do script de

bloqueio de sites. Esta Conta de Convidado é utilizada pelo IIS para definir o tipo de acesso do

usuário aos recursos que os sites publicados oferecem ou utilizam no servidor web. Também na

configuração do IIS foi inserida a extensão para a linguagem PHP para suporte a publicação de

páginas neste formato.

A linguagem PHP foi escolhida, pois além de ser uma linguagem concebida em Código

Aberto para desenvolvimento de aplicações web velozes e leves, sua principal característica é ser

29

modular, possibilitando assim o suporte a uma ampla variedade de bases de dados e protocolos,

permitindo uma maior portabilidade do sistema desenvolvido (PHPBRASIL, 2011). Além do PHP

foi utilizada a linguagem HTML e folhas de estilo CSS para a modelagem visual das interfaces.

Utilizou-se também da tecnologia ASP para completar a interação com o servidor do ISA Server

através de scripts Visual Basic (CRIARSITES, 2011).

4.2 Banco de Dados

O banco de dados padrão utilizado pelo Microsoft ISA Server é o Microsoft SQL Server

2000 Desktop Engine (MSDE 2000), onde se encontram todos os registros de logs gerados pelo ISA

Server. Foi utilizado o SQL Server Management Studio Express para configuração do acesso ao

banco e para verificação dos campos necessários para o software desenvolvido. Para acesso a esses

registros foi criado um novo usuário no banco denominado ACESSO_ISABD com permissões

somente de leitura das tabelas onde estão os registros necessários para o programa.

O ISA Server cria duas bases de dados novas para cada dia, sendo uma base para a tabela

FirewallLog com o nome ISALOG_YMD_FWS_000 e a outra base para a tabela WebProxyLog com

o nome ISALOG_YMD_WEB_000 sendo Y para ano, M para mês e D para o dia. Foi criado um

script de acesso ao banco justamente para conexão na tabela WebProxyLog passando por parâmetro

o login e senha criado e o padrão do nome dado pelo ISA Server a base de dados conforme a seguir:

$connection = sqlsrv_connect ( 'localhost', array ( 'UID' => ' ACESSO_ISABD ', 'PWD' => '*****', 'Database' => 'ISALOG_'.date('Ymd').'_WEB_000' ) );

Esta conexão ao banco é feita na base criada no dia corrente para consulta dos últimos logs

registrados pelo ISA Server, desta forma sendo necessário para visualização dos logs em tempo

real. A partir desta conexão inicial é possível consultar as outras bases anteriores e montar consultas

que percorrem várias bases diferentes. Baseado nisso foram feitas as consultas para os diferentes

30

tipos de relatórios implementados neste projeto. Estas consultas buscaram informações nos campos

descritos a seguir:

- ClientUserName : nome da conta de usuário autenticada;

- LogTime : hora e data do registro do evento de log;

- Uri : URL acessada.

4.3 Funcionalidades

As funcionalidades implementadas neste projeto tiveram como objetivo principal facilitar a

administração dos acessos dos usuários à internet, sem causar perda de desempenho e consumindo o

mínimo possível de recursos do servidor do ISA Server. Na proposta inicial descrita no Trabalho de

Conclusão de Curso I (TCCI), foram apresentadas quatro funcionalidades principais a serem

implementadas: monitoramento de logs de acessos a sites em tempo real, geração de relatórios,

bloqueio de sites e bloqueio de sites por categorias.

A primeira funcionalidade é o Monitor de Acessos para a visualização dos logs registrados

pelo ISA Server dos acessos dos usuários autenticados da rede. A proposta inicial era mostrar na

tela o endereço IP do usuário, o nome do computador, o site acessado e o horário de registro de

cada log. Porém foi identificado que a real necessidade é a de mostrar somente o nome da conta de

usuário autenticado, a URL acessada e o horário do acesso, pois existem cenários de utilização do

ISA Server em que o endereçamento IP é feito dinamicamente e os nomes dos computadores nem

sempre são controlados pela equipe de TI, por exemplo visitantes e fornecedores em uma empresa.

Nestes cenários torna-se inviável a consulta ao IP e o nome do computador nos logs,

podendo causar problemas na geração de relatórios, pois o endereço IP poderia mudar de um

usuário para outro em um determinado período ou ocorrer nomes de computadores idênticos na

rede. Este é o cenário de muitas empresas inclusive a empresa onde o software foi testado, onde

tem-se computadores com mais de um perfil de usuário, notebooks de terceiros e visitantes

acessando a rede. Portanto, após testes foi verificado que a utilização da autenticação Webproxy do

ISA Server para cada usuário é a mais indicada para obter informações precisas em relatórios e na

funcionalidade de monitoramento.

31

Na tela Monitor de Acessos da figura 9, o administrador da rede poderá visualizar os cem

últimos logs registrados pelo ISA Server, na primeira coluna da esquerda o nome da conta de

usuário, na coluna do meio as URLs acessadas e na coluna da direita a data e hora do acesso. Essas

informações foram consultadas no banco do ISA Server através da consulta a seguir:

$query = "SELECT TOP 100 ClientUserName, logTime, uri FROM WebProxyLog"; if (isset($_POST['filtro']))

{ if ((bool) strpos($_POST['filtro_valor'],',')) {

$query .= " WHERE ClientUserName is not null AND "; $array_filtros = explode(',', $_POST['filtro']); $count = count($array_filtro); foreach ($array_filtros as $key => $filtro) { $query .= "ClientUserName = '" . $filtro . "'"; if ($count != $key + 1) { $query .= " OR "; } } } else { $query .= " WHERE ClientUserName = '" . $_POST['filtro'] . "'"; } } $query .= " ORDER BY logTime DESC"; $stmt = sqlsrv_query($connection, $query);

Esta consulta é feita buscando os cem últimos registros dos campos ClientUserName,

logTime e uri da tabela WebProxyLog, ordenado pela data e hora, podendo ser feita uma filtragem

por um ou mais usuários separando-os por vírgulas. Esta consulta é refeita a cada 15 segundos para

atualização da visualização dos logs.

32

Figura 9: Monitor de Acessos

A segunda funcionalidade implementada é a de Relatórios, sendo a principal funcionalidade

do sistema. Foram implementados quatro tipos de relatórios diferentes, atendendo importantes

aspectos da administração dos acessos a internet e fornecendo informações que até então eram

limitadas ou não eram disponíveis na ferramenta de relatórios do ISA Server.

33

Figura 10: Relatórios

Na tela de relatórios da figura 10 são apresentadas as opções de seleção dos relatórios e os

campos USUÁRIO e PERÍODO para inserir os parâmetros da pesquisa. Na geração de relatórios os

resultados são mostrados na tela ou também é possível escolher o formato Excel (CSV),

possibilitando assim o tratamento dos dados em um editor de texto ou uma planilha Excel por

exemplo.

O primeiro tipo de relatório é o USUÁRIO / PERÍODO, retornando os registros de logs dos

acessos de um usuário em um determinado período com limite de cinco mil registros, mostrados na

tela com o mesmo layout da figura 12. O segundo tipo é o TOP 20 USUÁRIOS / PERÍODO que

consulta os vinte usuários que mais acessaram a internet no intervalo de tempo especificado,

mostrando o total de sites acessados pelo usuário conforme exemplo da figura 11.

34

Figura 11: Relatório TOP 20 Usuários/Período

O terceiro tipo é o TOP 20 SITES / USUÁRIO, consultando os vinte sites mais acessados

por um determinado usuário e mostrando na tela com o mesmo layout da figura 12 apenas com uma

filtragem diferente. O quarto tipo é o TOP 20 SITES / PERÍODO que retorna os vinte sites mais

acessados no período informado exibindo uma listagem na tela também conforme a figura 12.

Figura 12: TOP 20 Sites/Período

35

Para esses relatórios foram consultados os campos ClientUserName, logTime e uri da tabela

WebProxyLog, utilizando um switch case que seleciona o tipo da consulta conforme a escolha do

usuário, descrito no código a seguir:

switch ($_POST['tipo']) {

case 'usuario_periodo'; $titulo = "ACESSOS DO USUÁRIO <b>$usuario</b> ENTRE $data_de E $data_ate"; $eachDb = array(); foreach ($databases as $db) { $eachDb[] = 'SELECT COUNT(' . $db . '.dbo.WebProxyLog.logTime) AS total, ' . $db .

'.dbo.WebProxyLog.uri FROM ' . $db . '.dbo.WebProxyLog WHERE ' . $db . '.dbo.WebProxyLog.ClientUserName = \'' . $usuario . '\' GROUP BY ' . $db . '.dbo.WebProxyLog.uri'; }

$sql = 'SELECT SUM(total) AS soma, uri FROM (' . join(' UNION ', $eachDb) . ') AS resultSet GROUP BY uri ORDER BY uri ASC';

$campos = array ( 'uri' => 'Site', 'soma' => 'Acessos' ); break;

case 'top20_usuarios_periodo'; $titulo = "TOP 20 USUÁRIOS ENTRE $data_de E $data_ate"; $eachDb = array(); foreach ($databases as $db) {$eachDb[] = 'SELECT COUNT(' . $db . '.dbo.WebProxyLog.logTime) AS total, ' . $db .

'.dbo.WebProxyLog.ClientUserName FROM ' . $db . '.dbo.WebProxyLog GROUP BY ' . $db . '.dbo.WebProxyLog.ClientUserName'; }

$sql = 'SELECT TOP 20 SUM(total) AS soma, ClientUserName FROM (' . join(' UNION ', $eachDb) . ') AS resultSet GROUP BY ClientUserName ORDER BY soma DESC';

$campos = array (‘ClientUserName' => 'Usu&aacute;rio','soma' => 'Acessos' ); break;

case 'top20_sites_usuario'; $titulo = "TOP 20 SITES DO USUÁRIO <b>$usuario</b> ENTRE $data_de E $data_ate"; $eachDb = array(); foreach ($databases as $db) {$eachDb[] = 'SELECT COUNT('.$db .'.dbo.WebProxyLog.logTime) AS total,' . $db .

'.dbo.WebProxyLog.uri FROM ' . $db . '.dbo.WebProxyLog WHERE ' . $db . '.dbo.WebProxyLog.ClientUserName = \'' . $usuario . '\' GROUP BY ' . $db . '.dbo.WebProxyLog.uri'; }

$sql = 'SELECT TOP 20 SUM(total) AS soma, uri FROM (' . join(' UNION ', $eachDb) . ') AS resultSet GROUP BY uri ORDER BY soma DESC';

$campos = array('uri' => 'Site', 'soma' => 'Acessos' ); break;

case 'top20_sites_periodo': $titulo = "TOP 20 SITES ACESSADOS ENTRE $data_de E $data_ate"; $eachDb = array(); foreach ($databases as $db) {$eachDb[] = 'SELECT COUNT(' . $db . '.dbo.WebProxyLog.logTime) AS total, ' . $db .

'.dbo.WebProxyLog.uri FROM ' . $db . '.dbo.WebProxyLog GROUP BY ' . $db . '.dbo.WebProxyLog.uri';} $sql = 'SELECT TOP 20 SUM(total) AS soma, uri FROM (' . join(' UNION ', $eachDb) . ') AS

resultSet GROUP BY uri ORDER BY soma DESC'; $campos = array('uri' => 'Site', 'soma' => 'Acessos'); break; }

36

A terceira funcionalidade implementada neste sistema foi a de Bloqueio de Sites, utilizando

informações retiradas do SDK do ISA Server para a criação da interação do sistema com as

funcionalidades de bloqueio do servidor ISA. A figura 13 mostra a tela de bloqueio com um campo

para digitar a URL desejada e o botão de bloqueio e também a possibilidade de editar as URLs já

bloqueadas clicando no link EDITAR URLs BLOQUEADAS. Após a edição é necessário clicar no

botão Atualizar para salvar as novas configurações.

Figura 13: Bloqueio de Sites

O acesso às funcionalidades de bloqueio do ISA Server foi feita a partir de um script em

Visual Basic que faz a leitura de um arquivo de texto chamado SitesBloqueados.txt onde será

gravada a URL digitada pelo usuário. Este script foi embutido em uma página ASP para acesso aos

recursos disponíveis somente no servidor do ISA e está descrito no código abaixo:

<% Set Isa = CreateObject("FPC.Root") Set CurArray = Isa.GetContainingArray Set RuleElements = CurArray.RuleElements Set URLSets = RuleElements.URLSets Set URLSet = URLSets.Item("SitesBloqueados")

37

Set FileSys = CreateObject("Scripting.FileSystemObject") Set UrlsFile = FileSys.OpenTextFile("C:\Inetpub\wwwroot\SitesBloqueados.txt", 1) For i = 1 to URLSet.Count URLSet.Remove 1 Next Do While UrlsFile.AtEndOfStream <> True URLSet.Add UrlsFile.ReadLine Loop CurArray.Save %>

O script abre o objeto FPC.Root que é responsável pelo acesso aos demais objetos de

gerenciamento de listas de URLs nas configurações de firewall do ISA Server. Ao abrir a lista de

URLs “SitesBloqueados”, o script gravará nesta lista o conteúdo lido no arquivo

SitesBloqueados.txt e salvará as configurações, confirmando o bloqueio da URL desejada. Essa

lista de sites bloqueados pode ser inserida como Exceção no acesso externo em uma regra de acesso

no ISA Server. Por exemplo, uma regra principal de liberação para internet pode liberar o acesso a

todos os sites da internet com exceção dos sites da lista de bloqueio que está sendo controlada.

A quarta funcionalidade proposta no TCC I foi a de Bloqueio de Sites por Categoria. Porém

com a mudança do site da Microsoft, que oferece o serviço Microsoft Reputation Service (MRS),

saindo da versão BETA2 para a versão final, houve uma reformulação do seu conteúdo

impossibilitando a sua implementação. O serviço MRS da Microsoft consiste em uma base dados

para consulta a categorias de sites pré-definidas pela Microsoft. Como este serviço MRS estava em

caráter BETA foi incluída a implementação desta funcionalidade no sistema como risco do projeto

no TCCI. O serviço MRS saiu da versão BETA2 para a versão final no início deste ano, porém

muitos sites ainda não foram categorizados ou estão categorizados errados.

No site da versão BETA2 era possível acessar, através de scripts automáticos de consulta, os

campos de retorno onde eram mostradas as categorias após a consulta, sendo esta a motivação

inicial para a implementação de uma ferramenta que pudesse utilizar essa base de dados de

categorias para bloquear sites que estejam em uma categoria indesejada. Atualmente o site do

serviço MRS foi desenvolvido para evitar que o campo de retorno das categorias consultadas seja

acessado ou copiado, não sendo possível a utilização para consultas automáticas. Porém, ainda pode

ser útil para o administrador da rede caso ele encontre uma url e deseje saber qual a categoria que a

Microsoft definiu, consultando diretamente no site (MRS, 2011).

38

Apesar de existirem outros serviços de categorização de sites oferecidos por outras

empresas, como a GFI e a Norton (SYMANTEC, 2011), estão direcionados para serviços pagos

inviabilizando a utilização neste trabalho. Outras opções foram cogitadas como a implementação da

categorização no próprio software e a criação de scripts de análise de conteúdo dos sites, porém

foram descartadas por onerar muito tanto o desempenho da rede quanto o tempo de trabalho do

administrador da rede em categorizar cada site.

39

CONCLUSÕES

O principal objetivo do software deste projeto é facilitar o gerenciamento dos acessos a sites

externos que são filtrados pelo Microsoft ISA Server e oferecer uma opção de geração de relatórios

ágil e mais voltada para as necessidades do dia a dia do administrador da rede. Com foco na

versatilidade da administração foi implementada uma ferramenta via web que possibilite o

monitoramento dos acessos sem a necessidade de se conectar no servidor e abrir o console do Isa

Server, percebendo, após testes em um ambiente real, ser de grande ajuda para profissionais de TI

que estão sempre em busca de ferramentas facilitadoras para o trabalho.

Apesar de ser uma solução em código aberto, direcionada para versões do ISA Server (2004

e 2006) que serão descontinuadas pela Microsoft, este software se faz útil, pois ainda existem

muitas empresas no mercado que utilizam estas versões devido ao alto custo de novas licenças e de

mão de obra especializada para atualização de seus sistemas.

Mesmo atuando em uma abordagem simples, o software deste projeto está envolvido em

muitos conceitos, desde gestão de pessoas até segurança de rede, que tiveram que ser pesquisados

para que o software não tenha problemas de integração com ambientes e políticas já existentes, que

não consuma recursos desnecessários do servidor e que realmente possa se tornar um diferencial

para o administrador na gerência de sua rede.

Profissionais de todas as áreas necessitam de agilidade e qualidade na busca das informações

que são pertinentes e úteis para a rotina de trabalho e na administração de redes essas qualidades se

tornam essenciais para o cumprimento das atividades do administrador da rede, pois podem ajudar a

evitar sérios problemas de segurança. Além disso, possibilitam gerenciar a produtividade dos

usuários sobre a web que frequentemente se torna uma grande distração e consequentemente um

problema para as empresas. Com isso se justifica o desenvolvimento de uma ferramenta que

contribua para o administrador da rede no gerenciamento de sua rede e, consequentemente,

melhorando a qualidade dos serviços prestados.

40

TRABALHOS FUTUROS

Este software, mesmo sendo uma versão inicial já está sendo utilizado em um ambiente real

na empresa onde trabalho e despertou interesse de outras duas empresas que também trabalham com

o ISA Server. Por conta disso serão feitas pesquisas com profissionais especializados sobre outras

funcionalidades e melhoramentos que possivelmente podem ser inseridos no software para

lançamento de uma versão comercial em breve.

Outras funcionalidades voltadas à utilização de gráficos dinâmicos de utilização da internet

serão implementadas facilitando ainda mais a visualização do tipo de conteúdo acessado pelos

usuários e fornecendo mais uma opção de monitoramento para o administrador da rede.

41

ANEXOS

ANEXO I – DICIONÁRIO DE DADOS DAS TABELAS DO ISA SERVER

A tabela a seguir descreve os campos acessíveis da tabela FirewallLog do ISA Server.

ORDEM Nome do Campo (MSDE databases)

Descrição

0 servername Nome do computador do ISA Server

1 logTime Dia e hora do registro do log

3 protocol Protocolo de transporte

4 SourceIP

SourcePort IP e porta de origem da requisição

5 DestinationIP

DestinationPort IP e porta de destino da requisição

6 OriginalClientIP IP do cliente

7 SourceNetwork Rede de origem

8 DestinationNetwork Rede de destino

9 Action Ação a ser tomada pelo ISA Server

10 resultcode Código de erro do Windows

11 rule Regra de acesso

12 ApplicationProtocol Protocolo de aplicação

13 Bidirectional Direção do tráfego de rede

14 bytessent Numero total de bits enviados pela rede

15 bytessentDelta Numero total de bits enviados do clienta para o computador do ISA Server

16 bytesrecvd Numero total de bits enviados do computador de origem para o computador de destino

17 bytesrecvdDelta Numero total de bits enviados do computador de destino para o computador de origem

18 connectiontime Tempo total de conexãothe connection was closed.

19 connectiontimeDelta Tempo total de log

20 SourceProxy Uso futuro

21 DestinationProxy Uso futuro

42

22 SourceName Uso futuro

23 DestinationName Domínio de destino

24 ClientUserName Conta de usuário

25 ClientAgent SO do cliente

26 sessionid Identificaçaõ de sessão

27 connectionid Identificação de conexão

28 Interface Adaptador de rede

29 IPHeader Cabeçalho IP

30 Payload Cabeçalho de protocolo

31 GmtLogTime Hora do Log GMT

A tabela a seguir descreve os campos acessíveis da tabela WebProxyLog do ISA Server.

ORDEM Nome do campo (MSDE

databases) Descrição

0 ClientIP IP do cliente

1 ClientUserName Conta de usuário

2 ClientAgent Nome do navegador do cliente

3 ClientAuthenticate Verificador de autenticação do usuário

4 logTime Data de ocorrência do log

5 logTime Hora local de ocorrência do log

6 service Nome do serviço em log

7 servername Nome do computador do ISA Server

8 referredserver URL do servidor de referência

9 DestHost Domínio do computador remoto

10 DestHostIP IP do computador remoto

11 DestHostPort Porta do computador remoto

12 processingtime Tempo de processamento de rede

13 bytesrecvd Numero total de bits enviados do computador de origem para o computador de destino

14 bytessent Numero total de bits enviados pela rede

15 protocol Protocolo de rede

16 transport Protocolo de conexão (UDP - TCP)

17 operation Método HTTP de operação

18 uri A URL solicitada pelo cliente

43

19 mimetype Tipo de MIME (Multipurpose Internet Mail Extensions)

20 objectsource Tipo de fonte do objeto requerido pela conexão

21 resultcode Código de erro do Windows

22 CacheInfo Status da cache da conexão

23 rule Regra de acesso

24 FilterInfo Informação de filtragem

25 SrcNetwork Rede de origem

26 DstNetwork Rede de destino

27 ErrorInfo Informação de erro de conexão

28 Action Ação a ser tomada pelo ISA Server

29 GmtLogTime Hora do Log GMT

30 AuthenticationServer Servidor de autenticação

44

REFERÊNCIAS BIBLIOGRÁFICAS

BSPLITTER. Features. 2010. Disponível em: <http://www.bsplitter.com/features.aspx>. Acesso

em: 19 Abril 2010

CERT.br. Estatísticas de Incidentes. 2010. Disponível em: < http://www.cert.br/stats/incidentes/>.

Acesso em: 19 Abril 2010.

CRIARSITES. Apostilas.2011. Disponível em: <http://www.criarsites.com/apostilas-de-

linguagens-utilizadas-na-criacao-de-sites/> Acesso em: 21 janeiro 2011

ISASERVER. Software Add-ons. 2010. Disponível em: <http://www.isaserver.org/software/> .

Acesso em: 21 abril 2010

GFI WEBMONITOR. Overview. 2011. Disponível em: <http://www.gfi.com/internet-monitoring-

software/>. Acesso em: 19 maio 2011

ISO. Segurança da Informação. 2010. Disponível em:

<http://www.iso.org/iso/catalogue_detail?csnumber=39612> . Acesso em: 05 Abril 2010

MICROSOFT. O que é o ISA Server 2006?.2006. Disponível em:

<http://www.microsoft.com/brasil/servidores/isaserver/prodinfo/overview.mspx#EZC>. Acesso em:

09 fev 2010.

MICROSOFT. Casos de Sucesso. 2010. Disponível em:

<http://www.microsoft.com/brasil/Casos/busca_produto.aspx?Page=1&idProduto=9>. Acesso em:

09 fev 2010.

MRS. Microsoft Reputation Service. 2011. Disponível em: <

http://www.microsoft.com/security/portal/mrs/>. Acesso em: 19 maio 2011.

45

MBI. Segurança da Informação. 2009. Disponível em:

<http://www.mbi.com.br/MBI/biblioteca/relatorios/200907segurinfo/>. Acesso em: 27 fev 2010.

NIC. Evolução da Internet. 2009. Disponível em: <http://www.nic.br/imprensa/coletivas/2009/tic-

empresas-2008.pdf > . Acesso em: 05 julho 2010

PHPBRASIL. Artigos sobre PHP. 2011. Disponível em: <http://phpbrasil.com>. Acesso em: 26

mai 2010

RH. Risco do Uso da Internet em empresas . 2009. Disponível em:

<http://www.rh.com.br/Portal/Relacao_Trabalhista/Video/5899/riscos-do-uso-da-internet-em-

empresas.html> Acesso em: 20 maio 2010

SYMANTEC .Norton Web Safe. 2011. Disponível em: <http://safeweb.norton.com/about>.

Acesso em: 07 Abril 2011.

SUCESU. Riscos, Controles e Legislação no uso da Internet nas Empresas.2010. Disponível

em: < http://www.sc.sucesu.org.br/banner.php?banner_rodape=1&&cd_banner=95>. Acesso em:

07 Abril 2010.

SHINDER, THOMAS. What is the ISA 2006 firewall?. 2006. Disponível em:

<http://www.isaserver.org/articles/What-is-ISA-2006-Firewall.html>. Acesso em: 27 fev 2010.

WEBSENSE. Web@Work 2011.2011. Disponível em:

<http://www.websense.com/content/Regional/Brazil/newsroom.aspx?ID=1855>. Acesso em: 19

Maio 2011.

WANTOWSKY, Giane. O mau uso da internet pode ensejar dispensa por justa causa. 2005.

Disponivel em: <http://www.boletimjuridico.com.br/doutrina/texto.asp?id=884>. Acesso em: 21

maio 2010