Programa cliente e servidor em execução no mesmo computador com Windows 7. Posso restringir o acesso ao servidor por meio do gerenciamento de portas?

0

Estou executando o Windows 7 - 64 bits.
Eu tenho um programa que funciona no modo cliente-servidor , isto é: há, de fato, dois programas (um cliente e um servidor) que são executados no mesmo Windows computador.
O cliente estabelece comunicação com o servidor através da porta TCP 7070.

Mas há um problema: o programa do servidor é executado no modo elevado e o programa cliente envia comandos para que ele seja executado. Assim, qualquer pessoa capaz de executar o programa cliente poderia executar programas admin (uma grande falha de segurança em alguns casos), enviando-os ao servidor.

O programa do servidor escuta, como dito, na porta 7070 TCP :

C:\>netstat -ano | find "7070" /i
  TCP    127.0.0.1:7070         0.0.0.0:0              LISTENING       9804

Ele só escuta conexões da máquina local , então a linha acima diz 127.0.0.1:7070 em vez de 0.0.0.0:7070 .

Existe alguma maneira de permitir apenas que determinados usuários ou grupos se conectem a ele? Não sei se isso é um problema de firewall, porque não há, estritamente, tráfego de rede em toda a minha LAN.

NOTA: Para alguém interessado, este é o programa exato. Estou desenvolvendo várias soluções alternativas para essa falha de segurança (que possivelmente postarei no fórum do StackOverFlow quando terminar), mas nenhuma delas funciona com a questão da porta de rede.

    
por Sopalajo de Arrierez 01.04.2014 / 23:34

1 resposta

1

Resposta curta: Não.

Resposta mais longa: parece que você está perguntando sobre como restringir quem pode se conectar à própria porta TCP, e isso está bem abaixo do nível em que você tem conceitos como "usuários", "autenticação" e "autorização" - todos as coisas que você precisa para conseguir o que você está pedindo. Neste nível você tem apenas computadores e redes.

Se o seu aplicativo tiver algum tipo de mecanismo de autenticação, esse é o lugar para esse tipo de coisa.

O que você pode fazer neste nível é limitar os endereços IP ou intervalos de IP que podem se conectar a essa porta através do seu firewall. Isso pode atingir o mesmo objetivo final, mas não se baseia em "usuários" ou "grupos", mas sim em "onde" eles estão se conectando.

Como alternativa, você pode configurar uma VPN que permita que somente usuários autorizados se conectem a ela e permitir que apenas os usuários da VPN se conectem ao seu programa. Se essa é a rota que você deseja seguir, é necessário usar alguns guias de configuração no Google, pois "Como configurar uma VPN" está além do escopo de um site Q & A simples como este.

    
por 02.04.2014 / 00:49