haiti-hash 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/data/commons.json +29 -0
- data/data/prototypes.json +192 -3
- data/lib/haiti.rb +7 -0
- data/lib/haiti/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 482916c210a6e719f9399388f466ff3a394abeea38805aa6075113edcdb24320
|
4
|
+
data.tar.gz: 2ed345caa5a2491c2d6d1e2bd510abd06d7f53a59a46af07a25b08412ff9e4d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 51d6ec610fdc96bdd94e84a4ba33eb037fc73c75e91ca329cb5ed9285e603d7899a0ea8c60d687fd6fd7c50c23129f1f193a464a4bfa548c63d8a0417456fa11
|
7
|
+
data.tar.gz: 3ae92a1ddef2d64ed8ee203ba0c592e0e727931e04f1d551ed30bc4824237e9b5496af3f11db98660019bdae5cc80210217f89b6bfc0d6224cb418a44346d961
|
data/data/commons.json
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
[
|
2
|
+
"MD5",
|
3
|
+
"SHA-1",
|
4
|
+
"SHA-256",
|
5
|
+
"SHA-512",
|
6
|
+
"bcrypt",
|
7
|
+
"NTLM",
|
8
|
+
"NetNTLMv2",
|
9
|
+
"NetNTLMv1-VANILLA / NetNTLMv1+ESS",
|
10
|
+
"BLAKE2-512",
|
11
|
+
"SHA3-224",
|
12
|
+
"SHA3-256",
|
13
|
+
"SHA3-512",
|
14
|
+
"Keccak-256",
|
15
|
+
"Keccak-512",
|
16
|
+
"CRC-32B",
|
17
|
+
"CRC-32",
|
18
|
+
"CRC-16",
|
19
|
+
"CRC-64",
|
20
|
+
"GOST R 34.11-94",
|
21
|
+
"Apache MD5",
|
22
|
+
"MD5(APR)",
|
23
|
+
"md5apr1",
|
24
|
+
"Domain Cached Credentials",
|
25
|
+
"Domain Cached Credentials 2",
|
26
|
+
"LM",
|
27
|
+
"RIPEMD-160",
|
28
|
+
"scrypt"
|
29
|
+
]
|
data/data/prototypes.json
CHANGED
@@ -713,7 +713,7 @@
|
|
713
713
|
{
|
714
714
|
"john": null,
|
715
715
|
"hashcat": 1600,
|
716
|
-
"extended":
|
716
|
+
"extended": false,
|
717
717
|
"name": "md5apr1"
|
718
718
|
}
|
719
719
|
]
|
@@ -1238,6 +1238,12 @@
|
|
1238
1238
|
"hashcat": null,
|
1239
1239
|
"extended": false,
|
1240
1240
|
"name": "Skein-224"
|
1241
|
+
},
|
1242
|
+
{
|
1243
|
+
"john": null,
|
1244
|
+
"hashcat": null,
|
1245
|
+
"extended": false,
|
1246
|
+
"name": "BLAKE2-224"
|
1241
1247
|
}
|
1242
1248
|
]
|
1243
1249
|
},
|
@@ -1482,6 +1488,12 @@
|
|
1482
1488
|
"hashcat": null,
|
1483
1489
|
"extended": false,
|
1484
1490
|
"name": "PANAMA"
|
1491
|
+
},
|
1492
|
+
{
|
1493
|
+
"john": null,
|
1494
|
+
"hashcat": null,
|
1495
|
+
"extended": false,
|
1496
|
+
"name": "BLAKE2-256"
|
1485
1497
|
}
|
1486
1498
|
]
|
1487
1499
|
},
|
@@ -1665,6 +1677,12 @@
|
|
1665
1677
|
"hashcat": null,
|
1666
1678
|
"extended": true,
|
1667
1679
|
"name": "Skein-384"
|
1680
|
+
},
|
1681
|
+
{
|
1682
|
+
"john": null,
|
1683
|
+
"hashcat": null,
|
1684
|
+
"extended": false,
|
1685
|
+
"name": "BLAKE2-384"
|
1668
1686
|
}
|
1669
1687
|
]
|
1670
1688
|
},
|
@@ -1745,7 +1763,7 @@
|
|
1745
1763
|
"john": "raw-blake2",
|
1746
1764
|
"hashcat": 600,
|
1747
1765
|
"extended": false,
|
1748
|
-
"name": "
|
1766
|
+
"name": "BLAKE2-512"
|
1749
1767
|
},
|
1750
1768
|
{
|
1751
1769
|
"john": "skein-512",
|
@@ -2055,7 +2073,95 @@
|
|
2055
2073
|
"john": "krb5pa-md5",
|
2056
2074
|
"hashcat": 7500,
|
2057
2075
|
"extended": false,
|
2058
|
-
"name": "Kerberos 5 AS-REQ Pre-Auth"
|
2076
|
+
"name": "Kerberos 5 AS-REQ Pre-Auth etype 23"
|
2077
|
+
}
|
2078
|
+
]
|
2079
|
+
},
|
2080
|
+
{
|
2081
|
+
"regex": "^\\$krb5tgs\\$23\\$\\*[^*]*\\*\\$[a-f0-9]{32}\\$[a-f0-9]{64,40960}$",
|
2082
|
+
"modes": [
|
2083
|
+
{
|
2084
|
+
"john": "krb5tgs",
|
2085
|
+
"hashcat": 13100,
|
2086
|
+
"extended": false,
|
2087
|
+
"name": "Kerberos 5 TGS-REP etype 23"
|
2088
|
+
}
|
2089
|
+
]
|
2090
|
+
},
|
2091
|
+
{
|
2092
|
+
"regex": "^\\$krb5asrep\\$23\\$[^:]+:[a-f0-9]{32,32}\\$[a-f0-9]{64,40960}$",
|
2093
|
+
"modes": [
|
2094
|
+
{
|
2095
|
+
"john": "krb5asrep",
|
2096
|
+
"hashcat": 18200,
|
2097
|
+
"extended": false,
|
2098
|
+
"name": "Kerberos 5 AS-REP etype 23"
|
2099
|
+
}
|
2100
|
+
]
|
2101
|
+
},
|
2102
|
+
{
|
2103
|
+
"regex": "^\\$krb5asrep\\$18\\$[^:]+:[a-f0-9]{32,32}\\$[a-f0-9]{64,40960}$",
|
2104
|
+
"modes": [
|
2105
|
+
{
|
2106
|
+
"john": "krb5asrep",
|
2107
|
+
"hashcat": null,
|
2108
|
+
"extended": false,
|
2109
|
+
"name": "Kerberos 5 AS-REP etype 18"
|
2110
|
+
}
|
2111
|
+
]
|
2112
|
+
},
|
2113
|
+
{
|
2114
|
+
"regex": "^\\$krb5asrep\\$17\\$[^:]+:[a-f0-9]{32,32}\\$[a-f0-9]{64,40960}$",
|
2115
|
+
"modes": [
|
2116
|
+
{
|
2117
|
+
"john": "krb5asrep",
|
2118
|
+
"hashcat": null,
|
2119
|
+
"extended": false,
|
2120
|
+
"name": "Kerberos 5 AS-REP etype 17"
|
2121
|
+
}
|
2122
|
+
]
|
2123
|
+
},
|
2124
|
+
{
|
2125
|
+
"regex": "^\\$krb5tgs\\$17\\$[^$]{1,512}\\$[^$]{1,512}\\$[^$]{1,4}?\\$?[a-f0-9]{1,32}\\$[a-f0-9]{64,40960}$",
|
2126
|
+
"modes": [
|
2127
|
+
{
|
2128
|
+
"john": null,
|
2129
|
+
"hashcat": 19600,
|
2130
|
+
"extended": false,
|
2131
|
+
"name": "Kerberos 5 TGS-REP etype 17 (AES128-CTS-HMAC-SHA1-96)"
|
2132
|
+
}
|
2133
|
+
]
|
2134
|
+
},
|
2135
|
+
{
|
2136
|
+
"regex": "^\\$krb5tgs\\$18\\$[^$]{1,512}\\$[^$]{1,512}\\$[^$]{1,4}?\\$?[a-f0-9]{1,32}\\$[a-f0-9]{64,40960}$",
|
2137
|
+
"modes": [
|
2138
|
+
{
|
2139
|
+
"john": null,
|
2140
|
+
"hashcat": 19700,
|
2141
|
+
"extended": false,
|
2142
|
+
"name": "Kerberos 5 TGS-REP etype 18 (AES256-CTS-HMAC-SHA1-96)"
|
2143
|
+
}
|
2144
|
+
]
|
2145
|
+
},
|
2146
|
+
{
|
2147
|
+
"regex": "^\\$krb5pa\\$17\\$[^$]{1,512}\\$[^$]{1,512}\\$[a-f0-9]{104,112}$",
|
2148
|
+
"modes": [
|
2149
|
+
{
|
2150
|
+
"john": "krb5pa-sha1",
|
2151
|
+
"hashcat": 19800,
|
2152
|
+
"extended": false,
|
2153
|
+
"name": "Kerberos 5 AS-REQ Pre-Auth etype 17"
|
2154
|
+
}
|
2155
|
+
]
|
2156
|
+
},
|
2157
|
+
{
|
2158
|
+
"regex": "^\\$krb5pa\\$18\\$[^$]{1,512}\\$[^$]{1,512}\\$[a-f0-9]{104,112}$",
|
2159
|
+
"modes": [
|
2160
|
+
{
|
2161
|
+
"john": "krb5pa-sha1",
|
2162
|
+
"hashcat": 19900,
|
2163
|
+
"extended": false,
|
2164
|
+
"name": "Kerberos 5 AS-REQ Pre-Auth etype 18"
|
2059
2165
|
}
|
2060
2166
|
]
|
2061
2167
|
},
|
@@ -2781,5 +2887,88 @@
|
|
2781
2887
|
"name": "PDF 1.4 - 1.6 (Acrobat 5 - 8)"
|
2782
2888
|
}
|
2783
2889
|
]
|
2890
|
+
},
|
2891
|
+
{
|
2892
|
+
"regex": "^\\$bitcoin\\$[0-9]{2,4}\\$[a-fA-F0-9$]{250,350}$",
|
2893
|
+
"modes": [
|
2894
|
+
{
|
2895
|
+
"john": "bitcoin",
|
2896
|
+
"hashcat": 11300,
|
2897
|
+
"extended": false,
|
2898
|
+
"name": "Bitcoin/Litecoin Wallet"
|
2899
|
+
}
|
2900
|
+
]
|
2901
|
+
},
|
2902
|
+
{
|
2903
|
+
"regex": "^\\$ethereum\\$[a-z0-9*]{150,1400}$",
|
2904
|
+
"modes": [
|
2905
|
+
{
|
2906
|
+
"john": "ethereum-presale-opencl",
|
2907
|
+
"hashcat": 16300,
|
2908
|
+
"extended": false,
|
2909
|
+
"name": "Ethereum Presale Wallet"
|
2910
|
+
}
|
2911
|
+
]
|
2912
|
+
},
|
2913
|
+
{
|
2914
|
+
"regex": "^\\$ethereum\\$[a-z0-9*]{150,250}$",
|
2915
|
+
"modes": [
|
2916
|
+
{
|
2917
|
+
"john": "Ethereum Wallet",
|
2918
|
+
"hashcat": 15600,
|
2919
|
+
"extended": false,
|
2920
|
+
"name": "ethereum-opencl"
|
2921
|
+
}
|
2922
|
+
]
|
2923
|
+
},
|
2924
|
+
{
|
2925
|
+
"regex": "^\\$monero\\$(0)\\*[a-f0-9]{32,4096}$",
|
2926
|
+
"modes": [
|
2927
|
+
{
|
2928
|
+
"john": "monero",
|
2929
|
+
"hashcat": null,
|
2930
|
+
"extended": false,
|
2931
|
+
"name": "monero Wallet"
|
2932
|
+
}
|
2933
|
+
]
|
2934
|
+
},
|
2935
|
+
{
|
2936
|
+
"regex": "^\\$ab\\$[0-9]{1}\\*[0-9]{1}\\*[0-9]{1,6}\\*[a-f0-9]{128}\\*[a-f0-9]{128}\\*[a-f0-9]{32}\\*[a-f0-9]{192}$",
|
2937
|
+
"modes": [
|
2938
|
+
{
|
2939
|
+
"john": "AndroidBackup",
|
2940
|
+
"hashcat": 18900,
|
2941
|
+
"extended": false,
|
2942
|
+
"name": "Android Backup"
|
2943
|
+
}
|
2944
|
+
]
|
2945
|
+
},
|
2946
|
+
{
|
2947
|
+
"regex": "^\\$zip2\\$\\*[0-9]{1}\\*[0-9]{1}\\*[0-9]{1}\\*[a-f0-9]{16,32}\\*[a-f0-9]{1,6}\\*[a-f0-9]{1,6}\\*[a-f0-9]{0,16384}\\*[a-f0-9]{20}\\*\\$\/zip2\\$$",
|
2948
|
+
"modes": [
|
2949
|
+
{
|
2950
|
+
"john": "ZIP",
|
2951
|
+
"hashcat": 13600,
|
2952
|
+
"extended": false,
|
2953
|
+
"name": "WinZip"
|
2954
|
+
}
|
2955
|
+
]
|
2956
|
+
},
|
2957
|
+
{
|
2958
|
+
"regex": "^\\$itunes_backup\\$\\*[0-9]{1,2}\\*[a-f0-9]{80}\\*[0-9]{1,6}\\*[a-f0-9]{40}\\*[0-9]{0,10}\\*[a-f0-9]{0,40}$",
|
2959
|
+
"modes": [
|
2960
|
+
{
|
2961
|
+
"john": "itunes-backup",
|
2962
|
+
"hashcat": 14700,
|
2963
|
+
"extended": false,
|
2964
|
+
"name": "iTunes backup < 10.0"
|
2965
|
+
},
|
2966
|
+
{
|
2967
|
+
"john": "itunes-backup",
|
2968
|
+
"hashcat": 14800,
|
2969
|
+
"extended": false,
|
2970
|
+
"name": "iTunes backup >= 10.0"
|
2971
|
+
}
|
2972
|
+
]
|
2784
2973
|
}
|
2785
2974
|
]
|
data/lib/haiti.rb
CHANGED
@@ -11,6 +11,7 @@ class HashIdentifier
|
|
11
11
|
# Constants
|
12
12
|
include Version
|
13
13
|
PROTOTYPES = JSON.parse(File.read(File.join(__dir__, '../data/prototypes.json')))
|
14
|
+
COMMONS = JSON.parse(File.read(File.join(__dir__, '../data/commons.json')))
|
14
15
|
|
15
16
|
# @return [String] the hash (as provided)
|
16
17
|
# @example
|
@@ -26,6 +27,7 @@ class HashIdentifier
|
|
26
27
|
def initialize(hash)
|
27
28
|
@hash = hash
|
28
29
|
@type = identify(hash)
|
30
|
+
sort_commons
|
29
31
|
end
|
30
32
|
|
31
33
|
private
|
@@ -46,4 +48,9 @@ class HashIdentifier
|
|
46
48
|
end
|
47
49
|
return res
|
48
50
|
end
|
51
|
+
|
52
|
+
# Sort common hash types first
|
53
|
+
def sort_commons
|
54
|
+
@type.sort_by! { |e| COMMONS.include?(e.name) ? 0 : 1 }
|
55
|
+
end
|
49
56
|
end
|
data/lib/haiti/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: haiti-hash
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexandre ZANNI
|
@@ -161,6 +161,7 @@ files:
|
|
161
161
|
- LICENSE.txt
|
162
162
|
- bin/haiti
|
163
163
|
- bin/haiti_console
|
164
|
+
- data/commons.json
|
164
165
|
- data/prototypes.json
|
165
166
|
- lib/haiti.rb
|
166
167
|
- lib/haiti/hash.rb
|