Skip to content

Latest commit

 

History

History
733 lines (686 loc) · 23.8 KB

CHANGELOG.md

File metadata and controls

733 lines (686 loc) · 23.8 KB

[unreleased]

  • Breaking changes:
  • Additions:
    • WPA-PMKID-PMK #162
    • WPA-EAPOL-PBKDF2 #162
    • WPA-EAPOL-PMK #162
    • WPA-PBKDF2-PMKID+EAPOL #162
    • WPA-PMK-PMKID+EAPOL #162
  • Enhancements:
    • OpenSSH private key
      • Better naming (add algorithm)
      • Better regexp (add john format support)
      • Add type $2$
    • IPB 2.x (Invision Power Board)
      • fix HC ref. #182 (thanks to @junewerner)
    • WPA-PMKID-PBKDF2
      • Different separators

[2.1.0]

  • Additions:
    • 4 new binaries
      • hashcat-haiti: wrapper for Hashcat where you can select the mode using haiti and fzf
      • john-haiti: wrapper for John the Ripper where you can select the format using haiti and fzf
      • haiti-fzf: select a Hashcat or John the Ripper reference with fzf from one of the matching hash types
        • mostly useful for hashcat-haiti and john-haiti or building another binary or alias that will make use of haiti with fzf input
      • haiti-parsable: display hash types matching that have a Hashcat reference in an easily parsable format
        • mostly useful for haiti-fzf or building another binary or alias
  • Documentation:

[2.0.0]

  • Breaking changes:
  • Additions:
    • New list command #159
    • SSHA-256 (Base64) #147
    • LDAP (SSHA-256) #147
    • IPMI 2.0 RAKP HMAC-MD5 #144
    • RedHat 389-DS LDAP (PBKDF2-HMAC-SHA256) #160
    • PBKDF2-HMAC-MD5 #160
    • PBKDF2-HMAC-SHA1 #160
    • PBKDF2-HMAC-SHA512 #160
    • Ethereum Wallet (SCRYPT)
    • WPA-PMKID-PBKDF2 #160
    • PBKDF2-HMAC-MD4 #160
    • SAP CODVN B (BCODE) from RFC_READ_TABLE
    • SAP CODVN F/G (PASSCODE) from RFC_READ_TABLE
    • SAP CODVN H (PWDSALTEDHASH) iSSHA-256
    • SAP CODVN H (PWDSALTEDHASH) iSSHA-384
    • SAP CODVN H (PWDSALTEDHASH) iSSHA-512
    • Web2py (PBKDF2-HMAC-SHA512) #160
    • VMware VMX (PBKDF2-HMAC-SHA1 + AES-256-CBC) #160
    • ENCsecurity Datavault (PBKDF2/no keychain) #160
    • ENCsecurity Datavault (PBKDF2/keychain) #160
    • ENCsecurity Datavault (MD5/no keychain) #160
    • ENCsecurity Datavault (MD5/keychain) #160
    • Python Werkzeug MD5 (HMAC-MD5 (key = $salt)) #160
    • Python Werkzeug SHA1 (HMAC-SHA1 (key = $salt)) #160
    • Python Werkzeug SHA224 (HMAC-SHA224 (key = $salt)) #160
    • Python Werkzeug SHA256 (HMAC-SHA256 (key = $salt)) #160
    • Python Werkzeug SHA384 (HMAC-SHA384 (key = $salt)) #160
    • Python Werkzeug SHA512 (HMAC-SHA512 (key = $salt)) #160
    • Python Werkzeug scrypt (scrypt (key = $salt)) #160
    • Python Werkzeug PBKDF2-HMAC-MD5 (key = $salt) #160
    • Python Werkzeug PBKDF2-HMAC-SHA1 (key = $salt) #160
    • Python Werkzeug PBKDF2-HMAC-SHA224 (key = $salt) #160
    • Python Werkzeug PBKDF2-HMAC-SHA256 (key = $salt) #160
    • Python Werkzeug PBKDF2-HMAC-SHA384 (key = $salt) #160
    • Python Werkzeug PBKDF2-HMAC-SHA512 (key = $salt) #160
    • JWT #164
    • VeraCrypt RIPEMD160 + XTS 512/1024/1536 bit (legacy) #154
    • VeraCrypt SHA512 + XTS 512/1024/1536 bit (legacy) #154
    • VeraCrypt Whirlpool + XTS 512/1024/1536 bit (legacy) #154
    • VeraCrypt RIPEMD160 + XTS 512/1024/1536 bit + boot-mode (legacy) #154
    • VeraCrypt SHA256 + XTS 512/1024/1536 bit (legacy) #154
    • VeraCrypt SHA256 + XTS 512/1024/1536 bit + boot-mode (legacy) #154
    • VeraCrypt Streebog-512 + XTS 512/1024/1536 bit (legacy) #154
    • VeraCrypt Streebog-512 + XTS 512/1024/1536 bit + boot-mode (legacy) #154
    • VeraCrypt RIPEMD160 + XTS 512/1024/1536 bit #154
    • VeraCrypt SHA512 + XTS 512/1024/1536 bit #154
    • VeraCrypt Whirlpool + XTS 512/1024/1536 bit #154
    • VeraCrypt RIPEMD160 + XTS 512/1024/1536 bit + boot-mode #154
    • VeraCrypt SHA256 + XTS 512/1024/1536 bit + boot-mode #154
    • VeraCrypt Streebog-512 + XTS 512/1024/1536 bit #154
    • VeraCrypt Streebog-512 + XTS 512/1024/1536 bit + boot-mode #154
    • TrueCrypt RIPEMD160 + XTS 512/1024/1536 bit (legacy) #154
    • TrueCrypt SHA512 + XTS 512/1024/1536 bit (legacy) #154
    • TrueCrypt Whirlpool + XTS 512/1024/1536 bit (legacy) #154
    • TrueCrypt RIPEMD160 + XTS 512/1024/1536 bit #154
    • TrueCrypt SHA512 + XTS 512/1024/1536 bit #154
    • TrueCrypt Whirlpool + XTS 512/1024/1536 bit #154
    • TrueCrypt RIPEMD160 + XTS 512/1024/1536 bit + boot-mode #154
    • TrueCrypt RIPEMD160 + XTS 256 bit #154
    • TrueCrypt RIPEMD160 + XTS 256 bit + boot-mode #154
    • TrueCrypt SHA512 + XTS 256 bit #154
    • TrueCrypt Whirlpool + XTS 256 bit #154
  • Enhancements:
    • SSHA: #145
      • update JtR label
      • fix regexp
      • add OPENLDAPS flavor
      • add samples
    • AIX: #146
      • AIX (smd5): add samples
      • AIX (ssha256): add samples
      • AIX (ssha512): add samples
      • AIX (ssha1): add samples
    • SSHA-512: #147
      • fix regexp
      • add samples
    • IPMI2 RAKP HMAC-SHA1 #144
      • fix regexp
      • add samples
      • add JtR format
    • Django (PBKDF2-HMAC-SHA256) #160
      • add samples
    • PBKDF2-HMAC-SHA256 #160
      • fix regexp
      • split regexp in 2 (1 for HC & 1 for JtR)
      • add samples
    • Atlassian (PBKDF2-HMAC-SHA1) #160
      • enhance regexp
      • add JtR & HC refs.
      • enhance name
      • add samples
    • PBKDF2-HMAC-SHA1 (Cryptacular) #160
      • enhance name
      • add samples
    • macOS v10.8+ (PBKDF2-HMAC-SHA512) #160
      • enhance regexp
      • enhance name
      • add samples
      • remove duplicate mode
    • GRUB 2 (PBKDF2-HMAC-SHA512) #160
      • enhance regexp
      • enhance name
      • add samples
      • add JtR ref.
    • Ethereum Wallet (PBKDF2-HMAC-SHA256) #160
      • fix regexp
      • enhance name
      • add samples
      • fix JtR ref.
    • Ethereum Presale Wallet (PBKDF2-HMAC-SHA256) #160
      • fix regexp
      • enhance name
      • add samples
      • fix JtR ref.
    • Python passlib (PBKDF2-HMAC-SHA512) #160
      • fix name
      • add HC ref.
      • add samples
    • Python passlib (PBKDF2-HMAC-SHA256) #160
      • fix name
      • remove JtR ref.
      • enhance regexp
    • Python passlib (PBKDF2-HMAC-SHA1) #160
      • enhance regexp
      • remove JtR ref.
      • add samples
    • PBKDF2-HMAC-SHA1 #160
      • fix regexp
      • add a special case sample
    • Telegram Desktop #160
      • merge Telegram Desktop 1.3.9 into Telegram Desktop < v2.1.14 (PBKDF2-HMAC-SHA1)
      • update samples
      • add HC refs.
    • SAP CODVN F/G (PASSCODE)
      • fix regexp
      • add samples
    • SAP CODVN B (BCODE)
      • fix regexp
      • add samples
    • SAP CODVN H (PWDSALTEDHASH) iSSHA-1
      • add samples
      • enhance regexp
    • Telegram Mobile App Passcode (SHA256)
      • add samples
    • Updated hash names in commons.json to reflect prototypes.json changes
  • Documentation:
    • added a man page
  • Chore:
    • Change indentation from 4 spaces to tabs in data/*.json to save dozens of KB

[1.5.0]

  • Additions:
    • blake2s
    • sm3
    • Shake-128
    • Shake-256
    • Shake-512
    • BLAKE3
    • HighwayHash
    • Streebog-256
    • Streebog-512
    • Add an ascii-art option
  • Enhancements:
    • Colors:
      • help message is colored
      • change reference colors to match the same theme
    • NTLM: #139
      • Add recognition for common dump format
      • Add samples
    • argon2id:
      • Add samples
    • SHA-1, SHA-224, SHA-256, SHA-384:
      • Add samples
    • BLAKE2-512, BLAKE2-224, BLAKE2-256, BLAKE2-384:
      • Add samples
      • Enhance name
    • Keccak-224, Keccak-384:
      • Add samples
    • Keccak-256, Keccak-512:
      • Add samples
      • Alternative format
    • SHA3-224, SHA3-256, SHA3-384, SHA3-512:
      • Add samples
    • Whirlpool
      • Add samples
    • Snefru-128, Snefru-256:
      • Add samples
    • MD2, MD4:
      • Add samples
    • Tiger-128, Tiger-160, Tiger-192:
      • Add samples
      • Alternative format
      • 3-4 rounds variant
    • All Skein:
      • Add samples
    • Gost, Gost Crypto:
      • Add samples
    • Adler, CRC-32, FNV:
      • Add samples
    • Joaat:
      • Add samples
    • All Haval:
      • Add samples
  • Changes:
    • All regexp will now use \A and \Z instead of ^ and $ to prevent multi-line false positives
    • Make the samples command case insensitive
  • Chore:
    • Add support for Ruby 3.2
    • Add project reference in help message

[1.4.1]

  • Additions:
    • scrypt Crypt
    • ScryptKDF
    • yescrypt #130
    • gost-yescrypt #130
    • OpenSSH private keys #131
    • BitLocker #134
    • Open Document Format (ODF) 1.2 (SHA-256, AES) #135
    • Open Document Format (ODF) 1.1 (SHA-1, Blowfish) #135
    • SIP digest authentication (MD5) #136
  • Enhancements:
    • scrypt:
      • Add samples
    • Cisco Type 9 (scrypt)
      • Add samples
      • Enhance name
      • Fix JtR ref.
    • Cisco Type 8 (PBKDF2-SHA256)
      • Add samples
      • Enhance name
      • Fix JtR ref.
    • Cisco Type 4 (Raw SHA256)
      • Add samples
      • Enhance name
      • Fix JtR ref.
    • Cisco Type 7 (XOR)
      • Add samples
      • Enhance name
    • Cisco Type 5 (MD5)
      • Add samples
      • Enhance name
      • Fix regexp
    • Cisco-ASA (MD5)
      • Add samples
    • Cisco-PIX (MD5)
      • Add samples
    • BSDi Crypt
      • Add samples
    • Sun / Solaris MD5 Crypt
      • Add samples
      • Enhance name
    • SHA-256 Crypt
      • Add samples
    • SHA-512 Crypt
      • Add samples
    • NTHash (FreeBSD Variant)
      • Add samples
    • RACF
      • Add samples
    • DNSSEC (NSEC3)
      • Add samples
    • Lastpass #133
      • Add samples
      • Fix regexp
      • Add several variants
      • Add JtR support
    • Woltlab Burning Board 3.x
      • Add samples
    • Radmin 2
      • Add samples
    • SipHash
      • Add samples
  • Documentation:
    • Comparison to HashData
  • Chore:
    • Stop testing on Ruby 2.5 because Github Action (CI) has some issue with it.

[1.4.0]

  • Additions:
    • AzureAD #93
    • HTTP Digest access authentication #94
    • IPB 2.x (Invision Power Board) #95
    • Amazon AWS4-HMAC-SHA256 #126
    • Bitcoin WIF private key (P2PKH), compressed #126
    • Bitcoin WIF private key (P2PKH), uncompressed #126
    • Bitcoin WIF private key (P2WPKH, Bech32), compressed #126
    • Bitcoin WIF private key (P2WPKH, Bech32), uncompressed #126
    • Bitcoin WIF private key (P2SH(P2WPKH)), compressed #126
    • Bitcoin WIF private key (P2SH(P2WPKH)), uncompressed #126
    • BLAKE2-512($pass.$salt) #126
    • BLAKE2-512($salt.$pass) #126
    • DPAPI masterkey file v1 (context 1 and 2) #126
    • DPAPI masterkey file v1 (context 3) #126
    • DPAPI masterkey file v2 (context 1 and 2) #126
    • DPAPI masterkey file v2 (context 3) #126
    • Exodus Desktop Wallet #126
    • Flask Session Cookie #126
    • KeePass 1 AES / without keyfile #126
    • KeePass 1 Twofish / with keyfile #126
    • KeePass 1 Twofish / without keyfile #126
    • KeePass 2 AES / without keyfile #126
    • Keepass 2 AES / with keyfile #126
    • KeePass 2 ChaCha20 (KDBX 3) / without keyfile #126
    • Kerberos 5 DB etype 17 #126
    • Kerberos 5 DB etype 18 #126
    • Kerberos 5 DB etype 3
    • Kerberos 5 TGT
    • Kerberos 4 TGT
    • PostgreSQL #126
    • PostgreSQL SCRAM-SHA-256 #126
    • Radmin3 #126
    • Teamspeak 3 (channel hash) #126
    • Terra Station Wallet #126
    • bcrypt(sha512($pass)) / bcryptsha512 #126
    • md5(sha1($pass).$salt) #126
    • sha1($salt.sha1(utf16le($username).':'.utf16le($pass))) #126
    • sha256($salt.sha256_raw($pass)) #126
  • Enhancements:
    • 7-zip: #118
      • Add samples
      • Match variants with optional fields
    • WinZip: #118
      • Add samples
      • Enhance regexp, 7th token can be at max 0x200000 * 4 * 2
    • SecureZip: #118
      • Add samples
    • PKZIP: #118
      • Add samples
      • Add HC codes
      • Add several sub-variants
    • PostgreSQL CRAM (MD5): #126
      • Add samples
      • Enhance regexp
    • many Kerberos 5 types:
      • Add samples
    • sha1 / RIPEMD-160
      • Enhance regexp
    • sha256(sha256_raw($pass)) / sha256($salt.sha256($pass)) / sha256(sha256($pass).$salt)
      • add HC
      • add sample
    • Hide some uncommon hash types (not removed but set as extended)
  • CLI:
    • Now can read hash from STDIN
    • New command to display hash samples
  • Lib:
    • New class method to find hash samples
  • Chore:
    • Fix github action ruby workflow
  • Install:
    • Can now be installed on Debian with a .deb
    • Can now be installed on Void Linux
  • Documentation:
    • Comparison to houndsniff
    • Add some legal terms

[1.3.0]

  • Chore:
    • Add support for Ruby 3.1
    • Remove nodejs package lock
    • Update ruby version in Dockerfile
  • Documentation:
    • Add pass unlock step to build docker (DockerHub) for the publishing page

[1.2.3]

  • Additions:
    • CRC-32C #101
    • CRC64Jones #101
    • MultiBit Wallet #101
      • MultiBit Classic >= 0.5.19 .wallet
      • MultiBit Classic =< 0.5.18 .wallet
      • MultiBit HD wallet >= 0.5.0
    • MurmurHash3 #101
    • Windows Hello PIN/Password #101
    • VirtualBox #89
      • VirtualBox (PBKDF2-HMAC-SHA256 & AES-128-XTS)
      • VirtualBox (PBKDF2-HMAC-SHA256 & AES-256-XTS)
    • SNMPv3 #88
      • SNMPv3 HMAC-MD5-96/HMAC-SHA1-96
      • SNMPv3 HMAC-MD5-96
      • SNMPv3 HMAC-SHA1-96
      • SNMPv3 HMAC-SHA224-128
      • SNMPv3 HMAC-SHA256-192
      • SNMPv3 HMAC-SHA384-256
      • SNMPv3 HMAC-SHA512-384
    • Ruby on Rails Restful Auth (one round, no sitekey) #91
    • NetNTLM (NT) #92
      • NetNTLMv1 / NetNTLMv1+ESS (NT)
      • NetNTLMv2 (NT)
  • Enhancements:
    • NetNTLM (vanilla)
      • Better regexp
      • Better description
      • Add samples
  • Chore:
    • MFA required for gem release
    • Better publishing documentation
    • Add a rake task to count the number of hash types supported
  • Dependencies:
    • Update to yard v0.9.27
      • Move from Redcarpet to CommonMarker markdown provider

[1.2.2]

  • Additions:
    • MD6 (128, 256, 512) #84
    • Apple iWork #65
    • SQLCipher #66
    • Stuffit5 #67
    • Stargazer Stellar Wallet XLM #71
    • bcrypt(md5($pass)) #72
    • bcrypt(sha1($pass)) #72
    • MurmurHash #73
    • KNX IP Secure - Device Authentication Code #74
    • Mozilla key4.db #75
    • Mozilla key3.db #75
    • OpenEdge Progress 4GL Encode #76
    • AES-128-ECB NOKDF (PT = $salt, key = $pass) #77
    • AES-192-ECB NOKDF (PT = $salt, key = $pass) #77
    • AES-256-ECB NOKDF (PT = $salt, key = $pass) #77
    • Bitwarden #79
    • XMPP SCRAM PBKDF2-SHA1 #80
    • Apple macOS Keychain #81
    • PKCS#8 Private Keys (PBKDF2-HMAC-SHA1 + 3DES/AES) #78
    • PKCS#8 Private Keys (PBKDF2-HMAC-SHA256 + 3DES/AES) #78
  • Enhancements:
    • MD5 APR: #83
      • add JtR ref.
      • add $1$ and {smd5} prefixes support
      • add crypt(3) name
      • add samples

[1.2.1]

  • Additions:
    • iPhone passcode #56
    • MetaMask Wallet #56
    • FortiGate256 #59
    • Umbraco HMAC-SHA1 #60
    • Jetico BestCrypt v3 Volume Encryption #61
    • Jetico BestCrypt Container Encryption (.jbc) #61
    • MongoDB (system / network) #62
    • MongoDB SCRAM PBKDF2-SHA1 #62
    • MongoDB ServerKey SCRAM-SHA-1 #62
    • MongoDB ServerKey SCRAM-SHA-256 #62
    • sha1($salt.sha1($pass.$salt)) #63
    • PDF 1.4 - 1.6 (Acrobat 5 - 8) - edit password #70
  • Enhancements:
    • DCC & DCC2:
      • better description
      • accept more formats #58
    • Telegram Desktop
      • add HC ref. #64
    • Dahua
      • add HC ref. #68
      • better description #68
    • Add samples
      • DCC & DCC2 #58
      • Telegram Desktop #64
      • Dahua #68
      • Microsoft Office 2016 - SheetProtection #69
      • PDF 1.4 - 1.6 (Acrobat 5 - 8) #70
  • Fixes:
    • DCC & DCC2: correct JtR hash name #57
  • Chore:
    • Test: Display algo name when failing

[1.2.0]

  • Breaking changes
    • Drop ruby 2.4 support
  • Additions:
  • Enhancements:
    • Add samples
      • Eggdrop IRC Bot #48
      • DEScrypt #48

[1.1.3]

  • Code:
    • add a samples attributes to Chf
  • Additions:
  • Enhancements:
    • BSDi Crypt #30
    • MD5 #31
    • sha1crypt #40
    • PBKDF2-SHA1 #41
    • PBKDF2-SHA256 #42
    • PBKDF2-HMAC-SHA256 (PHP)
    • bitcoin #43
    • PKZIP #44
    • SHA-512
  • Fixes:
  • Chore:
    • Add prototypes tests
  • Documentation:
    • update examples

[1.1.2]

  • code: #27
    • "office"
      • add JtR support for Microsoft Office 2007 & 2010
      • add JtR support for Microsoft Office 2019 (same as 2013)
      • add HC support for Microsoft Office 2016 - SheetProtection
    • "oldoffice"
      • add JtR support for Microsoft Office ≤ 2003 (SHA1+RC4)
    • Telegram
      • add JtR support for Telegram Desktop 1.3.9
      • add JtR support for Telegram Desktop ≥ 2.1.14 beta / 2.2.0
      • add HC support for Telegram Mobile App Passcode (SHA256)
    • Blake2
      • add JtR support for Blake2 hash using $BLAKE2$ format
      • remove HC support for Blake2 hash using the normal format
    • PDF
      • add PDF 1.1 - 1.3 (Acrobat 2 - 4)
      • add PDF 1.1 - 1.3 (Acrobat 2 - 4), collider #1
      • add PDF 1.1 - 1.3 (Acrobat 2 - 4), collider #2
      • fix PDF 1.4 - 1.6 (Acrobat 5 - 8)
      • add PDF 1.7 Level 3 (Acrobat 9)
      • add PDF 1.7 Level 8 (Acrobat 10 - 11)
    • 7-zip
    • SecureZIP
      • SecureZIP AES-128
      • SecureZIP AES-192
      • SecureZIP AES-256
    • PKZIP
      • PKZIP Master Key
      • PKZIP Master Key (6 byte optimization)
      • PKZIP

[1.1.1]

  • code:
    • common algorithms are sorted first
    • add some BLAKE2 length variants
    • add some Kerberos variants
    • add some cryptocurrency wallets (bitcoin, ethereum, monero)
    • add Android Backup
    • add WinZip
    • add iTunes backup

[1.1.0]

  • code:
    • new extended (with salts) hash types support for JtR #17
    • add Hashcat hashes
      • SHA-224
    • add John hashes #17
      • RIPEMD-XXX
      • HAVAL-XXX
      • PANAMA
      • SKEIN-XXX
      • SHA3_XXX
      • KECCAK_XXX
  • dependencies:
    • update
    • more tolerant about the ruby version required
    • ruby 3.0 support
  • doc: update
  • CI: add GitHub action

[1.0.1]

  • bin: code simplification & lint
  • test: code lint
  • repo: from Orange-Cyberdefense/rabid to noraj/rabid
  • dependencies: update
  • rubocop: new rules for new cops
  • deprecation: now requires ruby 2.7+ instead of 2.4+

[1.0.0]

  • lib: Fix a file loading path of prototypes
  • doc: Fix gem name
  • bin: remove useless haiti_setup

[0.0.1]

  • Initial version