John The Ripper - https://github.com/magnumripper/JohnTheRipper · GitHub
John The Ripper - https://github.com/magnumripper/JohnTheRipper - john-the-ripper.sh

seen from Malaysia

seen from United States
seen from China
seen from United States
seen from United States
seen from Malaysia

seen from United States
seen from China
seen from United States
seen from Spain
seen from United States
seen from United States

seen from United States
seen from China
seen from United States
seen from Yemen
seen from Canada
seen from Italy

seen from Germany
seen from United States
John The Ripper - https://github.com/magnumripper/JohnTheRipper · GitHub
John The Ripper - https://github.com/magnumripper/JohnTheRipper - john-the-ripper.sh
"John The Ripper" The Pharoah who stood tall As corrupt as no God Drowns in his own fall Death did him his own fraud Machines chant; beep and call Minds shrink from being broad Screening questions to stall Making stringed puppets nod Falsified protocol Breaking the system's cord Programmable firewall Systematically flawed Protection by your scrawl 'Til ripped by the outlawed Deep in your beds you crawl Fear the public vice squad Secrets of your ragdoll And every lust clawed Recorded in phone call Rigging of election fraud The Pharoah who stood tall As corrupt as no god Drowns in his own fall Death did him his own fraud - Tauqeer Art by @lemonilustration #poem #poetry #poetsofig #poetsofinstagram #johntheripper #hack #system #corrupt #illuminati #power #woke #wokeaf #anonymous #aaronshwartz #edwardsnowden #wikileaks #internet #freedom #hacker #tauqeer #taq_quo https://www.instagram.com/p/BtYtCJDBqbO/?utm_source=ig_tumblr_share&igshid=1e0gyuxi8ktxt
Instalando John the Ripper (JtR) no Mac OS
Nota: Testado no Mac OS Sierra usando Homebrew.
Recentemente precisei instalar o JtR (http://www.openwall.com/john/) em um Macbook Pro. Um pouco mais trabalhoso do que nas distribuições Linux em geral, mas nada impossível. Apesar de haver um build para OSX (http://download.openwall.net/pub/projects/john/contrib/macosx/), o arquivo data de 2012 e não possui diversas melhorias presentes nas versões mais recentes - incluindo o suporte a Kerberos TGS Tickets. Além disso, em geral, eu prefiro compilar o JtR a partir da versão mais recente no Github (bleeding-jumbo); então os passos abaixo fazem mais sentido para mim de qualquer forma.
Pré-requisitos
Passo 1: Cabeçalhos do OpenSSL
brew install openssl
brew link openssl --force
O último comando irá forçar o link do OpenSSL instalado pelo Homebrew (isto é, obriga que os cabeçalhos da versão do OpenSSL do sejam usados). A ação pode ser desfeita depois ou, como aconteceu no meu caso, pode acarretar numa mensagem de erro informando quais diretivas devem ser passadas para que o compilador use especificamente esses cabeçalhos. Tome nota desta informação, pois ela será útil durante o processo de compilação do JtR.
Alternativa: Baixar os fontes do Github funciona da mesma forma.
Passo 2: GCC - Por padrão, o comando “gcc” do XCode é na verdade clang. Como posto nas instruções de instalação do John (https://github.com/magnumripper/JohnTheRipper/blob/bleeding-jumbo/doc/INSTALL), usar o gcc “de verdade” permite usar melhor o hardware e ganhar em performance.
brew install gcc
Passo 3: OpenMPI (opcional) - Eu gosto de usar MPI junto com o JtR, mas é completamente opcional.
brew install openmpi
Compilando
Passo 4: Baixar a última versão a partir do repositório no Github:
git clone https://github.com/magnumripper/JohnTheRipper.git -b bleeding-jumbo john
Passo 5: Compilar usando o GCC e os cabeçalhos corretos do OpenSSL:
cd john/src
./configure CC="gcc-6" LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" --enable-mpi && make clean && make
Nota: As variáveis CC e LDFLAGS podem mudar de acordo com o seu compilador e o diretório onde os cabeçalhos do OpenSSL estão localizados.
Testando
./john --test
Erros
Durante a compilação, alguns desses erros podem surgir:
configure: error: JtR requires OpenSSL headers being installed
Undefined symbols for architecture x86_64: "_Camellia_cfb128_encrypt", referenced from: _gpg_common_check in gpg_common_plug.o "_Camellia_set_key", referenced from: _gpg_common_check in gpg_common_plug.o
ld: symbol(s) not found for architecture x86_64
Solução sugerida: Certifique-se de que o caminho para os cabeçalhos do OpenSSL estão corretos (Passo 1 e em “Compilando”) e tente novamente.
string2rule.py: Gerador de regras para o John a partir de uma string
Há alguns dias dei uma rápida atualizada repositório password-utils, onde guardo coisas úteis para password cracking e alguns dos resultados dos meus experimentos sobre o tema. Além das três novas wordlists, finalmente disponibilizei o script string2rule.py.
Observei, nos dumps que analisei até então, que variações do nome de sistemas, aplicativos e domínios eram recorrentes na construção de senhas. Criei esse script para gerar regras do john que sigam esse comportamento, adicionando variantes da string passada antes e depois de uma palavra:
python string2rule.py daniel
Basta copiar as regras para o arquivo john.conf e usá-las:
john --rule:<regra> --wordlist=<wordlist> <hashes>
Um exemplo das senhas que o john irá testar:
Para as regras usei os mapeamentos mais comuns que encontrei - por isso 'x' não é substituído por '><', por exemplo. Também não estão otimizadas (ainda).
Ainda estou procurando uma forma de gerar uma regra que coloque as strings modificadas no meio da palavra (ex.: codaD@ni3Llabs), mas a combinação dessas regras com a wordlists de nomes próprios já têm funcionado bem nos meus últimos testes.
EDIT: Agora as regras adicionam caracteres especiais entre a string gerada e a palavra da wordlist (ex.: daniel_codalabs e codalabs_daniel).
--Daniel