Testando a vulnerabilidade do seu PC

De Siduxpédia

Tabela de conteúdo

Introdução

Usando o Linux passamos a ter uma sensação de segurança nunca antes experimentada quando era usado o outro SO. Esta sensação pode ser totalmente falsa, pois embora estejamos de alguma maneira mais imunes às contaminações por vírus, tão comuns no outro sistema, podemos entretanto ainda assim estar com as defesas abertas e perfeitamente sinalizadas como tal.

Para verificar esta vulnerabilidade existe uma ferramenta muito útil e simples de usar. Trata-se do teste da situação (status) das portas reais e virtuais de acesso ao seu sistema, o aplicativo ShieldsUp, do site www.grc.com.

Imagem:File:///home/jgmdb5/Desktop/temp/grc-shields-up-pg01.png

Embora por padrão a maioria das distros Linux, senão todas, carreguem em seu sistema a partir da inicialização as tabelas de IP padrão (iptables), que não deixam de ser um firewall básico, convém sempre fazer um teste para verificar a situação real e caso necessário partir para a instalação de um firewall específico ou para a reconfiguração daquele eventualmente já instalado ou fazer "na unha", via terminal, a configuração da iptables com as restrições necessárias.

Pessoalmente já uso há bastante tempo o teste de autoria do Steve Gibson, disponível em www.grc.com.

Sem dúvida isto ainda é um dos vícios e paranóias herdadas daqueles tempos em que usava apenas o outro sistema operacional (SO). Esta entretanto é uma boa prática.

Apenas como ilustração sem nenhum objetivo de propaganda, principalmente para a avaliação da credibilidade do autor do aplicativo, Steve Gibson é o autor do programa que foi muito popular desde o tempo em que os HDs para PCs usavam tecnologia de codificação MFM e tinham apenas algumas dezenas de MB, como em 1989/90 quando os maiores disponíveis para computadores pessoais (PCs) tinham apenas 43MB.

Conheci, comprei e usei por bastante tempo uma das primeiras versões do programa Spinrite do Steve Gibson, cuja versão II datada de 1988 ainda tenho os originais em minha biblioteca. A novidade do Spinrite naquela época era o fato de permitir a otimização da configuração dos HDs, bem como a reparação de muitos dos defeitos comuns, a recalibragem das cabeças de leitura dos mesmos quando passavam a apresentar erros por desgaste interno e a recuperação de dados, usando para isto formatação de baixo nível (Low-level Format) em modo não destrutível dos dados.

Como ainda é costume, os fabricantes de hardware como HDs nem sempre disponibilizam seus produtos para o melhor rendimento possível, porém para a maior vida-útil apenas para evitar dores de cabeça e minimizar reposições em garantia. Isto significa não otimizar as características de leitura de setores e trilhas (sector interleave) a cada rotação completa do HD. O Spinrite, depois de testar este parâmetro crítico para o desempenho, permitia alterar a configuração interna do HD alcançando em alguns casos ganhos de performance de até de 500% comparados com a configuração entregue de fábrica.

O Spinrite existe até hoje, agora atualizado em sua versão 6 e ainda permite fazer o mesmo, de forma mais abrangente, cobrindo distintos sistemas de arquivamento (file systems - fs), incluindo os sistemas usados pelo Linux, além obviamente de NTFS, Novell e Macintosh.

Pois bem, o Steve Gibson, que além de tudo isto detém alta reputação junto a agências de segurança, sendo consultor de algumas delas, também tem uma ampla produção de outros aplicativos, principalmente para para os SO's da Microsoft. Para aqueles que tem boa compreensão do inglês vale uma leitura nas diversas áreas do site www.grc.com, onde também talvez ainda exista o relato de um caso interessante de ataque maciço ao site com quebra de serviço (DOS - Denial of Service) após a emissão de uma opinião por parte dele em algum site a respeito de autores de vírus.

Em função desta ocorrência ele passou a desenvolver outros aplicativos focados na segurança, principalmente para sistemas baseados nos SO's da Microsoft.

No caso do Shields-Up, que é o aplicativo alvo deste artigo entretanto, o mesmo pode ser aplicado a qualquer configuração que tenha acesso a Internet.

Imagem:File:///home/jgmdb5/Desktop/temp/grc-shields-up-pg02.png

Um teste simples

Um teste simples, fácil e principalmente confiável que qualquer iniciante pode usar, com interface gráfica, sem uso do terminal.

O teste a que me refiro usa o Shields-Up, aplicativo muito fácil de usar, intuitivo, não requer o uso do terminal que tanto assusta aos iniciantes e que além disto permite mesmo a quem não tem domínio total do inglês realizá-lo e alcançar a compreensão quase total dos resultados.

O Shields-Up permite testar a vulnerabilidade existente devido aos compartilhamentos, que é o primeiro item ativável pelo clic do mouse que aparece na parte inferior da tela bastando clicar sobre ela. O segundo botão que aparece é o que testa as portas mais comuns. O terceiro botão verifica todas as portas, reais e virtuais, até a de número 1056 por serem as de uso frequente. Além disto ainda é possível verificar o grau de "inteligência" do firewall instalado em reconhecer quando o próprio usuário ativa a abertura temporária de uma determinada porta necessária ao uso de determinado aplicativo, ativando de volta o estado de "fantasma" após o uso ou após um determinado tempo.

A configuração ideal para que seu sistema não apresente vulnerabilidades é aquela em que todas as portas de acesso estejam em modo real "fantasmas" (em inglês - True Stealth), não dando nenhum tipo de retorno a quaisquer tentativas de invasão ou varredura (scan), incluindo mesmo o comando ping.

Muitas vezes a configuração padrão (default), mesmo no Linux, apenas com o iptables carregado a partir da inicialização, não torna "fantasmas" todas as portas, permitindo acesso (invasão) sem até mesmo o usuário ficar sabendo disto. Neste caso seria conveniente reconfigurar o iptables via terminal ou usando algum dos aplicativos de firewall, cuja função principal é permitir fazer a mesma coisa usando uma interface gráfica mais simples e amigável, principalmente para os usuários Linux iniciantes.

Existem, neste caso, vários aplicativos, dependendo da distro usada. Entre aqueles que usei e/ou continuo usando estão o Firestarter e o Guarddog. De mesma forma que distros ou gerenciadores de janelas, existem várias alternativas para as distintas preferências.

Isto tudo também vai depender dos serviços que você deseje manter habilitados, como acesso a P2P, Torrent e outros aplicativos de compartilhamento.

Teste Passo a Passo

Segue abaixo a descrição de cada um dos passos aplicáveis ao teste de vulnerabilidade usando o Shields-Up do Steve Gibson (www.grc.com):

  • - Tela inicial do site www.grc.com, onde basta clicar sobre o título Shields-Up para seguir adiante:

[[1]]

  • - Na tela seguinte você deve buscar mais abaixo novamente o título Shields-Up, abaixo do título Hot-Spots, para abrir este aplicativo:

[[2]]

Esta tela abre o aplicativo Shields-Up, que não seguirá adiante até que você clique em prosseguir (proceed). Logo acima da tecla proceed está a explicação muito típica da cultura Americana em resguardar-se contra processos legais onde diz que ao optar por prosseguir você estará formalmente autorizando que os testes prossigam e o site tente enviar pacotes de dados para o seu computador, portanto em curtas palavras, invadí-lo.

[[3]]

Esta página mostra ainda o IP de sua conexão, que pode ser o IP genérico de seu servidor de Internet e o nome de sua máquina na rede, que poderá ou não ser um identificador único da sua conta, por esta razão não está sendo mostrada esta tela.

  • - A próxima tela lhe dará as boas vindas e explicações adicionais para as razões dos testes.

[[4]]

[[5]]

Tela dos testes Logo abaixo do título "ShieldsUp! Services" você encontrará uma barra dividida em cinco botões para os testes disponíveis, sendo aconselhado iniciar pelo teste de compartilhamentos, o primeiro do lado esquerdo da barra.

[[6]]

Nesta etapa, mostrada na tela, ele tenta fazer contato com seu PC usando o servidor "oculto" que existe no PC (isto é padrão, pelo menos no caso dos sistemas da Microsoft). Tentará também acessar via porta 139 e usando NetBios, que são os recursos usados ao habilitar os compartilhamentos em rede, impressoras etc. Mostra os resultados de cada um dos dois.

[[7]]

Na próxima tela, ao clicar sobre o botão "Portas Comuns" (Common Ports) ele fará a varredura das portas de serviço mais comuns e normalmente vulneráveis a invasões não autorizadas.

[[8]]

Na tela seguinte, ao clicar sobre "Todas as Portas de Serviço" (All Service Ports), será feita uma varredura (scan) em todas as primeiras 1056 portas reais e virtuais que dão acesso a seu PC.

[[9]]

Depois da grade mostrando a situação (status) de cada uma delas, vem explicações adicionais bastante interessantes, como:

[[10]]

Se o seu sistema passou no teste de Estado Fantasma Real ou Parcial, ou seja, se o seu sistema não retorna qualquer tipo de resposta ao invasor ou simplesmente ignora, sem demonstrar nenhum sinal de existência. Aparecerá escrito Passed em verde dos dois lados do nome do primeiro item de teste (TrueStealth Analysis).

A informação seguinte explica porque são testadas as primeiras 1056 portas:

As portas de acesso disponíveis para uso da Internet são numeradas de 1 a 65535, entretanto as primeiras 1023 portas são especiais.

Por tradição e algum nível de imposição, as portas de 1 a 1023 são geralmente reservadas para aceitação de conexões de entrada por serviços ativos em recepção/escuta do sistema. Os serviços de Internet monitoram (escutam) em várias portas de numeração baixa de forma que os clientes que desejam estabelecer conexão tenham acesso a estes serviços. Os servidores Web tradicionalmente escutam na porta 80, servidores de eMail escutam nas portas 25 e 110, servidores FTP escutam na porta 21 e servidores Telnet na 23. A lista segue. Além das primeiras 1023 portas foram adicionadas outras 33, apenas como segurança extra para cobrir o comportamento inseguro tipico nos ambientes Windows da MS.

O ideal neste caso é que todas as suas primeiras 1056 portas apareçam como fantasmas/invisíveis, aparecendo na cor verde, sem dar qualquer tipo de retorno a qualquer varredura externa, desta forma você estará invisível (em estado "fantasma real").

Neste teste também pode ser feita uma verificação do Windows Messenger, onde você pode testar o envio de Spam contra você mesmo. Vai apenas a tela, já que o objetivo é a verificação genérica das portas de acesso.

  • - Esta tela mostra e permite testar outra vulnerabilidade, porém devido ao seu navegador, que pode estar passando informação crítica de segurança sobre o seu sistema enquanto navega na Internet. Para demonstrar o tipo de informação tornada pública ou não pelo seu navegador (browser), você pode optar por verificar o comportamento trocando de sistema em modo seguro para inseguro (basta usar o botão para isto).

Basta comparar as informações nos dois modos.

[[11]]

  • - Ainda na tela geral de testes do ShieldsUp, aparecem na parte inferior, outros dois botões largos na segunda linha de botões, onde você poderá testar outras portas ou intervalos de portas, dentre aqueles listados conforme a tela abaixo:

Além disto poderá acessar as descrições com as características e tipo de serviço de cada uma das portas.

Comentários finais

Feito o teste de varredura dos compartilhamentos, das portas mais comuns e das primeiras 1056 portas de acesso à Internet, você já poderá ter uma idéia da real situação em que se encontra seu PC, podendo continuar como está ou partir para a instalação de um firewall ou regras de acesso mais restritivas.

Como mencionado anteriormente, isto pode ser feito também usando o terminal, porém precisaria pesquisar para isto, usando os comandos corretos.

Como o objetivo do artigo foi apresentar uma forma acessível e amigável até mesmo para iniciantes, além de resultados confiáveis, deixo de me estender mais sobre outros métodos, até mesmo por falta de conhecimentos mais profundos.

Já verifiquei situações onde logo após a instalação de alguma distro, várias portas apareciam como abertas, outras fechadas e outras tantas em estado de invisibilidade (fantasma), o que não seria o ideal.

Dependendo da sua rede, do seu roteador (caso exista algum), do tipo de acesso usado, por IP fixo ou dinâmico, os resultados podem variar.

No caso deste teste apresentado nas figuras do capítulo Passo-a-passo, o PC está por trás de um roteador e firewall dedicado, o excelente aplicativo nacional, BrazilFW, que tanto pode acessar o provedor de Internet por IP dinâmico como também distribuir o sinal aos PCs da rede novamente com IP dinâmico (DHCP).

Cada PC da rede por sua vez tem ativado seu firewall próprio, sem permitir acesso até mesmo a serviços SSH. Com isso e as configurações apropriadas, foi possível conseguir a condição real de fantasma / Invisibilidade Real para cada uma das 1056 portas do teste.

Apenas como observação adicional, vale a pena, nem que seja apenas para adquirir novos conhecimentos, ler os artigos e dicas publicados no Viva o Linux sobre o BrazilFW, que permite dar vida nova e nobre a velhos e totalmente ultrapassados PCs antigos, mesmo aqueles 486-DX100 ou Pentium 100 para que sejam usados como roteadores e firewall dedicado, operando sem HD, apenas usando disquete, rodando diretamente da memória RAM.

Ferramentas pessoais