intro to white chapel

25
White Chapel Password Auditing Framework

Upload: rob-fuller

Post on 08-May-2015

12.490 views

Category:

Documents


4 download

DESCRIPTION

An intro to the White Chapel password auditing framework project found here: https://github.com/mubix/WhiteChapel

TRANSCRIPT

Page 1: Intro to White Chapel

White ChapelPassword Auditing Framework

Page 2: Intro to White Chapel

Current State of Password Cracking

1. Get hashes2. Crack hashes!! With GPUs!!3. ...4. Profit!

Ok... and then what...

Page 4: Intro to White Chapel

The 'dark side' to Password Cracking

● Dump/Cracked are either deleted or left scattered around the cracking box

● Clear-text passwords never make it to password cracking box for addition to dictionaries (don't need to be cracked)

● Each team member uses their own methods,

tools, and dictionaries

Page 5: Intro to White Chapel

The 'dark side' to Password Cracking - cont'd

● Running the same dictionary over and over is a waste of computer time

● Cross-hash knowledge is that golden nugget that gets forgotten○ Password "P#$$w0rd1259_%" cracked because LM

stored, isn't checked against MySQL hash and goes uncracked because hash type is unrealistic to brute to 14 characters

Page 6: Intro to White Chapel

But why not use one of the online hash databases?

● No way I'm going on unemployment for divulging internal passwords to a 3rd party.

● For the most part they don't allow upload of files ( pwdump / shadow / dictionary ) to do mass lookups/adds

● Not open source. I don't know what or where the things I'm looking up go

Page 7: Intro to White Chapel

What about #{hash_cracking_tool}

● WhiteChapel doesn't try to replace or do cracking better, John The Ripper and Hashcat have teams and community support.○ Not to mention WAY better at math than me

● WhiteChapel should just be your first (check for any known passwords instantly) and last (import all of your known passwords) stop on the password cracking train

Page 8: Intro to White Chapel

Enter White Chapelmy solution to those issues

Page 9: Intro to White Chapel

White Chapel 0.1

Page 10: Intro to White Chapel

White Chapel 1.0

Page 11: Intro to White Chapel

Problem 1: No centralized storage

● WhiteChapel uses ElasticSearch as a backend "database" of passwords and hashes

Page 12: Intro to White Chapel

Problem 2: Clear-Text Passwords

● WhiteChapel allows you to input either dictionaries or single passwords through an easy to use web interface

Page 13: Intro to White Chapel

Problem 3: No team collaboration

● WhiteChapel utilizes a centralized, yet easily clustered Elastic Search backend.

● Joe imports their dictionary● Alice adds the 20 character password they

found in a text file● Joe finds a MySQL hash that matches that

20 character password● Alice finds 20 extra passwords using

WhiteChapel's mass-lookup due to Joe's dictionary contribution

Page 14: Intro to White Chapel

Problem 4: Re-running same dictionary

● WhiteChapel enables upload of pwdump and hashlist files, this allows for near instant searching of hashes stored in whitechapel, no matter the hash type's cracking speed

● Since ElasticSearch can easily handle billions of what it calls "documents", this can out-pace standard cracking tools

Page 15: Intro to White Chapel

Problem 5: Cross-hash knowledge

● Since WhiteChapel generates all of the supported hash types for all of the passwords inputted, finding where users have re-used passwords can result in new findings

● This is mostly useful beyond the threshold of standard brute-force lengths (passwords over 10 characters) and saves you time processing a "found pass" dictionary.

Page 17: Intro to White Chapel

Installation Steps (Dependencies)

1. Ruby2. ElasticSearch

a. Download then run ./bin/elasticsearch -fb. Requires Java or OpenJDKc. http://www.elasticsearch.org/download/

3. Redis Servera. Download then run ./redis-server --foregroundb. http://redis.io/download

Both of those options are foreground running, works in screen, but each OS has service based options

Page 18: Intro to White Chapel

Installation Steps

1. git clone repoa. edit elastic.conf for elasticsearch ip/port if differentb. edit Rakefile for redis ip/port if different

2. bundle install (to pull ruby gems)

Page 19: Intro to White Chapel

Start the app, queue system and one worker

1. foreman start

Page 20: Intro to White Chapel

Expanding...

● Start more elasticsearch servers○ elasticsearch/bin/elasticsearch -f

● Start more redis servers○ redis/redis-server --foreground

● Start more redis-resque workers○ ./scripts/start_worker.sh

● Start another Sinatra front-end○ ruby app.rb

Page 22: Intro to White Chapel

Single-box SetupSi

natra

adds

pass

words

to qu

eue

Redis worker pulls passwords from queue Redis worker generates hashes from

password and feeds into elasticsearch

Sinatra queries elasticsearch

Page 23: Intro to White Chapel

Scaled Setup

Page 24: Intro to White Chapel

Uber - Scaled Setup

Page 25: Intro to White Chapel

endhttp://github.com/mubix/whitechapel