-->

Pineapple-MK7-REST-Client - WiFi Hacking Workflow With Pineapple Mark 7 API


PINEAPPLE MK7 REST CLIENT
  • The leading rogue access point and WiFi pentest toolkit for close access operations.
  • Passive and active attacks analyze vulnerable and misconfigured devices.
  • @HAK5

Author:: TW-D

Version:: 1.0.2

Copyright:: Copyright (c) 2021 TW-D

License:: Distributes under the same terms as Ruby

Doc:: https://docs.hak5.org/hc/en-us/articles/360049854174-WiFi-Pineapple-Mark-VII-REST-API

Requires:: ruby >= 2.7.0, rest-client 2.1.0 gem and Pineapple MK7 Firmware 1.0.1

Installation::

  • sudo apt-get install ruby ruby-dev

  • sudo gem install rest-client


Usage

See/edit/execute the files in the samples/ folder



System Authentication accessors/method
system = PineappleMK7::System.new()
system.host = (string) "172.16.42.1"system.host()system.port = (string) "1471"system.port()system.mac = (string) "00:13:37:DD:EE:FF"system.mac()system.password = (string) "[email protected]"system.login()

host(), port() and mac() accessors return string

login() method return boolean


Modules

Module Recon methods
recon = PineappleMK7::Modules::Recon
recon.startScan( (integer) time )recon.getResults( (integer) scanID )recon.deleteScan( (integer) scanID )

startScan method have scanID() submethod and return integer

getResults method have APResults(), UnassociatedClientResults() and OutOfRangeClientResults() submethods

APResults() submethod return array of objects where object have :

ssid()bssid()encryption()hidden()wps()channel()signal()clients() -> client_mac(), ap_mac() and ap_channel()

UnassociatedClientResults() submethod return array of objects where object have :

client_mac()ap_mac()ap_channel()

OutOfRangeClientResults() submethod return array of objects where object have :

client_mac()ap_mac()ap_channel()

Module PineAP methods
pineAP = PineappleMK7::Modules::PineAP
pineAP.enable()pineAP.startHandshakesCapture( (hash/object) ap )pineAP.deauthAP( (string) bssid, (integer) channel, (array) clients )pineAP.deauthClient( (string) bssid, (integer) channel, (string) mac )pineAP.stopHandshakesCapture()pineAP.getHandshakes()pineAP.filterClient( (string "allow" or "deny") mode )pineAP.filterSSID( (string "allow" or "deny") mode )pineAP.addSSID( (string) ssid )pineAP.clearPool()pineAP.setRogue()pineAP.getClients()pineAP.disable()

getHandshakes() method have handshakes() submethod return array of objects where object have :

type()bssid()

getClients() method return array of objects where object have :

mac()ip()hostname()ssid()tx_bytes()rx_bytes()

Module Notifications method
notifications = PineappleMK7::Modules::Notifications
notifications.clearAll()

Module Download method
download = PineappleMK7::Modules::Download
download.handshake( (string) bssid, (string) type, (string) destination )


Disqus Comments