Explicação detalhada dos princípios técnicos do Http e Dns seqüestro de poluição e investigação e prevenção

O responsável pela construção do sistema da Internet e a garantia da qualidade encontrarão um seqüestro de problemas , o chamado sequestro é guiar a solicitação ao agente do servidor designado por meios técnicos ; em geral, é passar a mão, passar o artigo feito à mão grande, você pode monitorar as informações, cache de conteúdo pode mexer com o conteúdo , até mesmo para obter direitos de aterragem de usuários, se segundas intenções pode fazer um monte de coisas ilegais, que também tem um aplicativo proxy legal chamado acelerado CDN, CDN pode existir Melhore a experiência do usuário e a velocidade de acesso ao site, mas muitas empresas não são realmente adequadas para proxy, portanto, um seqüestro severo do proxy pode causar a indisponibilidade direta do sistema ou várias anormalidades, para que os provedores de serviços da Internet sejam muito tabus para o sequestro, uma vez que Ao encontrar impotência básica, só consigo pensar em vários planos para evitá-lo tecnicamente.

Então, por que muitos fabricantes fazem isso independentemente do risco? Uma palavra "lucro", fala brevemente sobre o método de ganhar dinheiro após o seqüestro. Existem duas maneiras mais comuns. Uma é limpar o tráfego e o cache para obter taxas de largura de banda . A outra é violar o conteúdo e os anúncios . A outra é ganhar dinheiro obtendo informações de permissão do usuário. Obviamente ilegal, por isso é raro. O tráfego de limpeza geralmente se refere ao armazenamento de um recurso estático, como vídeos e fotos, em um servidor de exportação designado na rede, para reduzir a largura de banda de saída e fazer a diferença. Alguns operadores grandes, médios e pequenos estão fazendo isso. Isso era originalmente transparente para os usuários, mas por causa de Muitos fabricantes de cache não são técnicos, e aqueles que não devem ser seqüestrados também são seqüestrados, resultando em muitas solicitações que não podem ser respondidas após o sequestro, resultando em APP do usuário ou em várias exceções de uso.Alguns navegadores estão realmente fazendo o sequestro de cache sob a bandeira da aceleração na nuvem; A adição de anúncios geralmente significa que o conteúdo foi adulterado após o seqüestro e o código do anúncio foi adicionado.Se for uma página html simples, é possível obter a configuração do nginx.A adição de anúncios dessa maneira é mais ilegal e até ilegal. Muitas das coisas seqüestradas agora estão roubando. Obviamente, não nego que, para as operadoras, ainda haja um objetivo de acelerar os usuários. Afinal, muitos recursos estão no Unicom e nas telecomunicações. Os usuários das redes de outras operadoras devem atravessar a rede toda vez que solicitarem. A velocidade é muito lenta. Estar perdido.

Existem várias maneiras de seqüestrar e orientar, mas existem apenas cinco categorias: 1: atribuir diretamente aos usuários a criação de um endereço LocalDns privado na rede; a resolução de nomes de domínio não vai para o domínio raiz e a personalização; 2: orientar nomes de domínio específicos para Análise de DNS interna auto-construída, também não usa o domínio raiz para personalizar, 3 é inicialização de cname, geralmente como o método de acesso do cdn, 4 é um proxy transparente, o dispositivo está conectado à transmissão de rede como um salto do roteador em série, 5 está seqüestrando a poluição , E é dividido em seqüestro de HTTP e seqüestro de DNS (poluição). Em operação, o sequestro e a poluição geralmente usam um dispositivo espectroscópico para copiar uma cópia do tráfego no link de entrada. O tráfego copiado é analisado usando um dispositivo de análise de tráfego, que atenderá às condições. O nome ou a solicitação do domínio é processada para atingir o objetivo de redirecionar o tráfego.

Os modos 1, 2 e 3 são basicamente configurados e guiados da maneira normal, sem explicação técnica, com foco em 4, 5.

1. Seqüestro de DNS (poluição)

O DNS geralmente usa a porta udp53. Uma das características do udp é que não há mecanismo de verificação, o que é muito fácil de disfarçar. Quando o sistema envia uma solicitação de consulta DNS, o sistema aceita o primeiro resultado retornado como uso e os subsequentes serão usados. Abandonar e seqüestrar a poluição é usar esse recurso do udp.

Em operação, o dispositivo seqüestrado é colocado na rede (dentro da operadora), mais próximo dos internautas e, ao mesmo tempo, ouvindo a solicitação de consulta DNS do tráfego espectroscópico, depois de analisar o nome do domínio que atende aos requisitos (geralmente uma lista de permissões predefinida), Disfarce preventivamente um resultado da consulta DNS e responda ao usuário.Por causa do atraso ou da qualidade do link, a rede é muito mais rápida e muito mais rápida que a rede, para que o usuário receba definitivamente a resposta DNS do dispositivo invadido primeiro. Os resultados das consultas subseqüentes da Internet são descartados, para que o objetivo do seqüestro seja alcançado.Neste momento, a solicitação é guiada com sucesso para o dispositivo designado.

Características: A característica típica da poluição do DNS é que o endereço IP resolvido não é o endereço fornecido pelo sistema da Internet.

2. Seqüestro de solicitação de HTTP

O seqüestro de solicitação HTTP é realizado na fase de solicitação http.Este método não altera a análise de DNS, mas redireciona a solicitação para o dispositivo designado por meio de um redirecionamento 302/301, porque a eficiência é menor que o DNS e há problemas técnicos entre domínios. Geralmente é usado no download de arquivos que não são sensíveis ao atraso.Tecnicamente, ele também usa a diferença de atraso entre a rede e a rede para criar um artigo.Vejamos a figura para explicar esse processo em detalhes.

222.png

De acordo com a figura acima, vamos olhar para todo o processo. Primeiro , o cliente e a estação de origem estabelecem um link para enviar uma solicitação http. Ao mesmo tempo, o dispositivo de análise de tráfego analisa essa solicitação e lê o cabeçalho da solicitação. O segundo passo é ler a solicitação http e Depois de julgar que as regras de seqüestro foram atendidas, o cliente fingente envia uma marca de redefinição para a estação de origem, que desconecta a interação entre o cliente e a estação de origem.O terceiro passo é fingir que a estação original enviou um redirecionamento 302 para o cliente, guiando com êxito a solicitação para o dispositivo designado A quarta etapa é o acesso do cliente ao servidor proxy de seqüestro.

Como a URL muda entre domínios durante o redirecionamento, é necessário definir um conjunto de regras aqui.Por exemplo, por exemplo, o cliente deseja fazer o download de www.aaa.com/123.mp4 e o dispositivo de cache especificado é 1.1.1.1. Após ser invadido, ele enviará um redirecionamento 302 do http://1.1.1.1/www.aaa.com/123.mp4 para o cliente, e o cliente desmontará o proxy após receber esse URL.

Recursos: o recurso típico é o redirecionamento.Use curl para ver se a solicitação é redirecionada.

3. proxy transparente

O proxy transparente é conectar o dispositivo de proxy como um gateway intermediário ao link. Como um gateway, na verdade, o dispositivo de proxy também precisa habilitar o roteamento e o encaminhamento, além de assumir o papel de roteador. Supondo que o dispositivo de proxy seja um cache, muitas empresas e instituições de grande porte para economizar tráfego, Instalarei esse dispositivo em sua saída. Por exemplo, originalmente preciso comprar duas larguras de banda G. Depois de criar um proxy transparente, preciso comprar apenas 1,5 g. Não há nada para o usuário operar, por isso é chamado de proxy transparente. E mais difícil de analisar.

透明代理也有两种方式,都是基于iptable,一种是基于端口转发,将目的地址是80的请求,转发到本地启用的比如说8080的cache应用上,由cache应用处理后为客户提供服务,这种方式的弊端是有可能影响一些服务,因为80端口过来不一定全是http请求。另外一种是采用tcp旁路监听代理的方式tproxy,此种方式是非常好的,配置iptable的mangle表的PREROUTING链,对tcp的socket的连接打上mark标记,然后新建路由表让打过标记的tcp通过,监听目的端口是80的tcp通过tproxy代理至8080的cache应用上,由cache应用处理后为客户提供服务。

操作上,服务器要开启路由转发、开启iptable,要安装代理软件,然后进行相应的配置,当然在高可用性上要做到对路由的心跳,一旦代理服务器故障,直接跳过代理服务器到下一跳,保证业务的持续性。

特征:这种方式基本上无法排查,从外部很难找到证据。

4、排查和预防

1)排查

排查的目的是找到证据,说明请求被劫持代理了,常用的方式如下:

  • 【dns篡改】在问题网络环境dig域名查找A记录,对比是否是互联网系统提供的ip地址,如果不是说明Dns解析被篡改了,具体是哪种方式改的,需要继续排查;

  • 【dns篡改】Dns劫持是基于udp的特性来实现的,所以不使用udp测试就可以绕过劫持,公共的dns服务都是支持tcp的,所以可以用tcp的方式进行验证,具体命令是 dig  +tcp ,两个结果做对比;

  • 【dns篡改】如果分析后确定解析被篡改了,dig里面有个trace的参数,可以详细查询到dns的解析过程,帮助我们分析是哪个dns篡改了我们的解析,具体命令是 dig +trace ,很好用;

  • 【http劫持】这个在排查很简单,只要在问题网络环境里curl -I看头信息是否被重定向了就可以,如果被重定向那就是被劫了;

  • [Proxy transparente] Observe que a análise e o URL estão bons, mas é anormal em um determinado ambiente de rede, provavelmente por esse motivo, a tecnologia de proxy do fabricante não é muito difícil e não pode processar todas as solicitações normalmente Compare as informações no ambiente normal de várias maneiras, como as informações de cabeçalho, e compare as informações de campo no cabeçalho com a curvatura -I no problema e no ambiente normal.Se elas forem inconsistentes, devem ter sido adulteradas em um link do meio;

  • [Recomendação da ferramenta] Existem algumas ferramentas on-line que podem nos ajudar a obter as informações do usuário. Depois de encontrarmos os usuários do Xiaobai, podemos usá-las diretamente. Recomendamos Tencent Huatuo e Ali Kunlun.

2) Prevenção

O motivo da prevenção é que é difícil erradicar e só pode ser evitado por meios técnicos.Alguns métodos de prevenção são os seguintes:

  • Aplicativos do lado do cliente podem usar httpdns , o que pode impedir o seqüestro até certo ponto, mas para serviços https que envolvem certificados de domínio, é necessário encontrar soluções;

  • Um nome de domínio principal é usado o máximo possível nos negócios da grande fábrica.O objetivo do seqüestro é obter lucros sem afetar o uso das funções do usuário.Os principais usuários de domínio atendidos pela grande fábrica são grandes.

  • A maneira mais lucrativa é armazenar em cache ou adulterar o recurso após o seqüestro. Se não puder ser armazenado em cache ou adulterado, não há significado de seqüestro. Portanto, a empresa deve usar certificados https o máximo possível . Não vai gastar dinheiro para seqüestrar https https.


Acho que você gosta

Origin blog.51cto.com/benpaozhe/2488754
Recomendado
Clasificación