48 lines
2.8 KiB
Markdown
48 lines
2.8 KiB
Markdown
# psudohash
|
|
[](https://www.python.org/) [](https://github.com/t3l3machus/psudohash/blob/main/LICENSE)
|
|
<img src="https://img.shields.io/badge/Maintained%3F-Yes-23a82c">
|
|
|
|
## Purpose
|
|
psudohash is a password generator that imitates certain commonly used password creation patterns that humans use, like substituting a word's characters with symbols or numbers, using char-case variations, adding a common padding before or after the word etc. It is keyword-based and highly customizable.
|
|
|
|
### Pentesting Corporate Environments
|
|
System administrators and employees tend to use the Company's name (or a subset of the name) as password for Wi-Fi access points, network devices and application or even domain accounts. With the company's name as input and the most basic options, psudohash will produce a wordlist with all possible character substitution and case variations and more. Take a look at the following example:
|
|

|
|
|
|
The script includes a basic character substitution schema. You can add/modify character substitution patterns by edditing the source and following the data structure presented below (default):
|
|
```
|
|
transformations = [
|
|
{'a' : '@'},
|
|
{'b' : '8'},
|
|
{'e' : '3'},
|
|
{'g' : ['9', '6']},
|
|
{'i' : ['1', '!']},
|
|
{'o' : '0'},
|
|
{'s' : ['$', '5']},
|
|
{'t' : '7'}
|
|
]
|
|
```
|
|
### Individuals
|
|
When it comes to people, i think we all have (more or less) set passwords using a mutation of one or more words that mean something to us, like our name or wife/kid/pet/band names, sticking the year we were born at the end or maybe a super secure padding like "!@#". Well, guess what?
|
|
|
|

|
|
|
|
## Installation
|
|
No special requirements. Just clone the repo and make the script executable:
|
|
```
|
|
git clone https://github.com/t3l3machus/psudohash
|
|
cd ./psudohash
|
|
chmod +x psudohash.py
|
|
```
|
|
## Usage
|
|
```
|
|
./psudohash.py [-h] -w WORDS [-an LEVEL] [-nl LIMIT] [-y YEARS] [-ap VALUES] [-cpb] [-cpa] [-cpo] [-o FILENAME] [-q]
|
|
```
|
|
The help dialog [ -h, --help ] includes usage details and examples.
|
|
## Usage Tips
|
|
1. Combining options --years and --append-numbering with a --numbering-limit >= 90 will most likely produce some duplicate words because of the mutation patterns implemented by the tool.
|
|
2. If you add custom paddings and/or modify the predefined custom paddings directly in the script along with the --append-numbering option, there is a small chance of duplicate words occuring. psudohash includes word filtering controls but for speed's sake, those are limited.
|
|
|
|
## Future
|
|
I'm gathering information regarding commonly used password creation patterns to enhance the tool's capabilities.
|