WIFI PINEAPPLE MARK VII - CLIENT REST
Auteur:: TW-D
Version:: 1.3.7
Copyright:: Copyright (c) 2024 TW-D
Licence:: Distribué sous les mêmes termes que Ruby
Documentation:: https://hak5.github.io/mk7-docs/docs/rest/rest/
Prérequis:: Ruby >= 2.7.0p0 et WiFi Pineapple Mark VII >= 2.1.0-stable
Installation (Distributions Linux basées sur Debian)::
Description
Bibliothèque permettant l'automatisation d'opérations d'attaque actives ou passives.
Note : Les "Issues" et "Pull Requests" sont les bienvenues.
Payloads
Dans le répertoire "./payloads/", vous trouverez :
| COMMANDE ET CONTRÔLE | Auteur | Utilisation |
|---|
| Hak5 Key Croc - Récupération en temps réel des frappes clavier depuis un clavier | TW-D | (edit) ruby ./hak5_key-croc.rb |
| Maltronics WiFi Deauther - Envoyer des trames beacon en continu | TW-D | (edit) ruby ./maltronics_wifi-deauther.rb |
| DÉFENSE | Auteur | Utilisation |
|---|
| Hak5 Pineapple Spotter |
| DoS | Auteur | Utilisation |
|---|
| Désauthentification des clients disponibles sur les points d'accès | TW-D | (edit) ruby ./deauthentication-clients.rb |
| GÉNÉRAL | Auteur | Utilisation |
|---|
| Statut du système, utilisation du disque, ... | TW-D | (edit) ruby ./dashboard-stats.rb |
| Interfaces réseau | TW-D | (edit) ruby ./networking-interfaces.rb |
| Journaux système |
| WARDRIVING | Auteur | Utilisation |
|---|
| Reconnaissance continue sur 2,4 GHz et 5 GHz (avec un adaptateur supporté) | TW-D | (edit) ruby ./continuous-recon_5ghz.rb [CTRL+c] |
| Reconnaissance continue pour la capture de handshakes |
Squelette de payload pour le développement
#
# Title: <TITLE>
#
# Description: <DESCRIPTION>
#
#
# Author: <AUTHOR>
# Version: <VERSION>
# Category: <CATEGORY>
#
# STATUS
# ======================
# <SHORT-DESCRIPTION> ... SETUP
# <SHORT-DESCRIPTION> ... ATTACK
# <SHORT-DESCRIPTION> ... SPECIAL
# <SHORT-DESCRIPTION> ... FINISH
# <SHORT-DESCRIPTION> ... CLEANUP
# <SHORT-DESCRIPTION> ... OFF
#
require_relative('<PATH-TO>/classes/PineappleMK7.rb')
system_authentication = PineappleMK7::System::Authentication.new
system_authentication.host = "<PINEAPPLE-IP-ADDRESS>"
system_authentication.port = 1471
system_authentication.mac = "<PINEAPPLE-MAC-ADDRESS>"
system_authentication.password = "<ROOT-ACCOUNT-PASSWORD>"
if (system_authentication.login)
led = PineappleMK7::System::LED.new
# SETUP
#
led.setup
#
# [...]
#
# ATTACK
#
led.attack
#
# [...]
#
# SPECIAL
#
led.special
#
# [...]
#
# FINISH
#
led.finish
#
# [...]
#
# CLEANUP
#
led.cleanup
#
# [...]
#
# OFF
#
led.off
end
Note : N'hésitez pas à vous inspirer du répertoire des payloads.
Modules système
Accesseurs/méthode d'authentification
system_authentication = PineappleMK7::System::Authentication.new
system_authentication.host = (string) "<PINEAPPLE-IP-ADDRESS>"
system_authentication.port = (integer) 1471
system_authentication.mac = (string) "<PINEAPPLE-MAC-ADDRESS>"
system_authentication.password = (string) "<ROOT-ACCOUNT-PASSWORD>"
system_authentication.login()
Méthodes LED
led = PineappleMK7::System::LED.new
led.setup()
led.failed()
led.attack()
led.special()
led.cleanup()
led.finish()
led.off()
Modules Pineapple
Tableau de bord
Méthode de notifications
dashboard_notifications = PineappleMK7::Modules::Dashboard::Notifications.new
dashboard_notifications.clear()
Méthode de statistiques
dashboard_stats = PineappleMK7::Modules::Dashboard::Stats.new
dashboard_stats.output()
Journalisation
Méthode système
logging_system = PineappleMK7::Modules::Logging::System.new
logging_system.output()
PineAP
Méthodes des clients
pineap_clients = PineappleMK7::Modules::PineAP::Clients.new
pineap_clients.connected_clients()
pineap_clients.previous_clients()
pineap_clients.kick( (string) mac )
pineap_clients.clear_previous()
Accesseurs/méthode EvilWPA
evil_wpa = PineappleMK7::Modules::PineAP::EvilWPA.new
evil_wpa.ssid = (string default:'PineAP_WPA')
evil_wpa.bssid = (string default:'00:13:37:BE:EF:00')
evil_wpa.auth = (string default:'psk2+ccmp')
evil_wpa.password = (string default:'pineapplesareyummy')
evil_wpa.hidden = (boolean default:false)
evil_wpa.enabled = (boolean default:false)
evil_wpa.capture_handshakes = (boolean default:false)
evil_wpa.save()
Méthodes de filtrage
pineap_filtering = PineappleMK7::Modules::PineAP::Filtering.new
pineap_filtering.client_filter( (string) 'allow' | 'deny' )
pineap_filtering.add_client( (string) mac )
pineap_filtering.clear_clients()
pineap_filtering.ssid_filter( (string) 'allow' | 'deny' )
Méthodes d'usurpation
pineap_impersonation = PineappleMK7::Modules::PineAP::Impersonation.new
pineap_impersonation.output()
pineap_impersonation.add_ssid( (string) ssid )
pineap_impersonation.clear_pool()
Méthode OpenAP
open_ap = PineappleMK7::Modules::PineAP::OpenAP.new
open_ap.output()
Accesseurs/méthode des paramètres
pineap_settings = PineappleMK7::Modules::PineAP::Settings.new
pineap_settings.enablePineAP = (boolean default:true)
pineap_settings.autostartPineAP = (boolean default:true)
pineap_settings.armedPineAP = (boolean default:false)
pineap_settings.ap_channel = (string default:'11')
pineap_settings.karma = (boolean default:false)
pineap_settings.logging = (boolean default:false)
pineap_settings.connect_notifications = (boolean default:false)
pineap_settings.disconnect_notifications = (boolean default:false)
pineap_settings.capture_ssids = (boolean default:false)
pineap_settings.beacon_responses = (boolean default:false)
pineap_settings.broadcast_ssid_pool = (boolean default:false)
pineap_settings.broadcast_ssid_pool_random = (boolean default:false)
pineap_settings.pineap_mac = (string default:system_authentication.mac)
pineap_settings.target_mac = (string default:'FF:FF:FF:FF:FF:FF')
pineap_settings.beacon_response_interval = (string default:'NORMAL')
pineap_settings.beacon_interval = (string default:'NORMAL')
pineap_settings.save()
Reconnaissance
Méthodes de handshakes
recon_handshakes = PineappleMK7::Modules::Recon::Handshakes.new
recon_handshakes.start( (object) ap )
recon_handshakes.stop()
recon_handshakes.output()
recon_handshakes.download( (object) handshake, (string) destination )
recon_handshakes.clear()
Méthodes de scan
recon_scanning = PineappleMK7::Modules::Recon::Scanning.new
recon_scanning.start( (integer) scan_time )
recon_scanning.start_continuous( (boolean) autoHandshake )
recon_scanning.stop_continuous()
recon_scanning.output( (integer) scanID )
recon_scanning.tags( (object) ap )
recon_scanning.deauth_ap( (object) ap )
recon_scanning.delete( (integer) scanID )
Paramètres
Méthodes réseau
settings_networking = PineappleMK7::Modules::Settings::Networking.new
settings_networking.interfaces()
settings_networking.client_scan( (string) interface )
settings_networking.client_connect( (object) network, (string) interface )
settings_networking.client_disconnect( (string) interface )
settings_networking.recon_interface( (string) interface )