|
Politician 1.0.0
WiFi Auditing Library for ESP32
|
Include dependency graph for PoliticianTypes.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | politician::Config |
| Configuration for the Politician engine. More... | |
| struct | politician::ApRecord |
| Snapshot of a discovered Access Point from the internal cache. More... | |
| struct | politician::Stats |
| Cumulative frame and capture counters for the engine session. More... | |
| struct | politician::HandshakeRecord |
| A captured handshake or PMKID record delivered to the EapolCb callback. More... | |
| struct | politician::AttackResultRecord |
| Identifies the AP and failure reason for a failed attack, delivered to the AttackResultCb callback. More... | |
| struct | politician::RogueApRecord |
| Fired when a second BSSID advertising the same SSID is observed on the same channel. More... | |
| struct | politician::EapIdentityRecord |
| A harvested 802.1X Enterprise plaintext identity, delivered to the IdentityCb callback. More... | |
| struct | politician::ProbeRequestRecord |
| A probe request frame observed on the air, delivered to the ProbeRequestCb callback. More... | |
| struct | politician::DisruptRecord |
| A deauthentication or disassociation frame observed on the air, delivered to the DisruptCb callback. More... | |
| struct | politician::DeviceFingerprint |
| One fingerprint entry in the built-in or user-defined database. More... | |
| struct | politician::DeviceRecord |
| A matched device, delivered to the DeviceFoundCb callback. More... | |
| union | politician::HandshakeRecord.__unnamed3__ |
| union | politician::HandshakeRecord.__unnamed5__ |
Namespaces | |
| namespace | politician |
Macros | |
| #define | CAP_PMKID 0x01 |
| #define | CAP_EAPOL 0x02 |
| #define | CAP_EAPOL_CSA 0x03 |
| #define | CAP_EAPOL_HALF 0x04 |
| #define | CAP_EAPOL_GROUP 0x05 |
| #define | CAP_SAE 0x06 |
| #define | ATTACK_PMKID 0x01 |
| #define | ATTACK_CSA 0x02 |
| #define | ATTACK_PASSIVE 0x04 |
| #define | ATTACK_DEAUTH 0x08 |
| #define | ATTACK_STIMULATE 0x10 |
| #define | ATTACK_ALL 0x1F |
| #define | LOG_FILTER_HANDSHAKES 0x01 |
| #define | LOG_FILTER_PROBES 0x02 |
| #define | LOG_FILTER_BEACONS 0x04 |
| #define | LOG_FILTER_PROBE_REQ 0x08 |
| #define | LOG_FILTER_MGMT_DISRUPT 0x10 |
| #define | LOG_FILTER_ALL 0xFF |
| #define | FP_MATCH_OUI 0x01 |
| #define | FP_MATCH_PROBE_SSID 0x02 |
| #define | FP_MATCH_HT_CAP 0x04 |
| #define | FP_MATCH_RATES 0x08 |
| #define | FP_MATCH_IE_FLAGS 0x10 |
| #define | FP_IEF_NO_HT 0x01 |
| #define | FP_IEF_NO_EXT_CAP 0x02 |
| #define | FP_IEF_HAS_WMM 0x04 |
| #define | FP_IEF_HAS_WPS 0x08 |
Typedefs | |
| typedef void(* | politician::LogCb) (const char *msg) |
| typedef void(* | politician::ApFoundCb) (const ApRecord &ap) |
| typedef int(* | politician::TargetScoreCb) (const ApRecord &ap, const char *vendor) |
| typedef void(* | politician::PacketCb) (const uint8_t *payload, uint16_t len, int8_t rssi, uint8_t channel, uint32_t ts_usec) |
| typedef void(* | politician::EapolCb) (const HandshakeRecord &rec) |
| typedef void(* | politician::IdentityCb) (const EapIdentityRecord &rec) |
| typedef void(* | politician::ProbeRequestCb) (const ProbeRequestRecord &rec) |
| typedef void(* | politician::DisruptCb) (const DisruptRecord &rec) |
| typedef void(* | politician::AttackResultCb) (const AttackResultRecord &rec) |
| typedef void(* | politician::ClientFoundCb) (const uint8_t *bssid, const uint8_t *sta, int8_t rssi) |
| typedef void(* | politician::RogueApCb) (const RogueApRecord &rec) |
Enumerations | |
| enum | politician::Error { politician::OK = 0 , politician::ERR_WIFI_INIT = 1 , politician::ERR_INVALID_CH = 2 , politician::ERR_NOT_ACTIVE = 3 , politician::ERR_ALREADY_CAPTURED = 4 , politician::ERR_NOT_FOUND = 5 } |
| enum | politician::DisconnectStrategy : uint8_t { politician::STRATEGY_AUTO_FALLBACK = 0 , politician::STRATEGY_SIMULTANEOUS = 1 } |
| enum | politician::AttackResult : uint8_t { politician::RESULT_PMKID_EXHAUSTED = 1 , politician::RESULT_CSA_EXPIRED = 2 } |
| struct politician::Config |
Configuration for the Politician engine.
Definition at line 73 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint32_t | ap_expiry_ms = 300000 | |
| uint8_t | capture_filter = LOG_FILTER_HANDSHAKES | LOG_FILTER_PROBES | |
| bool | capture_group_keys = false | |
| bool | capture_half_handshakes = false | |
| uint8_t | csa_beacon_count = 8 | |
| uint8_t | csa_deauth_count = 15 | |
| uint32_t | csa_wait_ms = 4000 | |
| uint8_t | deauth_burst_count = 16 | |
| uint8_t | deauth_reason = 7 | |
| bool | deauth_reason_cycling = true | |
| uint8_t | enc_filter_mask = 0xFF | |
| uint8_t | fish_max_retries = 2 | |
| uint32_t | fish_timeout_ms = 2000 | |
| uint16_t | hop_dwell_ms = 200 | |
| uint16_t | hop_max_dwell_ms = 400 | |
| uint16_t | hop_min_dwell_ms = 50 | |
| uint32_t | m1_lock_ms = 800 | |
| uint8_t | max_total_attempts = 0 | |
| uint8_t | min_beacon_count = 0 | |
| int8_t | min_rssi = -100 | |
| uint16_t | probe_aggr_interval_s = 30 | |
| uint32_t | probe_hidden_interval_ms = 0 | |
| bool | require_active_clients = false | |
| uint32_t | session_timeout_ms = 60000 | |
| bool | skip_immune_networks = true | |
| bool | smart_hopping = true | |
| char | ssid_filter[33] = {} | |
| bool | ssid_filter_exact = true | |
| uint8_t | sta_filter[6] = {} | |
| bool | unicast_deauth = true | |
| struct politician::ApRecord |
Snapshot of a discovered Access Point from the internal cache.
Populated by getAp(), getApByBssid(), and the ApFoundCb callback.
Definition at line 108 of file PoliticianTypes.h.
| struct politician::Stats |
Cumulative frame and capture counters for the engine session.
Accessible via getStats(), reset with resetStats().
Definition at line 136 of file PoliticianTypes.h.
| struct politician::HandshakeRecord |
A captured handshake or PMKID record delivered to the EapolCb callback.
The type field identifies the capture path; fields not relevant to that path are zeroed.
Definition at line 155 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| union HandshakeRecord.__unnamed3__ | __unnamed__ | |
| union HandshakeRecord.__unnamed5__ | __unnamed__ | |
| uint8_t | anonce[32] | |
| uint8_t | bssid[6] | |
| uint8_t | channel | |
| uint8_t | eapol_m3[256] | |
| uint16_t | eapol_m3_len | |
| uint8_t | eapol_m4[256] | |
| uint16_t | eapol_m4_len | |
| uint8_t | enc | |
| bool | has_anonce | |
| bool | has_m3 | |
| bool | has_m4 | |
| bool | has_mic | |
| bool | has_snonce | |
| bool | is_full | |
| uint8_t | mic[16] | |
| uint8_t | pmkid[16] | |
| int8_t | rssi | |
| uint8_t | sae_seq | |
| uint8_t | snonce[32] | |
| char | ssid[33] | |
| uint8_t | ssid_len | |
| uint8_t | sta[6] | |
| uint8_t | type | |
| struct politician::AttackResultRecord |
Identifies the AP and failure reason for a failed attack, delivered to the AttackResultCb callback.
Definition at line 204 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | bssid[6] | |
| AttackResult | result | |
| char | ssid[33] | |
| uint8_t | ssid_len | |
| struct politician::RogueApRecord |
Fired when a second BSSID advertising the same SSID is observed on the same channel.
This indicates a potential evil twin or rogue AP. Both the known AP and the newcomer are included.
Definition at line 218 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | channel | |
| uint8_t | known_bssid[6] | |
| uint8_t | rogue_bssid[6] | |
| int8_t | rssi | |
| char | ssid[33] | |
| uint8_t | ssid_len | |
| struct politician::EapIdentityRecord |
A harvested 802.1X Enterprise plaintext identity, delivered to the IdentityCb callback.
Definition at line 231 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | bssid[6] | |
| uint8_t | channel | |
| uint8_t | client[6] | |
| char | identity[65] | |
| int8_t | rssi | |
| struct politician::ProbeRequestRecord |
A probe request frame observed on the air, delivered to the ProbeRequestCb callback.
Definition at line 241 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | channel | |
| uint8_t | client[6] | |
| bool | rand_mac | |
| int8_t | rssi | |
| char | ssid[33] | |
| uint8_t | ssid_len | |
| struct politician::DisruptRecord |
A deauthentication or disassociation frame observed on the air, delivered to the DisruptCb callback.
Definition at line 252 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | bssid[6] | |
| uint8_t | channel | |
| uint8_t | dst[6] | |
| bool | rand_mac | |
| uint16_t | reason | |
| int8_t | rssi | |
| uint8_t | src[6] | |
| uint8_t | subtype | |
| struct politician::DeviceFingerprint |
One fingerprint entry in the built-in or user-defined database.
Definition at line 279 of file PoliticianTypes.h.
| struct politician::DeviceRecord |
A matched device, delivered to the DeviceFoundCb callback.
Definition at line 294 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | channel | |
| uint8_t | confidence | |
| uint8_t | mac[6] | |
| uint8_t | match_flags | |
| char | model[32] | |
| int8_t | rssi | |
| char | vendor[32] | |
| union politician::HandshakeRecord.__unnamed3__ |
Definition at line 170 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint8_t | eapol_m2[256] | |
| uint8_t | sae_data[256] | |
| union politician::HandshakeRecord.__unnamed5__ |
Definition at line 176 of file PoliticianTypes.h.
| Class Members | ||
|---|---|---|
| uint16_t | eapol_m2_len | |
| uint16_t | sae_len | |
| #define ATTACK_ALL 0x1F |
Definition at line 28 of file PoliticianTypes.h.
| #define ATTACK_CSA 0x02 |
Definition at line 24 of file PoliticianTypes.h.
| #define ATTACK_DEAUTH 0x08 |
Definition at line 26 of file PoliticianTypes.h.
| #define ATTACK_PASSIVE 0x04 |
Definition at line 25 of file PoliticianTypes.h.
| #define ATTACK_PMKID 0x01 |
Definition at line 23 of file PoliticianTypes.h.
| #define ATTACK_STIMULATE 0x10 |
Definition at line 27 of file PoliticianTypes.h.
| #define CAP_EAPOL 0x02 |
Definition at line 16 of file PoliticianTypes.h.
| #define CAP_EAPOL_CSA 0x03 |
Definition at line 17 of file PoliticianTypes.h.
| #define CAP_EAPOL_GROUP 0x05 |
Definition at line 19 of file PoliticianTypes.h.
| #define CAP_EAPOL_HALF 0x04 |
Definition at line 18 of file PoliticianTypes.h.
| #define CAP_PMKID 0x01 |
Definition at line 15 of file PoliticianTypes.h.
| #define CAP_SAE 0x06 |
Definition at line 20 of file PoliticianTypes.h.
| #define FP_IEF_HAS_WMM 0x04 |
Definition at line 275 of file PoliticianTypes.h.
| #define FP_IEF_HAS_WPS 0x08 |
Definition at line 276 of file PoliticianTypes.h.
| #define FP_IEF_NO_EXT_CAP 0x02 |
Definition at line 274 of file PoliticianTypes.h.
| #define FP_IEF_NO_HT 0x01 |
Definition at line 273 of file PoliticianTypes.h.
| #define FP_MATCH_HT_CAP 0x04 |
Definition at line 268 of file PoliticianTypes.h.
| #define FP_MATCH_IE_FLAGS 0x10 |
Definition at line 270 of file PoliticianTypes.h.
| #define FP_MATCH_OUI 0x01 |
Definition at line 266 of file PoliticianTypes.h.
| #define FP_MATCH_PROBE_SSID 0x02 |
Definition at line 267 of file PoliticianTypes.h.
| #define FP_MATCH_RATES 0x08 |
Definition at line 269 of file PoliticianTypes.h.
| #define LOG_FILTER_ALL 0xFF |
Definition at line 40 of file PoliticianTypes.h.
| #define LOG_FILTER_BEACONS 0x04 |
Definition at line 37 of file PoliticianTypes.h.
| #define LOG_FILTER_HANDSHAKES 0x01 |
Definition at line 35 of file PoliticianTypes.h.
| #define LOG_FILTER_MGMT_DISRUPT 0x10 |
Definition at line 39 of file PoliticianTypes.h.
| #define LOG_FILTER_PROBE_REQ 0x08 |
Definition at line 38 of file PoliticianTypes.h.
| #define LOG_FILTER_PROBES 0x02 |
Definition at line 36 of file PoliticianTypes.h.