路漫漫其修远兮,吾将上下而求索

0%

john

john

  • 快捷使用

    1
    john --wordlist=/usr/share/rockyou.txt ./shadow
    2
    john --show ./shadow
  • help

    help

  • attact

    在破解密码方面,有三种类型的攻击:
    1.暴力破解:通过依次处理每个可能的字母、数字和特殊字符组合来猜测密码。这是一个很漫长的过程,但却很有效果。
    2.字典攻击:此攻击利用包含常见密码列表的文件(通常取自某种类型的漏洞)来猜测给定的密码。在CTF中应用比较广泛,但在正常情况下不是特别常见。
    3.彩虹表:彩虹表是一系列预先计算好的散列。其思想是,这些彩虹表包含给定算法的所有散列。通过查找代替了破解。请注意,这需要相当大的处理能力才能实现。

  • 默认大字典

    字典地址

    1
    sudo gunzip /usr/share/wordlists/rockyou.txt.gz
    2
    wc -l /usr/share/wordlists/rockyou.txt
  • 使用

    • linux密码

      将passwd与shadow转换成john可破解格式(现已可直接破解)

      unshadow /etc/passed /etc/shadow > ./password

      john --wordlist=/usr/share/wordlist/rockyou.txt ./password

    • SSH密钥

      要测试JTR的SSH密钥密码破解能力,首先要创建一组新的私钥。注意:JTR没有破解文件本身(即生成的密钥中的字节数并不重要),JTR只是破解私钥的加密密码。
      在这种情况下,使用可预测的密码创建公钥/私钥对:

      1
      # Create some private key
      2
      ssh-keygen -t rsa -b 4096
      3
      # Create encrypted zip
      4
      /usr/sbin/ssh2john ~/.ssh/id_rsa > id_rsa.hash

      接下来,您需要做的就是使用您的字典将John the Ripper指向给定文件:

      1
      john --wordlist=/usr/share/wordlists/rockyou.txt id_rsa.hash
    • Keepass2数据库(不常用)

      Keepass怎么样?如果您不知道,Keepass是一个开源的,跨平台的密码管理库。
      所以让我们创建一个可以攻击的库。首先,安装Keepass CLI(“kpcli”)。

      1
      sudo apt-get install -y kpcli

      接下来,创建库。你不需要在库里存储任何密码,一个空的库就可以了。

      1
      $ kpcli
      2
      KeePass CLI (kpcli) v3.1 is ready for operation.
      3
      Type 'help' for a description of available commands.
      4
      Type 'help <command>' for details on individual commands.
      5
      kpcli:/> saveas newdb.kdb
      6
      Please provide the master password: *************************
      7
      Retype to verify: *************************
      8
      kpcli:/> exit

      与攻击SSH私钥和Linux密码散列一样,将Keepass数据库转换为与JTR兼容的格式。

      1
      keepass2john newdb.kdb > newdb.kdb.hash

      攻击!

      1
      john --wordlist=/usr/share/wordlists/rockyou.txt newdb.kdb.hash
    • RAR

      1
      # Install rar
      2
      sudo apt-get install -y rar
      3
      # Create some dummy file
      4
      echo "Hello" > hello.txt
      5
      # Create an encrypted RAR file with the password "password"
      6
      rar a -hppassword encrypted.rar hello.txt

      接下来,将其转换为JTR的攻击格式:

      1
      rar2john encrypted.rar > encrypted.rar.hash

      之后用john破解