Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Verificando a eficacia das senhas com John The Ripper

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

  • Font Size
    #1

    Tutorial Verificando a eficacia das senhas com John The Ripper

    Boa noite a todos.
    Vou postar um tutorial a respeito do software john the ripper, que serve para verificar a eficacia das senhas.

    O ponto mais crucial dentro de um sistema e a qualidade das senhas de seus usuarios, pois muitas vezes sao criadas
    por pessoas que nao tem o conhecimento necessaria para isso e criam senhas muito frageis, facilmente descobertas
    em menos de 10 minutos. Para tal coisa nao acontecer, deve-se treinar os usuarios do sistema para que criem senhas
    fortes e nao cometam erros para que terceiros nao a descubram por engenharia social.

    Sabendo disso, vou apresentar o programa John The Ripper, para que facam teste nas senhas dos usuarios de seus sistemas,
    e, para quem nao tem sistema para cuidar aumentar o conhecimento, que nunca e demais.

    John The Ripper:

    Software livre que consegue identificar automaticamente qual é o algoritmo de criptografia que foi utilizado para cifrar as senhas presentes no arquivo que você indicou para ele. Ele também possui uma versão paga, porém a versão livre não deixa nada a desejar.
    Vou focar na sua versao livre neste artigo.

    Ele e um software multiplataforma, podendo ser executado em vários sistemas Unix-like, Windows, DOS, BeOS e OpenVMS.
    É desenvolvido pelo pessoal do projeto OpenWall, que além do JtR possuem vários outros ótimos softwares e até uma distribuição Linux,
    a OpenWall GNU/Linux (ou Owl). O site do projeto é Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar....

    Instalacao:

    Baixe o software para a plataforma desejava: (neste tutorial estou utilizando uma disatribuicao debian)
    Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...

    Feito isso, de os seguintes comandos:

    // Extracao do arquivo
    $ tar xzvf john-1.7.0.2.tar.gz

    // Abrindo a pasta criada
    $ cd john-1.7.0.2

    // Dentro da pasta, existira um diretorio chamado src, vamos abri-lo
    // Dentro dele estao os fontes do programa para compila-lo
    $ cd src/

    // Neste comando, digite make e escolha a melhor opcao para vc
    // Na minha maquina, o X86 e a melhor opcao para mim
    // Este comando ira melhorar o desempenho do programa
    $ make clean linux-x86-mmx

    //os binarios resultantes da compilacao, vao para o diretorio run, vamos acessa-lo
    $ cd ../run

    // Verifique se ocorrera erro ou se o programa foi devidamente instalado
    $ ./john --test

    // Faca o teste de benchmarking com todos os algoritmos de criptografia que o JtR suporta
    // Sao eles DES, BSDI, MD5, BF, AFS e LM.
    $ ./john --test --format= formato que você quer testar

    //exemplo
    $ ./john --test --format= MD5


    Configuracao:

    Toda a configuração do John é feita em um arquivo texto chamado john.conf em sistemas Unix ou john.ini no Windows
    Basta abri-lo e modificar as regras como desejado.
    Atente-se ao fato dele ser case sensitive

    Utilizacao:

    O John the Ripper possui três modos de operação:

    * Dicionário (Wordlist): sendo o modo mais simples suportado pelo programa, este é o conhecido ataque de dicionário, que lê as palavras de um arquivo e verifica se são correspondentes entre si.

    * Quebra Simples (Single Crack): mais indicado para início de uma quebra e mais rápido que o wordlist, este modo usa técnicas de mangling e mais informações do usuário pelo nome completo e diretório /home em combinação, para achar a senha mais rapidamente.

    * Incremental: sendo o modo mais robusto no John the Ripper, ele tentará cada caractere possível até achar a senha correta, e por esse motivo é indicado o uso de parâmetros com o intuito de reduzir o tempo de quebra.

    * Externo (External): o modo mais complexo do programa que faz a quebra a partir de regras definidas em programação no arquivo de configuração do programa, que irá pré-processar as funções no arquivo no ato da quebra quando usar o programa na linha de comando e executá-las. Este modo é mais completo e necessita de tempo para aprender e acostumar-se.

    Aqui vou mostrar apenas o uso básico do John:

    Nos exemplos que vou mostrar abaixo, utilize o /etc/passwd e o /etc/shadow da sua máquina.
    Junte estes arquivos utilizando o script unshadow.
    Também vale lembrar que, se você vai quebrar senhas Windows (LM ou NTLM), você vai precisar de uma ferramenta que faça dumps de hashes destes tipos de senhas.

    // Para deixar o servico todo para o software. Comecara com o single crack, depois o wordlist, logo apos o incremental
    $ ./john senhas.txt

    // Tentar quebra a senha de mais de um arquivo ao mesmo tempo no modo single
    $ ./john --single arquivo_com_senhas1.txt arquivo_com_senhas2.txt


    // Para especificar o algoritmo a ser usado:
    $ ./john --show --format=MD5 --single arquivo_com_senhas.txt

    Algumas opcoes do john the ripper que podem ser utilizadas. Basta digitar o comando ./john dentro do diretorio run

    --single "single crack" mode
    --wordlist=FILE --stdin wordlist mode, read words from FILE or stdin
    --rules enable word mangling rules for wordlist mode
    --incremental[=MODE] "incremental" mode [using section MODE]
    --external=MODE external mode or word filter
    --stdout[=LENGTH] just output candidate passwords [cut at LENGTH]
    --restore[=NAME] restore an interrupted session [called NAME]
    --session=NAME give a new session the NAME
    --status[=NAME] print status of a session [called NAME]
    --make-charset=FILE make a charset, FILE will be overwritten
    --show show cracked passwords
    --test[=TIME] run tests and benchmarks for TIME seconds each
    --users=[-]LOGIN|UID[,..] [do not] load this (these) user(s) only
    --groups=[-]GID[,..] load users [not] of this (these) group(s) only
    --shells=[-]SHELL[,..] load users with[out] this (these) shell(s) only
    --salts=[-]COUNT load salts with[out] at least COUNT passwords only
    --format=NAME force hash type NAME: DES/BSDI/MD5/BF/AFS/LM
    --save-memory=LEVEL enable memory saving, at LEVEL 1..3


    Escolhido o modo como vai tentar quebrar a senha, seja ele single, wordlist, incremental ou external, maos a obra e brinque de cracker.

    Espero que tenha ajudado alguem.

    Qualquer duvida postem no site que tentarei sanar qualquer duvida.

    Abraco a todos.

    Creditos do tutorial para as aulas de seguranca.
    (SegComp2010/1 - UFLA - Prof. Joaquim Quintera Uchoa)

  • Font Size
    #2
    Muito bom ainda não tinha visto tutorial sobre o J.T.R
    sigpic




    R.I.P - 2008 —— 2015
    Capiroto, descanse em paz!

    русский Империя

    Phishing's job. PM me!! $$$

    Comment


    • Font Size
      #3
      legal, não tinha visto esse post ainda e nem um bom tuto do jtr..

      Comment

      X
      Working...
      X