Como as empresas de telefonia podem detectar o compartilhamento (incluindo ponto de acesso Wi-Fi)

25

As operadoras de rede móvel (também: empresas de telefonia, telecomunicações, provedores) às vezes oferecem pacotes de dados de baixo custo que são utilizáveis ​​apenas no telefone. Ou assim, eles dizem.

Como eles podem distinguir entre um usuário navegando na Web com um navegador em seu telefone Android e um usuário usando um navegador em um laptop conectado a um telefone Android?

No início de 2012, eu estava em Paris e estava usando um pacote de dados móveis Orange com um Nokia E51 (Symbian S60). Na verdade, eu só podia acessar a Internet usando o navegador do telefone, e não do meu laptop conectado ao telefone. Agora, tenho um telefone Android 2.3 e estou pensando em assinar um pacote de dados semelhante na Espanha (operador Más Móvil).

feklee
fonte
3
Isso pode ser feito com deep packet inspection. Você pode lutar com TOR, túneis e VPNs cercados por Stacheldraht.
ott--

Respostas:

30

Como eles detectam que alguém está amarrando um dispositivo não é algo sobre o qual os provedores de rede desejam conversar, pela razão óbvia de que quanto mais os consumidores sabem como isso está sendo detectado, mais fácil é encontrar maneiras de ocultar fato de que estão fazendo isso e evite os custos adicionais associados (1) . No entanto, existem certas técnicas conhecidas que revelam o fato de você estar vinculando no momento, se o seu provedor de serviços estiver executando a ferramenta certa para verificar esses indicadores:

O seu telefone pergunta à sua rede se o compartilhamento é permitido

O primeiro e mais fácil método é que alguns telefones consultem a rede para verificar se o contrato atual permite o compartilhamento e, em seguida, desabilitem totalmente as opções de compartilhamento no dispositivo do software. Isso geralmente acontece apenas se você estiver executando uma versão do SO que foi personalizada pelo seu provedor, exemplo 1 exemplo 2 .

O telefone informa à sua rede que você está amarrando

Também há rumores de que alguns telefones têm um segundo conjunto de detalhes de APN salvos pela rede telefônica; quando você habilita o compartilhamento, eles passam a usar esse segundo APN para todo o tráfego vinculado, enquanto usam o APN normal para o tráfego originado no telefone. No entanto, não encontrei nenhuma evidência concreta disso, além de pessoas que encontram APNs estranhos e se perguntam para que servem (lembre-se de que um telefone desbloqueado comprado por contrato pode ter centenas ou milhares de APNs armazenados nele, prontos para serem usados. usar em qualquer rede do país em que o eventual proprietário decidir usá-la).

Inspecionando os pacotes de rede quanto ao seu TTL (tempo de vida)

Todo pacote de rede que viaja através de uma rede TCP / IP , como a Internet, possui um TTL (Time-to-Live ) incorporado , de modo que, caso haja um problema com o pacote atingindo seu destino, isso o interromperá. viajando pela rede para sempre entupir tudo.

A maneira como isso funciona é que o pacote começa com um número TTL (por exemplo, 128) definido quando sai do dispositivo de envio (seu telefone ou laptop) e depois toda vez que o pacote viaja por um roteador de qualquer tipo (como o seu roteador de banda larga doméstico ou um roteador no seu ISP ou companhia telefônica) que subtraia um do TTL (que diminuiria o TTL para 127 neste exemplo), o próximo roteador pelo qual ele viaja diminui o TTL novamente e, portanto, Se o TTL chegar a zero, o roteador descarta o pacote e não o transmite novamente.

Quando o telefone está conectado, ele age como um roteador. Assim, à medida que o pacote passa do laptop conectado pelo telefone e para a rede telefônica, o telefone subtrai "1" do TTL para mostrar que o pacote passou pelo primeiro roteador . As redes telefônicas sabem quais são os TTLs esperados de dispositivos comuns (por exemplo, pacotes de um iPhone sempre iniciam em um TTL de 64) e, portanto, podem detectar quando são um a menos (ou totalmente diferente) do que esperavam.

Inspeção de endereço MAC

Os dispositivos em uma rede TCP / IP, como a Internet, todos têm um ID MAC exclusivo definido em suas interfaces de rede. É composto por duas metades, uma metade identificando o fabricante da interface e a outra metade sendo um identificador exclusivo atribuído pelo fabricante (como um número de série). Todo pacote de rede enviado será "carimbado" com o endereço MAC da porta de rede do dispositivo de origem. O endereço MAC da placa wifi do seu laptop terá um fabricante e código serial muito diferentes do endereço MAC da interface 3G do seu telefone.

Impressão digital da pilha TCP / IP

Sistemas operacionais de computadores diferentes (por exemplo, Android, iOS, Windows, Mac OSX, Linux etc.) configuram suas pilhas TCP / IP com diferentes valores e configurações padrão (por exemplo, Tamanho inicial do pacote, TTL inicial, Tamanho da janela ...). A combinação desses valores pode fornecer uma "impressão digital" que pode ser usada para identificar qual sistema operacional está sendo executado no dispositivo de origem. Um efeito colateral disso pode significar que, se você estiver usando um sistema operacional incomum ou semelhante ao do seu telefone no outro dispositivo, seu tethering poderá não ser detectado .

Olhando para o IP / URL de destino

Você pode aprender muito com o que um dispositivo se comunica regularmente.

Por exemplo, hoje em dia, muitos sistemas operacionais realizam o Captive Portal Detection quando se conectam a uma rede Wi-Fi (como a conexão de conexão sem fio), eles fazem isso tentando se conectar a um servidor Web conhecido na Internet e verificando se eles obtenha a resposta que eles estão esperando. Se a resposta esperada não for recebida, é provável que a conexão wifi em que você esteja seja um "portal cativo" e precise que você faça login ou pague para se conectar a ele. Como os sistemas operacionais da Microsoft (como Windows Vista e Windows 7 verificam com um servidor da Microsoft por padrão e outros sistemas operacionais como Android, MacOS e outros) todos se conectam aos servidores da empresa mãe para fazer essas verificações, ele pode ser usado como uma boa indicação do funcionamento sistema logo após a conexão inicial.

Além disso, se um dispositivo entrar em contato regularmente com os servidores Windows Update, é muito provável que seja um PC ou laptop com Windows, enquanto que, se verificar regularmente com os servidores de atualização Android do Google, provavelmente será um telefone. Ou se eles perceberem que você está se conectando à Apple App Store, mas o IMEI do dispositivo em que seu cartão SIM está indica que não é um dispositivo Apple, talvez você esteja conectando um iPad a um telefone Android?

Sistemas mais sofisticados podem analisar toda uma gama de dados com quem você está se comunicando (por exemplo, você está se conectando aos servidores de API do aplicativo do Facebook com maior probabilidade de um telefone ou aos servidores da Web do Facebook com maior probabilidade de um PC) e adicione uma carga completa desses indicadores para criar uma impressão digital que indica que tipo de dispositivo você provavelmente está usando. Algumas dessas impressões digitais podem ser detectadas quando novos tipos de dispositivos e serviços são lançados, por exemplo, há relatos de que logo após a saída dos tablets com 3G embutido, alguns proprietários destes na rede da AT&T receberam e-mails avisando que eles estavam amarrando quando não estavam, pois a impressão digital desse novo estilo de dispositivo não parecia um telefone típico.


(1) Obviamente, antes de tentar qualquer método para ignorar a detecção de tethering, lembre-se de verificar seu contrato telefônico e as políticas da empresa de telefonia sobre tethering. Eles podem ter cláusulas de penalidade enterradas em seu contrato, Política de Uso Justo ou Política de Uso Aceitável para pessoas que tentam ignorar suas restrições e limites.

GAThrawn
fonte
11
Resposta incrível! Também entrei em contato com a Más Móvil novamente e, desta vez, o representante de suporte ao cliente disse que todas as tarifas e opções podem ser usadas com o compartilhamento. Portanto, reservei uma oferta muito boa e, sim, a conexão com o meu telefone Android 2.3 (via USB) funciona sem problemas. Talvez da próxima vez que estiver na França, tente brincar com o TTL, para ver se isso me permite contornar a Orange.
feklee
5
obrigado pela resposta muito experiente e perspicaz. Eu só quero me opor à seção de inspeção MAC. se você estiver usando o telefone como roteador (como para conectar sua conexão à Internet externa), os endereços MAC dos seus clientes não serão transmitidos ao provedor, conforme a definição de roteamento IP. eles são substituídos pelo MAC do telefone, o que o operador espera.
Eu suspeito que é isso que está acontecendo com o meu celular. Desde que eu "atualizei" para o tethering 5.1 com o tmo não funciona. Mesmo quando eu uso https (que mascara o agente do usuário, como é que eles costumavam fazer isso). Como posso saber se meu telefone está em conflito com meu provedor?
Christian Bongiorno
6
Uma observação sobre o seu ponto de endereço MAC: O tethering é apenas NAT (pode ser assim tão simples). Como tal, um mapeamento interno (ip: port) <-> externo (ip: port) deve ser gerenciado pelo dispositivo NAT, mas, além disso, a carga útil do IP real é a única coisa necessária. De fato, se você identificasse de alguma forma na sua interface da Internet pelos dispositivos conectados MAC, ele nunca seria roteado. Não sabe como / por que os dispositivos internos MAC podem / deveriam / deveriam ser expostos.
Christian Bongiorno
Eu tenho um plano familiar com amarras. Retirar o cartão SIM do meu iPad (que tem tethering) e colocá-lo em um HTC enraizado permitiu um tethering muito bem. No entanto, o estoque android diz que não tenho o compartilhamento no meu plano. Existe uma maneira não raiz de contornar isso?
Tirou
5

Na realidade, os provedores de Internet de rede móvel usam predominantemente a inspeção profunda de pacotes com impressões digitais de URI para detectar o compartilhamento. É o único método possível de usar para operações em larga escala. Eles podem usar sites conhecidos, por exemplo, o servidor de atualização do Windows, para detectar que é um dispositivo que não é telefone que está acessando. Ou, para HTTP, leia o agente do usuário do navegador da web para detectar se o navegador é para uma plataforma que não seja por telefone.

Dito isto, esses métodos têm algumas limitações significativas.

  • Deslocamento de tempo do início do uso até a detecção pode levar minutos
  • A detecção pode ser neutralizada usando a criptografia do usuário final
  • O uso de todas as técnicas possíveis de impressão digital geralmente resulta em disparos de falsos positivos

Portanto, a realidade é que a detecção de amarrar é um ato de equilíbrio da perspectiva do operador. Geralmente, eles implementam apenas o suficiente para bloquear usuários regulares e não geeks (que constituem a maioria desperdiçada de usuários móveis). A implantação de uma detecção mais rígida para bloquear usuários experientes em tecnologia normalmente não vale o esforço e pode sair pela culatra ao gerar muitos eventos falso-positivos. Contanto que sejam pagos pelos dados usados, eles terão uma aparência diferente.

Eles concentram seus esforços em hackers e bloqueiam o vazamento de receita devido a explorações de rede.

Mr Mega Byte
fonte
2

O método mais simples é a inspeção TTL. Se você encaminhar sua conexão para o segundo dispositivo (via hotspot wifi móvel ou de qualquer outra forma possível), os roteadores da companhia telefônica perceberão que alguns valores TTL são diferentes dos outros quando os pacotes passam por eles. Como existem tabelas de valores TTL iniciais esperados disponíveis para muitos dispositivos (seus sistemas operacionais, mais especificamente), a companhia telefônica notará imediatamente que algo está errado, pois pode facilmente calcular "a que distância" está a fonte do pacote. NÃO requer inspeção profunda de pacotes, pois os valores TTL estão disponíveis para todos verem, em qualquer tipo de pacote IP, e são MODIFICADOS pelos roteadores (diminuídos em 1 a cada passagem) à medida que o pacote é passado para o destino. A solução alternativa é, portanto, bastante simples.

xmp125a
fonte
Você poderia vincular algumas fontes? Entre, +1 para uma resposta pesquisada.
Tamoghna Chowdhury