Projects
Extra
aircrack-ng
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 6
View file
aircrack-ng.changes
Changed
@@ -1,4 +1,37 @@ ------------------------------------------------------------------- +Sat Jun 6 06:10:28 UTC 2015 - mailaender@opensuse.org + +- update to 1.2-rc2 + * Airtun-ng: Adds WPA CCMP and TKIP decryption and CCMP encryption + * Compilation: Added support for DUMA. + * Makefile: Renamed 'unstable' to 'experimental'. + * Airodump-ng: Fixed XML sanitizing. + * Airmon-ng: Airmon-zc is now stable enough to replace airmon-ng. + * Manpages: Removed airdriver-ng manpage and references to it (forgot to do it before the previous release). + * Manpages: Updated 'see also' references in all manpages. + * PCRE: Added it in various places and docs. + * WZCook: Fixed processing values stored in register. + * Updated a few headers files (if_llc, ieee80211, ethernet and if_arp). + * Compilation: de-hardcode -lpcap to allow specifying pcap libraries. + * Makefile: Fixed installing/uninstalling Airdrop-ng documentation files. + * Makefile: Fixed uninstalling ext_scripts. + * Airodump-ng: Added new paths (and removed one) for OUI files and simplified logic to find the OUI file. + * Aircrack-ng: Fixed ignoring -p when specified after -S. + * Airmon-ng: fixes for openwrt busybox ps/grep issues which do not seem present in other versions of busybox + * Airmon-ng: fix vm detection. + * Airserv-ng: Fixed channel setting (and assert call). + * Airodump-ng: Fixes to NetXML (unassociated clients missing and various other small bugs) and update the code to match current NetXML output. + * Airodump-ng: Removed requirement for 2 packets before AP is written to output (text) files. + * Airodump-ng: Fixed formatting of ESSID and display of WPA/WPA2 (as well as a bunch of other small fixes) in CSV file. + * Airodump-ng: Fixed GPSd. + * Airodump-ng: Allow to specify write interval for CSV, kismet CSV and NetXML files. + * Airserv-ng: Fixed wrong station data displayed in Airodump-ng. + * General: Fixed 64 bit promotion issues. + * General: Fixed a bunch of uninitialized values and non-zeroed structures (upon allocating them). + * General: Added Stack protection. + * Various other small fixes and improvements + +------------------------------------------------------------------- Thu Nov 13 10:57:39 UTC 2014 - p.seiler@linuxmail.org - update to 1.2-rc1
View file
aircrack-ng.spec
Changed
@@ -2,7 +2,7 @@ # # spec file for package aircrack-ng # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,20 +19,17 @@ %bcond_without unstable %bcond_without sqlite -%define pkg_version 1.2-rc1 +%define pkg_version 1.2-rc2 Name: aircrack-ng -Version: 1.2.rc1 +Version: 1.2.rc2 Release: 0 License: GPL-2.0 Summary: A set of tools for auditing wireless networks Url: http://www.aircrack-ng.org/ Group: Productivity/Networking/Security -# no source because of legal problems in Germany where mirrors are located -# marguerite: still valid? -Source: http://download.aircrack-ng.org/%{name}-%{pkg_version}.tar.gz +Source0: http://download.aircrack-ng.org/%{name}-%{pkg_version}.tar.gz Source1: README.SUSE -Patch: aircrack-ng-1.2-remove_usr_local.patch BuildRequires: gcc-c++ BuildRequires: libgcrypt-devel %if 0%{?suse_version} <= 1140 @@ -44,7 +41,7 @@ BuildRequires: pkg-config BuildRequires: sqlite3-devel BuildRequires: zlib-devel -Requires: wireless-tools +Requires: wireless-tools BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -60,14 +57,13 @@ %setup -q -n aircrack-ng-%{pkg_version} find patches/ -type f -exec sed -i 's|\r||g' {} \; cp "%{SOURCE1}" . -%patch -p1 %build CFLAGS="%{optflags} -Wall" \ make \ %{?_smp_mflags} \ SQLITE=%{?with_sqlite:true}%{?!with_sqlite:false} \ - UNSTABLE=%{?with_unstable:true}%{?!with_unstable:false} \ + EXPERIMENTAL=%{?with_unstable:true}%{?!with_unstable:false} \ gcrypt=true \ libnl=true \ prefix="%{_prefix}" \ @@ -77,7 +73,7 @@ %install %makeinstall \ SQLITE=%{?with_sqlite:true}%{?!with_sqlite:false} \ - UNSTABLE=%{?with_unstable:true}%{?!with_unstable:false} \ + EXPERIMENTAL=%{?with_unstable:true}%{?!with_unstable:false} \ ext_scripts=true \ gcrypt=true \ libnl=true \ @@ -92,7 +88,7 @@ %files %defattr(-,root,root) -%doc AUTHORS ChangeLog LICENSE LICENSE.OpenSSL README README.md README.SUSE +%doc AUTHORS ChangeLog LICENSE LICENSE.OpenSSL README README.SUSE %doc patches %{_bindir}/aircrack-ng %{_bindir}/airdecap-ng @@ -106,7 +102,6 @@ %{_sbindir}/airbase-ng %{_sbindir}/aireplay-ng %{_sbindir}/airmon-ng -%{_sbindir}/airmon-zc %{_sbindir}/airodump-ng %{_sbindir}/airodump-ng-oui-update %{_sbindir}/airserv-ng
View file
aircrack-ng-1.2-remove_usr_local.patch
Deleted
@@ -1,39 +0,0 @@ ---- aircrack-ng-1.2-rc1/src/Makefile.orig 2014-06-08 21:03:52.000000000 +0200 -+++ aircrack-ng-1.2-rc1/src/Makefile 2014-11-12 19:55:39.873329731 +0100 -@@ -101,7 +101,7 @@ endif - - - ifeq ($(subst TRUE,true,$(filter TRUE true,$(sqlite) $(SQLITE))),true) -- LIBSQL = -L/usr/local/lib -lsqlite3 -+ LIBSQL = -lsqlite3 - else - LIBSQL = - endif ---- aircrack-ng-1.2-rc1/src/osdep/linux.c.orig 2014-07-12 04:24:03.000000000 +0200 -+++ aircrack-ng-1.2-rc1/src/osdep/linux.c 2014-11-12 19:56:11.137758873 +0100 -@@ -253,10 +253,8 @@ static char * wiToolsPath(const char * t - static const char * paths [] = { - "/sbin", - "/usr/sbin", -- "/usr/local/sbin", - "/bin", - "/usr/bin", -- "/usr/local/bin", - "/tmp" - }; - /* ---- aircrack-ng-1.2-rc1/scripts/airoscript-ng/src/plugins/yad.orig 2014-04-07 20:03:58.000000000 +0200 -+++ aircrack-ng-1.2-rc1/scripts/airoscript-ng/src/plugins/yad 2014-11-12 20:00:18.200167747 +0100 -@@ -26,10 +26,10 @@ mkmenuline(){ return; } - mkmenueline(){ return; } - - mkmenu(){ title=$1; shift; declare -a res; args=("${@}"); for i in ${!args[@]}; do res+=( "$i" "${args[$i]}" ); done ; -- choice=$(yad --class="airoscript-ng" --window-icon="/usr/local/share/pixmaps/airoscript-ng.png" --separator=" " --list --width=450 --height=250 --title="$title" --text "Select an action:" --column=" " --column="n" --no-headers=1 "${res[@]}" --print-column=1;) -+ choice=$(yad --class="airoscript-ng" --window-icon="/usr/share/pixmaps/airoscript-ng.png" --separator=" " --list --width=450 --height=250 --title="$title" --text "Select an action:" --column=" " --column="n" --no-headers=1 "${res[@]}" --print-column=1;) - [[ $? == 1 ]] && [[ $title == "Main Menu" ]] && exit - } - selectap_wrapper(){ --choice=$(yad --class="airoscript-ng" --window-icon="/usr/local/cal/share/pixmaps/airoscript-ng.png" --separator=" " --list --width=450 --height=250 --title="$title" --text "Select an action:" --column "position" --column "MAC" --column "Channel" --column "Privacy" --column "POWER" --column "LENGHT" --column "ESSID" --hide-column=1 "${res[@]}" --print-column=1;) -+choice=$(yad --class="airoscript-ng" --window-icon="/usr/cal/share/pixmaps/airoscript-ng.png" --separator=" " --list --width=450 --height=250 --title="$title" --text "Select an action:" --column "position" --column "MAC" --column "Channel" --column "Privacy" --column "POWER" --column "LENGHT" --column "ESSID" --hide-column=1 "${res[@]}" --print-column=1;) - } - launch_counter(){ ( for i in $( seq 1 $1 ); do a=$(( ($i * 100) / $1 )); sleep 1; echo "$a"; done ) | zenity --text "Scanning for targets" --progress --auto-close --title="Scanning for targets"; }
View file
aircrack-ng-1.2-rc1.tar.gz/.gitignore
Deleted
@@ -1,9 +0,0 @@ -src/*-ng -src/besside-ng-crawler -src/ivstools -src/kstats -src/wpaclean -src/osdep/.os.Linux -src/osdep/libosdep.a -*.o -*.exe
View file
aircrack-ng-1.2-rc1.tar.gz/.travis.yml
Deleted
@@ -1,8 +0,0 @@ -language: c -compiler: - - gcc - - clang -install: - - sudo apt-get update - - sudo apt-get install libnl-3-dev libgcrypt11-dev zlib1g-dev libsqlite3-dev libpcap-dev libssl-dev libnl-genl-3-dev -script: make sqlite=true unstable=true && make check sqlite=true unstable=true && make clean && make sqlite=true unstable=true gcrypt=true && make check sqlite=true unstable=true gcrypt=true
View file
aircrack-ng-1.2-rc1.tar.gz/README.md
Deleted
@@ -1,115 +0,0 @@ -# Aircrack-ng -Aircrack-ng is an 802.11 WEP and WPA-PSK keys cracking program that can recover -keys once enough data packets have been captured. It implements the standard FMS -attack along with some optimizations like KoreK attacks, as well as the -all-new PTW attack, thus making the attack much faster compared to other WEP -cracking tools. - -It can attack WPA1/2 networks with some advanced methods or simply by brute force. -It can also fully use a multiprocessor system to its full power in order -to speed up the cracking process. - - -[![Build Status](https://api.travis-ci.org/aircrack-ng/aircrack-ng.png)](https://travis-ci.org/aircrack-ng/aircrack-ng) - - -# Building - -## Requirements - - * OpenSSL development package or libgcrypt development package - * If you want to use `airolib-ng` and `-r` option in aircrack-ng, - SQLite development package `>= 3.3.17` (3.6.X version or better is recommended): - `libsqlite3-devel` - * On windows, cygwin has to be used and it also requires w32api and gcc-4 package. - * If you want to use Airpcap, the 'developer' directory from the CD is required. - -## Compilating - - * Compilation: - - `make` - - * Strip debugging symbols: - - `make strip` - - * Installing: - - `make install` - - * Uninstall: - - `make uninstall` - - -### Makefile flags - -When compile and installing, the following flags can be used and combined -to compile and install the suite: - -* **sqlite**: needed to compile `airolib-ng` and add support for `airolib-ng` - databases in aircrack-ng. - On cygwin: SQLite has to be compiled manually. See next section. - -* **airpcap**: needed for supporting airpcap devices on windows (cygwin only) - REQUIREMENT: Copy 'developers' directory from Airpcap CD one - level below this INSTALLING file - Note: Not working yet. - -* **unstable**: needed to compile `tkiptun-ng`, `easside-ng` (and `buddy-ng`) and - `wesside-ng` - -* **ext_scripts**: needed to build `airoscript-ng`, `versuck-ng`, `airgraph-ng` and - `airdrop-ng`. - Note: Experimental. Each script has its own dependences. - Note: It's only required in install phase. - -* **gcrypt**: Use libgcrypt crypto library instead of the default OpenSSL. - And also use internal fast sha1 implementation (borrowed from GIT) - -* **libnl**: Add support for netlink (nl80211). Linux only. - - Requires `libnl1` OR `libnl3`. - - Dependencies (debian): - + LibNL 1: `libnl-dev` - + LibNL 3: `libnl-3-dev` and `libnl-genl-3-dev`. - -#### Examples: - - * Compiling with sqlite and enabling unstable: - - `make sqlite=true unstable=true` - - * Installing: - - `make sqlite=true unstable=true install` - - * Installing, with external scripts: - - `make sqlite=true unstable=true ext_scripts=true` - - * Compiling with gcrypt: - - `make gcrypt=true` - - -# Using precompiled binaries - -Linux/BSD: - * Use your package manager to download aircrack-ng - * In most cases, they have an old version. - -Windows: - * Install the appropriate "monitor" driver for your card (standard drivers doesn't work for capturing data). - * aircrack-ng suite is command line tools. So, you have to open a commandline - `Start menu -> Run... -> cmd.exe` then use them - * Run the executables without any parameters to have help - -# Documentation - - -Documentation, tutorials, ... can be found on http://www.aircrack-ng.org - -See also manpages and the forum. - -For further information check the [README](README) file
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airdriver-ng.8
Deleted
@@ -1,92 +0,0 @@ -.TH AIRDRIVER-NG 8 "October 2014" "Version 1.2-rc1" - -.SH NAME -airdriver-ng - automatically install/uninstall and patch drivers and 802.11 stacks -.SH SYNOPSIS -.B airdriver-ng -<command> [drivernumber] -.SH DESCRIPTION -.BI airdriver-ng -is a script that provides status information about the wireless drivers on your system plus the ability to load and unload the drivers. Additionally, airdriver-ng allows you to install and uninstall drivers complete with the patches required for monitor and injection modes. Plus a number of other functions. -.SH COMMAND -.PP -.TP -.I supported -Lists all supported drivers -.TP -.I kernel -Lists all in-kernel drivers -.TP -.I installed -Lists all installed drivers -.TP -.I loaded -Lists all loaded drivers -.TP -.I load <drivernum> -Loads a driver -.TP -.I unload <drivernum> -Unloads a driver -.TP -.I reload <drivernum> -Reloads a driver -.TP -.I install <drivernum> -Installs a driver -.TP -.I remove <drivernum> -Removes a driver -.TP -.I remove_stack <num> -Removes a stack -.TP -.I install_stack <num> -Installs a stack -.TP -.I details <drivernum> -Prints driver details -.TP -.I detect -Detects wireless cards -.SH AUTHOR -This manual page was written by Thomas d\(aqOtreppe. -Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation -On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL. -.SH SEE ALSO -.br -.B airbase-ng(8) -.br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B aireplay-ng(8) -.br -.B airmon-ng(8) -.br -.B airodump-ng(8) -.br -.B airolib-ng(1) -.br -.B airserv-ng(8) -.br -.B airtun-ng(8) -.br -.B buddy-ng(1) -.br -.B easside-ng(8) -.br -.B ivstools(1) -.br -.B kstats(1) -.br -.B makeivs-ng(1) -.br -.B packetforge-ng(1) -.br -.B tkiptun-ng(8) -.br -.B wesside-ng(8)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airmon-zc.8
Deleted
@@ -1,68 +0,0 @@ -.TH AIRMON-ZC 8 "October 2014" "Version 1.2-rc1" - -.SH NAME -airmon-zc - bash script designed to turn wireless cards into monitor mode, Zero_Chaos version -.SH SYNOPSIS -.B airmon-zc -<start|stop> <interface> [channel] -.B airmon-zc -<check> [kill] -.SH DESCRIPTION -.BI airmon-zc -is script can be used to enable monitor mode on wireless interfaces. It may also be used to go back from monitor mode to managed mode. Entering the airmon-zc command without parameters will show the interfaces status. -It can list/kill programs that can interfere with the wireless card and set the right sources in /etc/kismet/kismet.conf too. -.SH OPTIONAL PARAMETERS -.PP -.TP -.I start <interface> [channel] -Enable monitor mode on an interface (and specify a channel). Note: Madwifi-ng is a special case, \(aqstart\(aq has to be used on wifi interfaces and \(aqstop\(aq on ath interfaces. -.I stop <interface> -Disable monitor mode and go back to managed mode (except for madwifi-ng where it kills the ath VAP). -.TP -.I check [kill] -List all possible programs that could interfere with the wireless card. If \(aqkill\(aq is specified, it will try to kill all of them. -.SH AUTHOR -This manual page was written by Adam Cecile <gandalf@le-vert.net> for the Debian system (but may be used by others). -And modified to fit airmon-zc by David Francos Cuartero <xayon@xayon.net>. -Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation -On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL. - -.SH SEE ALSO -.br -.B airmon-ng(8) -.br -.B airbase-ng(8) -.br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br -.B aireplay-ng(8) -.br -.B airodump-ng(8) -.br -.B airolib-ng(1) -.br -.B airserv-ng(8) -.br -.B airtun-ng(8) -.br -.B buddy-ng(1) -.br -.B easside-ng(8) -.br -.B ivstools(1) -.br -.B kstats(1) -.br -.B makeivs-ng(1) -.br -.B packetforge-ng(1) -.br -.B tkiptun-ng(8) -.br -.B wesside-ng(8)
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airmon-zc
Deleted
@@ -1,1154 +0,0 @@ -#!/bin/sh -DEBUG="0" -VERBOSE="0" -ELITE="0" -USERID="" -IFACE="" -MAC80211=0 -IW_SOURCE="https://www.kernel.org/pub/software/network/iw/iw-3.11.tar.bz2" -IW_ERROR="" -UDEV_ISSUE=0 -SYSFS=0 -if [ -d /sys/ ] -then - SYSFS=1 -fi - -if [ "${1}" = "--elite" ] -then - shift - ELITE="1" -fi - -if [ "${1}" = "--verbose" ] -then - shift - VERBOSE="1" -fi - -if [ "${1}" = "--debug" ] -then - shift - DEBUG="1" - VERBOSE="1" -fi - -#yes, I know this is in here twice -if [ "${1}" = "--elite" ] -then - shift - ELITE="1" -fi - - -CH=${3}; [ x${3} = "x" ] && CH=10 - -#TODO LIST - -#cleanup getDriver() -#fix to not assume wifi drivers are modules - -if [ x"$(command -v id 2> /dev/null)" != "x" ] -then - USERID="$(id -u 2> /dev/null)" -fi - -if [ x${USERID} = "x" -a x${UID} != "x" ] -then - USERID=${UID} -fi - -if [ x${USERID} != "x" -a x${USERID} != "x0" ] -then - printf "Run it as root\n" ; exit 1; -fi - -#check for all needed binaries -if [ ! -x "$(command -v uname 2>&1)" ] -then - printf "How in the world do you not have uname installed?\n" - printf "Please select a linux distro which has at least basic functionality (or install uname).\n" - exit 1 -#else -# #write something in here to test uname for Darwin/Linux and set a variable -fi - -if [ ! -x "$(command -v ip 2>&1)" ] && [ ! -x "$(command -v ifconfig 2>&1)" ] -then - printf "You have neither ip (iproute2) nor ifconfig installed.\n" - printf "Please install one of them from your distro's package manager.\n" - exit 1 -fi - -if [ ! -x "$(command -v iw 2>&1)" ] -then - printf "You don't have iw installed, please install it from your distro's package manager.\n" - printf "If your distro doesn't have a recent version you can download it from this link:\n" - printf "${IW_SOURCE}\n" - exit 1 -fi - -if [ ! -x "$(command -v ethtool 2>&1)" ] -then - printf "Please install the ethtool package for your distro.\n" - exit 1 -fi - -if [ ! -x "$(command -v lsusb 2>&1)" ] -then - printf "Please install lsusb from your distro's package manager.\n" - exit 1 -fi - -if [ -d /proc/bus/pci ] -then - if [ ! -x "$(command -v lspci 2>&1)" ] - then - printf "Please install lspci from your distro's package manager.\n" - exit 1 - else - LSPCI=1 - fi -else - LSPCI=0 -fi - -if [ -f /proc/modules ] -then - if [ ! -x "$(command -v modprobe 2>&1)" ] - then - printf "Your kernel has module support but you don't have modprobe installed.\n" - printf "It is highly recommended to install modprobe (typically from kmod).\n" - MODPROBE=0 - else - MODPROBE=1 - fi - if [ ! -x "$(command -v modinfo 2>&1)" ] - then - printf "Your kernel has module support but you don't have modinfo installed.\n" - printf "It is highly recommended to install modinfo (typically from kmod).\n" - printf "Warning: driver detection without modinfo may yield inaccurate results.\n" - MODINFO=0 - else - MODINFO=1 - fi -fi - -if [ ! -x "$(command -v awk 2>&1)" ] -then - printf "How in the world do you not have awk installed?\n" - printf "Please select a linux distro which has at least basic functionality (or install awk).\n" - exit 1 -fi - -if [ ! -x "$(command -v grep 2>&1)" ] -then - printf "How in the world do you not have grep installed?\n" - printf "Please select a linux distro which has at least basic functionality (or install grep).\n" - exit 1 -fi -#done checking for binaries - -usage() { - printf "usage: $(basename $0) <start|stop|check> <interface> [channel or frequency]\n\n" - exit -} - -setLink() { - if [ -x "$(command -v ip 2>&1)" ] - then - ip link set dev ${1} ${2} || printf "Failed to set ${1} ${2} using ip" - elif [ -x "$(command -v ifconfig 2>&1)" ] - then - ifconfig ${1} ${2} || printf "Failed to set ${1} ${2} using ifconfig" - fi - return -} - -ifaceIsUp() { - if [ -x "$(command -v ip 2>&1)" ] - then - ifaceIsUpCmd="ip link show dev" - elif [ -x "$(command -v ifconfig 2>&1)" ] - then - ifaceIsUpCmd="ifconfig" - fi - if ${ifaceIsUpCmd} ${1} | grep -q UP - then - return - else - return 1 - fi -} - -listIfaceUnspec() { - if [ -x "$(command -v ip 2>&1)" ] - then - ip link 2>/dev/null | awk -F"[: ]+" '/UNSPEC/ {print $2}' - elif [ -x "$(command -v ifconfig 2>&1)" ] - then - ifconfig -a 2>/dev/null | awk -F"[: ]+" '/UNSPEC/ {print $1}' - fi -} - -startDeprecatedIface() { - iwconfig ${1} mode monitor > /dev/null 2>&1 - if [ ! -z ${2} ] - then - if [ ${2} -lt 1000 ] - then
View file
aircrack-ng-1.2-rc1.tar.gz/ChangeLog -> aircrack-ng-1.2-rc2.tar.gz/ChangeLog
Changed
@@ -1,11 +1,42 @@ +Version 1.2-rc2 (changes from aircrack-ng 1.2-rc1) - Released 10 April 2015: +* Airtun-ng: Adds WPA CCMP and TKIP decryption and CCMP encryption +* Compilation: Added support for DUMA. +* Makefile: Renamed 'unstable' to 'experimental'. +* Airodump-ng: Fixed XML sanitizing. +* Airmon-ng: Airmon-zc is now stable enough to replace airmon-ng. +* Manpages: Removed airdriver-ng manpage and references to it (forgot to do it before the previous release). +* Manpages: Updated 'see also' references in all manpages. +* PCRE: Added it in various places and docs. +* WZCook: Fixed processing values stored in register. +* Updated a few headers files (if_llc, ieee80211, ethernet and if_arp). +* Travis CI: updated make parameter and add testing with pcre. +* Compilation: de-hardcode -lpcap to allow specifying pcap libraries. +* Makefile: Fixed installing/uninstalling Airdrop-ng documentation files. +* Makefile: Fixed uninstalling ext_scripts. +* Airodump-ng: Added new paths (and removed one) for OUI files and simplified logic to find the OUI file. +* Aircrack-ng: Fixed ignoring -p when specified after -S. +* Airmon-ng: fixes for openwrt busybox ps/grep issues which do not seem present in other versions of busybox +* Airmon-ng: fix vm detection. +* Airserv-ng: Fixed channel setting (and assert call). +* Airodump-ng: Fixes to NetXML (unassociated clients missing and various other small bugs) and update the code to match current NetXML output. +* Airodump-ng: Removed requirement for 2 packets before AP is written to output (text) files. +* Airodump-ng: Fixed formatting of ESSID and display of WPA/WPA2 (as well as a bunch of other small fixes) in CSV file. +* Airodump-ng: Fixed GPSd. +* Airodump-ng: Allow to specify write interval for CSV, kismet CSV and NetXML files. +* Airserv-ng: Fixed wrong station data displayed in Airodump-ng. +* General: Fixed 64 bit promotion issues. +* General: Fixed a bunch of uninitialized values and non-zeroed structures (upon allocating them). +* General: Added Stack protection. +* Various other small fixes and improvements. + Version 1.2-rc1 (changes from aircrack-ng 1.2-beta3) - Released 31 October 2014: * Airodump-ng should be able to parse the canonical oui file. * Airodump-ng: Fixed GPS stack overflow. * Airodump-ng: Fixed stopping cleanly with Ctrl-C. -* Airmon-zc: better handling for when modules are not available (incomplete) -* Airmon-zc: users can now start the monitor interface again to change channels +* Airmon-zc: better handling for when modules are not available (incomplete). +* Airmon-zc: users can now start the monitor interface again to change channels. * Airmon-zc: update to use ip instead of ifconfig if available. -* Airmon-zc: better handling of devices without pci bus +* Airmon-zc: better handling of devices without pci bus. * Aireplay-ng: Fixed tcp_test stack overflow. * OSdep: Fixed libnl detection. Also avoid detection on non Linux systems. * OSdep: Fixed segmentation fault that happens with a malicious server. @@ -13,9 +44,10 @@ * Buddy-ng: Fixed segmentation fault. * Makefile: Fixed 'commands commence before first target' error when building Aircrack-ng. * Fixed segfault when changing the optimization when compiling with gcc thanks to Ramiro Polla. -* Removed airdriver-ng (outdated and not meant for today's kernels) +* Removed airdriver-ng (outdated and not meant for today's kernels). * Added gitignore file. * Fixed build issues on other compilers by using stdint.h types. +* Fixed CVE-2014-8321, CVE-2014-8322, CVE-2014-8323 and CVE-2014-8324 across multiple tools. * Updating installation file and added pkg-config as a requirement. * Various small fixes and improvements. @@ -46,7 +78,7 @@ * Airmon-ng: Added 'check kill' to automatically kill services that could interfere. * Airmon-ng: Fixed issues with Intel chipsets detection. * Airmon-ng: Updated iw download link. -* Airmon-ng: Better mac80211 handling +* Airmon-ng: Better mac80211 handling. * Airmon-ng: Added detection for WiLink TI driver, rtl819xU, iwlwifi. * Airmon-zc: Improved version of Airmon-ng with more detailled information. * Airdecap-ng: Fixed decoding QoS frames (Closes: #667 and #858). @@ -54,7 +86,7 @@ * Airbase-ng: Fixed bug using clients list. * Airbase-ng: Fixed issue with QoS (ticket #760). * Airbase-ng: Fixed sending beacons with null SSID. -* Airbase-ng: Allow non ASCII ESSID +* Airbase-ng: Allow non ASCII ESSID. * Airodump-ng: Fixed buffer overflow (ticket #728). * Airodump-ng: Fixed channel parsing. * Airodump-ng: Fixed FreeBSD battery reading. @@ -89,7 +121,7 @@ * Airserv-ng: Fixed crash when clients disconnect. * Besside-ng-crawler: Added EAPOL Crawler. * Airdecloak-ng: Fixed bug when using pcap files with PPI headers. -* dcrack: Distributed cracking server/client +* dcrack: Distributed cracking server/client. * wifi-detect.sh: reference script for testing wifi card detection using iwconfig vs ls /sys/class/net * WPA Clean: Tool to merge and clean WPA capture files. * Wireless Panda: C# Library to parse Airodump-ng output files (and added example project).
View file
aircrack-ng-1.2-rc1.tar.gz/INSTALLING -> aircrack-ng-1.2-rc2.tar.gz/INSTALLING
Changed
@@ -32,15 +32,14 @@ * sqlite: needed to compile airolib-ng and add support for airolib-ng databases in aircrack-ng. - On cygwin: SQLite has to be compiled manually. See next section. * airpcap: needed for supporting airpcap devices on windows (cygwin only) REQUIREMENT: Copy 'developers' directory from Airpcap CD one level below this INSTALLING file Note: Not working yet. -* unstable: needed to compile tkiptun-ng, easside-ng (and buddy-ng) and - wesside-ng +* experimental: needed to compile tkiptun-ng, easside-ng (and buddy-ng), + wesside-ng and besside-ng * ext_scripts: needed to build airoscript-ng, versuck-ng, airgraph-ng and airdrop-ng. @@ -58,19 +57,22 @@ * pcre: Add support for regular expression matching for ESSID in airodump-ng and besside-ng. Dependencies (debian): libpcre3-dev +* duma: Compile with DUMA support. DUMA is a library to detect buffer overruns and under-runs. + Dependencies (debian): duma + Example: * Compiling: - make sqlite=true unstable=true + make sqlite=true experimental=true pcre=true * Compiling with gcrypt make gcrypt=true * Installing: - make sqlite=true unstable=true install + make sqlite=true pcre=true experimental=true install * Installing, with external scripts: - make sqlite=true unstable=true ext_scripts=true + make sqlite=true pcre=true experimental=true ext_scripts=true === Using precompiled binaries ===
View file
aircrack-ng-1.2-rc1.tar.gz/Makefile -> aircrack-ng-1.2-rc2.tar.gz/Makefile
Changed
@@ -25,7 +25,7 @@ $(MAKE) -C src $(@) coverity-build: - $(COVERITY_BUILD) --dir $(COVERITY_DIR) $(MAKE) sqlite=true unstable=true libnl=true + $(COVERITY_BUILD) --dir $(COVERITY_DIR) $(MAKE) sqlite=true experimental=true pcre=true coverity-package: coverity-build tar czvf $(COVERITY_TAR_GZ) $(COVERITY_DIR)
View file
aircrack-ng-1.2-rc1.tar.gz/README -> aircrack-ng-1.2-rc2.tar.gz/README
Changed
@@ -30,7 +30,7 @@ Problem 1: No client can associate to an airbase soft AP. - Solution 1: None at this time. + Solution: Use a more recent driver. Madwifi-ng has been deprecated for years. Problem 2: When changing rate while you are capturing packet makes airodump-ng stall @@ -60,7 +60,7 @@ ----------- Problem: Fakeauth on a WRT54G with WEP (shared authentication) doesn't work. - Solution: None at this time (we'll try to fix it for next release). + Solution: None at this time (we'll try to fix it in an upcoming release). Airolib-ng @@ -82,7 +82,16 @@ Problem: On windows, it doesn't display a list of adapters like the old 0.X Solution: It requires you to develop your own DLL. - + + Problem: Handshake is not captured/detected + Reason: You might be too far and your signal is bad (or too close with a signal too strong). + Another possibility is that Airodump-ng didn't detect the handshake properly due to + being far apart in the capture. + Solution 1: Check out our tutorial 'WPA Packet Capture Explained' in the wiki. + Solution 2: Try running Aircrack-ng on your capture, it might detect the capture. + Solution 3: Check out our wpaclean tool. + Note: It will be fixed in an upcoming release. + Cygwin ------ @@ -132,3 +141,12 @@ password.db This is a sample airolib-ng database for WPA key cracking. + +pingreply.c + Replies to all ping requests. Useful for testing sniffing/injecting packets with airtun-ng. + +Chinese-SSID-Name.pcap + Contains a beacon with an SSID displayed in Chinese. + +verify_inject.py + Testing DNS requests using airtun-ng.
View file
aircrack-ng-1.2-rc1.tar.gz/VERSION -> aircrack-ng-1.2-rc2.tar.gz/VERSION
Changed
@@ -1,1 +1,1 @@ -1.2-rc1 +1.2-rc2
View file
aircrack-ng-1.2-rc1.tar.gz/common.mak -> aircrack-ng-1.2-rc2.tar.gz/common.mak
Changed
@@ -39,7 +39,7 @@ endif ifeq ($(PCRE), true) -COMMON_CFLAGS += $(shell pcre-config --cflags) -DHAVE_PCRE +COMMON_CFLAGS += $(shell $(PKG_CONFIG) --cflags libpcre) -DHAVE_PCRE endif ifeq ($(OSNAME), cygwin) @@ -131,11 +131,34 @@ libdir = $(prefix)/lib etcdir = $(prefix)/etc/aircrack-ng +GCC_OVER41 = $(shell expr 41 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) GCC_OVER45 = $(shell expr 45 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) +GCC_OVER49 = $(shell expr 49 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) +ifeq ($(GCC_OVER41), 0) + GCC_OVER41 = $(shell expr 4.1 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) +endif ifeq ($(GCC_OVER45), 0) GCC_OVER45 = $(shell expr 4.5 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) endif +ifeq ($(GCC_OVER49), 0) + GCC_OVER49 = $(shell expr 4.9 \<= `$(CC) -dumpversion | awk -F. '{ print $1$2 }'`) +endif + + +ifeq ($(GCC_OVER49), 0) + ifeq ($(GCC_OVER41), 1) + COMMON_CFLAGS += -fstack-protector + endif +endif + +ifeq ($(GCC_OVER49), 1) + COMMON_CFLAGS += -fstack-protector-strong +endif ifeq ($(GCC_OVER45), 1) CFLAGS += -Wno-unused-but-set-variable -Wno-array-bounds endif + +ifeq ($(subst TRUE,true,$(filter TRUE true,$(duma) $(DUMA))),true) + LIBS += -lduma +endif
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/Makefile -> aircrack-ng-1.2-rc2.tar.gz/manpages/Makefile
Changed
@@ -4,18 +4,16 @@ MP_FILES = aircrack-ng.1 airdecap-ng.1 ivstools.1 kstats.1 makeivs-ng.1 \ packetforge-ng.1 airdecloak-ng.1 wpaclean.1 besside-ng-crawler.1 -SMP_FILES = airdriver-ng.8 aireplay-ng.8 airmon-ng.8 airodump-ng.8 \ +SMP_FILES = aireplay-ng.8 airmon-ng.8 airodump-ng.8 besside-ng.8 \ airserv-ng.8 airtun-ng.8 airbase-ng.8 airodump-ng-oui-update.8 \ - besside-ng.8 - ifeq ($(subst TRUE,true,$(filter TRUE true,$(sqlite) $(SQLITE))),true) MP_FILES += airolib-ng.1 endif -ifeq ($(subst TRUE,true,$(filter TRUE true,$(unstable) $(UNSTABLE))),true) +ifeq ($(subst TRUE,true,$(filter TRUE true,$(experimental) $(EXPERIMENTAL))),true) MP_FILES += buddy-ng.1 - SMP_FILES += tkiptun-ng.8 easside-ng.8 wesside-ng.8 airmon-zc.8 + SMP_FILES += tkiptun-ng.8 easside-ng.8 wesside-ng.8 endif @@ -33,7 +31,7 @@ # Uninstall just calls cleanfiles with all possible switches enabled to # ensure all previously installed manpages are cleaned uninstall: - $(MAKE) cleanfiles sqlite=true unstable=true + $(MAKE) cleanfiles sqlite=true experimental=true cleanfiles: @-$(foreach CUR_MP,$(MP_FILES), rm -f $(DESTDIR)$(mandir)/$(CUR_MP); echo rm -f $(DESTDIR)$(mandir)/$(CUR_MP); )
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airbase-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airbase-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRBASE-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIRBASE-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME airbase-ng - multi-purpose tool aimed at attacking clients as opposed to the Access Point (AP) itself @@ -169,28 +169,38 @@ .PP .SH SEE ALSO .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br -.B buddy-ng(1) +.B airtun-ng(8) +.br +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -199,6 +209,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/aircrack-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/aircrack-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH AIRCRACK-NG 1 "October 2014" "Version 1.2-rc1" +.TH AIRCRACK-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME aircrack-ng - a 802.11 WEP / WPA-PSK key cracker @@ -137,28 +137,36 @@ .br .B airbase-ng(8) .br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -167,6 +175,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airdecap-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airdecap-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH AIRDECAP-NG 1 "October 2014" "Version 1.2-rc1" +.TH AIRDECAP-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME airdecap-ng - decrypt a WEP/WPA crypted pcap file @@ -45,28 +45,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -75,6 +83,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airdecloak-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airdecloak-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH AIRDECLOAK-NG 1 "October 2014" "Version 1.2-rc1" +.TH AIRDECLOAK-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME airuncloak-ng - Removes wep cloaked framed from a pcap file. @@ -71,28 +71,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -101,6 +109,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/aireplay-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/aireplay-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIREPLAY-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIREPLAY-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME aireplay-ng - inject packets into a wireless network to generate traffic @@ -210,28 +210,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -240,6 +248,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airmon-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airmon-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRMON-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIRMON-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME airmon-ng - bash script designed to turn wireless cards into monitor mode. @@ -23,34 +23,44 @@ List all possible programs that could interfere with the wireless card. If \(aqkill\(aq is specified, it will try to kill all of them. .SH AUTHOR This manual page was written by Adam Cecile <gandalf@le-vert.net> for the Debian system (but may be used by others). +And modified to fit airmon-ng by David Francos Cuartero <xayon@xayon.net>. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL. + .SH SEE ALSO .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -59,6 +69,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airodump-ng-oui-update.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airodump-ng-oui-update.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRODUMP-NG-OUI-UPDATE 8 "October 2014" "Version 1.2-rc1" +.TH AIRODUMP-NG-OUI-UPDATE 8 "April 2015" "Version 1.2-rc2" .SH NAME airodump-ng-oui-updater - IEEE oui list updater for airodump-ng @@ -18,13 +18,7 @@ .PP .SH SEE ALSO .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) +.B airbase-ng(8) .br .B aireplay-ng(8) .br @@ -32,14 +26,30 @@ .br .B airodump-ng(8) .br -.B airolib-ng(1) -.br .B airserv-ng(8) .br -.B buddy-ng(1) +.B airtun-ng(8) +.br +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -48,6 +58,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airodump-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airodump-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRODUMP-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIRODUMP-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME airodump-ng - a wireless packet capture tool for aircrack-ng @@ -59,12 +59,18 @@ .I -U, --uptime Display APs uptime obtained from its beacon timestamp. .TP +.I -W, --wps +Display a WPS column with WPS version, config method(s), AP Setup Locked obtained from APs beacon or probe response (if any). +.TP .I --output-format <formats> Define the formats to use (separated by a comma). Possible values are: pcap, ivs, csv, gps, kismet, netxml. The default values are: pcap, csv, kismet, kismet-newcore. \(aqpcap\(aq is for recording a capture in pcap format, \(aqivs\(aq is for ivs format (it is a shortcut for --ivs). \(aqcsv\(aq will create an airodump-ng CSV file, \(aqkismet\(aq will create a kismet csv file and \(aqkismet-newcore\(aq will create the kismet netxml file. \(aqgps\(aq is a shortcut for --gps. .br Theses values can be combined with the exception of ivs and pcap. .TP +.I -I <seconds>, --write-interval <seconds> +Output file(s) write interval for CSV, Kismet CSV and Kismet NetXML in seconds (minimum: 1 second). By default: 5 seconds. Note that an interval too small might slow down airodump\-ng. +.TP .I --ignore-negative-one Removes the message that says \(aqfixed channel <interface>: -1\(aq. .PP @@ -192,6 +198,9 @@ .I AUTH The authentication protocol used. One of MGT (WPA/WPA2 using a separate authentication server), SKA (shared key for WEP), PSK (pre-shared key for WPA/WPA2), or OPN (open for WEP). .TP +.I WPS +This is only displayed when --wps (or -W) is specified. If the AP supports WPS, the first field of the column indicates version supported. The second field indicates WPS config methods (can be more than one method, separated by comma): USB = USB method, ETHER = Ethernet, LAB = Label, DISP = Display, EXTNFC = External NFC, INTNFC = Internal NFC, NFCINTF = NFC Interface, PBC = Push Button, KPAD = Keypad. Locked is displayed when AP setup is locked. +.TP .I ESSID The so-called "SSID", which can be empty if SSID hiding is activated. In this case, airodump-ng will try to recover the SSID from probe responses and association requests. .TP @@ -219,30 +228,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng-oui-update(8) .br -.B airolib-ng(1) -.br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -251,6 +266,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airolib-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airolib-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH AIROLIB-NG 1 "October 2014" "Version 1.2-rc1" +.TH AIROLIB-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME airolib-ng - manage and create a WPA/WPA2 pre-computed hashes tables @@ -45,28 +45,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br +.B airodump-ng-oui-update(8) +.br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -75,6 +83,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airserv-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airserv-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRSERV-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIRSERV-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME airserv-ng - a wireless card server @@ -36,28 +36,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -66,6 +74,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/airtun-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/airtun-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH AIRTUN-NG 8 "October 2014" "Version 1.2-rc1" +.TH AIRTUN-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME airtun-ng - a virtual tunnel interface creator for aircrack-ng @@ -60,28 +60,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -90,6 +98,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/besside-ng-crawler.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/besside-ng-crawler.1
Changed
@@ -1,4 +1,4 @@ -.TH BESSIDE-NG-CRAWLER 1 "October 2014" "Version 1.2-rc1" +.TH BESSIDE-NG-CRAWLER 1 "April 2015" "Version 1.2-rc2" .SH NAME @@ -24,30 +24,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -56,4 +62,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/besside-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/besside-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH BESSIDE-NG 8 "October 2014" "Version 1.2-rc1" +.TH BESSIDE-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME besside-ng - crack a WEP or WPA key without user intervention and collaborate with WPA cracking statistics @@ -51,30 +51,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) -.br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -83,4 +89,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/buddy-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/buddy-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH BUDDY-NG 1 "October 2014" "Version 1.2-rc1" +.TH BUDDY-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME buddy-ng - a tool to work with easside-ng @@ -24,28 +24,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br +.B besside-ng(8) +.br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br .B ivstools(1) .br .B kstats(1) @@ -54,6 +62,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/easside-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/easside-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH EASSIDE-NG 8 "October 2014" "Version 1.2-rc1" +.TH EASSIDE-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME easside-ng - an auto-magic tool which allows you to communicate via an WEP-encrypted AP without knowing the key @@ -45,29 +45,35 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) +.br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) .br -.B easside-ng(8) +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) .br .B ivstools(1) .br @@ -77,6 +83,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/ivstools.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/ivstools.1
Changed
@@ -1,4 +1,4 @@ -.TH IVSTOOLS 1 "October 2014" "Version 1.2-rc1" +.TH IVSTOOLS 1 "April 2015" "Version 1.2-rc2" .SH NAME ivstools - extract IVs from a pcap file or merges several .ivs files into one @@ -23,36 +23,42 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B kstats(1) .br .B makeivs-ng(1) .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/kstats.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/kstats.1
Changed
@@ -1,4 +1,4 @@ -.TH KSTATS 1 "October 2014" "Version 1.2-rc1" +.TH KSTATS 1 "April 2015" "Version 1.2-rc2" .SH NAME kstats - show statistical FMS algorithm votes for an ivs dump and a specified WEP key @@ -19,36 +19,42 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B makeivs-ng(1) .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/makeivs-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/makeivs-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH MAKEIVS-NG 1 "October 2014" "Version 1.2-rc1" +.TH MAKEIVS-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME makeivs - generate a dummy IVS dump file with a specific WEP key @@ -20,36 +20,42 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/packetforge-ng.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/packetforge-ng.1
Changed
@@ -1,4 +1,4 @@ -.TH PACKETFORGE-NG 1 "October 2014" "Version 1.2-rc1" +.TH PACKETFORGE-NG 1 "April 2015" "Version 1.2-rc2" .SH NAME packetforge-ng - forge packets: ARP, UDP, ICMP or custom packets. @@ -83,36 +83,42 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) .br .B makeivs-ng(1) .br -.B tkiptun-ng(8) -.br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/tkiptun-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/tkiptun-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH TKIPTUN-NG 8 "October 2014" "Version 1.2-rc1" +.TH TKIPTUN-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME tkiptun-ng - inject a few frames into a WPA TKIP network with QoS @@ -95,30 +95,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -127,4 +133,4 @@ .br .B packetforge-ng(1) .br -.B wesside-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/wesside-ng.8 -> aircrack-ng-1.2-rc2.tar.gz/manpages/wesside-ng.8
Changed
@@ -1,4 +1,4 @@ -.TH WESSIDE-NG 8 "October 2014" "Version 1.2-rc1" +.TH WESSIDE-NG 8 "April 2015" "Version 1.2-rc2" .SH NAME wesside-ng - crack a WEP key of an open network without user intervention @@ -48,30 +48,36 @@ .br .B airbase-ng(8) .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) -.br .B aireplay-ng(8) .br .B airmon-ng(8) .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br .B airtun-ng(8) .br -.B buddy-ng(1) +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -80,4 +86,4 @@ .br .B packetforge-ng(1) .br -.B tkiptun-ng(8) +.B wpaclean(1)
View file
aircrack-ng-1.2-rc1.tar.gz/manpages/wpaclean.1 -> aircrack-ng-1.2-rc2.tar.gz/manpages/wpaclean.1
Changed
@@ -1,4 +1,4 @@ -.TH WPACLEAN 1 "October 2014" "Version 1.2-rc1" +.TH WPACLEAN 1 "April 2015" "Version 1.2-rc2" .SH NAME wpaclean - clean wpa capture files @@ -18,13 +18,7 @@ .PP .SH SEE ALSO .br -.B aircrack-ng(1) -.br -.B airdecap-ng(1) -.br -.B airdecloak-ng(1) -.br -.B airdriver-ng(8) +.B airbase-ng(8) .br .B aireplay-ng(8) .br @@ -32,14 +26,32 @@ .br .B airodump-ng(8) .br -.B airolib-ng(1) +.B airodump-ng-oui-update(8) .br .B airserv-ng(8) .br -.B buddy-ng(1) +.B airtun-ng(8) +.br +.B besside-ng(8) .br .B easside-ng(8) .br +.B tkiptun-ng(8) +.br +.B wesside-ng(8) +.br +.B aircrack-ng(1) +.br +.B airdecap-ng(1) +.br +.B airdecloak-ng(1) +.br +.B airolib-ng(1) +.br +.B besside-ng-crawler(1) +.br +.B buddy-ng(1) +.br .B ivstools(1) .br .B kstats(1) @@ -47,7 +59,3 @@ .B makeivs-ng(1) .br .B packetforge-ng(1) -.br -.B tkiptun-ng(8) -.br -.B wesside-ng(8)
View file
aircrack-ng-1.2-rc1.tar.gz/packages/PKGBUILD -> aircrack-ng-1.2-rc2.tar.gz/packages/PKGBUILD
Changed
@@ -1,6 +1,6 @@ # Contributor: ice-man <icemanf@gmail.com> pkgname=aircrack-ng -pkgver=1.2-rc1 +pkgver=1.2-rc2 pkgrel="1" pkgdesc="aircrack is an 802.11 WEP and WPA-PSK keys cracking program that can recover this keys once enough encrypted packets have been captured." source=(http://download.aircrack-ng.org/$pkgname-$pkgver.tar.gz)
View file
aircrack-ng-1.2-rc1.tar.gz/packages/aircrack-ng.spec -> aircrack-ng-1.2-rc2.tar.gz/packages/aircrack-ng.spec
Changed
@@ -3,7 +3,7 @@ # these bits are constant across distributions # Name: aircrack-ng -Version: 1.2-rc1 +Version: 1.2-rc2 Summary: Reliable 802.11 (wireless) sniffer and WEP/WPA-PSK key cracker License: GPL Source: http://dl.aircrack-ng.org/%{name}-%{version}.tar.gz @@ -118,13 +118,13 @@ %setup -q %build -make %{?_smp_mflags} sqlite=true unstable=true +make %{?_smp_mflags} sqlite=true pcre=true experimental=true %install rm -rf $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT prefix=%{_prefix} mandir=%{_mandir}/man1 sqlite=true unstable=true +make install DESTDIR=$RPM_BUILD_ROOT prefix=%{_prefix} mandir=%{_mandir}/man1 sqlite=true pcre=true experimental=true cd $RPM_BUILD_ROOT find . -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > %{_builddir}/file.list.%{name}
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/Makefile
Changed
@@ -2,7 +2,7 @@ include $(AC_ROOT)/common.mak SCRIPTS = airodump-ng-oui-update -SCRIPTS_LNX = airmon-ng airmon-zc +SCRIPTS_LNX = airmon-ng default: all @@ -28,9 +28,12 @@ uninstall: -rm -f $(DESTDIR)$(sbindir)/airmon-ng - -rm -f $(DESTDIR)$(sbindir)/airmon-zc -rm -f $(DESTDIR)$(sbindir)/airdriver-ng -rm -f $(DESTDIR)$(sbindir)/airodump-ng-oui-update + $(MAKE) -C airdrop-ng $(@) + $(MAKE) -C airgraph-ng $(@) + $(MAKE) -C airoscript-ng $(@) + $(MAKE) -C versuck-ng $(@) clean: @echo Nothing to do
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airdrop-ng/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/airdrop-ng/Makefile
Changed
@@ -5,7 +5,7 @@ default: all all: - @echo Nothing to do. Run make install + @echo "Nothing to do. Run make install" install: doc python setup.py install --prefix="$(prefix)" --record files.txt
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airdrop-ng/airdrop/libOuiParse.py -> aircrack-ng-1.2-rc2.tar.gz/scripts/airdrop-ng/airdrop/libOuiParse.py
Changed
@@ -44,7 +44,10 @@ self.OUI_PATH = ["/etc/aircrack-ng/airodump-ng-oui.txt", "/usr/local/etc/aircrack-ng/airodump-ng-oui.txt", "/usr/share/aircrack-ng/airodump-ng-oui.txt", + "/var/lib/misc/oui.txt", "/usr/share/misc/oui.txt", + "/var/lib/ieee-data/oui.txt", + "/usr/share/ieee-data/oui.txt", "/etc/manuf/oui.txt", "/usr/share/wireshark/wireshark/manuf/oui.txt", "/usr/share/wireshark/manuf/oui.txt"]
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airdrop-ng/doc/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/airdrop-ng/doc/Makefile
Changed
@@ -1,3 +1,5 @@ +AC_ROOT = ../../../ +include $(AC_ROOT)/common.mak DOCFILES = Apple.sample.txt dropRules.conf.example default: all @@ -5,7 +7,7 @@ @echo "Nothing to do, run make install" uninstall: - rm $(DESTDIR)$(docdir)/Apple.sample.txt $(DESTDIR)$(docdir)/dropRules.conf.example $(DESTDIR)$(mandir)/airdrop-ng.1 + rm -f $(DESTDIR)$(docdir)/Apple.sample.txt $(DESTDIR)$(docdir)/dropRules.conf.example $(DESTDIR)$(mandir)/airdrop-ng.1 install: install -d $(DESTDIR)$(docdir)
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airgraph-ng/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/airgraph-ng/Makefile
Changed
@@ -5,7 +5,7 @@ default: all all: - @echo Nothing to do. Run make install + @echo "Nothing to do. Run make install" install: doc python setup.py install --prefix="$(prefix)" --record files.txt
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airgraph-ng/man/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/airgraph-ng/man/Makefile
Changed
@@ -7,7 +7,7 @@ default: all all: - @echo Nothing to do. Run make install + @echo "Nothing to do. Run make install" install: uninstall install -d $(DESTDIR)$(mandir)
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airmon-ng -> aircrack-ng-1.2-rc2.tar.gz/scripts/airmon-ng
Changed
@@ -1,1335 +1,1220 @@ #!/bin/sh - +DEBUG="0" +VERBOSE="0" +ELITE="0" USERID="" IFACE="" -KISMET=/etc/kismet/kismet.conf -CH=$3; [ x$3 = "x" ] && CH=10 -IFACE_FOUND="false" -MADWIFI=0 MAC80211=0 -USE_IW=0 -IW_SOURCE="https://www.kernel.org/pub/software/network/iw/iw-3.17.tar.xz" +IW_SOURCE="https://www.kernel.org/pub/software/network/iw/iw-4.0.tar.gz" IW_ERROR="" UDEV_ISSUE=0 +SYSFS=0 +if [ -d /sys/ ] +then + SYSFS=1 +fi + +if [ "${1}" = "--elite" ] +then + shift + ELITE="1" +fi + +if [ "${1}" = "--verbose" ] +then + shift + VERBOSE="1" +fi + +if [ "${1}" = "--debug" ] +then + shift + DEBUG="1" + VERBOSE="1" +fi -if [ -f "`which iw 2>&1`" ] +#yes, I know this is in here twice +if [ "${1}" = "--elite" ] then - USE_IW=1 + shift + ELITE="1" fi -if [ "x$MON_PREFIX" = "x" ] + +CH=${3}; [ x${3} = "x" ] && CH=10 + +#TODO LIST + +#cleanup getDriver() +#fix to not assume wifi drivers are modules + +if [ x"$(command -v id 2> /dev/null)" != "x" ] +then + USERID="$(id -u 2> /dev/null)" +fi + +if [ x${USERID} = "x" -a x"$(id -ru)" != "x" ] then -MON_PREFIX="mon" + USERID="$(id -ru)" fi -PROCESSES="wpa_action\|wpa_supplicant\|wpa_cli\|dhclient\|ifplugd\|dhcdbd\|dhcpcd\|NetworkManager\|knetworkmanager\|avahi-autoipd\|avahi-daemon\|wlassistant\|wifibox" -PS_ERROR="invalid" +if [ x${USERID} != "x" -a x${USERID} != "x0" ] +then + printf "Run it as root\n" ; exit 1; +fi + +#check for all needed binaries +if [ ! -x "$(command -v uname 2>&1)" ] +then + printf "How in the world do you not have uname installed?\n" + printf "Please select a linux distro which has at least basic functionality (or install uname).\n" + exit 1 +#else +# #write something in here to test uname for Darwin/Linux and set a variable +fi + +if [ ! -x "$(command -v ip 2>&1)" ] && [ ! -x "$(command -v ifconfig 2>&1)" ] +then + printf "You have neither ip (iproute2) nor ifconfig installed.\n" + printf "Please install one of them from your distro's package manager.\n" + exit 1 +fi + +if [ ! -x "$(command -v iw 2>&1)" ] +then + printf "You don't have iw installed, please install it from your distro's package manager.\n" + printf "If your distro doesn't have a recent version you can download it from this link:\n" + printf "${IW_SOURCE}\n" + exit 1 +fi + +if [ ! -x "$(command -v ethtool 2>&1)" ] +then + printf "Please install the ethtool package for your distro.\n" + exit 1 +fi + +if [ ! -x "$(command -v lsusb 2>&1)" ] +then + printf "Please install lsusb from your distro's package manager.\n" + exit 1 +fi + +if [ -d /proc/bus/pci ] +then + if [ ! -x "$(command -v lspci 2>&1)" ] + then + printf "Please install lspci from your distro's package manager.\n" + exit 1 + else + LSPCI=1 + fi +else + LSPCI=0 +fi + +if [ -f /proc/modules ] +then + if [ ! -x "$(command -v modprobe 2>&1)" ] + then + printf "Your kernel has module support but you don't have modprobe installed.\n" + printf "It is highly recommended to install modprobe (typically from kmod).\n" + MODPROBE=0 + else + MODPROBE=1 + fi + if [ ! -x "$(command -v modinfo 2>&1)" ] + then + printf "Your kernel has module support but you don't have modinfo installed.\n" + printf "It is highly recommended to install modinfo (typically from kmod).\n" + printf "Warning: driver detection without modinfo may yield inaccurate results.\n" + MODINFO=0 + else + MODINFO=1 + fi +fi + +if [ ! -x "$(command -v awk 2>&1)" ] +then + printf "How in the world do you not have awk installed?\n" + printf "Please select a linux distro which has at least basic functionality (or install awk).\n" + exit 1 +fi + +if [ ! -x "$(command -v grep 2>&1)" ] +then + printf "How in the world do you not have grep installed?\n" + printf "Please select a linux distro which has at least basic functionality (or install grep).\n" + exit 1 +fi +#done checking for binaries usage() { - printf "usage: `basename $0` <start|stop|check> <interface> [channel or frequency]\n" - echo + printf "usage: $(basename $0) <start|stop|check> <interface> [channel or frequency]\n\n" exit } -startStdIface() { - iwconfig $1 mode monitor >/dev/null 2>&1 - if [ ! -z $2 ] +setLink() { + if [ -x "$(command -v ip 2>&1)" ] + then + ip link set dev ${1} ${2} > /dev/null 2>&1 || printf "\nFailed to set ${1} ${2} using ip\n" + elif [ -x "$(command -v ifconfig 2>&1)" ] + then + ifconfig ${1} ${2} > /dev/null 2>&1 || printf "\nFailed to set ${1} ${2} using ifconfig\n" + fi + return +} + +ifaceIsUp() { + if [ -x "$(command -v ip 2>&1)" ] + then + ifaceIsUpCmd="ip link show dev" + elif [ -x "$(command -v ifconfig 2>&1)" ] then - if [ $2 -lt 1000 ] - then - iwconfig $1 channel $2 >/dev/null 2>&1 - else - iwconfig $1 freq "$2"000000 > /dev/null 2>&1 - fi + ifaceIsUpCmd="ifconfig" + fi
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/airoscript-ng/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/airoscript-ng/Makefile
Changed
@@ -99,7 +99,7 @@ @for i in $(docdir)/*.1 ; do rm -rf $(mandir)/man1/$$i ; done @for i in $(srcdir)/locale/* ; do \ if [ -d $$i ] && [ $$i != "." ] && [ $$i != ".." ]; then \ - make -s -C $$i uninstall localedir=$(locale) ; \ + make -s -C $$i uninstall localedir="$(locale)" ; \ fi ; \ done @echo "Uninstalled succesfully"
View file
aircrack-ng-1.2-rc1.tar.gz/scripts/versuck-ng/Makefile -> aircrack-ng-1.2-rc2.tar.gz/scripts/versuck-ng/Makefile
Changed
@@ -8,7 +8,7 @@ default: all all: - @echo Nothing to do. Run make install + @echo "Nothing to do. Run make install" install: uninstall install -d $(DESTDIR)$(mandir)
View file
aircrack-ng-1.2-rc1.tar.gz/src/Makefile -> aircrack-ng-1.2-rc2.tar.gz/src/Makefile
Changed
@@ -16,13 +16,14 @@ LIBPCRE = ifeq ($(PCRE), true) - LIBPCRE = $(shell pcre-config --libs) + LIBPCRE = $(shell $(PKG_CONFIG) --libs libpcre) endif ifneq ($(OSNAME), cygwin) #There is yet no libpcap support for windows, so we skip the crawler HAVE_PCAP = $(shell ld -lpcap 2> /dev/null && echo yes) ifeq ($(HAVE_PCAP), yes) #cannot link with -lpcap, skip crawler BINFILES += besside-ng-crawler$(EXE) + LIBPCAP = -lpcap endif endif @@ -32,14 +33,14 @@ SBINFILES = aireplay-ng$(EXE) airodump-ng$(EXE) airserv-ng$(EXE) \ - airtun-ng$(EXE) airbase-ng$(EXE) besside-ng$(EXE) + airtun-ng$(EXE) airbase-ng$(EXE) OPTFILES = aircrack-ng-opt-prof_gen aircrack-ng-opt \ aircrack-ng-opt-prof prof/* -ifeq ($(subst TRUE,true,$(filter TRUE true,$(unstable) $(UNSTABLE))),true) - SBINFILES += wesside-ng$(EXE) tkiptun-ng$(EXE) easside-ng$(EXE) +ifeq ($(subst TRUE,true,$(filter TRUE true,$(experimental) $(EXPERIMENTAL))),true) + SBINFILES += wesside-ng$(EXE) tkiptun-ng$(EXE) easside-ng$(EXE) besside-ng$(EXE) BINFILES += buddy-ng$(EXE) endif @@ -168,7 +169,7 @@ $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BS) -o $(@) $(LIBS) $(LIBSSL) -lz $(LIBPCRE) besside-ng-crawler$(EXE): $(OBJS_BC) - $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BC) -o $(@) -lpcap + $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BC) -o $(@) $(LIBPCAP) makeivs-ng$(EXE): $(OBJS_MI) $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_MI) -o $(@) $(LDFLAGS) @@ -193,7 +194,7 @@ clean: $(MAKE) -C $(OSD) clean - -rm -f $(SBINFILES) $(BINFILES) $(OPTFILES) airolib-ng$(EXE) *.o wesside-ng$(EXE) tkiptun-ng$(EXE) easside-ng$(EXE) buddy-ng$(EXE) a.out + -rm -f $(SBINFILES) $(BINFILES) $(OPTFILES) airolib-ng$(EXE) *.o wesside-ng$(EXE) tkiptun-ng$(EXE) easside-ng$(EXE) buddy-ng$(EXE) besside-ng$(EXE) a.out distclean: clean
View file
aircrack-ng-1.2-rc1.tar.gz/src/airbase-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airbase-ng.c
Changed
@@ -2,8 +2,8 @@ * 802.11 monitor AP * based on airtun-ng * - * Copyright (C) 2008-2013 Thomas d'Otreppe - * Copyright (C) 2008, 2009 Martin Beck + * Copyright (C) 2008-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> + * Copyright (C) 2008, 2009 Martin Beck <hirte@aircrack-ng.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -156,7 +156,7 @@ char usage[] = "\n" -" %s - (C) 2008-2013 Thomas d'Otreppe\n" +" %s - (C) 2008-2014 Thomas d'Otreppe\n" " Original work: Martin Beck\n" " http://www.aircrack-ng.org\n" "\n" @@ -722,7 +722,7 @@ while(cur->next != NULL) { old = cur->next; - timediff = (tv.tv_sec - old->access.tv_sec)*1000000 + (tv.tv_usec - old->access.tv_usec); + timediff = (tv.tv_sec - old->access.tv_sec)*1000000UL + (tv.tv_usec - old->access.tv_usec); if(timediff > FRAG_TIMEOUT) { //remove captured fragments @@ -2994,7 +2994,7 @@ //set timestamp gettimeofday( &tv1, NULL ); - timestamp=tv1.tv_sec*1000000 + tv1.tv_usec; + timestamp=tv1.tv_sec*1000000UL + tv1.tv_usec; //copy timestamp into response; a mod 2^64 counter incremented each microsecond for(i=0; i<8; i++) @@ -3089,7 +3089,7 @@ //set timestamp gettimeofday( &tv1, NULL ); - timestamp=tv1.tv_sec*1000000 + tv1.tv_usec; + timestamp=tv1.tv_sec*1000000UL + tv1.tv_usec; //copy timestamp into response; a mod 2^64 counter incremented each microsecond for(i=0; i<8; i++) @@ -3523,7 +3523,7 @@ // ticks[2] = 0; fflush(stdout); gettimeofday( &tv1, NULL ); - timestamp=tv1.tv_sec*1000000 + tv1.tv_usec; + timestamp=tv1.tv_sec*1000000UL + tv1.tv_usec; fflush(stdout); @@ -4563,8 +4563,6 @@ perror("setuid"); } - setuid( getuid() ); - /* XXX */ if( opt.r_nbpps == 0 ) {
View file
aircrack-ng-1.2-rc1.tar.gz/src/aircrack-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/aircrack-ng.c
Changed
@@ -1,7 +1,7 @@ /* * 802.11 WEP / WPA-PSK Key Cracker * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * Advanced WEP attacks developed by KoreK @@ -181,7 +181,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: aircrack-ng [options] <.cap / .ivs file(s)>\n" @@ -4484,6 +4484,8 @@ hccap_t hccap; + memset (&hccap, 0, sizeof (hccap)); + memcpy (&hccap.essid, &ap_cur->essid, sizeof (ap_cur->essid)); memcpy (&hccap.mac1, &ap_cur->bssid, sizeof (ap_cur->bssid)); memcpy (&hccap.mac2, &ap_cur->wpa.stmac, sizeof (ap_cur->wpa.stmac)); @@ -5026,21 +5028,6 @@ { case 'S': _speed_test = 1; - opt.amode = 2; - opt.dict = stdin; - opt.bssid_set = 1; - - ap_1st = ap_cur = malloc(sizeof(*ap_cur)); - if (!ap_cur) - err(1, "malloc()"); - - memset(ap_cur, 0, sizeof(*ap_cur)); - - ap_cur->target = 1; - ap_cur->wpa.state = 7; - strcpy(ap_cur->essid, "sorbo"); - - goto __start; break; case ':' : @@ -5434,6 +5421,24 @@ } } + if (_speed_test) { + opt.amode = 2; + opt.dict = stdin; + opt.bssid_set = 1; + + ap_1st = ap_cur = malloc(sizeof(*ap_cur)); + if (!ap_cur) + err(1, "malloc()"); + + memset(ap_cur, 0, sizeof(*ap_cur)); + + ap_cur->target = 1; + ap_cur->wpa.state = 7; + strcpy(ap_cur->essid, "sorbo"); + + goto __start; + } + if( argc - optind < 1 ) { if(argc == 1)
View file
aircrack-ng-1.2-rc1.tar.gz/src/aircrack-ptw-lib.c -> aircrack-ng-1.2-rc2.tar.gz/src/aircrack-ptw-lib.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2008, 2009 Erik Tews, Andrei Pychkine and Ralf-Philipp Weinmann. + * Copyright (c) 2007-2009 Erik Tews, Andrei Pychkine and Ralf-Philipp Weinmann. * 2013 Ramiro Polla * * This program is free software; you can redistribute it and/or modify
View file
aircrack-ng-1.2-rc1.tar.gz/src/aircrack-ptw-lib.h -> aircrack-ng-1.2-rc2.tar.gz/src/aircrack-ptw-lib.h
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2008, 2009 Erik Tews, Andrei Pychkine and Ralf-Philipp Weinmann. + * Copyright (c) 2007-2009 Erik Tews, Andrei Pychkine and Ralf-Philipp Weinmann. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
aircrack-ng-1.2-rc1.tar.gz/src/airdecap-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airdecap-ng.c
Changed
@@ -1,7 +1,7 @@ /* * 802.11 to Ethernet pcap translator * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * This program is free software; you can redistribute it and/or modify @@ -57,7 +57,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: airdecap-ng [options] <pcap file>\n"
View file
aircrack-ng-1.2-rc1.tar.gz/src/airdecloak-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airdecloak-ng.c
Changed
@@ -1,7 +1,7 @@ /* * WEP Cloaking filtering * - * Copyright (C) 2008-2013 Thomas d'Otreppe + * Copyright (C) 2008-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * Thanks to Alex Hernandez aka alt3kx for the hardware. * @@ -547,7 +547,7 @@ } #ifdef DEBUG - printf("From DS: %d - ToDS: %d\n", _packet_elt_head->current->fromDS, packet->toDS); + printf("From DS: %d - ToDS: %d\n", _packet_elt_head->current->fromDS, _packet_elt_head->current->toDS); printf("BSSID: %02X:%02X:%02X:%02X:%02X:%02X\n", _packet_elt_head->current->bssid[0], _packet_elt_head->current->bssid[1], _packet_elt_head->current->bssid[2], _packet_elt_head->current->bssid[3], _packet_elt_head->current->bssid[4], @@ -614,7 +614,7 @@ // Copy key index _packet_elt_head->current->key_index = h80211[27]; #ifdef DEBUG - printf("Key index: %d\n", packet->key_index); + printf("Key index: %d\n", _packet_elt_head->current->key_index); #endif // Copy checksum memcpy(_packet_elt_head->current->icv, buffer + (_packet_elt_head->current->header.caplen) - 4, 4); @@ -1318,7 +1318,7 @@ void usage() { printf("\n" - " %s - (C) 2008-2013 Thomas d\'Otreppe\n" + " %s - (C) 2008-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: airdecloak-ng [options]\n"
View file
aircrack-ng-1.2-rc1.tar.gz/src/airdecloak-ng.h -> aircrack-ng-1.2-rc2.tar.gz/src/airdecloak-ng.h
Changed
@@ -1,3 +1,34 @@ +/* + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * is provided AS IS, WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, and + * NON-INFRINGEMENT. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, + * MA 02111-1307, USA. + * + * In addition, as a special exception, the copyright holders give + * permission to link the code of portions of this program with the + * OpenSSL library under certain conditions as described in each + * individual source file, and distribute linked combinations + * including the two. + * You must obey the GNU General Public License in all respects + * for all of the code used other than OpenSSL. If you modify + * file(s) with this exception, you may extend this exception to your + * version of the file(s), but you are not obligated to do so. If you + * do not wish to do so, delete this exception statement from your + * version. If you delete this exception statement from all source + * files in the program, then also delete it here. + */ + #ifndef _AIRUNDEFENSE_H_ #define _AIRUNDEFENSE_H_
View file
aircrack-ng-1.2-rc1.tar.gz/src/aireplay-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/aireplay-ng.c
Changed
@@ -1,7 +1,7 @@ /* * 802.11 WEP replay & injection attacks * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * WEP decryption attack (chopchop) developed by KoreK @@ -140,7 +140,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: aireplay-ng <options> <replay interface>\n" @@ -507,7 +507,7 @@ return rc; } -void read_sleep( int usec ) +void read_sleep( unsigned long usec ) { struct timeval tv, tv2, tv3; int caplen; @@ -519,7 +519,7 @@ tv3.tv_sec=0; tv3.tv_usec=10000; - while( ((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) < (usec) ) + while( ((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) < (usec) ) { FD_ZERO( &rfds ); FD_SET( dev.fd_in, &rfds ); @@ -623,7 +623,7 @@ len = read_packet(pkt_sniff, sizeof(pkt_sniff), NULL); gettimeofday(&tv2, NULL); - if(((tv2.tv_sec-tv.tv_sec)*1000000) + (tv2.tv_usec-tv.tv_usec) > 10000*1000) //wait 10sec for beacon frame + if(((tv2.tv_sec-tv.tv_sec)*1000000UL) + (tv2.tv_usec-tv.tv_usec) > 10000*1000) //wait 10sec for beacon frame { return -1; } @@ -1968,7 +1968,7 @@ if(opt.npackets == -1) x_send = 4; state = 0; challengelen = 0; - read_sleep( deauth_wait * 1000000 ); + read_sleep( deauth_wait * 1000000UL ); deauth_wait += 2; continue; } @@ -4838,14 +4838,14 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks { PCT; printf("Not enough acks, repeating...\n"); again = RETRY; break; } - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer { PCT; printf("No answer, repeating...\n"); round++; @@ -4981,14 +4981,14 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks { PCT; printf("Not enough acks, repeating...\n"); again = RETRY; break; } - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer { PCT; printf("No answer, repeating...\n"); round++; @@ -5488,7 +5488,7 @@ //simple "high-precision" usleep select(1, NULL, NULL, NULL, &tv3); } - times[i] = ((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)); + times[i] = ((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)); printf( "\r%d/%d\r", i, REQUESTS); fflush(stdout); close(sock); @@ -5522,7 +5522,7 @@ int ret=0; float avg2; struct rx_info ri; - int atime=200; //time in ms to wait for answer packet (needs to be higher for airserv) + unsigned long atime=200; //time in ms to wait for answer packet (needs to be higher for airserv) unsigned char nulldata[1024]; if(opt.port_out > 0) @@ -5683,7 +5683,7 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (3*atime*1000)) //wait 'atime'ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (3*atime*1000)) //wait 'atime'ms for an answer { break; } @@ -5884,7 +5884,7 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (atime*1000)) //wait 'atime'ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (atime*1000)) //wait 'atime'ms for an answer { break; } @@ -6004,7 +6004,7 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000)) //wait 300ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000)) //wait 300ms for an answer { break; } @@ -6220,7 +6220,7 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (3*atime*1000)) //wait 3*'atime' ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (3*atime*1000)) //wait 3*'atime' ms for an answer { break; }
View file
aircrack-ng-1.2-rc1.tar.gz/src/airodump-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airodump-ng.c
Changed
@@ -1,7 +1,7 @@ /* * pcap-compatible 802.11 packet sniffer * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * This program is free software; you can redistribute it and/or modify @@ -77,6 +77,9 @@ GCRY_THREAD_OPTION_PTHREAD_IMPL; #endif +// in common.c +extern int is_string_number(const char * str); + void dump_sort( void ); void dump_print( int ws_row, int ws_col, int if_num ); @@ -396,6 +399,20 @@ str[i - begin] = '\0'; // Null terminate string. } +FILE *open_oui_file(void) { + int i; + FILE *fp = NULL; + + for (i=0; OUI_PATHS[i] != NULL; i++) { + fp = fopen(OUI_PATHS[i], "r"); + if ( fp != NULL ) { + break; + } + } + + return fp; +} + struct oui * load_oui_file(void) { FILE *fp; char * manuf; @@ -404,15 +421,10 @@ unsigned char b[2]; unsigned char c[2]; struct oui *oui_ptr = NULL, *oui_head = NULL; - - if (!(fp = fopen(OUI_PATH0, "r"))) { - if (!(fp = fopen(OUI_PATH1, "r"))) { - if (!(fp = fopen(OUI_PATH2, "r"))) { - if (!(fp = fopen(OUI_PATH3, "r"))) { - return NULL; - } - } - } + + fp = open_oui_file(); + if (!fp) { + return NULL; } memset(buffer, 0x00, sizeof(buffer)); @@ -615,7 +627,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: airodump-ng <options> <interface>[,<interface>,...]\n" @@ -637,11 +649,14 @@ " -x <msecs> : Active Scanning Simulation\n" " --manufacturer : Display manufacturer from IEEE OUI list\n" " --uptime : Display AP Uptime from Beacon Timestamp\n" +" --wps : Display WPS information (if any)\n" " --output-format\n" " <formats> : Output format. Possible values:\n" " pcap, ivs, csv, gps, kismet, netxml\n" " --ignore-negative-one : Removes the message that says\n" " fixed channel <interface>: -1\n" +" --write-interval\n" +" <seconds> : Output file(s) write interval in seconds\n" "\n" " Filter options:\n" " --encrypt <suite> : Filter APs by cipher suite\n" @@ -732,7 +747,7 @@ /* accesspoints */ while( ap_cur != NULL ) { - time_diff = 1000000 * (cur_time.tv_sec - ap_cur->ftimer.tv_sec ) + time_diff = 1000000UL * (cur_time.tv_sec - ap_cur->ftimer.tv_sec ) + (cur_time.tv_usec - ap_cur->ftimer.tv_usec); /* update every `QLT_TIME`seconds if the rate is low, or every 500ms otherwise */ @@ -741,12 +756,12 @@ /* at least one frame captured */ if(ap_cur->fcapt > 1) { - capt_time = ( 1000000 * (ap_cur->ftimel.tv_sec - ap_cur->ftimef.tv_sec ) //time between first and last captured frame + capt_time = ( 1000000UL * (ap_cur->ftimel.tv_sec - ap_cur->ftimef.tv_sec ) //time between first and last captured frame + (ap_cur->ftimel.tv_usec - ap_cur->ftimef.tv_usec) ); - miss_time = ( 1000000 * (ap_cur->ftimef.tv_sec - ap_cur->ftimer.tv_sec ) //time between timer reset and first frame + miss_time = ( 1000000UL * (ap_cur->ftimef.tv_sec - ap_cur->ftimer.tv_sec ) //time between timer reset and first frame + (ap_cur->ftimef.tv_usec - ap_cur->ftimer.tv_usec) ) - + ( 1000000 * (cur_time.tv_sec - ap_cur->ftimel.tv_sec ) //time between last frame and this moment + + ( 1000000UL * (cur_time.tv_sec - ap_cur->ftimel.tv_sec ) //time between last frame and this moment + (cur_time.tv_usec - ap_cur->ftimel.tv_usec) ); //number of frames missed at the time where no frames were captured; extrapolated by assuming a constant framerate @@ -775,7 +790,7 @@ /* stations */ while( st_cur != NULL ) { - time_diff = 1000000 * (cur_time.tv_sec - st_cur->ftimer.tv_sec ) + time_diff = 1000000UL * (cur_time.tv_sec - st_cur->ftimer.tv_sec ) + (cur_time.tv_usec - st_cur->ftimer.tv_usec); if( time_diff > 10000000 ) @@ -1089,7 +1104,7 @@ gettimeofday(&tv1, NULL); - timediff = (((tv1.tv_sec - ((*list)->ctime.tv_sec)) * 1000000) + (tv1.tv_usec - ((*list)->ctime.tv_usec))) / 1000; + timediff = (((tv1.tv_sec - ((*list)->ctime.tv_sec)) * 1000000UL) + (tv1.tv_usec - ((*list)->ctime.tv_usec))) / 1000; if( timediff > BUFFER_TIME ) { list_tail_free(list); @@ -1100,7 +1115,7 @@ { if(next->next != NULL) { - timediff = (((tv1.tv_sec - (next->next->ctime.tv_sec)) * 1000000) + (tv1.tv_usec - (next->next->ctime.tv_usec))) / 1000; + timediff = (((tv1.tv_sec - (next->next->ctime.tv_sec)) * 1000000UL) + (tv1.tv_usec - (next->next->ctime.tv_usec))) / 1000; if( timediff > BUFFER_TIME ) { list_tail_free(&(next->next)); @@ -1288,6 +1303,7 @@ ap_cur->manuf = get_manufacturer(ap_cur->bssid[0], ap_cur->bssid[1], ap_cur->bssid[2]); } + ap_cur->nb_pkt = 0; ap_cur->prev = ap_prv; ap_cur->tinit = time( NULL ); @@ -1306,6 +1322,7 @@ ap_cur->uiv_root = uniqueiv_init(); + ap_cur->nb_data = 0; ap_cur->nb_dataps = 0; ap_cur->nb_data_old = 0; gettimeofday(&(ap_cur->tv), NULL); @@ -1328,6 +1345,7 @@ ap_cur->ssid_length = 0; ap_cur->essid_stored = 0; + memset( ap_cur->essid, 0, MAX_IE_ELEMENT_SIZE ); ap_cur->timestamp = 0; ap_cur->decloak_detect=G.decloak; @@ -1408,9 +1426,15 @@ // if(ap_cur->fcapt >= QLT_COUNT) update_rx_quality(); } - if( h80211[0] == 0x80 ) + switch( h80211[0] ) { - ap_cur->nb_bcn++; + case 0x80: + ap_cur->nb_bcn++; + case 0x50: + /* reset the WPS state */ + ap_cur->wps.state = 0xFF; + ap_cur->wps.ap_setup_locked = 0; + break; } ap_cur->nb_pkt++; @@ -1497,6 +1521,8 @@ st_cur->manuf = get_manufacturer(st_cur->stmac[0], st_cur->stmac[1], st_cur->stmac[2]); } + st_cur->nb_pkt = 0; + st_cur->prev = st_prv; st_cur->tinit = time( NULL ); @@ -1511,6 +1537,8 @@ st_cur->lastseq = 0; st_cur->qos_fr_ds = 0; st_cur->qos_to_ds = 0; + st_cur->channel = 0; + gettimeofday( &(st_cur->ftimer), NULL); for( i = 0; i < NB_PRB; i++ ) @@ -1545,6 +1573,10 @@ { st_cur->power = ri->ri_power; st_cur->rate_from = ri->ri_rate;
View file
aircrack-ng-1.2-rc1.tar.gz/src/airodump-ng.h -> aircrack-ng-1.2-rc2.tar.gz/src/airodump-ng.h
Changed
@@ -142,10 +142,20 @@ "\x00\x00\x00\x00\x00\x00\x00\x00" "\x00\x00\x00\x00\x00\x00\x00\x00"; -#define OUI_PATH0 "/etc/aircrack-ng/airodump-ng-oui.txt" -#define OUI_PATH1 "/usr/local/etc/aircrack-ng/airodump-ng-oui.txt" -#define OUI_PATH2 "/usr/share/aircrack-ng/airodump-ng-oui.txt" -#define OUI_PATH3 "/usr/share/misc/oui.txt" +const char *OUI_PATHS[] = { + "/etc/aircrack-ng/airodump-ng-oui.txt", + "/usr/local/etc/aircrack-ng/airodump-ng-oui.txt", + "/usr/share/aircrack-ng/airodump-ng-oui.txt", + "/var/lib/misc/oui.txt", + "/usr/share/misc/oui.txt", + "/var/lib/ieee-data/oui.txt", + "/usr/share/ieee-data/oui.txt", + "/etc/manuf/oui.txt", + "/usr/share/wireshark/wireshark/manuf/oui.txt", + "/usr/share/wireshark/manuf/oui.txt", + NULL +}; + #define MIN_RAM_SIZE_LOAD_OUI_RAM 32768 int read_pkts=0; @@ -190,6 +200,14 @@ struct oui *next; }; +/* WPS_info struct */ +struct WPS_info { + unsigned char version; /* WPS Version */ + unsigned char state; /* Current WPS state */ + unsigned char ap_setup_locked; /* AP setup locked */ + unsigned int meth; /* WPS Config Methods */ +}; + /* linked list of detected access points */ struct AP_info { @@ -259,6 +277,7 @@ int marked; int marked_color; + struct WPS_info wps; }; /* linked list of detected clients */ @@ -285,6 +304,8 @@ struct WPA_hdsk wpa; /* WPA handshake data */ int qos_to_ds; /* does it use 802.11e to ds */ int qos_fr_ds; /* does it receive 802.11e */ + int channel; /* Channel station is seen */ + /* Not used yet */ }; /* linked list of detected macs through ack, cts or rts frames */ @@ -452,6 +473,9 @@ u_int maxsize_essid_seen; int show_manufacturer; int show_uptime; + int file_write_interval; + u_int maxsize_wps_seen; + int show_wps; } G;
View file
aircrack-ng-1.2-rc1.tar.gz/src/airolib-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airolib-ng.c
Changed
@@ -1,7 +1,7 @@ /* * A tool to compute and manage PBKDF2 values as used in WPA-PSK and WPA2-PSK * - * Copyright (C) 2007; 2008, 2009 ebfe + * Copyright (C) 2007-2009 ebfe * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
aircrack-ng-1.2-rc1.tar.gz/src/airserv-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airserv-ng.c
Changed
@@ -1,7 +1,7 @@ /* * Server for osdep network driver. Uses osdep itself! [ph33r teh recursion] * - * Copyright (c) 2007, 2008, 2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> + * Copyright (c) 2007-2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> * * Advanced WEP attacks developed by KoreK * WPA-PSK attack code developed by Joshua Wright @@ -440,6 +440,7 @@ ri->ri_channel = __cpu_to_be32(ri->ri_channel); ri->ri_rate = __cpu_to_be32(ri->ri_rate); ri->ri_antenna = __cpu_to_be32(ri->ri_antenna); + ri->ri_freq = __cpu_to_be32(ri->ri_freq); c = ss->ss_clients.c_next; while (c != &ss->ss_clients) {
View file
aircrack-ng-1.2-rc1.tar.gz/src/airtun-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/airtun-ng.c
Changed
@@ -2,8 +2,8 @@ * 802.11 WEP network connection tunneling * based on aireplay-ng * - * Copyright (C) 2006-2013 Thomas d'Otreppe - * Copyright (C) 2006, 2007, 2008, 2009 Martin Beck + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> + * Copyright (C) 2006-2009 Martin Beck <hirte@aircrack-ng.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -69,6 +69,7 @@ #define CRYPT_NONE 0 #define CRYPT_WEP 1 +#define CRYPT_WPA 2 //if not all fragments are available 60 seconds after the last fragment was received, they will be removed #define FRAG_TIMEOUT (1000000*60) @@ -83,7 +84,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d'Otreppe\n" +" %s - (C) 2006-2014 Thomas d'Otreppe\n" " Original work: Martin Beck\n" " http://www.aircrack-ng.org\n" "\n" @@ -95,6 +96,9 @@ " -i iface : capture packets from this interface\n" " -y file : read PRGA from this file\n" " -w wepkey : use this WEP-KEY to encrypt packets\n" +" -p pass : use this WPA passphrase to decrypt packets\n" +" : (use with -a and -e)\n" +" -e essid : target network SSID (use with -p)\n" " -t tods : send frames to AP (1) or to client (0)\n" " : or tunnel them into a WDS/Bridge (2)\n" " -r file : read frames out of pcap file\n" @@ -132,6 +136,10 @@ int tods; int bidir; + char essid[36]; + char passphrase[65]; + unsigned char pmk[40]; + unsigned char wepkey[64]; int weplen, crypt; @@ -192,6 +200,8 @@ unsigned char srcbuf[4096]; char strbuf[512]; struct net_entry *nets = NULL; +struct WPA_ST_info *st_1st = NULL; +unsigned char ZERO[32]; int ctrl_c, alarmed; @@ -400,7 +410,7 @@ while(cur->next != NULL) { old = cur->next; - timediff = (tv.tv_sec - old->access.tv_sec)*1000000 + (tv.tv_usec - old->access.tv_usec); + timediff = (tv.tv_sec - old->access.tv_sec)*1000000UL + (tv.tv_usec - old->access.tv_usec); if(timediff > FRAG_TIMEOUT) { //remove captured fragments @@ -860,6 +870,7 @@ { unsigned char K[64]; unsigned char buf[4096]; + struct WPA_ST_info *st_cur; int data_begin = 24; int dest_net; @@ -929,6 +940,45 @@ h80211[1] = h80211[1] | 0x40; } + else if( opt.crypt == CRYPT_WPA ) + { + /* Add QoS */ + /* Doesn't seem to be needed -> commented out */ + // memmove( h80211 + data_begin + 2, h80211 + data_begin, length - data_begin ); + // memset( h80211 + data_begin, 0, 2 ); + // data_begin += 2; + // length += 2; + // h80211[0] |= 0x80; // Set QoS + + /* Find station */ + st_cur = st_1st; + while( st_cur != NULL ) + { + // STA -> AP + if( opt.tods == 1 && memcmp( st_cur->stmac, packet+6, 6 ) == 0 ) + break; + + // AP -> STA + if( opt.tods == 0 && memcmp( st_cur->stmac, packet, 6 ) == 0 ) + break; + + st_cur = st_cur->next; + } + if( st_cur == NULL ) + { + printf( "Cannot inject: handshake not captured yet.\n" ); + return 1; + } + + // Todo: overflow to higher bits (pn is 6 bytes wide) + st_cur->pn[5] += 1; + + h80211[1] = h80211[1] | 0x40; // Set Protected Frame flag + + encrypt_ccmp( h80211, length, st_cur->ptk + 32, st_cur->pn ); + length += 16; + data_begin += 8; + } else if( opt.prgalen > 0 ) { if(create_wep_packet(h80211, &length, data_begin) != 0) return 1; @@ -953,17 +1003,22 @@ return 0; } + int packet_recv(unsigned char* packet, int length) { unsigned char K[64]; - unsigned char bssid[6], smac[6], dmac[6]; + unsigned char bssid[6], smac[6], dmac[6], stmac[6]; unsigned char *buffer; + unsigned long crc; int len; int z; int fragnum, seqnum, morefrag; int process_packet; + struct WPA_ST_info *st_cur; + struct WPA_ST_info *st_prv; + z = ( ( packet[1] & 3 ) != 3 ) ? 24 : 30; if ( ( packet[0] & 0x80 ) == 0x80 ) /* QoS */ z+=2; @@ -984,16 +1039,19 @@ memcpy( bssid, packet + 4, 6 ); memcpy( dmac, packet + 16, 6 ); memcpy( smac, packet + 10, 6 ); + memcpy( stmac, packet + 10, 6 ); break; case 2: memcpy( bssid, packet + 10, 6 ); memcpy( dmac, packet + 4, 6 ); memcpy( smac, packet + 16, 6 ); + memcpy( stmac, packet + 4, 6 ); break; default: memcpy( bssid, packet + 10, 6 ); memcpy( dmac, packet + 16, 6 ); memcpy( smac, packet + 24, 6 ); + memcpy( stmac, packet + 4, 6 ); break; } @@ -1032,12 +1090,77 @@ if( process_packet ) { - if( (packet[z] != packet[z + 1] || packet[z + 2] != 0x03) && opt.crypt == CRYPT_WEP ) + /* find station */ + + st_prv = NULL; + st_cur = st_1st; + + while( st_cur != NULL ) + { + if( ! memcmp( st_cur->stmac, stmac, 6 ) ) + break; + + st_prv = st_cur; + st_cur = st_cur->next; + } + + /* if it's a new station, add it */ + + if( st_cur == NULL ) + { + if( ! ( st_cur = (struct WPA_ST_info *) malloc( + sizeof( struct WPA_ST_info ) ) ) ) + { + perror( "malloc failed" ); + return 1; + } + + memset( st_cur, 0, sizeof( struct WPA_ST_info ) ); + + if( st_1st == NULL ) + st_1st = st_cur; + else
View file
aircrack-ng-1.2-rc1.tar.gz/src/buddy-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/buddy-ng.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2008, 2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> + * Copyright (c) 2007-2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
aircrack-ng-1.2-rc1.tar.gz/src/common.c -> aircrack-ng-1.2-rc2.tar.gz/src/common.c
Changed
@@ -1,7 +1,7 @@ /* * Common functions for all aircrack-ng tools * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -45,6 +45,26 @@ #define isHex(c) (hexToInt(c) != -1) #define HEX_BASE 16 +int is_string_number(const char * str) +{ + int i; + if (str == NULL) { + return 0; + } + + if (*str != '-' && !(isdigit(*str))) { + return 0; + } + + for (i = 1; str[i] != 0; i++) { + if (!isdigit(str[i])) { + return 0; + } + } + + return 1; +} + int get_ram_size(void) { FILE *fp; char str[256];
View file
aircrack-ng-1.2-rc1.tar.gz/src/crypto.c -> aircrack-ng-1.2-rc2.tar.gz/src/crypto.c
Changed
@@ -1188,6 +1188,155 @@ dst[i] ^= src[i]; } +// Important documents for the implementation of encrypt_ccmp() and +// decrypt_ccmp(): +// +// * RFC 3610 Counter with CBC-MAC (CCM) +// https://www.ietf.org/rfc/rfc3610.txt +// +// * IEEE 802.11(TM)-2012 +// http://standards.ieee.org/about/get/802/802.11.html +// +// Note: RFC uses the abbriviation MAC (Message Authentication Code, or +// value U in the RFC). It is the same as IEEE's MIC (Message +// Integrity Code) + +// encrypt_ccmp() takes an h80211 frame and encrypts it in-place using CCMP. +// This results in a frame that is 16 bytes longer than the original, take this +// into account when allocating h80211! encrypt() returns the new length (and +// thus the offset where the caller needs to write the FCS). +// caplen is the combined length of the 802.11 header and data, not the FCS! +int encrypt_ccmp( unsigned char *h80211, int caplen, unsigned char TK1[16], unsigned char PN[6] ) +{ + int is_a4, i, n, z, blocks, is_qos; + int data_len, last, offset; + unsigned char B0[16], B[16], MIC[16]; + unsigned char AAD[32]; + AES_KEY aes_ctx; + + is_a4 = ( h80211[1] & 3 ) == 3; + is_qos = ( h80211[0] & 0x8C ) == 0x88; + z = 24 + 6 * is_a4; + z += 2 * is_qos; + + // Insert CCMP header + memmove( h80211+z+8, h80211+z, caplen-z ); + h80211[z + 0] = PN[5]; + h80211[z + 1] = PN[4]; + h80211[z + 2] = 0x00; // Reserved -> 0 + h80211[z + 3] = 0x20; // ExtIV=1, KeyID=0 + h80211[z + 4] = PN[3]; + h80211[z + 5] = PN[2]; + h80211[z + 6] = PN[1]; + h80211[z + 7] = PN[0]; + + data_len = caplen - z; + + // B_0 := B0 + B0[0] = 0x59; // Flags + B0[1] = 0; // Nonce := CCM Nonce: - Nonce flags + memcpy( B0 + 2, h80211 + 10, 6 ); // - A2 + memcpy( B0 + 8, PN, 6 ); // - PN + B0[14] = ( data_len >> 8 ) & 0xFF; // l(m) + B0[15] = ( data_len & 0xFF ); // l(m) + + // B_1 := AAD[ 0..15] + // B_2 := AAD[16..31] + // AAD[ 0.. 1] = l(a) + // AAD[ 2..31] = a + memset( AAD, 0, sizeof( AAD ) ); + AAD[2] = h80211[0] & 0x8F; // AAD[2..3] = FC + AAD[3] = h80211[1] & 0xC7; // + memcpy( AAD + 4, h80211 + 4, 3 * 6 ); // AAD[4..21] = [A1,A2,A3] + AAD[22] = h80211[22] & 0x0F; // AAD[22] = SC + + if( is_a4 ) + { + memcpy( AAD + 24, h80211 + 24, 6 ); // AAD[24..29] = A4 + + if( is_qos ) + { + AAD[30] = h80211[z - 2] & 0x0F; // AAD[30..31] = QC + AAD[31] = 0; // + B0[1] = AAD[30]; // B0[ 1] = CCM Nonce flags + AAD[1] = 22 + 2 + 6; // AAD[ 0.. 1] = l(a) + } + else + { + memset(&AAD[30], 0, 2); // AAD[30..31] = QC + B0[1] = 0; // B0[ 1] = CCM Nonce flags + AAD[1] = 22 + 6; // AAD[ 0.. 1] = l(a) + } + } + else + { + if( is_qos ) + { + AAD[24] = h80211[z - 2] & 0x0F; // AAD[24..25] = QC + AAD[25] = 0; // + B0[1] = AAD[24]; // B0[ 1] = CCM Nonce flags + AAD[1] = 22 + 2; // AAD[ 0.. 1] = l(a) + } + else + { + memset(&AAD[24], 0, 2); // AAD[24..25] = QC + B0[1] = 0; // B0[ 1] = CCM Nonce flags + AAD[1] = 22; // AAD[ 0.. 1] = l(a) + } + } + + AES_set_encrypt_key( TK1, 128, &aes_ctx ); + AES_encrypt( B0, MIC, &aes_ctx ); // X_1 := E( K, B_0 ) + XOR( MIC, AAD, 16 ); // X_2 := E( K, X_1 XOR B_1 ) + AES_encrypt( MIC, MIC, &aes_ctx ); // + XOR( MIC, AAD + 16, 16 ); // X_3 := E( K, X_2 XOR B_2 ) + AES_encrypt( MIC, MIC, &aes_ctx ); // + + // A_i := B0 + // B0[ 0] = Flags + // B0[ 1..13] = Nonce := CCM Nonce + // B0[14..15] = i + B0[0] &= 0x07; + B0[14] = B0[15] = 0; + AES_encrypt( B0, B, &aes_ctx ); // S_0 := E( K, A_i ) + memcpy( h80211+z+8+data_len, B, 8 ); + // ^^^^^^^^^^^^^^^^^^^ ^ + // S_0[0..7]/future U S_0 + + blocks = ( data_len + 16 - 1 ) / 16; + last = data_len % 16; + offset = z + 8; + + for( i = 1; i <= blocks; i++ ) + { + n = ( last > 0 && i == blocks ) ? last : 16; + + XOR( MIC, h80211 + offset, n ); // X_i+3 := E( K, X_i+2 XOR B_i+2 ) + AES_encrypt( MIC, MIC, &aes_ctx ); // + // (X_i+2 ^^^)(^^^ X_i+3) + + // The message is encrypted by XORing the octets of message m with the + // first l(m) octets of the concatenation of S_1, S_2, S_3, ... . + B0[14] = ( i >> 8 ) & 0xFF; // A_i[14..15] = i + B0[15] = i & 0xFF; // + AES_encrypt( B0, B, &aes_ctx ); // S_i := E( K, A_i ) + XOR( h80211 + offset, B, n ); + // [B_3, ..., B_n] := m + + offset += n; + } + + // We need to free the ctx when using gcrypt to avoid memory leaks + #ifdef USE_GCRYPT + gcry_cipher_close(aes_ctx); + #endif + + // T := X_i+3[ 0.. 7] + // U := T XOR S_0[ 0.. 7] + XOR( h80211+offset, MIC, 8 ); + return z+8+data_len+8; +} + int decrypt_ccmp( unsigned char *h80211, int caplen, unsigned char TK1[16] ) { int is_a4, i, n, z, blocks, is_qos; @@ -1210,66 +1359,76 @@ data_len = caplen - z - 8 - 8; - B0[0] = 0x59; - B0[1] = 0; - memcpy( B0 + 2, h80211 + 10, 6 ); - memcpy( B0 + 8, PN, 6 ); - B0[14] = ( data_len >> 8 ) & 0xFF; - B0[15] = ( data_len & 0xFF ); - + // B_0 := B0 + B0[0] = 0x59; // Flags + B0[1] = 0; // Nonce := CCM Nonce: - Nonce flags + memcpy( B0 + 2, h80211 + 10, 6 ); // - A2 + memcpy( B0 + 8, PN, 6 ); // - PN + B0[14] = ( data_len >> 8 ) & 0xFF; // l(m) + B0[15] = ( data_len & 0xFF ); // l(m) + + // B_1 := AAD[ 0..15] + // B_2 := AAD[16..31] + // AAD[ 0.. 1] = l(a) + // AAD[ 2..31] = a memset( AAD, 0, sizeof( AAD ) ); - - AAD[2] = h80211[0] & 0x8F; - AAD[3] = h80211[1] & 0xC7; - memcpy( AAD + 4, h80211 + 4, 3 * 6 ); - AAD[22] = h80211[22] & 0x0F; + AAD[2] = h80211[0] & 0x8F; // AAD[2..3] = FC + AAD[3] = h80211[1] & 0xC7; // + memcpy( AAD + 4, h80211 + 4, 3 * 6 ); // AAD[4..21] = [A1,A2,A3] + AAD[22] = h80211[22] & 0x0F; // AAD[22] = SC if( is_a4 ) { - memcpy( AAD + 24, h80211 + 24, 6 ); + memcpy( AAD + 24, h80211 + 24, 6 ); // AAD[24..29] = A4 if( is_qos ) { - AAD[30] = h80211[z - 2] & 0x0F; - AAD[31] = 0; - B0[1] = AAD[30];
View file
aircrack-ng-1.2-rc1.tar.gz/src/crypto.h -> aircrack-ng-1.2-rc2.tar.gz/src/crypto.h
Changed
@@ -91,6 +91,7 @@ unsigned long t_crc; /* last ToDS frame CRC */ unsigned long f_crc; /* last FromDS frame CRC */ int keyver, valid_ptk; + unsigned char pn[6]; /* Packet Number (WPA-CCMP) */ }; struct Michael @@ -221,6 +222,7 @@ int is_qos_arp_tkip(void *wh, int len); int calc_tkip_ppk( unsigned char *h80211, int caplen, unsigned char TK1[16], unsigned char key[16] ); int decrypt_tkip( unsigned char *h80211, int caplen, unsigned char TK1[16] ); +int encrypt_ccmp( unsigned char *h80211, int caplen, unsigned char TK1[16], unsigned char PN[6] ); int decrypt_ccmp( unsigned char *h80211, int caplen, unsigned char TK1[16] ); int calc_ptk( struct WPA_ST_info *wpa, unsigned char pmk[32] ); int calc_tkip_mic(unsigned char* packet, int length, unsigned char ptk[80], unsigned char value[8]);
View file
aircrack-ng-1.2-rc1.tar.gz/src/easside-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/easside-ng.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2008, 2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> + * Copyright (c) 2007-2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
aircrack-ng-1.2-rc1.tar.gz/src/include/ethernet.h -> aircrack-ng-1.2-rc2.tar.gz/src/include/ethernet.h
Changed
@@ -1,7 +1,7 @@ /* * Fundamental constants relating to ethernet. * - * $FreeBSD: src/sys/net/ethernet.h,v 1.30 2007/03/07 12:51:52 bms Exp $ + * $FreeBSD$ * */ @@ -9,7 +9,7 @@ #define _NET_ETHERNET_H_ /* - * Somce basic Ethernet constants. + * Some basic Ethernet constants. */ #define ETHER_ADDR_LEN 6 /* length of an Ethernet address */ #define ETHER_TYPE_LEN 2 /* length of the Ethernet type field */ @@ -70,11 +70,6 @@ u_char octet[ETHER_ADDR_LEN]; } __packed; -#ifdef CTASSERT -CTASSERT(sizeof (struct ether_header) == ETHER_ADDR_LEN * 2 + 2); -CTASSERT(sizeof (struct ether_addr) == ETHER_ADDR_LEN); -#endif - #define ETHER_IS_MULTICAST(addr) (*(addr) & 0x01) /* is address mcast/bcast? */ /* @@ -129,14 +124,14 @@ #define ETHERTYPE_NBPVCD 0x3C00 /* 3Com NBP virtual circuit datagram (like XNS SPP) not registered */ #define ETHERTYPE_NBPSCD 0x3C01 /* 3Com NBP System control datagram not registered */ #define ETHERTYPE_NBPCREQ 0x3C02 /* 3Com NBP Connect request (virtual cct) not registered */ -#define ETHERTYPE_NBPCRSP 0x3C03 /* 3Com NBP Connect repsonse not registered */ +#define ETHERTYPE_NBPCRSP 0x3C03 /* 3Com NBP Connect response not registered */ #define ETHERTYPE_NBPCC 0x3C04 /* 3Com NBP Connect complete not registered */ #define ETHERTYPE_NBPCLREQ 0x3C05 /* 3Com NBP Close request (virtual cct) not registered */ #define ETHERTYPE_NBPCLRSP 0x3C06 /* 3Com NBP Close response not registered */ #define ETHERTYPE_NBPDG 0x3C07 /* 3Com NBP Datagram (like XNS IDP) not registered */ #define ETHERTYPE_NBPDGB 0x3C08 /* 3Com NBP Datagram broadcast not registered */ #define ETHERTYPE_NBPCLAIM 0x3C09 /* 3Com NBP Claim NetBIOS name not registered */ -#define ETHERTYPE_NBPDLTE 0x3C0A /* 3Com NBP Delete Netbios name not registered */ +#define ETHERTYPE_NBPDLTE 0x3C0A /* 3Com NBP Delete NetBIOS name not registered */ #define ETHERTYPE_NBPRAS 0x3C0B /* 3Com NBP Remote adaptor status request not registered */ #define ETHERTYPE_NBPRAR 0x3C0C /* 3Com NBP Remote adaptor response not registered */ #define ETHERTYPE_NBPRST 0x3C0D /* 3Com NBP Reset not registered */ @@ -317,7 +312,7 @@ #define ETHERTYPE_SECUREDATA 0x876D /* Secure Data (RFC1701) */ #define ETHERTYPE_FLOWCONTROL 0x8808 /* 802.3x flow control packet */ #define ETHERTYPE_SLOW 0x8809 /* 802.3ad link aggregation (LACP) */ -#define ETHERTYPE_PPP 0x880B /* PPP (obsolete by PPPOE) */ +#define ETHERTYPE_PPP 0x880B /* PPP (obsolete by PPPoE) */ #define ETHERTYPE_HITACHI 0x8820 /* Hitachi Cable (Optoelectronic Systems Laboratory) */ #define ETHERTYPE_MPLS 0x8847 /* MPLS Unicast */ #define ETHERTYPE_MPLS_MCAST 0x8848 /* MPLS Multicast */ @@ -370,7 +365,7 @@ struct ifnet; struct mbuf; -struct rtentry; +struct route; struct sockaddr; struct bpf_if; @@ -379,13 +374,14 @@ extern void ether_demux(struct ifnet *, struct mbuf *); extern void ether_ifattach(struct ifnet *, const u_int8_t *); extern void ether_ifdetach(struct ifnet *); -extern int ether_ioctl(struct ifnet *, int, caddr_t); -extern int ether_output(struct ifnet *, - struct mbuf *, struct sockaddr *, struct rtentry *); +extern int ether_ioctl(struct ifnet *, u_long, caddr_t); +extern int ether_output(struct ifnet *, struct mbuf *, + const struct sockaddr *, struct route *); extern int ether_output_frame(struct ifnet *, struct mbuf *); extern char *ether_sprintf(const u_int8_t *); void ether_vlan_mtap(struct bpf_if *, struct mbuf *, void *, u_int); +struct mbuf *ether_vlanencap(struct mbuf *, uint16_t); #else /* _KERNEL */ @@ -396,9 +392,11 @@ */ __BEGIN_DECLS struct ether_addr *ether_aton(const char *); +struct ether_addr *ether_aton_r(const char *, struct ether_addr *); int ether_hostton(const char *, struct ether_addr *); int ether_line(const char *, struct ether_addr *, char *); char *ether_ntoa(const struct ether_addr *); +char *ether_ntoa_r(const struct ether_addr *, char *); int ether_ntohost(char *, const struct ether_addr *); __END_DECLS
View file
aircrack-ng-1.2-rc1.tar.gz/src/include/ieee80211.h -> aircrack-ng-1.2-rc2.tar.gz/src/include/ieee80211.h
Changed
@@ -1,3 +1,4 @@ +/* $NetBSD: ieee80211.h,v 1.26 2013/03/30 14:14:31 christos Exp $ */ /*- * Copyright (c) 2001 Atsushi Onoe * Copyright (c) 2002-2005 Sam Leffler, Errno Consulting @@ -29,7 +30,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/net80211/ieee80211.h,v 1.12 2006/12/01 18:40:51 imp Exp $ + * $FreeBSD: src/sys/net80211/ieee80211.h,v 1.10 2005/07/22 16:55:27 sam Exp $ */ #ifndef _NET80211_IEEE80211_H_ #define _NET80211_IEEE80211_H_ @@ -51,7 +52,7 @@ u_int16_t i_crc; } __packed; -#define IEEE80211_PLCP_SFD 0xF3A0 +#define IEEE80211_PLCP_SFD 0xF3A0 #define IEEE80211_PLCP_SERVICE 0x00 /* @@ -148,6 +149,21 @@ #define IEEE80211_FC0_SUBTYPE_QOS 0x80 #define IEEE80211_FC0_SUBTYPE_QOS_NULL 0xc0 +/* + * DS bit usage + * + * TA = transmitter address + * RA = receiver address + * DA = destination address + * SA = source address + * + * ToDS FromDS A1(RA) A2(TA) A3 A4 Use + * ----------------------------------------------------------------- + * 0 0 DA SA BSSID - IBSS/DLS + * 0 1 DA BSSID SA - AP -> STA + * 1 0 BSSID SA DA - AP <- STA + * 1 1 RA TA DA SA unspecified (WDS) + */ #define IEEE80211_FC1_DIR_MASK 0x03 #define IEEE80211_FC1_DIR_NODS 0x00 /* STA->STA */ #define IEEE80211_FC1_DIR_TODS 0x01 /* STA->AP */ @@ -158,7 +174,8 @@ #define IEEE80211_FC1_RETRY 0x08 #define IEEE80211_FC1_PWR_MGT 0x10 #define IEEE80211_FC1_MORE_DATA 0x20 -#define IEEE80211_FC1_WEP 0x40 +#define IEEE80211_FC1_PROTECTED 0x40 +#define IEEE80211_FC1_WEP 0x40 /* pre-RSNA compat */ #define IEEE80211_FC1_ORDER 0x80 #define IEEE80211_SEQ_FRAG_MASK 0x000f @@ -168,19 +185,22 @@ #define IEEE80211_NWID_LEN 32 -#define IEEE80211_QOS_TXOP 0x00ff +/* + * QoS Control field (see 7.1.3.5). + */ /* bit 8 is reserved */ -#define IEEE80211_QOS_ACKPOLICY 0x60 +#define IEEE80211_QOS_TXOP 0xff00 +#define IEEE80211_QOS_AMSDU 0x0080 /* 11n */ +#define IEEE80211_QOS_ACKPOLICY_NORMAL 0x0000 +#define IEEE80211_QOS_ACKPOLICY_NOACK 0x0020 +#define IEEE80211_QOS_ACKPOLICY_NOEXPLACK 0x0040 +#define IEEE80211_QOS_ACKPOLICY 0x0060 #define IEEE80211_QOS_ACKPOLICY_S 5 -#define IEEE80211_QOS_ESOP 0x10 +#define IEEE80211_QOS_ACKPOLICY_MASK 0x0060 +#define IEEE80211_QOS_ACKPOLICY_BA 0x0060 +#define IEEE80211_QOS_ESOP 0x0010 #define IEEE80211_QOS_ESOP_S 4 -#define IEEE80211_QOS_TID 0x0f - -/* does frame have QoS sequence control data */ -#define IEEE80211_QOS_HAS_SEQ(wh) \ - (((wh)->i_fc[0] & \ - (IEEE80211_FC0_TYPE_MASK | IEEE80211_FC0_SUBTYPE_QOS)) == \ - (IEEE80211_FC0_TYPE_DATA | IEEE80211_FC0_SUBTYPE_QOS)) +#define IEEE80211_QOS_TID 0x000f /* * WME/802.11e information element. @@ -232,7 +252,14 @@ u_int16_t acp_txop; } __packed; -#define WME_NUM_AC 4 /* 4 AC categories */ +/* WME stream classes */ +enum ieee80211_wme_ac { + WME_AC_BE = 0, /* best effort */ + WME_AC_BK = 1, /* background */ + WME_AC_VI = 2, /* video */ + WME_AC_VO = 3, /* voice */ +}; +#define WME_NUM_AC 4 /* 4 AC categories */ #define WME_PARAM_ACI 0x60 /* Mask for ACI field */ #define WME_PARAM_ACI_S 5 /* Shift for ACI field */ @@ -335,6 +362,50 @@ /* FCS */ } __packed; +static __inline int +ieee80211_has_seq(const struct ieee80211_frame *wh) +{ + return (wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) != + IEEE80211_FC0_TYPE_CTL; +} + +static __inline int +ieee80211_has_addr4(const struct ieee80211_frame *wh) +{ + return (wh->i_fc[1] & IEEE80211_FC1_DIR_MASK) == + IEEE80211_FC1_DIR_DSTODS; +} + +static __inline int +ieee80211_has_qos(const struct ieee80211_frame *wh) +{ + return (wh->i_fc[0] & + (IEEE80211_FC0_TYPE_MASK | IEEE80211_FC0_SUBTYPE_QOS)) == + (IEEE80211_FC0_TYPE_DATA | IEEE80211_FC0_SUBTYPE_QOS); +} + +static __inline int +ieee80211_has_htc(const struct ieee80211_frame *wh) +{ + return (wh->i_fc[1] & IEEE80211_FC1_ORDER) && + (ieee80211_has_qos(wh) || + (wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) == + IEEE80211_FC0_TYPE_MGT); +} + +static __inline u_int16_t +ieee80211_get_qos(const struct ieee80211_frame *wh) +{ + const u_int8_t *frm; + + if (ieee80211_has_addr4(wh)) + frm = ((const struct ieee80211_qosframe_addr4 *)wh)->i_qos; + else + frm = ((const struct ieee80211_qosframe *)wh)->i_qos; + + return le16toh(*(const u_int16_t *)frm); +} + /* * BEACON management packets * @@ -401,14 +472,30 @@ IEEE80211_ELEMID_TIM = 5, IEEE80211_ELEMID_IBSSPARMS = 6, IEEE80211_ELEMID_COUNTRY = 7, + IEEE80211_ELEMID_EDCAPARMS = 12, IEEE80211_ELEMID_CHALLENGE = 16, /* 17-31 reserved for challenge text extension */ + IEEE80211_ELEMID_PWRCNSTR = 32, + IEEE80211_ELEMID_PWRCAP = 33, + IEEE80211_ELEMID_TPCREQ = 34, + IEEE80211_ELEMID_TPCREP = 35, + IEEE80211_ELEMID_SUPPCHAN = 36, + IEEE80211_ELEMID_CHANSWITCHANN = 37, + IEEE80211_ELEMID_MEASREQ = 38, + IEEE80211_ELEMID_MEASREP = 39, + IEEE80211_ELEMID_QUIET = 40, + IEEE80211_ELEMID_IBSSDFS = 41, IEEE80211_ELEMID_ERP = 42, + IEEE80211_ELEMID_HTCAP = 45, /* 11n */ + IEEE80211_ELEMID_QOS_CAP = 46, IEEE80211_ELEMID_RSN = 48, IEEE80211_ELEMID_XRATES = 50, + IEEE80211_ELEMID_TIE = 56, /* 11r */ + IEEE80211_ELEMID_HTINFO = 61, /* 11n */ + IEEE80211_ELEMID_MMIE = 76, /* 11w */ IEEE80211_ELEMID_TPC = 150, IEEE80211_ELEMID_CCKM = 156, - IEEE80211_ELEMID_VENDOR = 221, /* vendor private */ + IEEE80211_ELEMID_VENDOR = 221 /* vendor private */ }; struct ieee80211_tim_ie { @@ -420,15 +507,17 @@ u_int8_t tim_bitmap[1]; /* variable-length bitmap */ } __packed; +struct ieee80211_band { + u_int8_t schan; /* starting channel */ + u_int8_t nchan; /* number channels */ + u_int8_t maxtxpwr; /* tx power cap */ +} __packed; + struct ieee80211_country_ie { u_int8_t ie; /* IEEE80211_ELEMID_COUNTRY */ u_int8_t len;
View file
aircrack-ng-1.2-rc1.tar.gz/src/include/if_arp.h -> aircrack-ng-1.2-rc2.tar.gz/src/include/if_arp.h
Changed
@@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)if_arp.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_arp.h,v 1.24 2005/11/11 16:04:48 ru Exp $ + * $FreeBSD$ */ #ifndef _NET_IF_ARP_H_ @@ -50,6 +50,7 @@ #define ARPHRD_ARCNET 7 /* arcnet hardware format */ #define ARPHRD_FRELAY 15 /* frame relay hardware format */ #define ARPHRD_IEEE1394 24 /* firewire hardware format */ +#define ARPHRD_INFINIBAND 32 /* infiniband hardware format */ u_short ar_pro; /* format of protocol address */ u_char ar_hln; /* length of hardware address */ u_char ar_pln; /* length of protocol address */ @@ -108,6 +109,39 @@ #define IFP2AC(ifp) ((struct arpcom *)(ifp->if_l2com)) #define AC2IFP(ac) ((ac)->ac_ifp) -#endif +#endif /* _KERNEL */ + +struct arpstat { + /* Normal things that happen: */ + uint64_t txrequests; /* # of ARP requests sent by this host. */ + uint64_t txreplies; /* # of ARP replies sent by this host. */ + uint64_t rxrequests; /* # of ARP requests received by this host. */ + uint64_t rxreplies; /* # of ARP replies received by this host. */ + uint64_t received; /* # of ARP packets received by this host. */ + + uint64_t arp_spares[4]; /* For either the upper or lower half. */ + /* Abnormal event and error counting: */ + uint64_t dropped; /* # of packets dropped waiting for a reply. */ + uint64_t timeouts; /* # of times with entries removed */ + /* due to timeout. */ + uint64_t dupips; /* # of duplicate IPs detected. */ +}; + +#ifdef _KERNEL +#include <sys/counter.h> +#include <net/vnet.h> + +VNET_PCPUSTAT_DECLARE(struct arpstat, arpstat); +/* + * In-kernel consumers can use these accessor macros directly to update + * stats. + */ +#define ARPSTAT_ADD(name, val) \ + VNET_PCPUSTAT_ADD(struct arpstat, arpstat, name, (val)) +#define ARPSTAT_SUB(name, val) ARPSTAT_ADD(name, -(val)) +#define ARPSTAT_INC(name) ARPSTAT_ADD(name, 1) +#define ARPSTAT_DEC(name) ARPSTAT_SUB(name, 1) + +#endif /* _KERNEL */ #endif /* !_NET_IF_ARP_H_ */
View file
aircrack-ng-1.2-rc1.tar.gz/src/include/if_llc.h -> aircrack-ng-1.2-rc2.tar.gz/src/include/if_llc.h
Changed
@@ -1,6 +1,6 @@ -/* $NetBSD: if_llc.h,v 1.12 1999/11/19 20:41:19 thorpej Exp $ */ +/* $NetBSD: if_llc.h,v 1.21 2014/09/05 05:32:07 matt Exp $ */ -/*- +/* * Copyright (c) 1988, 1993 * The Regents of the University of California. All rights reserved. * @@ -12,7 +12,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -29,7 +29,6 @@ * SUCH DAMAGE. * * @(#)if_llc.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_llc.h,v 1.13 2006/12/01 17:50:11 imp Exp $ */ #ifndef _NET_IF_LLC_H_ @@ -44,59 +43,59 @@ */ struct llc { - u_int8_t llc_dsap; - u_int8_t llc_ssap; + uint8_t llc_dsap; + uint8_t llc_ssap; union { struct { - u_int8_t control; - u_int8_t format_id; - u_int8_t class; - u_int8_t window_x2; - } __packed type_u; + uint8_t control; + uint8_t format_id; + uint8_t class_u; + uint8_t window_x2; + } type_u /* XXX __packed ??? */; struct { - u_int8_t num_snd_x2; - u_int8_t num_rcv_x2; - } __packed type_i; + uint8_t num_snd_x2; + uint8_t num_rcv_x2; + } type_i /* XXX __packed ??? */; struct { - u_int8_t control; - u_int8_t num_rcv_x2; - } __packed type_s; + uint8_t control; + uint8_t num_rcv_x2; + } type_s /* XXX __packed ??? */; struct { - u_int8_t control; + uint8_t control; /* * We cannot put the following fields in a structure because * the structure rounding might cause padding. */ - u_int8_t frmr_rej_pdu0; - u_int8_t frmr_rej_pdu1; - u_int8_t frmr_control; - u_int8_t frmr_control_ext; - u_int8_t frmr_cause; - } __packed type_frmr; + uint8_t frmr_rej_pdu0; + uint8_t frmr_rej_pdu1; + uint8_t frmr_control; + uint8_t frmr_control_ext; + uint8_t frmr_cause; + } type_frmr /* XXX __packed ??? */; struct { - u_int8_t control; - u_int8_t org_code[3]; - u_int16_t ether_type; - } __packed type_snap; + uint8_t control; + uint8_t org_code[3]; + uint16_t ether_type; + } type_snap __packed; struct { - u_int8_t control; - u_int8_t control_ext; - } __packed type_raw; - } __packed llc_un; + uint8_t control; + uint8_t control_ext; + } type_raw /* XXX __packed ??? */; + } llc_un /* XXX __packed ??? */; } __packed; struct frmrinfo { - u_int8_t frmr_rej_pdu0; - u_int8_t frmr_rej_pdu1; - u_int8_t frmr_control; - u_int8_t frmr_control_ext; - u_int8_t frmr_cause; + uint8_t frmr_rej_pdu0; + uint8_t frmr_rej_pdu1; + uint8_t frmr_control; + uint8_t frmr_control_ext; + uint8_t frmr_cause; } __packed; #define llc_control llc_un.type_u.control #define llc_control_ext llc_un.type_raw.control_ext #define llc_fid llc_un.type_u.format_id -#define llc_class llc_un.type_u.class +#define llc_class llc_un.type_u.class_u #define llc_window llc_un.type_u.window_x2 #define llc_frmrinfo llc_un.type_frmr.frmr_rej_pdu0 #define llc_frmr_pdu0 llc_un.type_frmr.frmr_rej_pdu0 @@ -114,10 +113,6 @@ #define LLC_FRMRLEN 7 #define LLC_SNAPFRAMELEN 8 -#ifdef CTASSERT -CTASSERT(sizeof (struct llc) == LLC_SNAPFRAMELEN); -#endif - /* * Unnumbered LLC format commands */ @@ -153,9 +148,22 @@ /* * ISO PDTR 10178 contains among others */ -#define LLC_8021D_LSAP 0x42 +#define LLC_8021D_LSAP 0x42 #define LLC_X25_LSAP 0x7e #define LLC_SNAP_LSAP 0xaa #define LLC_ISO_LSAP 0xfe -#endif /* _NET_IF_LLC_H_ */ +/* + * LLC XID definitions from 802.2, as needed + */ + +#define LLC_XID_FORMAT_BASIC 0x81 +#define LLC_XID_BASIC_MINLEN (LLC_UFRAMELEN + 3) + +#define LLC_XID_CLASS_I 0x1 +#define LLC_XID_CLASS_II 0x3 +#define LLC_XID_CLASS_III 0x5 +#define LLC_XID_CLASS_IV 0x7 + + +#endif /* !_NET_IF_LLC_H_ */
View file
aircrack-ng-1.2-rc1.tar.gz/src/ivstools.c -> aircrack-ng-1.2-rc2.tar.gz/src/ivstools.c
Changed
@@ -1,7 +1,7 @@ /* * IVS Tools - Convert or merge IVs * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine (pcap2ivs and mergeivs) * * This program is free software; you can redistribute it and/or modify @@ -102,7 +102,7 @@ void usage(int what) { - printf("\n %s - (C) 2006-2013 Thomas d\'Otreppe\n" + printf("\n %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n usage: ", getVersion("ivsTools", _MAJ, _MIN, _SUB_MIN, _REVISION, _BETA, _RC)); if (what == 0 || what == 1)
View file
aircrack-ng-1.2-rc1.tar.gz/src/kstats.c -> aircrack-ng-1.2-rc2.tar.gz/src/kstats.c
Changed
@@ -1,7 +1,7 @@ /* * Kstat: displays the votes of the korek attack for each keybyte * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * This program is free software; you can redistribute it and/or modify
View file
aircrack-ng-1.2-rc1.tar.gz/src/makeivs-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/makeivs-ng.c
Changed
@@ -1,7 +1,7 @@ /* * Server for osdep network driver. Uses osdep itself! [ph33r teh recursion] * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * This program is free software; you can redistribute it and/or modify @@ -38,7 +38,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: makeivs-ng [options]\n"
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/airpcap.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/airpcap.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2007-2013 Thomas d'Otreppe + * Copyright (c) 2007-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * Airpcap stuff *
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/byteorder.h -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/byteorder.h
Changed
@@ -1,7 +1,7 @@ /* * Compatibility header * - * Copyright (C) 2009 Thomas d'Otreppe + * Copyright (C) 2009-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/common.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/common.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2008-2013, Thomas d'Otreppe + * Copyright (c) 2008-2015, Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * Common OSdep stuff * @@ -44,7 +44,7 @@ 6050, 6055, 6060, 6065, 6070, 6075, 6080, 6085, 6090, 6095, 6100 }; - return (channel > 0 && channel <= 221) ? frequencies[channel] : -1; + return (channel > 0 && channel <= HIGHEST_CHANNEL) ? frequencies[channel] : (channel >= LOWEST_CHANNEL && channel <= -4) ? 5000 - (channel * 5) : -1 ; } /** @@ -56,7 +56,8 @@ return (frequency - 2407) / 5; else if (frequency == 2484) return 14; - else if (frequency >= 5000 && frequency <= 6100) + + else if (frequency >= 4920 && frequency <= 6100) return (frequency - 5000) / 5; else return -1;
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/common.h -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/common.h
Changed
@@ -1,5 +1,5 @@ /* - * (c) 2010-2012 Thomas D'Otreppe <tdotreppe@aircrack-ng.org> + * (c) 2010-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -42,4 +42,7 @@ #endif */ +#define HIGHEST_CHANNEL 221 +#define LOWEST_CHANNEL -16 + #endif
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/cygwin.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/cygwin.c
Changed
@@ -47,6 +47,7 @@ volatile int pc_running; int pc_pipe[2]; /* reader -> parent */ int pc_channel; + int pc_frequency; struct wif *pc_wi; int pc_did_init; @@ -55,6 +56,7 @@ int (*pc_init)(char *param); int (*pc_set_chan)(int chan); + int (*pc_set_freq)(int freq); int (*pc_inject)(void *buf, int len, struct tx_info *ti); int (*pc_sniff)(void *buf, int len, struct rx_info *ri); int (*pc_get_mac)(void *mac); @@ -157,6 +159,7 @@ priv->pc_init = dlsym(lib, xstr(CYGWIN_DLL_INIT)); priv->pc_set_chan = dlsym(lib, xstr(CYGWIN_DLL_SET_CHAN)); + priv->pc_set_freq = dlsym(lib, xstr(CYGWIN_DLL_SET_FREQ)); priv->pc_get_mac = dlsym(lib, xstr(CYGWIN_DLL_GET_MAC)); priv->pc_set_mac = dlsym(lib, xstr(CYGWIN_DLL_SET_MAC)); priv->pc_close = dlsym(lib, xstr(CYGWIN_DLL_CLOSE)); @@ -248,6 +251,23 @@ } /** + * Change frequency + * @param freq Frequency + * @return 0 if successful, -1 if it failed + */ +static int cygwin_set_freq(struct wif *wi, int freq) +{ + struct priv_cygwin *priv = wi_priv(wi); + + if (!priv->pc_set_freq || priv->pc_set_freq(freq) == -1) + return -1; + + priv->pc_frequency = freq; + return 0; +} + + +/** * Capture a packet * @param buf Buffer for the packet (has to be already allocated) * @param len Length of the buffer @@ -301,6 +321,13 @@ return pc->pc_channel; } +static int cygwin_get_freq(struct wif *wi) +{ + struct priv_cygwin *pc = wi_priv(wi); + + return pc->pc_frequency; +} + int cygwin_read_reader(int fd, int plen, void *dst, int len) { /* packet */ @@ -465,6 +492,11 @@ while (priv->pc_running) { /* read one packet */ + + /* a potential problem: the cygwin_read_packet will never return + * if there no packet sniffered, so the thread cannot be closed + * correctly. + */ len = cygwin_read_packet(priv, buf, sizeof(buf), &ri); if (len == -1) break; @@ -501,6 +533,8 @@ wi->wi_write = cygwin_write; wi->wi_set_channel = cygwin_set_channel; wi->wi_get_channel = cygwin_get_channel; + wi->wi_set_freq = cygwin_set_freq; + wi->wi_get_freq = cygwin_get_freq; wi->wi_close = cygwin_close; wi->wi_fd = cygwin_fd; wi->wi_get_mac = cygwin_get_mac;
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/cygwin.h -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/cygwin.h
Changed
@@ -22,6 +22,7 @@ // DLL function that have to be exported #define CYGWIN_DLL_INIT cygwin_init #define CYGWIN_DLL_SET_CHAN cygwin_set_chan +#define CYGWIN_DLL_SET_FREQ cygwin_set_freq #define CYGWIN_DLL_INJECT cygwin_inject #define CYGWIN_DLL_SNIFF cygwin_sniff #define CYGWIN_DLL_GET_MAC cygwin_get_mac
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/cygwin_tap.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/cygwin_tap.c
Changed
@@ -29,13 +29,18 @@ #include <windows.h> #include <winioctl.h> -#include <iphlpapi.h> +#include <ipexport.h> +#include <iptypes.h> #include <setupapi.h> #include <devguid.h> #include "network.h" #include "tap-win32/common.h" +extern DWORD WINAPI GetAdaptersInfo(PIP_ADAPTER_INFO pAdapterInfo,PULONG pOutBufLen); +extern DWORD WINAPI AddIPAddress(IPAddr Address,IPMask IpMask,DWORD IfIndex,PULONG NTEContext,PULONG NTEInstance); +extern DWORD WINAPI DeleteIPAddress(ULONG NTEContext); + extern int cygwin_read_reader(int fd, int plen, void *dst, int len); static void *ti_reader(void *arg);
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/linux.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/linux.c
Changed
@@ -1,7 +1,7 @@ /* * OS dependent APIs for Linux * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine * * This program is free software; you can redistribute it and/or modify @@ -72,6 +72,9 @@ static int chan; #endif //CONFIG_LIBNL +/* if_nametoindex is defined in net/if.h but that conflicts with linux/if.h */ +extern unsigned int if_nametoindex (const char *__ifname); +extern char *if_indextoname (unsigned int __ifindex, char *__ifname); typedef enum { DT_NULL = 0, @@ -178,6 +181,8 @@ static int is_ndiswrapper(const char * iface, const char * path) { int n, pid, unused; + if (!path || !iface) + return 0; if ((pid=fork())==0) { close( 0 ); close( 1 ); close( 2 ); unused = chdir( "/" ); @@ -259,22 +264,7 @@ "/usr/local/bin", "/tmp" }; - /* - #define SEPARATOR ":" - - env = getenv("PATH"); - if (env) { - path = strtok(env, SEPARATOR); - while (path) { - found = searchInside(path, tool); - if (found != NULL) - return found; - path = strtok(NULL, SEPARATOR); - } - } - #undef SEPARATOR - */ - + // Also search in other known location just in case we haven't found it yet nbelems = sizeof(paths) / sizeof(char *); for (i = 0; i < nbelems; i++) @@ -373,15 +363,16 @@ static int error_handler(struct sockaddr_nl *nla, struct nlmsgerr *err, void *arg) { - printf("\n\n\nERROR"); - int *ret = arg; - *ret = err->error; - return NL_STOP; + if (nla) { } + printf("\n\n\nERROR"); + int *ret = arg; + *ret = err->error; + return NL_STOP; } static void test_callback(struct nl_msg *msg, void *arg) { - + if (msg || arg) { } } #endif /* End nl80211 */ @@ -952,14 +943,11 @@ struct priv_linux *dev = wi_priv(wi); char s[32]; int pid, status, unused; - struct iwreq wrq; unsigned int devid; struct nl_msg *msg; unsigned int freq; int err; - struct nl_cb *cb; - struct nl_cb *s_cb; unsigned int htval = NL80211_CHAN_NO_HT; memset( s, 0, sizeof( s ) ); @@ -1034,15 +1022,6 @@ fprintf(stderr, "failed to allocate netlink message\n"); return 2; } - cb = nl_cb_alloc(NL_CB_DEFAULT); - s_cb = nl_cb_alloc(NL_CB_DEFAULT); - if (!cb || !s_cb) { - fprintf(stderr, "failed to allocate netlink callbacks\n"); - err = 2; - goto out_free_msg; - } - - //nl_cb_set(cb, NL_CB_VALID, NL_CB_CUSTOM, test_callback, NULL); genlmsg_put(msg, 0, 0, genl_family_get_id(state.nl80211), 0, 0, NL80211_CMD_SET_WIPHY, 0); @@ -1052,13 +1031,11 @@ NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, htval); nl_send_auto_complete(state.nl_sock,msg); + nlmsg_free(msg); dev->channel = channel; return( 0 ); - out_free_msg: - nlmsg_free(msg); - return err; nla_put_failure: return -ENOBUFS; } @@ -1654,8 +1631,9 @@ } /* Check iwpriv existence */ + iwpriv = wiToolsPath("iwpriv"); + #ifndef CONFIG_LIBNL - iwpriv = wiToolsPath("iwpriv"); dev->iwpriv = iwpriv; dev->iwconfig = wiToolsPath("iwconfig"); dev->ifconfig = wiToolsPath("ifconfig");
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/network.c -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/network.c
Changed
@@ -131,7 +131,7 @@ if (!(plen <= *len)) printf("PLEN %d type %d len %d\n", plen, nh.nh_type, *len); - assert(plen <= *len && plen > 0); /* XXX */ + assert(plen <= *len && plen >= 0); *len = plen; if ((*len) && (net_read_exact(s, arg, *len) == -1)) @@ -301,8 +301,9 @@ ri->ri_power = __be32_to_cpu(buf[2]); ri->ri_noise = __be32_to_cpu(buf[3]); ri->ri_channel = __be32_to_cpu(buf[4]); - ri->ri_rate = __be32_to_cpu(buf[5]); - ri->ri_antenna = __be32_to_cpu(buf[6]); + ri->ri_freq = __be32_to_cpu(buf[5]); + ri->ri_rate = __be32_to_cpu(buf[6]); + ri->ri_antenna = __be32_to_cpu(buf[7]); } l -= sz; assert(l > 0);
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/network.h -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/network.h
Changed
@@ -1,4 +1,4 @@ -/*- +/* * Copyright (c) 2007, 2008, Andrea Bittau <a.bittau@cs.ucl.ac.uk> * * Networking structures.
View file
aircrack-ng-1.2-rc1.tar.gz/src/osdep/packed.h -> aircrack-ng-1.2-rc2.tar.gz/src/osdep/packed.h
Changed
@@ -1,4 +1,4 @@ -/*- +/* * Pack structures * * Copyright (c) 2007, 2008, Andrea Bittau <a.bittau@cs.ucl.ac.uk>
View file
aircrack-ng-1.2-rc1.tar.gz/src/packetforge-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/packetforge-ng.c
Changed
@@ -2,7 +2,7 @@ * 802.11 ARP-request WEP packet forgery * UDP, ICMP and custom packet forging developped by Martin Beck * - * Copyright (C) 2006-2013 Thomas d'Otreppe + * Copyright (C) 2006-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * Copyright (C) 2004, 2005 Christophe Devine (arpforge) * * This program is free software; you can redistribute it and/or modify @@ -76,7 +76,7 @@ char usage[] = "\n" -" %s - (C) 2006-2013 Thomas d\'Otreppe\n" +" %s - (C) 2006-2014 Thomas d\'Otreppe\n" " Original work: Martin Beck\n" " http://www.aircrack-ng.org\n" "\n"
View file
aircrack-ng-1.2-rc1.tar.gz/src/tkiptun-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/tkiptun-ng.c
Changed
@@ -1,7 +1,7 @@ /* * 802.11 WPA replay & injection attacks * - * Copyright (C) 2008, 2009 Martin Beck + * Copyright (C) 2008, 2009 Martin Beck <hirte@aircrack-ng.org> * * WEP decryption attack (chopchop) developed by KoreK * @@ -143,7 +143,7 @@ char usage[] = "\n" -" %s - (C) 2008-2013 Thomas d\'Otreppe\n" +" %s - (C) 2008-2014 Thomas d\'Otreppe\n" " http://www.aircrack-ng.org\n" "\n" " usage: tkiptun-ng <options> <replay interface>\n" @@ -693,7 +693,7 @@ return rc; } -void read_sleep( int usec ) +void read_sleep( unsigned long usec ) { struct timeval tv, tv2, tv3; int caplen; @@ -705,7 +705,7 @@ tv3.tv_sec=0; tv3.tv_usec=10000; - while( ((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) < (usec) ) + while( ((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) < (usec) ) { FD_ZERO( &rfds ); FD_SET( dev.fd_in, &rfds ); @@ -835,7 +835,7 @@ len = read_packet(pkt_sniff, sizeof(pkt_sniff), NULL); gettimeofday(&tv2, NULL); - if(((tv2.tv_sec-tv.tv_sec)*1000000) + (tv2.tv_usec-tv.tv_usec) > 10000*1000) //wait 10sec for beacon frame + if(((tv2.tv_sec-tv.tv_sec)*1000000UL) + (tv2.tv_usec-tv.tv_usec) > 10000*1000) //wait 10sec for beacon frame { return -1; } @@ -3263,14 +3263,14 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks { PCT; printf("Not enough acks, repeating...\n"); again = RETRY; break; } - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer { PCT; printf("No answer, repeating...\n"); round++; @@ -3406,14 +3406,14 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks { PCT; printf("Not enough acks, repeating...\n"); again = RETRY; break; } - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer { PCT; printf("No answer, repeating...\n"); round++; @@ -3527,14 +3527,14 @@ } gettimeofday( &tv2, NULL ); - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (100*1000) && acksgot >0 && acksgot < packets )//wait 100ms for acks { PCT; printf("Not enough acks, repeating...\n"); again = RETRY; break; } - if (((tv2.tv_sec*1000000 - tv.tv_sec*1000000) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer + if (((tv2.tv_sec*1000000UL - tv.tv_sec*1000000UL) + (tv2.tv_usec - tv.tv_usec)) > (1500*1000) && !gotit) //wait 1500ms for an answer { PCT; printf("No answer, repeating...\n"); round++; @@ -4192,7 +4192,9 @@ } /* drop privileges */ - setuid( getuid() ); + if (setuid( getuid() ) == -1) { + perror("setuid"); + } /* XXX */ if( opt.r_nbpps == 0 ) @@ -4447,7 +4449,7 @@ while(1) { gettimeofday(&mic_fail, NULL); - if( (mic_fail.tv_sec - opt.last_mic_failure.tv_sec) * 1000000 + (mic_fail.tv_usec - opt.last_mic_failure.tv_usec) > opt.mic_failure_interval * 1000000) + if( (mic_fail.tv_sec - opt.last_mic_failure.tv_sec) * 1000000UL + (mic_fail.tv_usec - opt.last_mic_failure.tv_usec) > opt.mic_failure_interval * 1000000UL) break; sleep(1); }
View file
aircrack-ng-1.2-rc1.tar.gz/src/version.h -> aircrack-ng-1.2-rc2.tar.gz/src/version.h
Changed
@@ -1,5 +1,5 @@ /* - * (c) 2010-2012 Thomas D'Otreppe <tdotreppe@aircrack-ng.org> + * (c) 2010-2015 Thomas d'Otreppe <tdotreppe@aircrack-ng.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -34,7 +34,7 @@ #define _MIN 2 #define _SUB_MIN 0 #define _BETA 0 -#define _RC 1 +#define _RC 2 #define WEBSITE "http://www.aircrack-ng.org" extern char * getVersion(char * progname, int maj, int min, int submin, int
View file
aircrack-ng-1.2-rc1.tar.gz/src/wesside-ng.c -> aircrack-ng-1.2-rc2.tar.gz/src/wesside-ng.c
Changed
@@ -1,5 +1,5 @@ /* - * Copyright (C) 2005, 2006, 2007, 2008, 2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> + * Copyright (C) 2005-2009 Andrea Bittau <a.bittau@cs.ucl.ac.uk> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -33,7 +33,7 @@ #include <sys/types.h> #include <sys/socket.h> -#include <sys/termios.h> +#include <termios.h> #include <sys/ioctl.h> #include <sys/stat.h> #include <sys/wait.h>
View file
aircrack-ng-1.2-rc1.tar.gz/test/cryptounittest/Makefile -> aircrack-ng-1.2-rc2.tar.gz/test/cryptounittest/Makefile
Changed
@@ -14,8 +14,7 @@ SRC_CRYPTO = $(AC_ROOT)/src/crypto.c $(AC_ROOT)/src/sha1-git.c -TESTFILES = test-encrypt-wep$(EXE) test-calc-pmk$(EXE) test-calc-mic$(EXE) test-calc-ptk$(EXE) test-decrypt-ccmp$(EXE) test-calc-4pmk$(EXE) - +TESTFILES = test-encrypt-wep$(EXE) test-calc-pmk$(EXE) test-calc-mic$(EXE) test-calc-ptk$(EX) test-encrypt-ccmp$(EXE) test-decrypt-ccmp$(EXE) test-calc-4pmk$(EXE) OBJS_TEST_EWEP = test-encrypt-wep.c $(SRC_CRYPTO) OBJS_TEST_CPMK = test-calc-pmk.c $(SRC_CRYPTO) @@ -23,6 +22,7 @@ OBJS_TEST_CMIC = test-calc-mic.c $(SRC_CRYPTO) OBJS_TEST_CPTK = test-calc-ptk.c $(SRC_CRYPTO) OBJS_TEST_DCMP = test-decrypt-ccmp.c $(SRC_CRYPTO) +OBJS_TEST_ECMP = test-encrypt-ccmp.c $(SRC_CRYPTO) test-encrypt-wep$(EXE): $(OBJS_TEST_EWEP) $(CC) $(CFLAGS) $(OBJS_TEST_EWEP) -o $(@) $(LIBSSL) @@ -39,6 +39,9 @@ test-calc-ptk$(EXE): $(OBJS_TEST_CPTK) $(CC) $(CFLAGS) $(OBJS_TEST_CPTK) -o $(@) $(LIBSSL) +test-encrypt-ccmp$(EXE): $(OBJS_TEST_ECMP) + $(CC) $(CFLAGS) $(OBJS_TEST_ECMP) -o $(@) $(LIBSSL) + test-decrypt-ccmp$(EXE): $(OBJS_TEST_DCMP) $(CC) $(CFLAGS) $(OBJS_TEST_DCMP) -o $(@) $(LIBSSL)
View file
aircrack-ng-1.2-rc2.tar.gz/test/cryptounittest/test-encrypt-ccmp.c
Added
@@ -0,0 +1,76 @@ +/* + * + * test-encrypt-ccmp.c + * + * Copyright (C) 2015 Jorn van Engelen <spamme@quzart.com> + * + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ + + +#include <stdio.h> +#include <string.h> +#include <stdlib.h> +#include "crypto.h" +#include "tests.h" + +#define BUFFER_SIZE 65536 + +int main(int argc, char **argv) +{ + int error = 0; + int caplen = 44; + + // CCMP test vector as described in IEEE 802.11(TM)-2012, Section M.6.4. + + unsigned char tk1[16] = + "\xc9\x7c\x1f\x67\xce\x37\x11\x85\x51\x4a\x8a\x19\xf2\xbd\xd5\x2f"; + + unsigned char pn[6] = + "\xb5\x03\x97\x76\xe7\x0c"; + + unsigned char h80211[44] = + "\x08\x48\xc3\x2c\x0f\xd2\xe1\x28\xa5\x7c\x50\x30\xf1\x84\x44\x08" + "\xab\xae\xa5\xb8\xfc\xba\x80\x33\xf8\xba\x1a\x55\xd0\x2f\x85\xae" + "\x96\x7b\xb6\x2f\xb6\xcd\xa8\xeb\x7e\x78\xa0\x50"; + + unsigned char expected[60] = + "\x08\x48\xc3\x2c\x0f\xd2\xe1\x28\xa5\x7c\x50\x30\xf1\x84\x44\x08" + "\xab\xae\xa5\xb8\xfc\xba\x80\x33\x0c\xe7\x00\x20\x76\x97\x03\xb5" + "\xf3\xd0\xa2\xfe\x9a\x3d\xbf\x23\x42\xa6\x43\xe4\x32\x46\xe8\x0c" + "\x3c\x04\xd0\x19\x78\x45\xce\x0b\x16\xf9\x76\x23"; + + unsigned char expected_output[BUFFER_SIZE]; + unsigned char input[BUFFER_SIZE]; + + if (argc < 1) + return 1; + + bzero( expected_output, BUFFER_SIZE ); + bzero( input, BUFFER_SIZE ); + memcpy( expected_output, expected, sizeof(expected) ); + memcpy( input, h80211, sizeof(h80211) ); + + caplen = encrypt_ccmp( input, caplen, tk1, pn ); + if ( caplen != sizeof(expected) ) + error++; + error += test( input, expected_output, sizeof(expected), argv[0] ); + + return error; +} +
View file
aircrack-ng-1.2-rc2.tar.gz/test/pingreply.c
Added
@@ -0,0 +1,261 @@ +/* pingreply.c - Ping reply + * + * DESCIPTION + * + * Replies to all ping requests. Useful for testing sniffing/injecting + * packets with airtun-ng. + * + * USAGE + * + * ./pingreply <iface> + * + * INSTALL + * + * cc -lpcap -o pingreply pingreply.c + * + * LICENSE + * + * Copyright (c) 2015, Jorn van Engelen <spamme@quzart.com> + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice unmodified, this list of conditions, and the following + * disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <assert.h> +#include <unistd.h> +#include <pcap.h> +#include <arpa/inet.h> + + +struct eth_hdr { + unsigned char dst[6]; + unsigned char src[6]; + unsigned short type; +}; + +struct ip_hdr { + unsigned char vhl; + unsigned char tos; + unsigned short length; + unsigned short id; + unsigned short off; + unsigned char ttl; + unsigned char proto; + unsigned short chksum; + unsigned char src[4]; + unsigned char dst[4]; +}; + +struct icmp_hdr { + unsigned char type; + unsigned char code; + unsigned short chksum; + unsigned short id; + unsigned short seq; + unsigned char data[]; +}; + +struct eth_ip_icmp_reply { + struct eth_hdr eth; + struct ip_hdr ip; + struct icmp_hdr icmp; +}; + + + +pcap_t *p; +char errbuf[PCAP_ERRBUF_SIZE]; + + +short internet_chksum( unsigned char *hdr, int len ) +{ + unsigned int sum = 0; + + while ( len > 1 ) + { + sum += * (unsigned short*) hdr; + hdr += 2; + len -= 2; + } + + if ( len > 0 ) + sum += * (unsigned char*) hdr; + + while ( sum >> 16 ) + sum = (sum >> 16) + (sum & 0xffff); + + return ~sum; +} + +void reply_icmp_echo( + const struct eth_hdr *eth, + const struct ip_hdr *ip, + const struct icmp_hdr *icmp, + int len) +{ + unsigned char *ptr; + struct eth_ip_icmp_reply *reply; + + reply = (struct eth_ip_icmp_reply*) calloc( sizeof(struct eth_ip_icmp_reply) + len, 1 ); + assert( reply != NULL ); + + memcpy( reply->eth.src, eth->dst, 6 ); + memcpy( reply->eth.dst, eth->src, 6 ); + reply->eth.type = htons(0x0800); + + reply->ip.vhl = 0x45; + reply->ip.length = htons(sizeof(struct ip_hdr) + sizeof(struct icmp_hdr) + len); + reply->ip.id = htons(0xCAFE); + reply->ip.ttl = 0x80; + reply->ip.proto = 0x01; + memcpy( reply->ip.src, ip->dst, 4 ); + memcpy( reply->ip.dst, ip->src, 4 ); + + reply->icmp.type = 0x00; + reply->icmp.code = 0x00; + reply->icmp.id = icmp->id; + reply->icmp.seq = icmp->seq; + memcpy( reply->icmp.data, icmp->data, len ); + + reply->ip.chksum = internet_chksum( (unsigned char*) &(reply->ip), sizeof(struct ip_hdr) ); + reply->icmp.chksum = internet_chksum( (unsigned char*) &(reply->icmp), sizeof(struct icmp_hdr) + len ); + + printf( "Sent icmp echo reply to: %i.%i.%i.%i.\n", ip->src[0], ip->src[1], ip->src[2], ip->src[3] ); + + if ( pcap_inject( p, reply, sizeof(struct eth_ip_icmp_reply) + len ) == -1 ) + { + fprintf( stderr, "Could not inject packet: %s\n", pcap_geterr( p ) ); + } + + free( reply ); +} + + +void receive_packet( + unsigned char *args, + const struct pcap_pkthdr *header, + const unsigned char *packet) +{ + int len = header->caplen; + int ip_hdr_len; + const struct eth_hdr *eth; + const struct ip_hdr *ip; + const struct icmp_hdr *icmp; + + len -= sizeof(struct eth_hdr); + if ( len < 0 ) + return; + + eth = (struct eth_hdr*) packet; + packet += sizeof(struct eth_hdr); + + /* Packet must be IPv4 */ + if ( ntohs(eth->type) != 0x0800 ) + return; + + if ( len < sizeof(struct ip_hdr) ) + return; + + ip = (struct ip_hdr*) packet; + if ( ntohs( ip->length ) != len ) + return; + if ( ip->vhl >> 4 != 4 ) + return; + + ip_hdr_len = ( ip->vhl & 0x0F ) * 4; + if ( ip_hdr_len < sizeof(struct ip_hdr) ) + return; + + len -= ip_hdr_len; + if ( len < 0 ) + return; + + packet += ip_hdr_len; + + /* Packet must be ICMP */ + if ( ip->proto != 0x01 ) + return;
View file
aircrack-ng-1.2-rc2.tar.gz/test/verify_inject.py
Added
@@ -0,0 +1,13 @@ +#!/usr/bin/env python2 +# Usage: https://github.com/aircrack-ng/aircrack-ng/pull/21 + +from scapy.all import * +conf.verbf = 1 + +interface = "at0" + +rpkt = Ether( dst = "[AP mac]", src = "[STA mac]" )/\ + IP( dst = "[AP ip]", src = "[STA ip]" )/\ + UDP( )/\ + DNS(rd=1,qd=DNSQR(qname="www.aircrack-ng.org")) +sendp( rpkt, iface = interface )
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.