
パスワードリストのエントロピーと辞書に基づく脆弱なパスワードを分析するGo製スクリプト。ペネトレーションテストやフィッシングキャンペーンに有用。
パスワードのリストを分析するGo製スクリプト。
リリースから直接バイナリをダウンロードできます。手動でコンパイルする場合は、以下の手順を検討してください。
git clone https://github.com/am0nt31r0/Password-Analysis.git
cd Password-Analysis
go build -ldflags "-w -s" -o pwdAnalysis
└─$ tree go
go/
├── bin
│ ├── pwdAnalysis
├── src
| ├── github.com
│ └── Xe
│ └── x
│ └── entropy
│ ├── doc.go
│ ├── shannon.go
│ └── shannon_test.go
| ├── Password Analysis
| ├── pw_analysis.go
このスクリプトを正常に実行するには、2つのtxtファイルが必要です。1つ目は分析するパスワードを含むファイル(1行に1パスワード)、2つ目はrockyou.txtのような弱いパスワードの辞書である必要があります。
パスワードを分類するために使用されるエントロピースコアは、KeePassXCで使用されるものと同じです: https://keepassxc.org/blog/2020-08-15-keepassxc-password-healthcheck/
エントロピーのソースコードをsrcディレクトリにダウンロードします:
└─$ tree src
src
├── github.com
│ └── Xe
│ └── x
│ └── entropy
│ ├── doc.go
│ ├── shannon.go
│ └── shannon_test.go
pwdAnalysis pwds.txt rockyou.txt
[+] Password Analysis Software
Starting password analysis of: pwds.txt
Using rockyou.txt as dictionary of comparison.
PASSWORD LENGTH ENTROPY STRENGTH
12345 a 7 21 Poor
user123 7 21 Bad - Dictionary
passwordstrong 14 56 Weak
thisIsit? 9 27 Poor
saQWE1 6 18 Poor
sa#X#2 34 9 27 Poor
QWE123!"# $sds1 15 60 Weak
123456789 9 36 Bad - Dictionary
QWE123!"# $sds1zxczxc4"3r1 a 28 140 Excelent
C3kGUJeV98c234_34 17 68 Strong
Statistics:
- Total passwords analysed: 10.
- Number of excelent passwords: 1.
- Number of strong passwords: 1.
- Number of weak passwords: 2.
- Number of poor passwords: 4.
- Number of bad passwords: 0.
- Number of bad passwords contained in the dictionary: 2.
- The smaller password has the size of 6 characters.
- The biggest password has the size of 28 characters.
- The average size is 12.