Narthex

Modular dictionary generator
git clone git://mcdim.xyz/Narthex.git
Log | Files | Refs | README | LICENSE

README.md (4430B)


      1 # Narthex
      2 <img src="https://mcdim.xyz/projects/n/narthexblack.png" alt="Narthex logo" style="height: 150px; width:150px;"/>
      3 
      4 <p float="left">
      5 <img src="https://img.shields.io/badge/version-1.2.1-blue"/>
      6 <img src="https://img.shields.io/badge/language-C-lightgrey"/>
      7 <img src="https://img.shields.io/badge/lines%20of%20code-1k-lightgreen"/>
      8 <img src="https://img.shields.io/badge/tools-9-green"/>
      9 <img src="https://img.shields.io/badge/dependencies-0-green"/>
     10 <img src="https://img.shields.io/badge/license-GNU%20GPLv3+-yellow"/>
     11 <a href="https://inventory.raw.pm/tools.html#Narthex"/><img src="https://inventory.raw.pm/img/badges/Rawsec-inventoried-FF5050_flat.svg"/></a>
     12 <a href="https://blackarch.org/tools.html"/><img src="https://img.shields.io/badge/BlackArch-included-darkred"/></a>
     13 
     14 </p>
     15 
     16 Narthex (Greek: Νάρθηξ, νάρθηκας) is a modular & minimal dictionary generator for Unix and Unix-like operating system written in C and Shell. It contains autonomous Unix-style programs for the creation of personalised dictionaries that can be used for password recovery & security assessment. The programs make use of Unix text streams for the collaboration with each other, according to the Unix philosophy. It is licensed under the GPL v3.0.
     17 
     18 *I made a video to explain the usage of Narthex:*
     19 https://www.youtube.com/watch?v=U0UmCeLJSkk&t=938s
     20 (the timestamp is intentional)
     21 
     22 ## The tools
     23 + *nchance*   -  A capitalization tool that appends the results to the bottom of the dictionary.
     24 + *ninc*      -  A incrementation tool that multiplies alphabetical lines and appends an n++ at the end of each line.
     25 + *ncom*      -  A combination tool that creates different combinations between the existing lines of the dictionary.
     26 + *nrev*      -  A reversing tool, that appends the reserved versions of the lines at the end of the dictionary.
     27 + *nleet*     -  A leetifier. Replaces characters with Leet equivalents, such as @ instead of a, or 3 instead of e.
     28 + *nclean*    -  A tool for removing passwords that don't meet your criteria (too short, no special characters etc.)
     29 + *napp*      -  A tool that appends characters or words before or after the lines of the dictionary.
     30 + *ngen*      -  A tool that generates permutations of given length & character set (works, but is under development).
     31 + *nwiz*      -  A wizard that asks for the infromation and combines the tools together to create a final dictionary.
     32 
     33 ## Screenshots
     34 <p float="left">
     35 <img src="https://mcdim.xyz/projects/n/screens/narthex2.png" alt="Narthex logo" width=50%/>
     36 <img src="https://mcdim.xyz/projects/n/screens/narthex1.png" alt="Narthex logo" width=38.8%/>
     37 </p>
     38 
     39 ## Dependencies
     40 **Narthex has no hard dependencies**, however there are two building dependencies, `GCC` and `Make`, which are both required in order to easily compile and install the binaries, but not to run them.
     41 
     42 ## Install
     43 In order to install, execute the following commands:
     44 ```
     45 $ git clone https://github.com/MichaelDim02/Narthex.git && cd Narthex
     46 $ sudo make install
     47 ```
     48 
     49 ## Usage
     50 For easy use, there is a wizard program, nwiz, that you can use. Just run
     51 ```
     52 $ nwiz
     53 ```
     54 And it will ask you for the target's information & generate the dictionary for you.
     55 
     56 ## Advanced usage
     57 If you want to make full use of Narthex, you can read the manpages of each tool. What they all do, really, is enhance small dictionaries. They are really minimal, and use Unix text streams to read and output data. For example, save a couple keywords into a textfile ```words.txt``` in a different line each, and run the following
     58 ```
     59 $ cat words.txt | nhance -f | ncom | nleet a:@ | ninc 1 30 > dictionary.txt
     60 ```
     61 and you'll see the results for yourself. Alterantively, you can try this for a larger and more complicated dictionary:
     62 ```
     63 $ cat words.txt | nhance -f | ncom -d .- | ninc 1 200 -d .- | nrev | nleet | napp -c '@#$' > dict1.txt
     64 ```
     65 The above, with just 4 keywords in `words.txt` (one of which was numerical), generated a wordlist of 2279744 passwords (38MB).
     66 
     67 As demonstrated, much like Unix utilities, the tools of Narthex can be thought of as building blocks, where the user has all the power to connect them in different possible ways to generate the desired list of passwords.
     68 
     69 ## Donate
     70 [![paypal](https://mcdim.xyz/media/button_paypal2.png)](https://www.paypal.com/donate/?hosted_button_id=HZXXLD586P5CW)
     71 
     72 More donation options on the website: <a href="https://mcdim.xyz/"/>mcdim.xyz</a>