Coder Social home page Coder Social logo

d4vinci / elpscrk Goto Github PK

View Code? Open in Web Editor NEW
728.0 23.0 114.0 228 KB

An Intelligent wordlist generator based on user profiling, permutations, and statistics. (Named after the same tool in Mr.Robot series S01E01)

License: GNU General Public License v3.0

Python 100.00%
elliot cupp passwords hacking-tool bruteforce brute-force common-passwords credentials pentesting linux

elpscrk's Introduction

Elpscrk - v2.0

An Intelligent common user-password profiler that's named after the same tool in Mr.Robot series S01E01 ๐Ÿ˜„

In simple words, elpscrk will ask you about all info you know about your target then will try to generate every possible password the target could think of, it all depends on the information you give, the flags you activate, and the level of complication you specify.

There are 6 levels of complications in elpscrk for each type of target out there, starts from the simple person which is the default to nerd person, paranoid person till the final boss level which is nuclear level which could generate 1000000 passwords or more. ๐Ÿ˜†

Elpscrk is like cupp, but it's based on permutations and statistics while being memory efficient. So you will get more results in nearly no time, complication levels for each type of user, and very customizable results as you will see in the usage part.

Screenshot

Screenshot

Usage

It's simple you just run the script and will prompt ask you about the info you know about the target then it will make permutations lists of each common mixes of the data as you will see next.

For more advanced usages and customizations, there are some things you need to pay attention to:

  1. Complication levels

It says how simple you want the generated passwords to be. So, for example given names:

- At level 0, which is the default, each name you give will be converted to (UPPERCASE, lowercase), the First letter will be converted to (UPPERCASE, lowercase), 
  and first two letter will be converted to (UPPERCASE, lowercase, capitalized).
- At level 1, you will see all things from level 0 but also each name reversed, and each first two letters of each name will be reversed too.

Here's a table explaining the whole complication levels:

Note: In the general idea column, every thing mentioned is being used in many (common/not common) mixtures not alone

Level General idea
0 - Simple person This is the default level, here you expect a lot of things like names permutations explained above, dates are splited to groups of days, months, years, last two number of year like 1990 & 90, phone numbers are converted to national format with a list of first/last four numbers as it's commonly used and so on.
1 - Average person Using this level will add some interesting things like for names, each name reversed, and each first two letters of each name will be reversed too, for dates, 0 will be appended to (days, months) lower than 10 so 5 will be 05 & 5 of course, last 3 numbers of year will be used also so 1990 will give 990.
2 - Cyber awareness By default, old passwords you give will be used as it's given and any special chars will be removed from it, but starting from level 2 each given old password will be converted to (UPPERCASE, lowercase, capitalized, reversed) forms.
3 - Paranoid person By default, if you used the --chars flag, elpscrk will use the 10 most common chars as you are in level 0 or 1 but starting with 3 it will use the whole special characters set allowed in passwords (See references).
4 - Nerd person For level 3 and lower, elpscrk will be using orders pairs to make sure permutations are in order and cuts a lot of uncommon password forms in the mixes, now using level 4 will use same common mixtures but without pairs so for example instead of getting passwords of (names & dates), you will get mixes of (names & dates, names & names, dates & dates,...) and so on
5 - Nuclear! Here is where shit hits the fan ๐Ÿ˜†, elpscrk will starting using not common and not very realistic results for the most complicated unhuman targets lol.

Note: Before all permutations in these levels starts, elpscrk will generate some of the most used forms of passwords using simple addition like cupp just to make sure it will be in the results.

  1. Leet flag

When you enable the leet flag, elpscrk will work as normal and after finishing and exporting the results then it will start getting all leet permutations of all passwords and saves them into new file.

So, for example a name like karim will result to ['k4r1m', 'k4rim', 'kar1m', 'karim']

  1. Years and numbers ranges

Using -y/--years option and giving it a year like 1980 will make elpscrk mix all passwords with all the years from 1980 till 2022 (Year we are currently in+1) so you expect passwords like these:

karim1980
1981karim
...
karim2022

and so on, the same applies to -r/--num-range option giving it number like 100 will add all numbers from 0 till 100 so expect passwords like karim99, 99karim, karim100...

Installation

  • It should run on any OS but needs python 3.6 and above.
  • Clone the repo and in its directory install requirements like that: pip install -r requirements.txt or this one python3 -m pip install -r requirements.txt if you have more than one version installed.
  • You are ready to go

Contact

Donation

If this tool has been useful for you, feel free to thank me by buying me a coffee :)

Coffee

Disclaimer

  • Elpscrk is created to raise cyber awareness about the importance of strong unpredictable passwords, and it's not responsible for misuse or illegal purposes.
  • It can be used only for legal penetration tests or educational purpose...etc!
  • Copying a code from this tool or using it in another tool is accepted as you mentioning the source and pull requests are always welcomed ofc. ๐Ÿ˜„

References:

elpscrk's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

elpscrk's Issues

line 33

File "elpscrk.py", line 33
self.number_range = f"{B}{num_range}{reset + W}" if num_range != 0 else f
^
SyntaxError: invalid syntax

process gets killed !!

!]Started at 2020-01-12 19:53:23

Info (Split It)->love;rose;12345;tech;hack

Length Of The Pwd: 8

[+]Spliting Chars....

[+]Generating Passlist ...

Killed

Syntax Error

File "elpscrk.py", line 35
print "\n[!]Started at "+str(strftime("%Y-%m-%d %H:%M:%S", gmtime()))+"\n"

Results not being exported

I've pip installed requirements.txt and put in the parameters correctly, but the results are not being exported to a text file at all. Neither is it present in the same directory. Tried multiple times, no text files stored anywhere

image

could you please advise?

i dont want this script to split the charecters and make huge wordlist out of small words

it would more useful if it actually just permutes the given words to form new words or add more words to the wordlist. i know cupp is exactly like i want but cupp generates very few combinations nad thats why the wordlist is too small. elpscrk is good. i just provided 4 words and you know every one got atleast 8 charecters in their password and this generated a huge file.

process gets randomly killed (UBNT 18.04)

adam@trajsec:~/mrrobot/elpscrk$ python elpscrk.py

[!]Started at 2020-01-12 19:53:23

Info (Split It)->nigga;lod;eon

Length Of The Pwd: 8

[+]Spliting Chars....

[+]Generating Passlist ...

Killed

Error while using script

I was using the script to generate a password list and it and it gave me this error

Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "elpscrk.py", line 68, in main
oo1=all(f1,f2,num)
File "elpscrk.py", line 26, in all
now_fuck(lol,latest,n)
File "elpscrk.py", line 24, in now_fuck
za3bola=[''.join(x for x in t) for t in itertools.product(latest_fuckin_thing,repeat=n)]
MemoryError

SyntaxError: invalid syntax

File "elpscrk.py", line 35
print "\n[!]Started at "+str(strftime("%Y-%m-%d %H:%M:%S", gmtime()))+"\n"
^
SyntaxError: invalid syntax

Nice tool, but missing one feature

Hey @D4Vinci this is a nice angle on the tool,
but you are missing one thing, which is the combination of the shows/nicknames/names inputted.

for example, if I add nicknames: lilly,dragon
the code should make some combination of lillydragon along with other numbers...etc.
That would make it even better.

Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.