Skip to content

endeav0r/rnpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rainbows-And-Pwnies-Cracker

This code is from the summer of 2010. Inbetween my sophomore and junior years
at the academy, I heard about the CrackMeIfYouCan competition at Defcon. Since
I was already attending Defcon that year, I decided it would be a good exercise
to code up my own cracker in C, over the course of a month, and compete with it.

The code you are about to see is the result of that endeavor. At the time it
was the largest project I had undertaken. I leave it here for historical
purposes, as I am skeptical of how much use anyone will find from it. The
hashing algorithms are implemented by me, though some of them are incomplete.

This is actually a dump from the tar'd directory taken in the middle of the
competition. I cleaned up a few minor things, however many of the small scripts
I wrote during the competition remain.

I wasn't used to working with memory. This code is x86-64 only. I make no
gaurantees about its stability.

Special thanks go to MAJ O'Connor for making this project possible and Matt
Weir for taking the time to engage in some encouraging discussion with an
undergraduate.

============================================================================

This code is released into the public domain.

============================================================================

Rainbows and Pwnies Cracker - www.rainbowsandpwnies.com
Crack the hashes, win the con, rule the world

-a Algorithm
    <1>  MD5
    <2>  NT
    <3>  SHA1
    <4>  MSCACHE
    <5>  CRYPT
    <6>  {SSHA}
    <10> MD5(SALT . PLAINTEXT)
-b DISABLED Brute Force Attack (requires -c and -l)
-c DISABLED <charset> (for -b: ie -c 0123456789)
-d <dictionary file> (for wordlist attack, requires -m)
-f f stands for fuck you contest. it's for contest-output mode
-h <hash file> (each hash on seperate line)
-l DISABLED <length> (of strings bruteforce should create)
-m Mangling Rulesets
    Rules can be combined with ,
    special_M(any) = !$@#%^&*?.+\-_=`~()| ... special_F(ew) = !@#$
    <0> MiXeD cAsE
    <1> 1337
    <2> append single digit
    <3> append single special_M
    <4> UPPERCASE first character
    <5> append two digits
    <6> append year between 1921 and 2020
    <7> UPPERCASE whole word
    <8> Prepend digit
    <9> Prepend UPPERCASE characters
-n <num_threads> launches up to 8 threads to crack in parallel
-o <filename> *APPENDS* cracked hashes to file when done instead of stdout
-S <single ASCII salt>
-s <salt filename> loads salts from a file

Examples:
rnpc -a 1 -m 4,2 -d words.txt -h hashes.txt
rnpc -a 1 -b -c 0123456789 -l 4 -h hashes.txt (creates 0000-9999)

About

Rainbows-And-Pwnies-Cracker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors