UltraSurf - Bloqueio definitivo

Uma visão geral sobre a técnica utilizada para bloqueio definitivo dessa e outras pragas.

[ Hits: 67.357 ]

Por: luciano coelho em 19/06/2012 | Blog: http://coelholuciano.blogspot.com.br/


A solução



A solução aqui demostrada foi estudada, configurada, colocada em produção e amplamente testada na rede acadêmica do Senac Lages/SC, onde o objetivo principal foi possibilitar aos alunos do Curso Técnico em Redes de Computadores, turma que se forma no final do primeiro semestre de 2012, a possibilidade de vivenciar problemas reais de campo, possibilitando desta forma, uma construção significativa do conhecimento, e deixando-os preparados para a cruel realidade do mundo do trabalho.

Para resolver o problema, entrou na 'jogada' o Mutley, servidor rodando FreeBSD que fornece com exclusividade para toda a rede acadêmica, os serviços: DHCP, DNS, Gateway e Proxy.

O bloqueio do UltraSurf e das outras técnicas relacionadas é relativamente simples, bastando ter as portas corretas fechadas no firewall e o uso de um proxy não transparente.

Na sequência, veremos a estrutura/características do servidor Mutley, as regras aplicadas e as implicações que cada ação reflete.

Estrutura/Características do servidor Mutley

FreeBSD 9 configurado como gateway da rede disponibilizando os seguintes serviços:
  • DHCP
  • DNS
  • PROXY
  • FIREWALL

PF utilizado como firewall, configurado dentro do conceito de politicas Default Deny, onde somente são abertas as portas que realmente são utilizadas na rede.

Portas SSH, 80, 53 e 3128 abertas somente para acesso ao próprio servidor, porta 443 fechada para qualquer uso.

Com isso, já evitamos que seja possível utilizar técnicas de tunneling, socks, proxy anônimo, além de já impedir que o UltraSurf e similares consigam conectar.

Exemplo da regra no PF

# permite às máquinas da redeLan, acessar as portas listadas somente via ipLan
pass in quick on $intLan proto { tcp, udp } from $redeLan to $ipLan port { 53, 80, 3128, 22 } keep state

Squid configurado como proxy NÃO transparente, onde toda navegação, sem exceção, de http, https e ftp, somente será permitida via proxy, estando as respectivas portas devidamente fechadas no firewall.

O Dquid tem sua configuração padrão e dentro da sua necessidade, a única coisa adicionada se deu ao fato de que ferramentas como UltraSurf permitem que seja configurado o endereço de proxy da rede, conseguindo desta forma, funcionar por dentro do proxy mesmo.

Para impedir que isso aconteça, foi criada uma ACL para não permitir a navegação direta por IP.

Exemplo da ACL

# acl para não permitir nagevacao por IP
acl naoIP dstdom_regex -i ([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}($|:.+|/))
http_access deny CONNECT naoIP

Revisando a solução

  • Firewall configurado dentro dos padrões de Default Deny;
  • Liberar somente as portas necessárias para funcionamento da rede;
  • Portas SSH, 80, 53 e 3128 liberadas exclusivamente para acesso ao IP da LAN do servidor;
  • Proxy não transparente, atuando como saída exclusiva de HTTP, HTTPS e FTP;
  • Bloqueio no proxy de navegação por IP.

Com estes passos simples, conseguimos com mínimo esforço, eliminar por completo o uso do UltraSurf e das ferramentas, ou técnicas, mencionadas para burlar os controles de conteúdo da rede.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. UltraSurf - Problemas comuns
   3. A solução
   4. Toda ação, gera uma reação
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando programas no Linux - Completo e total

Google Chrome OS

Compilação distribuída usando o distcc

Santos Dumont - Pioneiro do Opensource no Brasil

Mais desempenho no GNU Emacs com o YASnippet

  
Comentários
[1] Comentário enviado por fabio em 19/06/2012 - 08:15h

Excelente trabalho, meus parabéns!

[2] Comentário enviado por antonioclj em 19/06/2012 - 09:23h

Muito bom mesmo. Esse ultrasurf é um porre. Já tive que bloqueá-lo e aparentemente está tudo OK por enquanto. Agora você já testou essa solução com o TOR ? Mais outra dor de cabeça para os administradores. Obrigado pela contribuição.

[3] Comentário enviado por removido em 19/06/2012 - 09:31h

e parabéns pelo topico, mas eu não gostei ! uasuahs. Sempre tento entrar na net aki no meu trampo + nunca consigo sempre sou barrado não abre nem o google aqui eu to ficando loco não vejo a hr de sair daki me ajuda a burla o sistema aki ??! outra coisa usb n pega ¬¬ q lixo !

[4] Comentário enviado por rahremix em 19/06/2012 - 15:00h

Muito bom o artigo, parabéns!
Vou testar essas configurações no novo servidor que estamos implantando, posto os resultados aqui depois!
Abraços!

[5] Comentário enviado por dalveson em 19/06/2012 - 17:07h

Otimo artigo, parabens pela contribuição.
uma duvida:
saindo do ambiente freebsd e indo para o linux, bastaria ei instalar o ISC DHCP, SQUID, configurar o IPTABLES e por fim configurar o WPAD que tudo funcionario do mesmo jeito?

[6] Comentário enviado por lucianocoelho em 19/06/2012 - 17:12h

Sim Dalveson, a solução não esta diretamente ligada ao FreeBSD... sem duvida vai funcionar sim em qualquer distribuição Linux que você venha a utilizar.

[7] Comentário enviado por lucianocoelho em 20/06/2012 - 22:44h

Não conhecia o TOR, mas fazendo alguns testes ele não chega nem a conseguir efetuar a conexão. Dei uma mexida nas configurações dele, alterando proxy, configurações de firewall que ele tem e mesmo assim não conectou!


[2] Comentário enviado por antonioclj em 19/06/2012 - 09:23h:

Muito bom mesmo. Esse ultrasurf é um porre. Já tive que bloqueá-lo e aparentemente está tudo OK por enquanto. Agora você já testou essa solução com o TOR ? Mais outra dor de cabeça para os administradores. Obrigado pela contribuição.



[8] Comentário enviado por wagnux em 25/06/2012 - 20:42h

Luciano Coelho, parabéns pelo artigo! Não querendo ser xiita GNU/Linux, não gostei do fato de você ter criado o seu artigo usando o sistema operacional FreeBSD que apesar de ser open source não tem nada a ver com o VOL. :P Seria interessante que o mesmo se baseasse no GNU/Linux ao invés do FreeBSD mas mesmo assim valeu pela iniciativa.

[9] Comentário enviado por lucianocoelho em 25/06/2012 - 23:15h

Boa noite wagnux,
sempre li artigos muito bem escrito de FreeBSD aqui no VOL e foi isso me que motivo a fazer o post do artigo por aqui também! Particularmente entendo que o VOL é muito maior que sistema A ou B, mas de qualquer forma obrigado pela dica ai.


[8] Comentário enviado por wagnux em 25/06/2012 - 20:42h:

Luciano Coelho, parabéns pelo artigo! Não querendo ser xiita GNU/Linux, não gostei do fato de você ter criado o seu artigo usando o sistema operacional FreeBSD que apesar de ser open source não tem nada a ver com o VOL. :P Seria interessante que o mesmo se baseasse no GNU/Linux ao invés do FreeBSD mas mesmo assim valeu pela iniciativa.



[10] Comentário enviado por wagnux em 26/06/2012 - 20:20h

Luciano Coelho, todos esses anos que tenho acompanhado o VOL até agora não li nada específico para FreeBSD mas sim uma menção a esse sistema operacional. Acredite! É a primeira vez que leio algo fora do GNU/Linux nesse fórum. Não entendo que o VOL seja muito maior que sistema A ou B, Luciano. Entendo que o VOL é um excelente fórum específico para o sistema operacional GNU/Linux. E diga-se de passagem o melhor ou um dos melhores fóruns de GNU/Linux que já vi ao longo de 8 anos de uso dessa plataforma. Mas muito embora o teu artigo tenha se baseado no FreeBSD, foi bastante útil para a comunidade SL/CA em relação ao assunto em tela e por isso você merece rasgados elogios e meus parabéns pela postagem desse artigo no VOL. ;)

[11] Comentário enviado por jwolff em 19/12/2012 - 15:46h

Tunelamento pode utilizar qualquer porta,qualquer host. Dependendo da forma que foi feito,já vi aqui no VOL apenas 1 bloqueio que realmente é eficiente. A unica falha deste artigo é neste aspecto. No mais,muito bom!

[12] Comentário enviado por Carlos_Cunha em 13/02/2013 - 23:18h

Parabéns pela criação do artigo, concerteza ira ajuadar muitos...
Porém ao meu ver vc so falou ou que a "maioria" ja sabe(pelo menos quem trabalho com rede e ja pegou um caso de Ultra Surf) que a maneira correta e unica e ter uma politica default DROP no Firewall e com proxy MARCADO a coisa muda, no transparente infelizmente continua a mesma coisa(ao meu ver proxy transparente é ruim).
O tipo de acl que vc usou para bloquear o ultra surf e do mesmo tipo que é usada para liberar os acesso ao skype que usa o method CONNECT(443), então achei que vc falou a mesma coisa somente com outras palavras(em partes esta igual), mas parabéns pela iniciativa...
Abraço

[13] Comentário enviado por lnredivo em 27/03/2013 - 14:45h

Alguma alternativa para fazer o mesmo procedimento num servidor Ubuntu 12.04 com Iptables e Squid 3.1?

[14] Comentário enviado por lucianocoelho em 28/03/2013 - 10:44h

A solução é independente de distribuição e não esta vinculada somente ao FreeBSD, a diferença principal vai estar no firewall que no seu caso seria o Iptables ao invés do PF, mas tudo que foi implementado ele da suporte sem problema.

[13] Comentário enviado por lnredivo em 27/03/2013 - 14:45h:

Alguma alternativa para fazer o mesmo procedimento num servidor Ubuntu 12.04 com Iptables e Squid 3.1?



[15] Comentário enviado por eduardomozart em 27/10/2013 - 11:04h

Luciano Coelho, preciso rever o proxy em uma das empresas das quais presto suporte e uma das partes que admirei do artigo foi quando você parabenizou os desenvolvedores do UltraSurf por ter desenvolvido uma ferramenta tão eficaz para burlar os bloqueios.
Parabéns pela humildade e maturidade. Muitas pessoas sairiam metendo "pau" no UltraSurf dizendo que é um lixo, que só ferra a vida dos Administradores, etc. mas, assim como você, acredito que é apenas mais uma barreira para ser vencida.
Lerei o artigo com mais atenção no futuro para que possa implementá-lo. Como o pessoal já comentou, seria bom se tivesse exemplos usando o iptables. Mas nada que nos impeça de correr atrás e nós mesmos aprendermos como as regras do iptables funcionam para adaptarmos o código para o mesmo. Apenas muda o código, a teoria continua a mesma, hehe.
Parabéns pelo artigo! Muito direto mas ao mesmo tempo com toda a informação que precisamos.
Um abraço!

[16] Comentário enviado por Gabriell em 18/12/2013 - 18:54h

Alguém me ajuda como conectar a rede wpa2 via terminal no Debian?

[17] Comentário enviado por wagnux em 18/12/2013 - 20:38h


[16] Comentário enviado por Gabriell em 18/12/2013 - 18:54h:

Alguém me ajuda como conectar a rede wpa2 via terminal no Debian?


Gabriel, procure fazer essa pergunta em http://vivaolinux.com.br/contribuir/perguntas/index.php. Este artigo não tem nada a ver com a tua dúvida, entende? Faça a tua pergunta no local correto que a comunidade com certeza vai te ajudar.

[18] Comentário enviado por nickdahigh em 11/03/2014 - 08:19h

Ola. Parabens pelo artigo. Só algumas perguntas.

1. Tentei bloquear a porta 443, mas vi que o Ultrasurf conecta em qualquer porta, de forma criptografada. É possível detectar uma conexão criptografada se a mesma não estiver na porta 443 ?
2. Esse comando para impedir navegação por IP, você sabe se existe equivalente no Mikrotik ou no Windows Server ?

Obrigado !!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts