All Projects → wiire-a → Pixiewps

wiire-a / Pixiewps

Licence: gpl-3.0
An offline Wi-Fi Protected Setup brute-force utility

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Pixiewps

Wifi Passview
An open source batch script based WiFi Passview for Windows!
Stars: ✭ 157 (-86.34%)
Mutual labels:  hacking-tool, wifi-security
OneShot
Run WPS PIN attacks (Pixie Dust, online bruteforce, PIN prediction) without monitor mode with the wpa_supplicant
Stars: ✭ 223 (-80.59%)
Mutual labels:  hacking-tool, wifi-security
anubis
Captive wifi hotspot bypass tool for Linux
Stars: ✭ 46 (-96%)
Mutual labels:  hacking-tool, wifi-security
Boopsuite
A Suite of Tools written in Python for wireless auditing and security testing.
Stars: ✭ 807 (-29.77%)
Mutual labels:  hacking-tool, wifi-security
wifite2-requirements
This bash script will install wifite2 and its other tools Pyrit, bully, wireshark, hcxtools, hcxdumptool, macchanger
Stars: ✭ 20 (-98.26%)
Mutual labels:  hacking-tool, wifi-security
Project Tauro
A Router WiFi key recovery/cracking tool with a twist.
Stars: ✭ 52 (-95.47%)
Mutual labels:  hacking-tool, wifi-security
Catchme
CatchME - WiFi Fun Box "Having Fun with ESP8266"
Stars: ✭ 28 (-97.56%)
Mutual labels:  wifi-security
Pentesting Bible
Learn ethical hacking.Learn about reconnaissance,windows/linux hacking,attacking web technologies,and pen testing wireless networks.Resources for learning malware analysis and reverse engineering.
Stars: ✭ 8,981 (+681.64%)
Mutual labels:  hacking-tool
Active Directory Exploitation Cheat Sheet
A cheat sheet that contains common enumeration and attack methods for Windows Active Directory.
Stars: ✭ 870 (-24.28%)
Mutual labels:  hacking-tool
Recon Raven
Reconnaissance tool of Penetration test & Bug Bounty
Stars: ✭ 18 (-98.43%)
Mutual labels:  hacking-tool
Cloakify
CloakifyFactory - Data Exfiltration & Infiltration In Plain Sight; Convert any filetype into list of everyday strings, using Text-Based Steganography; Evade DLP/MLS Devices, Defeat Data Whitelisting Controls, Social Engineering of Analysts, Evade AV Detection
Stars: ✭ 1,136 (-1.13%)
Mutual labels:  hacking-tool
Bramble
Bramble is a hacking Open source suite.
Stars: ✭ 60 (-94.78%)
Mutual labels:  hacking-tool
Vulnx
vulnx 🕷️ is an intelligent bot auto shell injector that detect vulnerabilities in multiple types of cms { `wordpress , joomla , drupal , prestashop .. `}
Stars: ✭ 1,009 (-12.18%)
Mutual labels:  hacking-tool
Hcxdumptool
Small tool to capture packets from wlan devices.
Stars: ✭ 945 (-17.75%)
Mutual labels:  wifi-security
Slowloris
Asynchronous Python implementation of SlowLoris DoS attack
Stars: ✭ 51 (-95.56%)
Mutual labels:  hacking-tool
Skyrat
SkyRAT - Powershell Remote Administration Tool
Stars: ✭ 21 (-98.17%)
Mutual labels:  hacking-tool
Hcxtools
Portable (that doesn't include proprietary/commercial operating systems) solution for conversion of cap/pcap/pcapng (gz compressed) WiFi dump files to hashcat formats (recommended by hashcat) and to John the Ripper formats. hcx: h = hash, c = convert and calculate candidates, x = different hashtypes
Stars: ✭ 1,121 (-2.44%)
Mutual labels:  wifi-security
Shuffle
WebShell Backdoor Framework
Stars: ✭ 11 (-99.04%)
Mutual labels:  hacking-tool
Deepweb Scappering
Discover hidden deepweb pages
Stars: ✭ 40 (-96.52%)
Mutual labels:  hacking-tool
Mhddos
Best DDoS Attack Script Python3, Cyber Attack With 36 Method
Stars: ✭ 55 (-95.21%)
Mutual labels:  hacking-tool

Overview License

Pixiewps is a tool written in C used to bruteforce offline the WPS PIN exploiting the low or non-existing entropy of some software implementations, the so-called "pixie-dust attack" discovered by Dominique Bongard in summer 2014. It is meant for educational purposes only.

As opposed to the traditional online brute-force attack, implemented in tools like Reaver or Bully which aim to recover the pin in a few hours, this method can get the PIN in only a matter of seconds or minutes, depending on the target, if vulnerable.

pixiewps_screenshot_1

Since version 1.4, it can also recover the WPA-PSK from a complete passive capture (M1 through M7) for some devices (currently only some devices which work with --mode 3).

pixiewps_screenshot_2

It all started as a project from the community, more details can be found here:

You can also visit the wiki.

Requirements

apt-get -y install build-essential
  • Prior versions of 1.2 require libssl-dev
  • Versions 1.4 and later make use of multi-threading and require libpthread (POSIX threads)

OpenSSL has also been re-introduced as optional to achieve better speeds. See the Build section.

Setup

Download

git clone https://github.com/wiire/pixiewps

or

wget https://github.com/wiire/pixiewps/archive/master.zip && unzip master.zip

Build

cd pixiewps*/
make

Optionally, you can run make OPENSSL=1 to use faster OpenSSL SHA-256 functions.

Install

sudo make install

Usage

Usage: pixiewps <arguments>

Required arguments:

  -e, --pke         : Enrollee public key
  -r, --pkr         : Registrar public key
  -s, --e-hash1     : Enrollee hash 1
  -z, --e-hash2     : Enrollee hash 2
  -a, --authkey     : Authentication session key
  -n, --e-nonce     : Enrollee nonce

Optional arguments:

  -m, --r-nonce     : Registrar nonce
  -b, --e-bssid     : Enrollee BSSID
  -v, --verbosity   : Verbosity level 1-3, 1 is quietest           [3]
  -o, --output      : Write output to file
  -j, --jobs        : Number of parallel threads to use         [Auto]

  -h                : Display this usage screen
  --help            : Verbose help and more usage examples
  -V, --version     : Display version

  --mode N[,... N]  : Mode selection, comma separated           [Auto]
  --start [mm/]yyyy : Starting date             (only mode 3) [+1 day]
  --end   [mm/]yyyy : Ending date               (only mode 3) [-1 day]
  -f, --force       : Bruteforce full range     (only mode 3)

Miscellaneous arguments:

  -7, --m7-enc      : Recover encrypted settings from M7 (only mode 3)
  -5, --m5-enc      : Recover secret nonce from M5       (only mode 3)

Usage example

The most common usage example is:

pixiewps --pke ... --pkr ... --e-hash1 ... --e-hash2 ... --authkey ... --e-nonce ...

which requires a modified version of Reaver or Bully which prints the Authentication Session key (--authkey, -a). The recommended version is reaver-wps-fork-t6x.

The program has also a man page and a verbose help screen (--help) with more examples.

-S, --dh-small

This feature was introduced back in Reaver 1.3. It works by choosing the private key = 1, thus resulting in having the public key --pkr = 2. This speeds up the cracking process since the AP must do less computations to calculate the Diffie-Hellman shared secret, which is later used to derive the session keys that encrypt the current transaction. Pixiewps can exploit this feature so that the user doesn't have to input --pkr (it's always 2) and optionally compute the session keys, like --authkey, if additional arguments, --r-nonce and --bssid, are specified.

It turns out some routers are buggy and do not function correctly with this feature. Some won't even be able to validate the correct PIN and the transaction will fail after M4. For this reason this feature is deprecated and should never be used in Reaver.

-7, --m7-enc

This option requires the attribute encrypted settings found in M7 when the Registrar proved knowledge of the PIN, and the Access Points, the Enrollee, sends its current network configuration.

This feature can be used to crack the WPA-PSK (and WPS PIN) from a passive packet capture (e.g. sniffing a PBC session).

-f, --force

This option is used only for mode 3. When used pixiewps will start bruteforcing from the current time and go back all the way to 0. It is conceptually identical to using --end 01/1970 only (or --start 01/1970 since they're interchangeable).

Empty PIN

The empty PIN, denoted with <empty> can be tested with -p "" in Reaver 1.6.1 and later. It comes from a misconfiguration of the PIN method on some Access Points which have the PIN variable set to NULL (or empty string).

pixiewps_screenshot_3

Supported platforms

Pixiewps can be compiled for a wide variety of platforms. On Windows it can be compiled with MinGW. Be sure to have installed phtread support.

Since version 1.4.1 it has been included in OpenWrt and LEDE official repositories.

Versioning convention

The version numbering is in the form 1.x.y, where x usually indicates a major release, and y a minor release, typically bug fixing or other small changes. Every major release starts with y = 0 and should be considered unstable in the first hours of publishing, even if not marked as such.

For a list of changes between one release and the previous refer to CHANGELOG.

Notes for wrappers and scripts

  • The data in input can be formatted with one of the following byte separators: ':', '-', '', or without
  • The most useful tags like WPS pin and WPA-PSK are denoted with [+] or [-] in case of failure
  • Pixiewps returns 0 on a successful attempt
  • An option that has been deprecated means that it shouldn't be used anymore and may get removed on a later release

Contributing

Since the very first release pixiewps has improved a lot, but it's hard to keep track of every device on the market. We have decided to add an automatic message suggesting that we are interested in the parameters of the device tested by the user.

Acknowledgements

  • Part of the code was inspired by Bully by Brian Purcell
  • The crypto and bignum libraries were taken from LibTomCrypt and TomsFastMath
  • Endianness detection and conversion is from rofl0r/endianness.h
  • See contributors for a list of everyone that has contributed
  • Huge thanks to kcdtv, rofl0r and binarymaster for helping and testing
  • Special thanks to soxrok2212, datahead, t6_x, aanarchyy and the Kali Linux community

References

Pixiewps is based on the work of Dominique Bongard (@Reversity):

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].