Introdução
Antes de usar um scanner, você precisa distinguir um endereço, um nome, um caminho de rede e uma porta de serviço. São observações diferentes, e o sucesso em uma camada não prova sucesso em outra.
Este laboratório fornece um servidor DNS local e um serviço web dentro do ambiente Kali. Você inspecionará a rede, resolverá o nome de treinamento e verificará seu listener TCP sem fazer varreduras de um gateway nem depender de alvos públicos.
Inspecione endereços, rotas e a alcançabilidade do loopback
Nesta etapa, você inspecionará a rede do contêiner Kali e testará um caminho de conexão local limitado.
Entre no shell preparado e escolha o espaço de trabalho:
kali
cd /home/labex/project
Um endereço IP identifica um endpoint de rede. Uma interface é a conexão do sistema a uma rede; uma rota descreve para onde o tráfego destinado a um endereço deve ir. Contêineres têm sua própria visão de rede, portanto inspecione este ambiente em vez de presumir as configurações do host.
ip inspeciona a rede no Linux. A opção -brief solicita uma visão compacta dos endereços das interfaces:
ip -brief address
Procure lo, a interface de loopback, e 127.0.0.1. O tráfego de loopback permanece neste ambiente de rede. Outras interfaces e endereços podem variar. Um prefixo como /8 ou /16 descreve a faixa de rede do endereço; não é uma porta de serviço.
Inspecione as rotas:
ip route
Uma entrada default, se presente, é usada quando nenhuma rota mais específica corresponde. Você não precisa fazer varreduras do gateway nem alterar nenhuma rota.
ping envia sondagens de alcançabilidade. -c 3 limita o teste a três sondagens para que ele termine automaticamente:
ping -c 3 127.0.0.1
Você deve receber respostas e um resumo final dos pacotes. Os tempos exatos variam. Uma resposta ao ping mostra que essas sondagens receberam respostas; não estabelece que um serviço TCP específico esteja escutando.
Salve sua observação das interfaces usando o redirecionamento de saída que você já conhece:
ip -brief address > interfaces.txt
cat interfaces.txt
A visão salva deve incluir a interface de loopback e seu endereço.
Resolva um nome com o servidor DNS de treinamento
Nesta etapa, você distinguirá a resolução de nomes da conectividade de serviços usando um servidor DNS local.
DNS traduz nomes em registros. Um registro A contém um endereço IPv4. Este laboratório fornece um servidor DNS em 127.0.0.1 na porta 5353 e um nome local training-web.test; nenhum serviço DNS público é necessário.
dig consulta DNS. @127.0.0.1 escolhe o servidor, -p 5353 escolhe sua porta DNS não padrão, o argumento seguinte é o nome e A solicita um registro de endereço IPv4:
dig @127.0.0.1 -p 5353 training-web.test A
A seção de resposta deve mostrar o nome e o endereço 127.0.0.1. DNS também usa portas: a porta 5353 aqui pertence ao servidor DNS de treinamento, não ao serviço web nomeado por sua resposta.
A opção de exibição +short mostra apenas os dados da resposta. Salve esse resultado menor:
dig @127.0.0.1 -p 5353 +short training-web.test A > dns-answer.txt
cat dns-answer.txt
Saída esperada:
127.0.0.1
Uma consulta de nomes do sistema também pode usar arquivos locais em vez de consultar DNS diretamente. getent hosts solicita um nome ao mecanismo de consulta de hosts configurado no sistema:
getent hosts localhost
A saída associa localhost a um endereço de loopback, que pode ser o IPv6 ::1. Isso difere de consultar explicitamente o servidor DNS fornecido com dig. Uma resolução de nomes bem-sucedida fornece um endereço; você ainda precisa examinar se o serviço necessário está disponível nele.
Inspecione um listener e teste sua porta TCP
Nesta etapa, você relacionará um endereço a um protocolo de transporte e uma porta de serviço específicos.
Uma porta identifica um endpoint de transporte em um endereço. TCP estabelece conexões; UDP envia datagramas sem o mesmo handshake de conexão. O número da porta de um serviço por si só não prova qual aplicação ou vulnerabilidade está presente.
ss exibe informações de sockets. -l seleciona sockets em escuta, -t seleciona TCP e -n mantém endereços e números de portas numéricos:
ss -ltn
Encontre o endpoint local 127.0.0.1:8080. Ele pertence ao serviço web de treinamento fornecido. O endereço o restringe ao loopback do contêiner. Inspecione sockets UDP separadamente com -u em vez de -t:
ss -lun
O endpoint DNS de treinamento usa a porta 5353. TCP e UDP têm espaços de portas separados; o mesmo número pode ser usado pelos dois protocolos.
Salve apenas a linha do listener TCP do serviço de prática. O padrão inclui os dois-pontos antes da porta e um espaço final para distingui-la de um número maior:
ss -ltn | grep ':8080 ' > service-listener.txt
cat service-listener.txt
A linha deve identificar LISTEN e 127.0.0.1:8080; o espaçamento e os valores de fila podem variar.
Ncat pode testar uma conexão TCP sem enviar dados da aplicação. -v exibe o estado e -z solicita uma verificação de conexão em vez de uma sessão interativa de dados:
ncat -vz 127.0.0.1 8080
O estado deve informar uma conexão bem-sucedida. Isso prova que a porta TCP selecionada aceita uma conexão agora; ainda não valida uma resposta HTTP. Você inspecionará o próprio HTTP em um laboratório posterior.
Resumo
Você inspecionou interfaces e rotas, enviou um teste finito de alcançabilidade, consultou DNS local, inspecionou listeners TCP e UDP e testou uma conexão TCP. Distinguiu a resolução bem-sucedida e a alcançabilidade de rede do comportamento da aplicação.



