coWPAtty for Windows MAIN:
7 `0 D O3 [: P! y: O& h6 {& {& y' Q"coWPAtty is designed to audit the pre-shared key (PSK) selection for WPA networks based on the TKIP protocol." - Joshua Wright. * @0 n; m( i* C
Project Homepage: http://www.willhackforsushi.com/Cowpatty.html
# [% R% r( {$ f% H$ ?, i1 h
& p8 \6 s( n" X6 v, W
Local Mirror: Cowpatty-4.0-win32.zip MD5: aa9ead2aacfcc493da3684351425d4c6
# J1 @( u' e: Z- U# r8 H; ^! d5 k" ]/ N/ t% A$ L" r1 Z
coWPAtty Dictionary Attack
5 ^) K& A# Y4 U0 e1 b# G3 ]
Precomputing WPA PMK to crack WPA PSK
8 v/ b% R! @5 f2 l9 a9 IcoWPAtty Precomputed WPA Attack
/ x5 O* s: M, s1 ^
coWPAtty Recomputed WPA2 Attack
3 B+ ^5 F/ d& @9 f4 O7 h2 H5 AcoWPAtty Tables
! Q# w4 h0 G( u2 ~coWPAtty Usage:$ P: [$ F0 K" W3 O

# g; }7 C1 k% C0 |$ B' ^6 x; P
coWPAtty Dictionary Attack:8 v- x" g' h. r9 M0 y5 [
Toperform the coWPAtty dictionary attack we need to supply the tool witha capture file that includes the TKIP four-way handshake, a dictionaryfile of passphrases to guess with and the SSID for the network.
$ v9 x' ^: v- X2 w& fIn orderto collect the four-way handshake you can either wait until a clientjoins the network or preferably you can force it to rejoin the networkusing tools like void11 or aireplay and capture the handshakes usingsomething like kismet, ethereal or airodump.
) s& I: i: E6 p) Z
cowpatty -f dict -r wpapsk-linksys.dump -s linksys
" ]1 T1 t: i) F; }% Z
3 q9 J" B" E/ z$ b V
9 @1 y/ `) p+ Z1 C% V
% x) G: w5 J6 Y/ V8 d) P r) e$ a: W# w: t* l }' l
As youcan see this simple dictionary attack took 51 seconds, we can speed upthis process by precomputing the WPA-PMK to crack the WPA-PSK (seebelow).
1 b5 O1 K2 v6 k# O% v5 Y* V3 P: ^wpapsk-linksys.dump is the capture containing the four-way handshake
9 Y3 B3 I. y9 V
dict is the password file
+ E* i% H( g& P8 Xlinksys is the network SSID
1 \9 d" y# K7 }, [
1 \5 P7 e0 A- p$ B( b) |0 Y6 t
Precomputing WPA PMK to crack WPA PSK:) f+ f- d: h* _) z. M
genpmkis used to precompute the hash files in a similar way to Rainbow tablesis used to pre-hash passwords in Windows LANMan attacks. There is aslight difference however in WPA in that the SSID of the network isused as well as the WPA-PSK to "salt" the hash. This means that weneed a different set of hashes for each and every unique SSID i.e. aset for "linksys" a set for "tsunami" etc.
- h% Y/ M( I. B' I, C9 y a. A8 Z5 \& r) w+ t, t! N) s9 e) W% t
So to generate some hash files for a network using the SSID cuckoo we use:
, M# \0 m" q( u e- ?) G- F" T3 m' @# x2 a
genpmk -f dict -d linksys.hashfile -s linksys
/ v" P+ n: D2 e8 T
: D4 _. ]8 A6 L: D) {* P

8 K9 L" R {- T1 H, {4 ?) B; [- T% x( w: l7 ~) h
dict is the password file
- D; K9 x: m, X0 d
linksys.hashfile is our output file
- P2 ~- q) E9 q- L
linksys is the network ESSID
5 k0 Y& G( y4 d" W( L
1 A- I/ ~+ E. J, V/ x' I. ZcoWPAtty Precomputed WPA Attack:
# r, X, h) h$ j# _# `Now wehave created our hash file we can use it against any WPA-PSK networkthat is utilising a network SSID of cuckoo. Remember the capture(wpa-test-01.cap) must contain the four-way handshake to be successful.
9 y& m& V9 z1 B2 m. t: `
2 y5 i0 X2 C! m" b6 R6 W
cowpatty -d linksys.hashfile -r wpapsk-linksys.dump -s linksys
- s& C, p$ J1 \, z
% I2 I) x# T' h; U0 b% P0 V2 w( v6 w* K. j
wpa-test-01.cap is the capture containing the four-way handshake
, H, [: f6 y! q/ olinksys.hashfile are our precomputed hashes
' `1 _/ _% x- @, y+ s+ e& m- ylinksys is the network ESSID
$ v( i9 U, u' C7 Q- R
9 p4 [% V9 _8 E6 v6 i3 c( ~) ZNotice that cracking the WPA-PSK took 0.04 seconds with the pre-computed attacked as opposed to 200 secondswith standard dictionary attack mode, albeit you do need to pre-computethe hash files prior to the attack. However, precomputing large hashfiles for common SSIDS (e.g. linksys, tsunami) would be a sensible movefor most penetration testers.
( T% I$ g' b. W: t- F' f; R! F' P: S$ K) T* c
coWPAtty Precomputed WPA2 Attack:* E: B$ h! \. @0 ^# k* Z. v
coWPAtty4.0 is also capable of attacking WPA2 captures. Note: The same hashfile as was used with the WPA capture was also used with the WPA2capture.
3 Q) Y$ G4 A6 mcowpatty -d linksys.hashfile -r wpa2psk-linksys.dump -s linksys
0 k+ R0 d/ ]$ e: ?2 N! [! s

$ ~. L L9 V6 w& E0 }
0 n4 ?+ e, F. z2 P1 Y# bwpa2psk-linksys.dump is the capture containing the four-way handshake
. G6 _& v; f5 E- \6 rdict is the password file
% M7 r. _! e; o0 h' s( n3 Dlinksys is the network SSID
9 o4 s/ ~* f _
% S5 g* F0 }$ NcoWPAtty Tables:
$ C# W' o2 h# J6 Y; X& x, h7 OThe Church of Wifi have produced some lookup tables for 1000 SSID's computed against a 170,000 word password file. The resultant table are approximately 7 Gigabytes in size and can be downloaded via Torrent:7 B2 {3 Z0 g0 ]- O0 o" b3 L* l- j
' S1 C# k- W1 I; b
http://torrents.lostboxen.net/co ... atty-4.0_2006-10-19
- `; `. N8 i* o& ]3 l5 A, v# x) P9 D
A 33 Gigabyte set of tables are also available: http://umbra.shmoo.com:6969/
, i7 n2 Y) Z6 G. w" e6 y' {: m1 H4 G- k* n$ z
Or you can buy them via DVD, direct from Renderman (initiator of the project): http://www.renderlab.net/projects/WPA-tables/9 s; T1 H- N) y