netcat
Netcat é uma das ferramentas mais legais que existe no mundo *nix, se bem usado pode salvar sua vida quando não se tem outras ferramentas de rede disponíveis. É uma versão mais sofisticada do telnet. Com ele você pode transferir arquivos, testar portas ( como o nmap ), criar um web server etc.
Truques básicos:
Conectando na porta 80 do localhost (tente com outras URLs e servidores):
$ nc localhost 80
Servidor socket na porta 5000:
nc -l 5000
Se combinados os dois exemplos anteriores vão se comportar como um Chat 🙂
Um webserver muito útil para testar portas ou até mesmo subir uma página de manutenção em um servidor.
$ while true; do; sudo nc -l 80 < index.html; done
O Loop while permite renderizar a página para mais de uma conexão, é possível servir formatos binários também.
Mais um exemplo legal, um backdoor shell 🙂 Precisa acessar um computador remoto ? Sem problemas:
Abrindo a porta 2222 com o bash rodando:
$ ncat -v -l 2222 -e /bin/bash
Para acessar sua backdor basta:
$ ncat localhost 2222
Lembrando que pode ser usado em servidores remotos, basta trocar o localhost pelo IP ou dominio.
É possível usar o netcat como portscanner, por exemplo para escanear da porta 1 até a 100:
$ nc -v -z localhost 1-100
Transferência de arquivos também não é um problema para netcat:
Para disponibilizar um arquivo na porta 5000:
$ nc -l 5000 < /etc/passwd
Para copiar o arquivo:
$ nc localhost 5000 > passwd
Clonar um HD/SSD de um servidor direto no de outro também é possível:
No servidor original:
$ dd if=/dev/vda | nc -l 5000
No servidor que vai receber a cópia:
$ nc -n localhost 5000 | dd of=/dev/vda
Sempre lembrando que os comandos valem para servidores e máquinas remotas, é só trocar o localhost dos exemplos pelo domínio.
Backup remoto também não é um limitador para o netcat:
No servidor
$ nc -l 5000 | tar -xv
No cliente:
$ tar -cv /path/ | nc localhost 5000
fonte http://aarvik.dk/netcat-basics-and-a-few-smart-examples/
Share this content: