HTTP TUNNEL
HTTP TUNNEL

A técnica de encapsular conjuntos de dados
que trafegam em rede dentro de outro
conjunto de dados é denominada
tunelamento.
HTTP TUNNEL

Sem o encapsulamento, os primeiros dados
não poderiam ser conduzidos da mesma
forma e para um lugar como é possível com
o encapsulamento.
HTTP TUNNEL

A função do HTTPTunel é encapsular uma
conexão em HTTP para atravessar um proxy
HTTP restritivo.

Qualquer tipo de protocolo em HTTP pode
ser tunelado com HTTPTunel.
HTTP TUNNEL

Um túnel TCP pode ser descrito como uma
conexão realizada a partir de dentro e
através de uma outra conexão préestabelecida.
HTTP TUNNEL
Alguns motivos da utilização de tunelamento (pontos
fortes):




Conexão criptografada para proteção de dados;
Protocolo desbloqueado para realizar conexão;
Conexão direta a um destino bloqueado;
Conectar-se a uma máquina de rede interna como se
fosse de dentro para fora.
HTTP TUNNEL

O tunelamento pode ter formas e funções
distintas, bem como os aplicativos
trabalharem de maneiras e sob condições
diferentes.
HTTP TUNNEL

Dificuldades na criação de túneis (pontos
fracos):

Existe um alto nível de complexidade na
criação de túneis utilizando-se o Protocolo
HTTP, pois há maior dificuldade na
implementação.
HTTP TUNNEL

O HTTP 1.0 requer uma conexão TCP para
cada par de requisição e resposta. Isso faz
com que diversas conexões sejam
necessárias para a manutenção do túnel,
deixando o processo com pouca
performance.
HTTP TUNNEL

O HTTPTunnel é a forma mais conhecida
para implementação de túnel sobre HTTP,
disponível para diversas plataformas sob
licença GNU.
HTTP TUNNEL

O HTTPTunnel funciona de forma
semelhante ao PingTunnel, com a criação de
conexões TCP para o cliente e a partir do
servidor para o servidor original
HTTP TUNNEL

Exemplo:

Cliente:
htc -F 9999 proxy.httptunnel.com:80



Servidor:
hts -F login.domain.com:22 80
HTTP TUNNEL

As conexões HTTP tunnel utilizam a
capacidade do HTTP GET e métodos POST
para transportar uma quantidade indefinida
de dados em sua resposta e corpo da
mensagem respectivamente.
HTTP TUNNEL

Alguns proxies HTTP podem ocultar a
mensagem POST.
HTTP TUNNEL

Uma vez que o cliente envia a solicitação
POST com Content-length 32767, algumas
vezes o proxy HTTP não encaminhará
quaisquer dados enquanto certa quantidade
de dados estiver chegando.
HTTP TUNNEL

Depois que os sockets HTTP Tunnel foram
estabelecidos com sucesso, o cliente está
pronto para enviar comando, evento de
mensagens subscrive/unsubscrive e receber
notificação do evento via sockets tunnel.
HTTP TUNNEL

Um firewall que restringe os protocolos que
saem da rede em direção à Internet pode ser
driblado através de tunelamentos sobre os
protocolos autorizados a trafegar.
HTTP TUNNEL

Há algumas situações nas quais se procura
driblar restrições de um firewall.
HTTP TUNNEL

Por exemplo:

Invasor tentando aumentar seu nível de
acesso a um computador invadido;
Usuário da rede tentando utilizar serviços
não autorizados em outras redes;
Spyware tentando se comunicar com seu
criador para enviar informações roubadas.


HTTP TUNNEL

Há alguns desafios existentes na criação de
túneis sobre protocolos que não foram
projetados para este fim.
HTTP TUNNEL

Em uma comunicação comum, qualquer um
dos lados pode enviar pacotes IP a qualquer
momento
HTTP TUNNEL

O protocolo ou os campos de mensagem que
serão utilizados podem ter limites de
tamanho das informações enviadas.
HTTP TUNNEL

Alguns protocolos têm restrições quanto aos
dados que podem trafegar, como em casos
onde são permitidos apenas caracteres
ASCII aceitos para sistemas baseados na
RFC822.
HTTP TUNNEL

Não há uma solução trivial para o HTTP
TUNNEL problema de segurança
proveniente da possibilidade de criação de
túneis sobre protocolos autorizados.
HTTP TUNNEL

Alguns resultados que podem ser alcançados
com as seguintes estratégias de detecção:

Assinaturas de protocolos

Análise de conteúdo
HTTP TUNNEL

A implementação de IDS às estratégias
mencionadas não são a melhor opção, pois
estão sujeitas a um alto nível de falsos
positivos.
HTTP TUNNEL

Já o firewall tem a capacidade de bloquear
pacotes que por ventura sejam identificados
como túneis.
HTTP TUNNEL

Para minimizar as opções de tunelamento
disponíveis e evitar túneis, a melhor opção é
limitar ao máximo os protocolos que serão
permitidos ao configurar o firewall.
HTTP TUNNEL

Concluímos que é possível transmitir dados
na forma de tunelamento sobre protocolos
que não foram projetados para isso.

Adotar para isso uma política de segurança
de rede e controlando a execução de código
nas estações.
REFERÊNCIAS E
RECOMENDAÇÕES DE LEITURA
BARROS, Augusto Quadros Paes de. Tunelamentos não Convencionais
em TCP/IP. São Paulo: Instituto de Pesquisas Tecnológicas do Estado de
São Paulo. Disponível em: <http://www.paesdebarros.com.br/tunnel.pdf>
Acesso em: 14 Mar. 2009.
CARDOSO, Tomas Ribeiro. Tunelamento. Goiânia: CDT, 2007. Disponível
em:
<http://74.125.47.132/search?q=cache:Kv_tRN6cj5IJ:suporte.lbr.com.br/
cursos/cadastro/Cursos/Tunelamento.pdf+tunelamento+pdf&cd=10&hl=ptBR&ct =clnk&gl= br&lr=lang_pt> Acesso em: 23 abr. 2009.
LIU, David. UART_HTTP_Tunnel: Application Notes of Transparent HTTP
Tunnel. Taipei: Vivotek Inc, 2008. Disponível em:
<http://www.vivotek.com/downloadfiles/ support/faq/videoserver/
UART_HTTP_Tunnel.pdf> Acesso em: 04 mai 2009.
Download

Tunelamento