Tools to play with wordlists
Project description
wordlistools
Wordlistools is a collection of tools to play with wordlists. This tool is meant to help bruteforcing in penetration testing. The project is still under development.
Features
- Can be used as command lines or as a python library
- Can be used with stdin redirection
|
- Easily extensible, you can add your own plugins on your home directory
~/.koalak/wordlistools/plugins
usage: wordlistool [-h] {product,minus,count,merge,search,match,backup,parse,split,sort,unique,duplicate,occurrence,sample} ...
You can add your own plugin tools by adding a python script to /home/nazime/.koalak/wordlistools/plugins
positional arguments:
{product,minus,count,merge,search,match,backup,parse,split,sort,unique,duplicate,occurrence,sample}
Tool to run
product Product two or more wordlists
minus Words that are in the first wordlist but not in the others
count Count the number of words in one or more wordlists
merge Merge two or more wordlists
search Search words in one or more wordlists with filename like pattern
match Search words in one or more wordlists with regular expression
backup Extends backup extensions to one or more wordlists
parse Convert tool output to a wordlist (Example gobuster output)
split Split wordlist into many wordlists with a specific separator
sort Sort wordlist
unique Remove duplicate from a wordlist
duplicate Show all duplicated words
occurrence Show all duplicated words with their occurrences
sample Output a random number of words from the wordlist
optional arguments:
-h, --help show this help message and exit
Install
pip3 install wordlistools
Demonstration
Add a tool
You can easily add your own plugin in wordlistools. Create a python file in ~/koalak/wordlistools/plugins/
and subclass BasePlugin
, wordlistools will automatically execute your script and register your plugin.
You have to define the following attributes
- name(str): the name of your plugin (must be unique)
- description(str): description of what your will plugin do, it will be displayed in the help CLI
Implement the following abstract method and add the decorator classmethod
- init_parser(parser: argparse.ArgumentParser): to configure the CLI arguments by using the standard library argparse
- run: implement here the logic of your plugin, take any thing as parameters and must return an iterator of strings
- cmd(args): must call the run functions based on the args arguments of argparse
Plugin Template
import argparse
from wordlistools import BaseTool
class MyTool(BaseTool):
name = "myplugin"
description = "Do nothing"
@classmethod
def init_parser(cls, parser: argparse.ArgumentParser):
parser.add_argument("wordlists", help="return the same wordlist", nargs="+")
@classmethod
def cmd(cls, args):
return cls.run(*args.wordlists)
@classmethod
def run(cls, *wordlists):
wordlists = cls.normalize_wordlists(wordlists)
for e in itertools.chain(*wordlists):
yield e
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file wordlistools-0.1.2.tar.gz
.
File metadata
- Download URL: wordlistools-0.1.2.tar.gz
- Upload date:
- Size: 14.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31b0973c3fdee2b325879e2fbf8026d7e3eb9ee6abfb7a78e8a95ce981a96e24 |
|
MD5 | a8a6e6b0b02239f58542265d8282999c |
|
BLAKE2b-256 | a871fa0a3959491145459d1c6fcd2fe5a98cac50a5250d36c97853d776a5ac15 |
File details
Details for the file wordlistools-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: wordlistools-0.1.2-py3-none-any.whl
- Upload date:
- Size: 14.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80f183038bd2529fa7543434e9c8babe6197da1f76b9db4dbd529bac2d8a5f91 |
|
MD5 | 0185593a2f11ee8ab43eaf60afb900a5 |
|
BLAKE2b-256 | b3a15e132295bbba15ba7060f8ded43513b4684e1c325e54b680db4ba95e6f83 |