coWPAtty for Windows MAIN:$ d9 W+ h1 v x9 ?' Y$ ]
"coWPAtty is designed to audit the pre-shared key (PSK) selection for WPA networks based on the TKIP protocol." - Joshua Wright.
4 P+ ^" K3 n0 Q
Project Homepage: http://www.willhackforsushi.com/Cowpatty.html
0 l2 d+ F( i2 X
% ]2 k( q* l: i7 m% f7 w2 rLocal Mirror: Cowpatty-4.0-win32.zip MD5: aa9ead2aacfcc493da3684351425d4c6
+ N7 b& C; E/ f8 f* _) @$ z
0 Q3 E: v3 J. a% T; ~
coWPAtty Dictionary Attack
; d$ x r) [) V O) Q! ~' |/ \Precomputing WPA PMK to crack WPA PSK
4 Q5 u1 M( \0 ocoWPAtty Precomputed WPA Attack
9 M. [$ T; h9 O, `
coWPAtty Recomputed WPA2 Attack
2 O, \# |% S" h/ i- j. Y
coWPAtty Tables
3 M: |! H2 l/ fcoWPAtty Usage:% U5 }6 Y8 A' M+ w* O& S, G/ h0 H5 F

4 W6 @$ W6 c! Q, s0 A2 @
0 e5 Z/ A& Y0 |' D8 V" b1 ?7 GcoWPAtty Dictionary Attack:
! i l1 D4 @' s* u6 ?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.
1 d+ T: h& Y2 i0 W
In 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.
4 s- p& F7 w- q% H
cowpatty -f dict -r wpapsk-linksys.dump -s linksys
8 g- w/ F( S7 D
$ [2 F9 p. m X, `
6 e7 f9 |' V( v X/ W% c
; p; S& T; `1 L% T$ ~2 s
6 O' o) R$ R- F& g2 T* d3 _ G) a
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).
( s6 o5 C# y( D' b
wpapsk-linksys.dump is the capture containing the four-way handshake
& K* J% ]3 Z) Adict is the password file
' ?( {1 ?( I* v4 ?+ x& K Nlinksys is the network SSID
: O: b0 X, e+ h& m" C0 U
! X# C( M0 p' r: N$ GPrecomputing WPA PMK to crack WPA PSK:8 I0 i/ F& f/ _- f$ W
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.
+ E9 T7 ~ V9 Z
9 z" [+ a+ \' d2 v. y$ k# m
So to generate some hash files for a network using the SSID cuckoo we use:
! T' r6 b1 D2 W, X
. O0 k8 A0 e6 V# f+ ?2 _: p
genpmk -f dict -d linksys.hashfile -s linksys
5 P6 K. p& b ]" I Y; C
4 y5 |: L- C/ ` r4 o% s% c

5 _% ~# w3 K( b% f1 C! \9 [" `# A3 J8 F6 {( Y- N1 p6 @3 x
dict is the password file
3 P& S. ?8 ] a7 D% G" u
linksys.hashfile is our output file
' e; T, d( s0 t% D& Wlinksys is the network ESSID
! B: b- i, y, c& |' r: k0 Y
( n: s1 N7 A9 U# U0 Y. Q7 U7 TcoWPAtty Precomputed WPA Attack:
! b9 n, G0 O' ANow 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 ?1 F- i @" y9 G; R: G
3 J; l2 c! c6 f$ Z' fcowpatty -d linksys.hashfile -r wpapsk-linksys.dump -s linksys
: C5 P! ?" m9 A( r4 ~9 s# N
6 E7 y, k6 C! ]! ?4 n
- q& U. E- M, u9 K) Q+ _wpa-test-01.cap is the capture containing the four-way handshake
. J& t6 I; t& o/ q3 \5 N
linksys.hashfile are our precomputed hashes
2 W b4 G' I _5 d: u4 r: ulinksys is the network ESSID
- a$ Y' P* K4 M. [, t _- E
+ ]: k# a$ S( \' x- ~, wNotice 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.
z6 G$ J; L: H0 G j5 f2 b6 u4 O2 i3 n. K+ ]; x/ w. |& q
coWPAtty Precomputed WPA2 Attack:6 f$ f) V: g4 I) n+ w
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.
F$ T6 N3 m# s: T T2 \! Lcowpatty -d linksys.hashfile -r wpa2psk-linksys.dump -s linksys
. [+ z/ Z& P2 Y9 R

/ v9 H8 [2 j% [5 l# i" T7 g* d. i( c! H4 W
wpa2psk-linksys.dump is the capture containing the four-way handshake
6 D8 |3 g' h. y# F6 a" R5 P/ I
dict is the password file
. j# T1 _$ {1 K1 z. K
linksys is the network SSID
+ N8 R! v, B. A- M5 N, Y0 `7 E
% l! P# U8 m, u0 v' {* Y2 ScoWPAtty Tables: & y2 h5 G4 s% n# q! Y
The 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:+ a! u2 p0 B9 _. a% H
7 g9 c" U% E& I( y1 @http://torrents.lostboxen.net/co ... atty-4.0_2006-10-19
& w$ Q, b8 C6 p* J$ r l8 T I
. Z- { W! l. S" b- \# k# KA 33 Gigabyte set of tables are also available: http://umbra.shmoo.com:6969/( |0 F( N1 ^# T M& P! w
$ \5 A5 i: X7 N! l" Z, B) lOr you can buy them via DVD, direct from Renderman (initiator of the project): http://www.renderlab.net/projects/WPA-tables/
[% }* v. A+ @7 u* p$ g& l