Eu sei que posso gerar o shell no lado do servidor usando:
nc -l 1111 -e /bin/bash
Mas quero gerar o shell no lado do cliente.
Eu tentei fazer:nc 127.0.0.1 1111 | /bin/bash
Funciona, mas não consigo ver a saída dos comandos executados.
Então a questão é: existe alguma maneira de gerar o shell no lado do cliente usando o netcat?
Responder1
Parece funcionar para mim, mas depende da versão do netcat. O Debian empacotou dois: "netcat-tradicional" e "netcat-openbsd". O primeiro oferece suporte -e
no modo cliente e servidor, o último não oferece suporte de forma alguma.
$ nc.traditional localhost 1234 -e /bin/bash
$ nc.openbsd localhost 1234 -e /bin/bash
nc.openbsd: invalid option -- 'e'
O do meu OSX também não suporta.
Se precisar fazer isso com um netcat que não suporta -e
, você pode precisar de algo assim:Como fazer pipe bidirecional entre dois programas?