Bloqueando o UltraSurf e o WebMessenger do Hotmail com Proxy Transparente

itn

O UltraSurf é um pequeno utilitário capaz de burlar um proxy e permitir acesso a sites bloqueados, e que tem sido cada vez mais utilizado em bibliotecas, faculdades e escolas. O UltraSurf utiliza-se de diversos servidores para conexão feitas pela porta SSL 443.

[ Hits: 41.292 ]

Por: Irineu Teza Nunes em 10/09/2011


Introdução e Tutorial



Introdução

O UltraSurf é um pequeno utilitário capaz de burlar um proxy e permitir acesso a sites bloqueados, e que tem sido cada vez mais utilizado em bibliotecas, faculdades e escolas.

O UltraSurf utiliza-se de diversos servidores para conexão feitas pela porta SSL 443. Como é de se supor bastaria bloquear a porta 443 que o UltraSurf não mais se conectaria. Ai é que está o problema e a grande façanha do UltraSurf, essa porta 443 é utilizada para as conexões seguras como a de bancos, do Messenger e do próprio Orkut. Bloqueando essa porta você irá bloquear todo o acesso a esses sites.

Tutorial

O tutorial abaixo foi aplicado para a seguinte situação:

"Usuários podem ter acesso ao Messenger e sites de bancos e seguradoras todo o resto do tráfico pela porta 443 deve ser bloqueada incluindo nessa situação o UltraSurf. Alguns usuários tem acesso sem restrições a tudo".

A forma mais eficiente para bloquear o UltraSurf é o bloqueio de todo tráfico da porta 443 e liberação dessa porta apenas para URLs pré-determinadas. Isto porque o UltraSurf está constantemente atualizando sua lista de Ips para conexão e bloquear todos eles torna-se mais dispendioso do que bloquear tudo e liberar apenas o necessário. Passo 1:

Adicione a seguinte regra ao seu firewall (Obs.: Adicione essa regra antes de qualquer outra).

##############################
# BLOQUEIO DE PORTAS SSL 443
##############################

#Libera acesso aos bloqueados a urls especificas
#Bloqueia toda a requisição a porta 443
iptables -I FORWARD -p tcp --dport 443 -j DROP
#Bloqueia a nova porta utilizada pelo UltraSurf 10.05
iptables -I FORWARD -p tcp --dport 25101 -j DROP

#Define o local onde está o arquivo com a lista de URLs liberados para a porta 443
for URL in `grep -v "^#" /etc/squid/liberados_443`; do
#Libera o acesso a toda a rede para a lista de URLs definidas
iptables -I FORWARD -p tcp --dport 443 -d $URL -j ACCEPT
done

#Libera acesso total ao ssl 443
#PC-01
#Permite o acesso a porta 443 pelo ip em questão sem qualquer restrição
#adicione os endereços ips que você não pretende restringir o acesso ao UltraSurf.
iptables -I FORWARD -s 192.168.0.2 -p tcp --dport 443 -j ACCEPT

Obs.: Regra adaptada do post de Jorge Informática, disponível em: http://www.brazilfw.com.br/forum/viewtopic.php?f=2&t=68610&start=0

Passo 2:

Crie um arquivo liberados_443 e adicione todos os ips das URLs em que o acesso à porta 443 será permitido. No meu caso o arquivo encontra-se dentro de "/etc/squid", no entanto ele pode ser colocado em qualquer lugar para isso basta modificar a linha:

for URL in `grep -v "^#" /etc/squid/liberados_443`; do

Colocando a nova localização do arquivo.

Exemplo abaixo de um arquivo liberados_443:

#################################################
#ORKUT
64.233.160.0/19
64.233.163.0/24
209.85.128.0/17
74.125.0.0/16
72.14.192.0/18

#MSN
65.54.197.0/24
65.54.189.0/24
64.4.45.0/24
65.55.116.0/24
208.22.87.0/24
207.46.120.44/24

# HOTMAIL
65.54.204.0/24
65.54.165.0/24
184.50.165.186/24

#MSN EMBUTIDO NO HOTMAIL
184.50.168.0/24

#CENTRAL DE UPDATE WINDOWS
65.55.13.0/24

#########BANCOS################
#BANCO DO BRASIL
170.66.2.0/24
170.66.1.0/24

#CAIXA ECONOMICA
200.201.169.0/24
200.201.173.0/24

#ITAU
200.196.152.0/24

#BRADESCO
200.155.86.0/24

#BRADESCO FINANCIAMENTOS
200.155.80.0/24
####################################################

    Próxima página

Páginas do artigo
   1. Introdução e Tutorial
   2. Descobrindo IP, Bloqueio Messenger e Conclusão
Outros artigos deste autor

Reforçando a segurança das conexões HTTPS no Apache

Port Scan Attack Detector (PSAD) com iptables

Criando túneis com o VTUN

Leitura recomendada

Iptables em modo gráfico

Port Scan Attack Detector (PSAD) com iptables

Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).

Abrindo e fechando portas com o BlockOutTraffic

Firewall profissional

  
Comentários
[1] Comentário enviado por Tacioandrade em 11/09/2011 - 18:35h

Amigo, fiz o teste aqui em minha VM do bloqueio do chat do msn no hotmail, porem não funcionou. =/

O teste foi feito em uma maquina virtual rodando o BrazilFW e antes disto em minha maquina pessoal, porem nada. =/

[2] Comentário enviado por itn em 11/09/2011 - 21:17h

Olá Tacio muito obrigado pela sua contribuição.
Então como comentado no artigo a equipe do MSN estão constantemente mudando os endereços do Hotmail e do MSN.

Fiz uma atualização da lista do arquivo "liberados_443" que conseguiu bloquear o Web Messenger do MSN e disponibilizo abaixo:


Apague as linhas do
#MSN
#HOTMAIL
#MSN EMBUTIDO NO HOTMAIL

Pelas linhas abaixo:


#MSN
69.192.24.0/24

#Novo Hotmail 11-09-2011
65.54.186.0/24
65.54.204.0/24
65.54.165.0/24
216.246.75.0/24

#MSN Embutido no Hotmail 11-09-2011
173.222.141.0/24



O exemplo completo do arquivo já está disponível no meu blog em:
http://itnproducoes.blogspot.com




[3] Comentário enviado por diegopontes em 12/09/2011 - 11:30h

caso não queira fazer bloqueio do msn por ip é só fazer o bloqueio por url mesmo, bem mais prático..
só bloquear esse endereço abaixo.

gateway/gateway.dll

[4] Comentário enviado por rangelozi em 12/09/2011 - 16:38h

Na boa, é muito mais simples você bloquear a porta 443 e criar uma acl no squid para barrar navegação por IP e então...."NOSURF"

Abs

Ps: Todos os outros sites que utilizam HTTPS continuam funcionando normalmente.

[5] Comentário enviado por diegopontes em 12/09/2011 - 16:41h

Alguém conseguiu bloquear o proxcap? Caso sim, me informa como, pf.. :D

[6] Comentário enviado por itn em 12/09/2011 - 17:11h

"[4] Comentário enviado por rangelozi em 12/09/2011 - 16:38h:

Na boa, é muito mais simples você bloquear a porta 443 e criar uma acl no squid para barrar navegação por IP e então...."NOSURF"

Abs

Ps: Todos os outros sites que utilizam HTTPS continuam funcionando normalmente. "

Ola rangelozi, obrigado pela sua contribuição.
Também é uma solução, no entanto pelo que você falou teriamos que saber o IP de todas máquinas a serem bloqueadas certo? Além disso com essa solução seria obrigatório a utilização de um proxy.
Na solução proposta por mim você pode utilizar ou não um proxy que o efeito será o mesmo. Afinal o bloqueio já está partindo do próprio Iptables(Firewall).

Abraços.

[7] Comentário enviado por chcdc em 14/09/2011 - 10:51h

Otimo Artigo

[8] Comentário enviado por steniobeats em 25/11/2011 - 01:13h

iptables -A FORWARD -s 192.168.1.0/24 -d loginnet.passport.com -p tcp --dport 443 -j REJECT
iptables -A FORWARD -s 192.168.1.0/24 -d gateway.messenger.hotmail.com -p tcp --dport 443-j REJECT
iptables -A FORWARD -s 192.168.1.0/24 -d contacts.msn.com -p tcp --dport 443 -j REJECT
iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j REJECT

conseguir bloqueio do MSN em proxy transparente assim, deixando sites de banco livre.

[9] Comentário enviado por itn em 25/11/2011 - 08:31h

Olá steniobeats, recentemente a forma de autenticação de Web Messenger do hotmail sofreu alterações e sua regra é 100 % válida, ficando o tutorial limitado realmente ao bloqueio do Ultra Surf que como utiliza uma gama gigante de sites para tunelamento pela porta 443 (que vivem mudando) fica praticamente impossível impedir o acesso com bloqueio apenas dos endereços utilizados por ele.

Obrigado pelo comentário.

Abraços!


Contribuir com comentário