Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

NetCAT Comandos e conceitos

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    NetCAT Comandos e conceitos

    Tutorial Netcat

    Netcat é uma ferramenta usada para ler e escrever dados em conexões de rede usando o protocolo TCP/IP.
    Dada sua grande versatilidade, o NetCat é considerado pelos hackers o canivete suíço do TCP/IP,podendo ser usado para fazer desde portscans até brute force attacks.LOL

    Em primeiro lugar, aconselho vocês a pegar o programa, assim será feito
    Download link:Para Windows

    Código:
    http://www.vulnwatch.org/netcat/nc111nt.zip
    A maioria das distros linux já vem com essa ferramenta pré-instalada,mas caso não venha você poderá baixa-lá em
    Download link:Para Linux
    Código:
    http://www.vulnwatch.org/netcat/nc110.tgz
    O nome netcat vem do comando cat do Linux/Unix. O cat concatena arquivos e envia para a saída padrão (stdout).O netcat faz praticamente o mesmo, porém ao invés de concatenar arquivos, o netcat concatena sockets TCP e UDP.

    Opções do Netcat:

    -e comando Executa o comando especificado usando como entrada (stdin) os dados recebidos pela rede e enviando os dados desaí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 Usado 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, bastandoapenas 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.


    Preparando as Interfaces de Rede

    Para testar o netcat, usaremos dois aliases na interface loopback (lo) do linux.O endereço IP default da interface (lo) no linux é 127.0.0.1.
    Se mexermos com o endereço 127.0.0.1 podemos quebrar as nossas conexões de rede. Ao invés disso, usaremos os aliases "lo:1" e "lo:2" para executarmos os testes.
    Para atribuir endereços IP à essas interfaces, os seguintes comandos devem ser executados (como usuário root) no console do linux se for para windows deixe como esta.
    Código:
    $ ifconfig lo:1 10.0.1.1
    $ ifconfig lo:2 10.0.1.2
    O NetCat é um famoso utilitário que funciona com linha de comandos e que lhe permite fazer quase tudo o que voce quiser com sockets.Um socket é simplesmente uma conexão entre dois computadores.
    Para identificar um socket, precisa-se de 3 informações:

    - os IPs dos 2 computadores conectados;
    - as portas nas quais os 2 computadores estão conectados;
    - o protocolo utilizado.

    Por exemplo: quando estou no IRC, no #iga, meu mIRC usa um socket entre meu IP (ex : 165.169.45.12) e uma porta temporária (ex : 1035) e o IP do servidor (antwerpen.be.eu.undernet.org) e a porta do servidor (6667). E neste caso a conexão é do tipo TCP.


    As vantagens de NetCat?
    Ele permite fazer de forma fácil qualquer tipo de conexão (TCP ou UDP) sem saber programar, tanto para criar pequenos clientes/servidores, quanto testar seus programas!o NC existe em vários sistemas (Windows 95/98, NT, Linux, Unix,...).
    usa-se com linhas de comandos o que vai permitir incorpora-lo em seus scripts, etc...
    enfim a ferramenta é ótima vamos mostrar a vocês alguns detalhes para que possam entender como funciona esta maravilhosa ferramenta!



    NETCAT CLIENT

    suponhhamos que eu quero me conectar no IRC. Coloco o seguinte comando .

    ~> NETCAT antwerpen.be.eu.undernet.org 6667 E pronto!
    To conectado no servidor antwerpen!Tudo o que vc teclar depois será mandado diretamente no socket,em direção a antwerpen.
    simples não? (:

    Ele vai simplesmente permitir gerenciar um socket.Mandar... Receber... Nada mais. Isso quer dizer que ele não conhece nenhum protocolo como IRC, FTP, etc...Mas isso quer também dizer que ele vai mostrar exatamente o que vai acontecer durante a conexão, que não efetua nenhum tratamento, e que vai mandar exatamente o que nós queremos que ele mande.

    o Telnet faz a mesma coisa...sim mas com varias infirmações que não serão necessarias para o nosso trabalho.
    Telnet manda um monte de porcarias sem você saber!Justamente, se falando em Telnet, NetCat tem a possibilidade de emular a negociação Telnet. ou seja o netCat permite justamente emular um cliente Telnet que vai também mandar todas as outroas info invalidas que disse....

    Para fazer isso é simples usaremos no Nc o seguinte comando onde
    ~> NETCAT -t 23
    em uma begociação com nc voce "vê" as informações que manda ... roX não?



    NETCAT SERVIDOR
    Agora que a gente mexeu um pouco pra ver o que NetCat faz em modo cliente,ja sabe o que é um socket :P,e como fazer tal conecção vamos tentar fazer um pequeno servidor.

    como exemplo vamos abrir na nossa máquina a porta 23 e fazer com que a vitima que se conectar ache que caiu num "wingate".

    para isso usaremos o exemplo citado com o seguinte comando...
    ~> NETCAT -l -p 23

    onde -l para dizer que estamos em modo listen(esperamos uma conexão numa porta determinada). -p 23 para dizer que a porta na qual esperamos a conexão é a porta 23.(:

    Agora vamos abrir nosso cliente Telnet e vamos nos conectar no nosso IP porta 23.como exemplo vamos conectar o Telnet do Windows, "telnet 127.0.0.1 23". E o que nós observamos?
    O nosso cliente Telnet se conectou de fato ao nosso pequeno servidor...
    Agora vamos digitar uma pequena frase no nosso NetCat e como por mágica a frase aparece no cliente Telnet.

    Já que a gente ta no Telnet vamos digitar uma frase nele e..! Ela não aparece na tela a nossa frase?Contudo, se você verificar na tela do NetCat, vai ver que ele recebeu a nossa frase LOL,maravilhosa ferramenta não?

    Agora desconectamos o Telnet e Netcat desconecta também.
    Não é muito prático um servidor que cai após uma conexão!!!
    Para isso existe outro comando:
    ~> NETCAT -L -p 23
    Desta vez, “-L” diz ao NetCat que deve esperar por conexões em permanência. Agora é mais prático Não?
    em palavras pode pareçer muito complicado mas na pratica é muito simples .em um outro exemplo com o mesmo Digitamos o seguinte:
    ~> NETCAT -l -p 80 e abrimos o Internet Explorer no endereço seguinte "http://127.0.0.1".
    Olhando melhor as informações que o browser envia ao servidor Web (neste
    caso o NetCat) dá para entender melhor como fazem para saber tudo o que roda na nossa máquina, lá na Microsoft!
    mas para voltar ao wingate, se devo a cada vez que se abra uma conexão digitar logo”Wingate>” para simular um Wingate, vai ogo parecer suspeito e sobretudo vai me encher muito o saco! E é justamente aí que aparece todo o gênio do NetCat.



    REDIRECIONAMENTO ENTRADA/SAÍDA
    Pelo fato que é utilizado com linhas de comando através de parâmetros,
    NetCat vai nos permitir facilmente programa-lo e usa-lo em pequenos scripts
    (tanto em batch com LINUX quanto em bat em Dos/Windows).
    Vamos criar um pequeno arquivo Wingate.txt, que contem a linha seguinte:
    ~> Wingate>

    Depois lançamos o comando
    ~> NETCAT -L -p 23 < wingate.txt Agora vamos conectar o cliente Telnet.
    E como por mágica , o que é que acontece? NetCat, ao invés de receber os comandos do teclado, vai busca-los no nosso
    arquivo Wingate.txt e os manda assim por completo. Não é genial?E se nós queremos logar tudo o que está sendo digitado no nosso falso Wingate? simples ^^ no final do arquivo coloque " .log "

    e o comando para logs ficara da seguinte forma..
    ~> NETCAT -L -p 23 > wingate.log

    E a armadilha está lançada!mas não sei mudar o arquivo texto uma vez o programa lançado e outras coisas ainda... Então não é tão bom assim.Agora, vamos tentar programar um pequeno servidor que vai nos permitir controlar nossa máquina à distância ou seja " remotamente"!:
    NetCat permite um redirecionamento a partir de um arquivo, na entrada ou na saída.Mas NetCat permite também redirecionamento de entradas e saídas de um programa em direção a um socket.

    Digitamos então o seguinte comando
    ~> NETCAT -L -p 23 -e c:\command.com

    Depois lançamos "Telnet 127.0.0.1 23". E o nosso comand.com aparece na janela do Telnet.
    Então se você pensar bem e se souber programar em GWBasic (lançado em 1852) e sabe usar os comandos PRINT e INPUT, vai saber criar sem dificuldades um Shell bem bonitinho no seu Windows.isso não é necessario mas ajuda...
    Na realidade, graças a esta opção, se souber fazer um programa que usa as interfaces padrão de entrada e saída (em Pascal, em C, ...), não terá mais que se ocupar da programação dos sockets!!! Basta digitar os dados e será o NetCat que irá cuidar de gerenciar tudo.Outra opção interessante mas somente para windows (acho que é a única, amante do Linux não ficam tristes!).

    vamos mostrar como seria um processo de um trojan que tal colocar uma shell para controla=-lo remotamente?
    então faça o seguinte comando
    ~> NETCAT -L -p 23 -d -e c:\command.com
    Agora lançamos Telnet.Telnet se conecta!!!
    A opção –d faz com que ele fique ativo na memória (dá pra ver na lista de tarefas ou seja nos "processos" se não souber o que é isso se mata!) mas não na lista de janelas.

    Para fazer um trojan num computador, basta lançar este comando quando a máquina for iniciar, e um servidor se instalará tranqüilamente na porta 23 sem ninguém perceber!
    "conhecimento não é crime "



    HACKING COM NETCAT
    Como NetCat é uma ferramenta multiuso, pode fazer coisas boas..e ruins!!!

    NetCat contém uma serie de opções feitas para o scanning.
    Escanear é antes de qualquer coisa tentar ver quais são os serviços disponíveis nas portas de uma máquina distante.
    Fazer isso não é nada complicado (: Na realidade basta digitar uma serie de portas ao invés de uma porta só.
    Por exemplo, se vc digitar 1-100, NetCat vai abrir conexões nas portas de 1 a 100. O problema é que NetCat não nos indica o número da porta aberta.

    Então devemos também utilizar o comando –v e melhor ainda 2 x, “-vv”, para obter informações sobre as conexões.
    utilizando o mesmo processo duas x LOL
    Digitamos por exemplo então o seguinte comando.
    ~> NETCAT -vv 127.0.0.1 1-100

    Este comando vai escanear as portas 1 a 100 do seu computador.
    Uma vez lançado, você vai ver que NetCat mostra mensagens do tipo “refused” nas portas que não estão abertas e que ele mostra entre parênteses o serviço que está presente (quando tem um específico). Se a porta está aberta, NetCat mostra a mensagem “OPEN”. Tem que notar que NetCat escanea de cima para baixo.
    Por exemplo, se vc entrar as portas 1-100, ele vai escanear 100, 99
    98, ..., 3, 2, 1.
    Para mudar isso existe uma opção bem legal, -r.

    Tente digitar o seguinte comando e observe.
    ~> NETCAT -vv -r 127.0.0.1 100-110

    Vai ver que NetCat escanea agora as portas completamente ao acaso no intervalo 100 a 110. Isso é muito interessante, não é? De fato, muitos sistemas de proteção de scan são baseados numa detecção de escaneamento de portas consecutivas.
    NetCat não é limitado, podemos entrar uma lista de portas.Por exemplo, podemos escanear desta maneira:
    ~> NETCAT -vv -r 127.0.0.1 1-1024 4900-5000 6667

    Neste caso, NetCat vai escanear as portas 1 a 1024, as portas 4900 a 5000 e a porta 6667. No entanto, é bom observar que NetCat não trabalha por range; isto é, Netcat vai escanear todas as portas de 1 até 1024 ao acaso, depois vai passar ao range seguinte, e não escanear todas as portas juntas numa ordem qualquer.

    Na realidade, neste caso preciso, assim que NetCat encontrar uma porta aberta, ele pára e permite mandar dados a esta porta. Para efetuar um scan rápido que não pára se a porta estiver aberta, devemos usar o switch –z. xD
    então o seguinte comando ficaria assim.,..
    ~> NETCAT -vv -r -z 127.0.0.1 130-140
    Ao nível das portas, NetCat suporta o envio a várias portas em paralelo (é assim que se faz para escanear, de fato), mas podemos também usar isso para um Flood.

    Por exemplo, podemos digitar o comando seguinte:
    NETCAT 127.0.0.1 139 139 139 139 139 139 139 139 139 139
    Bem, acho que é tudo o que posso falar sobre escaneamento de portas.



    OUTROS TRUQUES
    A primeira coisa é que todas as opções que eu citei podem ser combinadas facilmente, tanto em modo cliente quanto em modo servidor ou em modo scan.

    Por exemplo, podemos abrir uma conexão em direção a um servidor especificando uma porta no cliente.
    para isso digitamos o seguinte comando
    ~> NETCAT -p 65000 Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... 6667

    Neste caso por exemplo, vai permitir ao cliente estar conectado ao port local na porta 65000 que é tão alta que não vai ser tão evidente se quiserem tentar desconectar você com um click (ICMP NUKE), que normalmente ataca as portas temporárias que vão de 1024 a 5000.NetCat possua uma função muito interessante. Trata-se da função –u.

    Esta opção permite criar um socket UDP no lugar de um TCP.
    O mais interessante é provavelmente escanear portas UDP ao invés das TCP usando as opções –z e –u. De fato não existem muitos scanners bons para UDP Em contra partida, existem muitos serviços que são implementados em portas UDP (DNS, TFTP,...).


    Existe também a opção de time-out –w.
    que ficaria assim
    ~> NETCAT -w 5 antwerpen.be.eu.undernet.org 6667
    Isso vai parar o NetCat após 5 segundos caso a conexão não for estabelecida.Há também a função –i que vai especificar o tempo de scan, para não escanear muito rápido (o que parece suspeito e é facilmente detectável).

    Por exemplo, para escanear de maneira mais sutil, podemos usar o comando seguinte:
    ~> NETCAT -vv -z -i 10000 -r 127.0.0.1 1-200
    que vai escanear a cada 10000 milisegundos (a cada 10 segundos) uma porta escolhida ao acaso na máquina 127.0.0.1, de 1 a 200.Uma outra opção interessante como debugger de programas ou para analisar protocolos, é a opção -o.

    o comando ficaria assim
    ~> NETCAT -o netbios.log 127.0.0.1 139
    NetCat vai loggar dentro do arquivo netbios.log todos os octets recebidos, mas sob a forma de dump hexadecimal, o que é muito prático em certos casos.Para aqueles que conhecem bem o TCP/IP, NetCat tem também uma opção que permite enviar packets “source-routed”; ou seja, packets que são enviados por roteadores dos quais se deve especificar os IPs graças às opções –g e –G Enfim, NetCat suporta também a escolha de um IP no caso de um computador estar ligado a várias interfaces de IPs diferentes.

    Para terminar, se vc tiver um pequeno problema, digite o comando
    ~> NETCAT –h e terá um resume de todos os comandos disponíveis. Aconselho também consultar o arquivo .txt fornecido com NetCat que explica um monte de truques interessantes para serem testados.

  • Font Size
    #2
    parece estranho mas o donwload n começa =/

    pode me dizer mue erro ?
    sigpic

    Comment

    X
    Working...
    X