Pacotes de redefinição TCP forjados

2

Estou tentando entender melhor o debate sobre a neutralidade da rede. Alguns acusaram ISPs de enviar pacotes RST para finalizar hosts para bloquear o tráfego de BitTorrent. O que exatamente isso significa?

Eu tenho um entendimento básico de HTTP e TCP / IP (sou um programador), mas a administração do servidor é algo em que definitivamente não sou um especialista. Obrigado.

    
por user23390 19.10.2009 / 21:38

2 respostas

6

Existem vários sinalizadores em um pacote TCP (SYN, ACK, PSH, RST e FIN). Eles são normalmente usados como parte da configuração e eliminação de conexões TCP normais. Um dos sinalizadores (RST) é usado quando há um problema com a conexão e uma extremidade precisa anular anormalmente a conexão. Quando a outra extremidade recebe uma conexão RST, ela imediatamente interrompe a conexão. Isto é o que está acontecendo quando você recebe mensagens de erro "Conexão redefinida pelo par".

Isso significa que você pode fechar qualquer conexão TCP se puder inserir um pacote RST no fluxo TCP. Para fazer isso, você precisa ser capaz de interceptar um pacote válido ou adivinhar vários contadores usados para rastrear conexões TCP individuais.

    
por 19.10.2009 / 21:49
1

O protocolo TCP é controlado por uma máquina de estados finita implementada na máquina operacional pilha de rede do sistema. Sendo um programador, o conceito de um FSM deve ser pelo menos um pouco familiar.

Forjar um pacote TCP RST (ou seja, um datagrama IP com um endereço IP de origem falsificado exibido como proveniente do servidor remoto, contendo um segmento TCP com o conjunto de bits RST e os números SEQ / ACK apropriados) é algo que qualquer um ao longo da rota do cliente para o servidor pode fazer para que uma conexão TCP seja fechada pelo sistema operacional de recebimento. O cliente recebe o pacote e a máquina de estados finitos "redefine" a conexão, fechando-a e impedindo a transferência de dados.

O pacote forjado é indistinguível de um pacote TCP RST "real" vindo daquele host remoto. Sem usar um protocolo que forneça autenticação (IPSEC AH ou similar) não há nada que você possa fazer para evitar que qualquer parte intermediária crie tais pacotes falsificados.

Alguns ISPs (alegadamente?) forjam esses pacotes TCP RST para evitar a utilização "excessiva" de seus "canais" para a Internet por usuários de aplicativos como o Bittorrent. Eles usam uma variedade de hardware / software para realizar a "inspeção profunda de pacotes" (veja link para um exemplo de um fornecedor de tal "solução") para detectar tais fluxos de tráfego.

Há muita política em torno do debate sobre a "neutralidade da rede", muitas das quais vão muito além do escopo de uma discussão sobre a falha do servidor. No coração, eu acho, é apenas outra manifestação das batalhas Netheads versus Bellheads que foram furioso por anos.

    
por 19.10.2009 / 21:49