Comando NC com os 10 melhores exemplos

Comando NC com os 10 melhores exemplos
O comando NC ou NetCat é uma ferramenta de rede que permite que os usuários transfiram arquivos entre dispositivos, portas de digitalização e diagnosticar problemas. Este tutorial explica 10 usos de NC para digitalizar portas, transferir arquivos e agarrar banner.

Instalando o NetCat no Linux

Para começar, nas distribuições Linux, com sede no Debian, execute o comando abaixo para instalar o netcat.

sudo apt install netcat

Nas distribuições Linux baseadas em Red Hat, você pode instalar o NetCat executando o comando abaixo.

yum install -y nc

Examinando uma porta usando NC

NetCat ou NC podem ser usados ​​para digitalizar portas. A sintaxe para digitalizar uma única porta é a seguinte.

nc -zvn

Como você pode ver, a sintaxe chama NetCat com as opções escolhidas (explicadas abaixo) seguidas pelo endereço IP de destino e pela porta de destino, conforme mostrado no seguinte exemplo prático.

nc -zvn 172.67.209.252 80

Onde:

  • -z: Esta opção é usada para digitalizar sem estabelecer uma conexão.
  • -v: O verbosidade Opção imprime o resultado da varredura.
  • -n: Esta opção é usada para pular a pesquisa e avisos do DNS.

Examinando várias portas com NC

Você também pode usar o NetCat/NC para digitalizar várias portas. A sintaxe é a mesma que anteriormente mostrada; Basta adicionar um espaço e as portas que você deseja digitalizar, como mostrado no exemplo abaixo, no qual as portas 80, 22 e 53 são digitalizadas.

nc -zvn 172.67.209.252 80 22 53

Porta de varredura em gamas com netcat

Você pode digitalizar intervalos de porta implementando um hífen, como mostrado no exemplo a seguir, no qual todas as portas de 80 a 89 (incluídas) são digitalizadas.

nc -zvn 172.67.209.252 80-89

Banner agarrando com netcat

Banner pegando é uma técnica usada para aprender a versão de software em execução em um alvo. Os administradores do sistema o usam para manter um inventário de software no dispositivo. Os hackers também o usam como parte do processo de pegada.

Banner pegando analisa as respostas da rede para tentar adivinhar ou aprender o software por trás do nosso alvo. O exemplo a seguir mostra como o uso de NC ou NetCat sem opções (ou usando o -v opção) leva a informações na versão do servidor FTP de destino.

NC 198.54.116.197 21

Como você pode ver, o netcat detectou puro-ftpd no alvo. A saída também nos informa o Login Anonymous é proibido, e o servidor suporta IPv6.

NC 172.67.209.252 80

Transferindo arquivos usando NC (diretório atual)

NetCat (NC) também é útil para transferir arquivos entre dispositivos. No exemplo seguinte, um arquivo chamado Linuxhint.txt será transferido de um dispositivo para outro.

O dispositivo em que o arquivo será enviado no dispositivo receptor, execute o comando abaixo, onde a opção -l diz ao NetCat para permanecer no modo de escuta aguardando conexões de entrada. A opção -p define o número da porta e > [Nome do arquivo] Especifica o arquivo a ser recebido. Execute o comando abaixo no dispositivo receptor, substituindo Linuxhint.TXT com o nome do arquivo que você deseja transferir.

nc -l -p 9899> Linuxhint.TXT

O computador do qual o arquivo está sendo enviado no dispositivo de envio, execute o comando abaixo onde o -c Opção Especifica o tempo limite (2 segundos neste caso). No dispositivo de envio, a porta não requer a opção -p. O < [FileName] Especifica o arquivo a ser enviado.

NC -W 2 192.168.1.102 9899 < linuxhint.txt

Como você pode ver no dispositivo de destino, o arquivo foi transferido corretamente.

ls

Enviando arquivos armazenados em um diretório diferente usando NC

O exemplo anterior mostra como enviar um arquivo armazenado no diretório atual. Se o remetente quiser enviar um arquivo que não seja armazenado no diretório atual, ele poderá especificar um caminho para enviar.

No dispositivo receptor, execute o mesmo comando do exemplo anterior sem alterações, como mostrado abaixo.

nc -l 9899> linuxhint.TXT

A única alteração que aplicaremos no dispositivo de envio é a inclusão do diretório onde o arquivo é armazenado. Para este exemplo, movi o Linuxhint.TXT para o Linuxhintdir diretório. Como você pode ver, todo o caminho para o arquivo é especificado como < linuxhintdir/linuxhint.txt, where Linuxhintdir é um subdiretório do diretório atual.

NC -W 2 192.168.1.102 9899 < linuxhintdir/linuxhint.txt

O arquivo que você deseja enviar está dentro do seu diretório inicial e seu diretório atual é diferente; O comando executado no dispositivo remetente seria o seguinte.

NC -W 2 192.168.1.102 9899 < /home/linuxhint/linuxhint2.txt

Recebendo arquivos e armazenando -os em um diretório diferente usando NC

Ao contrário do cenário anterior, o receptor pode não querer armazenar o arquivo transferido no diretório atual. Ao ativar o modo de escuta para conexões de entrada no computador receptor, você pode definir o diretório para armazenar arquivos. A sintaxe é a mesma que ao enviar arquivos de um subdiretório; Basta especificar o subdiretório e o nome do arquivo, como mostrado abaixo.

nc -l -p 8999> subdirectory/linuxhint.TXT

No segundo computador, use os mesmos comandos explicados anteriormente; Neste exemplo, o arquivo a ser enviado é armazenado em casa, não no diretório atual.

NC -W 2 192.168.1.102 9899 < /home/linuxhint/linuxhint2.txt

E como você pode ver, o arquivo é armazenado no diretório definido. Além disso, o nome do arquivo alterado de Linuxhint2.TXT para Linuxhint.TXT Conforme definido no comando de computador receptor.

Mostrando o progresso da transferência de arquivos ao usar NC

O PV A implementação do comando exibe o progresso da transferência através do tubo. Com este comando, podemos adicionar informações de progresso ao usar o netcat.

Para instalar PV Nas distribuições de Linux, baseadas em Debian, execute o comando abaixo.

sudo apt install pv

Adicione um tubo após a porta no dispositivo de recepção, seguido pelo PV comando, o caminho e o nome do arquivo que você deseja salvar, como mostrado no exemplo abaixo.

netcat -l 9899 | PV> Linuxhint2.TXT

Envie o arquivo do dispositivo remetente:

Você verá o progresso no dispositivo receptor onde adicionou o PV comando.

Comprimindo e transferindo arquivos em tempo real com NC

Você também pode compactar arquivos ao enviar através do NetCat com uma única execução usando o Pipe. O exemplo a seguir mostra como comprimir o Linuxhint2 diretório e envie -o através do netcat.

Deixe a NC ouvindo conexões de entrada; Você pode implementar o comando PV para ver o progresso.

nc -l -p 9899 | PV> Linuxhint2

No remetente, comprime o diretório ou arquivo usando o comando alcatrão com as opções adequadas e mostrado abaixo. Em seguida, adicione o tubo e envie como normal sem especificar o arquivo, já especificado ao compactar.

TAR CFVZ - Linuxhint2 | NC -W 2 192.168.1.102 9899

Como você pode ver, o arquivo foi transferido e extraído corretamente.

Transferindo um disco inteiro ou partição usando NC

O último exemplo deste tutorial mostra como transferir uma partição ou disco inteiro usando o netcat.

No dispositivo receptor, execute o comando abaixo.

NC -P 9899 -L | BZIP2 -D | dd de =/dev/sda1

No remetente, digite o seguinte comando, substitua /dev /sda1 para o disco ou partição que deseja transferir.

BZIP2 -C /DEV /SDA1 | NC 192.168.1.102 9899

Conclusão

NetCat é uma ferramenta muito básica que qualquer usuário ou usuário do Linux lida com a rede deve saber. Usá -lo é bem simples, como mostrado neste tutorial. O NetCat foi projetado para ser usado por outros programas ou scripts; É uma boa ajuda para os desenvolvedores.

Espero que este tutorial netcat explicando 10 usos diferentes foi útil para você. Continue seguindo o Linux Dint para mais dicas e tutoriais do Linux.