O Netcat é uma ferramenta de rede, disponível para sistemas operacionais Unix, Linux, Microsoft Windows e Macintosh que permite, através de comandos e com sintaxe muito sensível, abrir portas TCP/UDP e HOST.

Permite forçar conexões UDP/TCP (útil para realizar rastreamento de portas ou realizar transferências de arquivos bit a bit entre os equipamentos).

Opções do Netcat

-e comando – Executa o comando especificado usando como entrada (stdin) os dados recebidos pela rede e enviando os dados de saída (stdout e stderr) para a rede. Essa opção somente estará presente se o nc for compilado com a opção GAPING_SECURITY_HOLE, já que permite que usuários disponibilizem programas para qualquer um conectado a rede;
-i – Especifica o intervalo de tempo no qual as linhas de texto serão enviadas ou recebidas;
-l – Coloca no netcat em estado de escuta (listening);
-L – Coloca no netcat em estado de escuta (listening), reiniciando o netcat com a mesma linha de comando caso a conexão feche;
-n – Força o netcat a usar apenas endereços de IP numéricos, sem fazer consultas a servidores DNS;
-o filename – Usando para obter um log dos dados de entrada ou saída, em formato hexadecimal;
-p – Especifica a porta a ser usada, sujeito a disponibilidade e a restrições de privilégio;
-r – Faz as portas do portscan serem escolhidas aleatoriamente;
-s – Especifica o endereço IP da interface usada para enviar os pacotes. Pode ser usado para spoofing de IPs, bastando apenas configurar uma interface do tipo eth0:0 (usando o ifconfig) com o IP desejado;
-t – Permite usar o nc para criar sessões de telnet por script. Precisa estar compilado com a opção -DTELNET;
-u – Usar UDP ao invés de TCP;
-v – Controla o nível de mensagens mostradas na tela;
-w – Limita o tempo máximo para que uma conexão seja estabelecida;
-z – Para evitar o envio de dados através de uma conexão TCP, e limitar os dados de uma conexão UDP.