Questão segurança de portas efêmeras de clientes e possibilidade de rotas IP desimiliares entre o cliente e o servidor


Estou entendendo que a porta efêmera em um par de soquetes é um número de porta aleatório que o cliente escolhe para que o servidor responda de volta. Em um caso em que a comunicação ocorre em uma rede local e o cliente não tem firewall, é possível que haja outro processo na rede local que use a porta efêmera como um ponto de ataque aberto enquanto uma conexão é aberta com um servidor?

No caso em que o cliente e o servidor não estão na mesma sub-rede, é possível que o envio de dados de volta para a porta efêmera seja feito por uma rota diferente da recebida no servidor? Existem regras no protocolo da Internet que exigem especificamente que a mesma rota seja usada para comunicação em ambas as direções?

As respostas às minhas perguntas mudarão se o TCP ou o UDP forem usados?


0


origem




Respostas:


A porta efêmera não é garantida como aleatória per se. Eles podem ser alocados sequencialmente.

Sim, outro dispositivo na rede local poderia tentar enviar pacotes para essa porta efêmera aberta, possivelmente até falsificando o endereço IP de origem do servidor com o qual o cliente estava falando. Isto é feito mais facilmente com o UDP do que com o TCP, porque com o TCP você precisaria acertar os números Sequence e Ack. Mas ainda é factível com o TCP.

Sim, os pacotes no mesmo fluxo TCP ou UDP podem ter rotas diferentes. Dessa forma, os roteadores podem ser inteligentes quanto a links e links congestionados que caíram ou surgiram.


1



Acordado. Em meu próprio (breve) teste de alocação de porta de origem, uma chamada bind () cria um soquete usando portas de origem incrementais (aumentando em etapas de dois), enquanto connect () escolhe aleatoriamente uma porta disponível do intervalo efêmero. - MarkoPolo
Então, se um pacote de resposta puder tomar rotas diferentes, eu acho que ele deve ser retornado do mesmo endereço IP? Só queria saber se eu poderia ter um servidor com duas interfaces ethernet, uma conectada a um IP estático lento, mas mais caro, e a segunda conectada a um endereço IP rápido, mais barato, mas às vezes dinâmico, permitindo que a solicitação do cliente viesse Endereço IP, mas, em seguida, responda de volta no endereço IP dinâmico? - user1748155