Английская Википедия:Aircrack-ng

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Short description Шаблон:Infobox Software

Aircrack-ng is a network software suite consisting of a detector, packet sniffer, WEP and WPA/WPA2-PSK cracker and analysis tool for 802.11 wireless LANs. It works with any wireless network interface controller whose driver supports raw monitoring mode and can sniff 802.11a, 802.11b and 802.11g traffic. Packages are released for Linux and Windows.[1]

Aircrack-ng is a fork of the original Aircrack project. It can be found as a preinstalled tool in many security-focused Linux distributions such as Kali Linux or Parrot Security OS,[2] which share common attributes as they are developed under the same project (Debian).[3]

Development

Aircrack was originally developed by French security researcher Christophe Devine,[4] its main goal was to recover 802.11 wireless networks WEP keys using an implementation of the Fluhrer, Mantin and Shamir (FMS) attack alongside the ones shared by a hacker named KoreK.[5][6][7]

Aircrack was forked by Thomas D'Otreppe in February 2006 and released as Aircrack-ng (Aircrack Next Generation).[8]

Wi-Fi security history

Шаблон:See

WEP

Файл:Wep-crypt-alt.svg
Basic WEP encryption: RC4 keystream XORed with plaintext.

Wired Equivalent Privacy was the first security algorithm to be released, with the intention of providing data confidentiality comparable to that of a traditional wired network.[9] It was introduced in 1997 as part of the IEEE 802.11 technical standard and based on the RC4 cipher and the CRC-32 checksum algorithm for integrity.[10]

Due to U.S. restrictions on the export of cryptographic algorithms, WEP was effectively limited to 64-bit encryption.[11] Of this, 40 bits were allocated to the key and 24 bits to the initialization vector (IV), to form the RC4 key. After the restrictions were lifted, versions of WEP with a stronger encryption were released with 128 bits: 104 bits for the key size and 24 bits for the initialization vector, known as WEP2.[12][13]

The initialization vector works as a seed, which is prepended to the key. Via the key-scheduling algorithm (KSA), the seed is used to initialize the RC4 cipher's state. The output of RC4's pseudo random generation algorithm (PRGA) follows a XOR operation in combination with the plaintext, and produces the ciphertext.[14]

The IV is constrained to 24 bits, which means that its maximum values are 16,777,216 (224), regardless of the key size.[15] Since the IV values will eventually be reused and collide (given enough packets and time), WEP is vulnerable to statistical attacks.[16] William Arbaugh notes that a 50% chance of a collision exists after 4823 packets.[17]

In 2003, the Wi-Fi Alliance announced that WEP had been superseded by Wi-Fi Protected Access (WPA). In 2004, with the ratification of the full 802.11i standard (i.e. WPA2), the IEEE declared that both WEP and WEP2 have been deprecated.[18]

WPA

Wi-Fi Protected Access (WPA) was designed to be implemented through firmware updates rather than requiring dedicated hardware.[19] While still using RC4 at its core, it introduced significant improvements over its predecessor. WPA included two modes: WPA-PSK (WPA Personal) and WPA Enterprise.

WPA-PSK (Wi-Fi Protected Access Pre-Shared Key), also known as WPA Personal, used a variant of the Temporal Key Integrity Protocol (TKIP) encryption protocol. It improved security by implementing the following features:

TKIP allocated 48 bits to the IV compared to the 24 bits of WEP, so the maximum number is 281,474,976,710,656 (248).[21]

In WPA-PSK, each packet was individually encrypted using the IV information, the MAC address, and the pre-shared key as inputs. The RC4 cipher was used to encrypt the packet content with the derived encryption key.[21]

Additionally, WPA introduced WPA Enterprise, which provided enhanced security for enterprise-level networks. WPA Enterprise employed a more robust authentication mechanism known as Extensible Authentication Protocol (EAP). This mode required the use of an Authentication Server (AS) such as RADIUS (Remote Authentication Dial-In User Service) to validate user credentials and grant access to the network.

In 2015, the Wi-Fi Alliance recommended in a technical note that network administrators should discourage the use of WPA and that vendors should remove support for it and rely instead on the newer WPA2 standard.[23]

WPA2

WPA2 (Wi-Fi Protected Access 2) was developed as an upgrade to the original WPA standard and ratified in 2004, and became mandatory for Wi-Fi certified products in 2006.[24] Like WPA, WPA2 provides two modes: WPA2-PSK (WPA2 Personal) and WPA2 Enterprise.[25]

Unlike WPA, WPA2-PSK uses the more secure Advanced Encryption Standard (AES) in CCM mode (Counter-Mode-CBC-MAC Protocol), instead of TKIP.[20] AES provides stronger authentication, encryption and is less vulnerable to attacks.[26][27] A backward compatible version, called WPA/WPA2 (Personal) still made use of TKIP.[28]

WPA2-PSK replaces the message integrity code Michael with CCMP.[20]

Timeline of the attacks

WEP

In 1995, before the WEP standard was available, computer scientist David Wagner of the Princeton University discussed a potential vulnerability in RC4.[14]

In March 2000, a presentation by Dan Simon, Bernard Aboba, and Tim Moore of Microsoft provided a summary of 802.11 vulnerabilities. They noted that denial of service deauthentication attacks are possible because the messages are unauthenticated and unencrypted (later implemented by the aireplay-ng tool).[29] In addition, they wrote that because some implementations of WEP derive the key from a password, dictionary attacks are easier than pure brute force.[30][16]

In May 2001, William A. Arbaugh of the University of Maryland presented his inductive chosen-plaintext attack against WEP with the conclusion that the protocol is vulnerable to packet forgery.[17]

In July 2001, Borisov et al. published a comprehensive paper on the status of WEP and its various vulnerabilities.[16]

In August 2001, in the paper Weaknesses in the Key Scheduling Algorithm of RC4, authors Scott Fluhrer, Itsik Mantin, and Adi Shamir performed a cryptoanalysis of the KSA, citing Wagner among others. They stated that they had not conducted an attack against WEP, and therefore couldn't claim that WEP was vulnerable.[31] However, other researchers implemented the attack and were able to demonstrate the protocol's insecurity.[32][12]

In 2004, a hacker using the pseudonym KoreK posted a series of attacks on the NetStumbler.org forum, which were incorporated into the original aircrack 1.2 by Christophe Devine.[33][34] That same month, aircrack began supporting replay attacks against WEP, which use ARP requests to generate more IVs and make key recovery easier.[35]

Later that year, KoreK released the Chopchop attack, an active packet injector for WEP.[36] The name of the attack derives from its inherent working: a packet is intercepted, "chops" off a part of it and sends a modified version to the Access Point, who will drop it if not valid. By repeatedly trying multiple values, the message can gradually be decrypted.[37][38][39] The Chopchop attack was later improved by independent researchers.[40]

In 2005, security researcher Andrea Bittau presented the paper The Fragmentation Attack in Practice. The homonymous attack exploits the fact that WEP splits the data into smaller fragments, which are reassembled by the receiver. Taking advantage of the fact that at least part of the plaintext of some packets may be known, and that the fragments may have the same IV, data can be injected at will, flooding the network to statistically increase the chances of recovering the key. [14]

In April 2007 a team at the Darmstadt University of Technology in Germany presented a new attack, named "PTW" (from the researchers' names, Pyshkin, Tews, Weinmann). It decreased the number of initialization vectors or IVs needed to decrypt a WEP key and has been included in the aircrack-ng suite since the 0.9 release.[41][42]

Evolution of the attacks/vulnerabilities
Date Author/s Attack name/type Packets needed Implemented in Source
2001 A. Stubblefield et al. FMS: Passive partial key exposure attack 1,000,000 (optimized from 5,000,000-6,000,000) - [32][43]
2001 W. Arbaugh Inductive chosen plaintext - [17]
2002 David Hulton Practical Exploitation of RC4 Weaknesses in WEP Environments 500,000-2,000,000 - [44]
2003 Andrea Bittau Expansion of FMS classes - [45]
2004 KoreK FMS: Passive partial key exposure attack 700,000 (about 50% success probability) aircrack 1.2 [46]
2004 KoreK Chopchop aircrack 2.2-beta1 [36][34]
2006 A. Klein Attacks on the RC4 stream cipher - [47]
2007 Tews, Weinmann, Pyshkin PTW 35,000 to 40,000 (about 50% success probability) aircrack-ng 0.9 [46]
2007 S. Vaudenay and M. Vuagnoux VX: Passive key recovery 45'000 - [48]

WPA

The first known attack on WPA was described by Martin Beck and Erik Tews in November 2008. They described an attack against TKIP in the paper Practical Attacks Against WEP and WPA. The proof of concept resulted in the creation of tkiptun-ng.[46] In 2009, their attack was improved and demonstrated by a research group from Norway.[49]

Features

The aircrack-ng software suite includes:

aircrack-ng

aircrack-ng supports cracking WEP (FMS, PTW, KoreK and dictionary attacks), WPA/WPA2 and WPA2 keys (using dictionary attacks).[50] While it doesn't support direct attacks on WPA3 (introduced in 2018), it has been used successfully in combination with a downgrade attack.[51]

airbase-ng

airbase-ng incorporates techniques for attacking clients, instead of Access Points. Some of its features include an implementation of the Caffe Latte attack (developed by security researcher Vivek Ramachandran)[52] and the Hirte attack (developed by Martin Beck).[53] The WEP Hirte attack is a method of creating an Access Point with the same SSID of the network to be exploited (similar to an evil twin attack).[54] If a client (that was previously connected to the victim's access point) is configured to automatically reconnect, it will try the rogue AP. At this point, ARP packets are sent in the process of obtaining a local IP address, and airbase-ng can collect IVs that can later be used by aircrack-ng to recover the key.[55]

Файл:Aireplay-ng Fragmentation Attack Demo.png
Execution of a fragmentation attack against WEP with aireplay-ng.

aireplay-ng

Шаблон:See aireplay-ng is an injector and frame replay tool.[50][56] Deauthentication attacks are supported.[29] Deauthentication refers to a feature of IEEE 802.11 which is described as "sanctioned technique to inform a rogue station that they have been disconnected from the network".[57] Since this management frame doesn't need to be encrypted and can be generated knowing only the client's MAC address, aireplay-ng can force a client to disconnect and capture the handshake (or to perform a Denial of service attack). In addition, a client deauthentication and subsequent reconnection will reveal a hidden SSID.[29]

Other features include the ability to perform fake authentification, ARP request replay, fragmentation attack, the Caffe Latte and Chopchop attacks.[58]

airmon-ng

airmon-ng can place supported wireless cards in monitor mode.[50] Monitor mode refers to a provision in the IEEE 802.11 standard for auditing and design purposes,[59] in which a wireless card can capture packets in air range.[60] It is able to detect potential programs that could interfere with proper operation and kill them.Шаблон:Citation needed

A Linux terminal shows the airmon-ng command running twice. The first time to show the available adapters, and the second time to set the monitor mode with the correct interface name.
Setting monitor mode using airmon-ng.

airodump-ng

A Linux terminal shows the airodump-ng command running. It shows a single Access Point named Wikimedia_Commons_Demo.
A network scan is performed using airodump-ng.

airodump-ng is a packet sniffer.[50] It can store information in various formats, making it compatible with software other than the aircrack-ng suite. It supports channel-hopping.[61]

airserv-ng

airserv-ng is a wireless card server, which allows multiple wireless programs to use a card independently.[62]

airtun-ng

Virtual tunnel interface creator. Its main uses are monitoring the traffic as an intrusion detection system, and inject arbitrary traffic in a network.[63]

besside-ng

A tool to automatize WEP cracking and logging of WPA handshakes.

easside-ng

easside-ng is an automated tool which attempts connection to a WEP Access Point without knowing the encryption key. It uses the fragmentation attack and a remote server (which can be hosted with the tool buddy-ng) in the attempt to recover an encrypted packet, exploiting the AP which will decrypt it for the attacker.[64]

tkiptun-ng

tkiptun-ng is a WPA/TKIP attack tool developed by Martin Beck.

wesside-ng

wesside-ng is a proof of concept based on the tool wesside, originally written by Andrea Bittau to demonstrate his fragmentation attack. It is a tool designed to automate the process of recovering a WEP key.[14]

airdecap-ng

airdecap-ng decrypts WEP or WPA encrypted capture files with known key.[35] It was formally known as airunwep and 802ether.[34]

airdecloak-ng

airdecloak-ng can remove WEP cloaked frames from pcap files. Cloaking refers to a technique for use by wireless intrusion prevention systems (which rely on WEP encryption) to inject packets encrypted with random keys into the air, in the attempt to make cracking more difficult.[65]

airolib-ng

airolib-ng can create a database of pre-computed hash tables by computing the Pairwise Master Keys (PMK) captured during the 4-way handshaking process.[66] In WPA and WPA2, the PMK are derived from the password selected by the user, the SSID name, its length, the number of hashing iterations, and the key length.[67][5] During the 4-way handshaking process, the PMK is used, among other parameters, to generate a Pairwise Transient Key (PTK), which is used to encrypt data between the client and Access Point.[68][69]

The hash tables can be reused, provided the SSID is the same.[70] Pre-computed tables for the most common SSIDs are available online.[71]

Файл:Besside-ng-crawler demo.png
besside-ng-crawler is seen filtering files in a directory.

besside-ng-crawler

Performs operations on a directory to search for pcap files and filter out relevant data.

buddy-ng

buddy-ng is a tool used in conjunction with the tool easside-ng, running on a remote computer. It is the receiving end that allows a packet decrypted by the access point to be captured.[64]

ivstools

ivstools can extract initialization vectors from a capture file (.cap).

kstats

kstats is a tool for displaying the Fluhrer, Mantin and Shamir attack algorithm votesШаблон:NoteTag for an IVS dump with a given WEP key.

makeivs-ng

makeivs-ng is a testing tool used to generate an IVS file with a given WEP key.

packetforge-ng

Файл:Wpaclean and tcpdump output.png
wpaclean in use.

packetforge-ng can create and modify packets for injection. It supports packets such as arp requests, UDP, ICMP and custom packets.[72] It was originally written by Martin Beck.[73]

wpaclean

wpaclean reduces the contents of the capture file (generated by airodump-ng) by keeping only what is related to the 4-way handshake and a beacon. The former refers to a cryptographic process that establishes encryption without publicly revealing the key.[74] Meanwhile, the beacon frame is sent by the Access Point to announce its presence and other information to nearby clients.[75][76]

airventriloquist-ng

airventriloquist-ng is a tool that can perform injection on encrypted packets.

Version history

Aircrack changelog[34]
Version Date Notable changes
1.0 July 29, 2004
1.1 August 11, 2004 Implementation of ARP replay attack.
1.2 August 17, 2004 First implementation of KoreK attacks.
1.3 August 19, 2004
1.4 August 26, 2004
2.0 September 3, 2004
2.0.1 September 21, 2004
2.0.2 September 24, 2004
2.1 October 1, 2004 Added support for longer WEP keys (256 and 512 bit).
2.2-beta1 June 22, 2005 Chopchop attack is implemented. WPA-PSK support is added.
2.2-beta2 June 27, 2005 The aireplay tool implements automated replay, deauthentication attacks, and fake authentication.
2.2-beta3 June 28, 2005
2.2-beta4 July 3, 2005
2.2-beta5 July 10, 2005 WPA2 support is added.
2.2-beta6 July 12, 2005
2.2-beta7 July 14, 2005
2.2-beta8 and 2.2-beta9 July 21, 2005
2.2-beta10 July 23, 2005
2.2-beta11 July 27, 2005
2.2-beta12 July 30, 2005
2.2 August 3, 2005
2.21 August 9, 2005
2.22 August 14, 2005
2.23 August 28, 2005
2.4 November 12, 2005
2.41 November 22, 2005
Aircrack-ng changelog[73]
Version Date Notable changes
0.1 Unknown Forked from aircrack 2.41.
0.2 March 19, 2006
0.2.1 March 20, 2006
0.3 March 30, 2006 The tool ivstools is introduced, merged from two other software.
0.4 April 16, 2006
0.4.1 April 19, 2006
0.4.2 April 20, 2006
0.4.3 and 0.4.4 April 24, 2006
0.5 May 5, 2006 Further optimization of the Chopchop code.
0.6 June 23, 2006
0.6.1 August 27, 2006
0.6.2 October 1, 2006 packetforge-ng is introduced.
0.7 January 20, 2007
0.8 April 25, 2007
0.9 April 13, 2007 First implementation of PTW attack.
0.9.1 June 25, 2007
1.0-beta1 October 1, 2007 PTW attack supersedes KoreK attack as the default. The tools airdriver-ng, wesside-ng, easside-ng, buddy-ng, airserv-ng and airolib-ng are introduced.
1.0-beta2 February 1, 2008 Reduced number of packets needed for WPA attacks.
0.9.2 February 5, 2008
0.9.3 February 24, 2008
1.0-rc1 June 9, 2008 airbase-ng is introduced. Caffe latte and CFrag attacks are implemented.
1.0-rc2 January 22, 2009 tkip-tun is introduced.
1.0-rc3 March 26, 2009
1.0-rc4 July 27, 2009
1.0 September 8, 2009
1.1 April 24, 2010 airdrop-ng is introduced.
1.2-beta1 May 25, 2013 wpaclean is introduced. Migration mode attack is added in aireplay-ng.
1.2-beta2 November 30, 2013
1.2-beta3 March 31, 2014
1.2-rc1 October 31, 2014
1.2-rc2 April 10, 2015
1.2-rc3 November 21, 2015
1.2-rc4 February 14, 2016
1.2-rc5 April 3, 2018 airventriloquist-ng is introduced.
1.2 April 15, 2018
1.3 July 10, 2018
1.4 September 29, 2018
1.5.2 December 9, 2018
1.6 January 25, 2020 airodump-ng supports viewing WPA3 networks.
1.7 May 10, 2022

See also

Шаблон:Portal

Notes

Шаблон:Reflist

References

  1. Шаблон:Cite web
  2. Шаблон:Cite tech report
  3. Шаблон:Cite journal
  4. Шаблон:Cite web
  5. 5,0 5,1 Шаблон:Cite journal
  6. Шаблон:Cite web
  7. Шаблон:Cite web
  8. Шаблон:Cite book
  9. Шаблон:Cite book
  10. Шаблон:Cite conference
  11. Шаблон:Cite conference
  12. 12,0 12,1 Шаблон:Cite journal
  13. Шаблон:Cite conference
  14. 14,0 14,1 14,2 14,3 Шаблон:Cite conference
  15. Шаблон:Cite conference
  16. 16,0 16,1 16,2 Шаблон:Cite conference
  17. 17,0 17,1 17,2 Шаблон:Cite web
  18. Шаблон:Cite book
  19. Шаблон:Cite journal
  20. 20,0 20,1 20,2 20,3 Шаблон:Cite conference
  21. 21,0 21,1 21,2 Шаблон:Cite conference
  22. Шаблон:Cite book
  23. Шаблон:Cite web
  24. Шаблон:Cite web
  25. Шаблон:Cite web
  26. Шаблон:Cite journal
  27. Шаблон:Cite journal
  28. Шаблон:Cite conference
  29. 29,0 29,1 29,2 Шаблон:Cite journal
  30. Шаблон:Cite web
  31. Шаблон:Cite web
  32. 32,0 32,1 Шаблон:Cite web
  33. Шаблон:Cite tech report
  34. 34,0 34,1 34,2 34,3 Шаблон:Cite web
  35. 35,0 35,1 Шаблон:Cite conference
  36. 36,0 36,1 Шаблон:Cite web
  37. Шаблон:Cite web
  38. Шаблон:Cite conference
  39. Шаблон:Citation
  40. Шаблон:Cite conference
  41. Шаблон:Cite web
  42. Шаблон:Cite book
  43. Шаблон:Cite journal
  44. Шаблон:Cite web
  45. Шаблон:Cite web
  46. 46,0 46,1 46,2 Шаблон:Cite conference
  47. Шаблон:Cite book
  48. Шаблон:Cite book
  49. Шаблон:Cite book
  50. 50,0 50,1 50,2 50,3 Шаблон:Cite journal
  51. Шаблон:Cite conference
  52. Шаблон:Cite book
  53. Шаблон:Cite book
  54. Шаблон:Cite conference
  55. Шаблон:Cite web
  56. Шаблон:Cite book
  57. Шаблон:Cite journal
  58. Шаблон:Cite journal
  59. Шаблон:Cite conference
  60. Шаблон:Cite journal
  61. Шаблон:Cite journal
  62. Шаблон:Cite web
  63. Шаблон:Cite book
  64. 64,0 64,1 Шаблон:Cite conference
  65. Шаблон:Cite web
  66. Шаблон:Cite book
  67. Шаблон:Cite conference
  68. Шаблон:Cite conference
  69. Шаблон:Cite conference
  70. Шаблон:Cite conference
  71. Шаблон:Cite web
  72. Шаблон:Cite journal
  73. 73,0 73,1 Шаблон:Cite web
  74. Шаблон:Cite journal
  75. Шаблон:Cite journal
  76. Шаблон:Cite conference

External links