Utilitários
Netcat
Para utilizarmos o netcat, é bem simples, basta informar o ip e logo em seguida a porta. Com isso, é estabelecido a conexão com o serviço e no exemplo abaixo irá trazer o banner do FTP.
Se quisermos nos conectar em um serviço web, precisamos enviar uma requisição (GET, HEAD, POST, etc), junto com o local que queremos acessar (o exemplo abaixo foi utilizado o "/") e também a versão do http. Lembrando que se for HTTPS, será preciso enviar o cabeçalho host.
Para abrirmos uma porta na máquina para outro host se conectar, utilizamos o netcat da seguinte forma. Nesse caso, basta o outro host utilizar o ip da máquina e a porta para estabelecer a conexão.
Transferência de arquivos
Se quisermos transferir arquivos, basta utilizar da seguinte forma.
Agora do lado que irá receber o arquivo.
Honeypot
Se quisermos simular uma porta aberta em uma máquina para servir de honeypot, fazemos da seguinte forma.
Reverse shell
O netcat também é utilizado quando queremos obter uma reverse shell. Podemos abrir uma porta na nossa máquina e na máquina alvo enviar a conexão da seguinte forma.
A ideia da reverse shell é burlar o firewall, uma vez que descoberto uma porta de saída na rede alvo, podemos ganhar vantagem disso fazendo a máquina alvo se conectar na nossa, enviando assim uma shell. Podemos gerar também através desse site.
Ncat
O ncat é uma evolução do netcat, a diferença é que ele suporta criptografia e então não é possível ler claramente o que for trafegado durante a comunicação. Precisamos então gerar um certificado e uma chave.
Para abrirmos a conexão, será solicitado que utilizamos a senha que foi inserido
Para conectar, precisamos passar um parâmetro a mais.
Com uma comunicação criptografada, o firewall, ips ou similar, pode ter mais dificuldade de analisar os pacotes que estão sendo trafegados para um possível bloqueio.
Socat
No socat, podemos abrir uma determinada porta assim (por padrão ele pede dois endereços, então o "tracinho" serve como um alias para dizer que não possui outro endereço).
Para nos conectarmos, podemos utilizar qualquer utilitário e informar o ip e a porta que foi aberta.
Agora, utilizando o socat para conectar, fica da seguinte forma.
Se quisermos enviar o bin/bash.
/dev/tcp
O /dev/tcp também possui algumas funcionalidades caso não tenhamos acesso aos outros utilitários. Quando utilizamos ele, abrimos um socket tcp com determinado endereço de ip e porta. Podemos enviar uma mensagem, ou arquivo.
Se quisermos enviar um bash, fazemos da seguinte forma (o parâmetro -i significa interativo).
Lembrando que 0>&1 significa que todo stdin será direcionado para o stdout e 2>&1 signfica que todos os erros serão direcionados para o stdout.
Last updated
Was this helpful?