# Pineapple MK7 REST Client | WiFi Hacking Workflow With Pineapple Mark 7 API

**URL:** <https://onehack.st/t/pineapple-mk7-rest-client-wifi-hacking-workflow-with-pineapple-mark-7-api/177270>\
**Category:** Tools & Scripts\
**Tags:** hacking, freebies, technology\
**Created:** [April 1, 2021, 10:59am UTC](https://onehack.st/t/pineapple-mk7-rest-client-wifi-hacking-workflow-with-pineapple-mark-7-api/177270 "2021-04-01T10:59:42Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![NoBody](https://onehack.st/user_avatar/onehack.st/nobody/32/163880_2.png) [@NoBody](https://onehack.st/u/NoBody)\
**Post date:** [April 1, 2021, 10:59am UTC](https://onehack.st/t/pineapple-mk7-rest-client-wifi-hacking-workflow-with-pineapple-mark-7-api/177270/1 "2021-04-01T10:59:42Z")

</div>

![image](https://onehack.st/uploads/default/original/3X/7/c/7cddfcabf6463c0808cf321f218c1fabb0fdeb50.png)

# PINEAPPLE MARK VII 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.1.3
> 
> **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](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, net-ssh 6.1.0 gem and Pineapple Mark VII Firmware \<= 1.0.2-stable
> 
> **Installation** ::
> 
> - sudo apt-get install ruby ruby-dev
> - sudo gem install rest-client net-ssh

## Usage

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

[![recon-v1.0.4.png](https://github.com/TW-D/Pineapple-MK7-REST-Client/raw/master/samples/images/recon-v1.0.4.png)](https://github.com/TW-D/Pineapple-MK7-REST-Client/blob/master/samples/images/recon-v1.0.4.png)

## System Authentication accessors/method

system = PineappleMK7::System.new()

```auto
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) "P@55w0rD"
system.login()

```

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

**login()** method return boolean

## System LED methods

system.setup() # Magenta solid system.failed() # Red slow blink system.attack() # Yellow single blink system.special() # Cyan inverted single blink system.cleanup() # White fast blink system.finish() # Green very fast blink followed by SOLID system.off() # Turns the LED off

## Modules

### Module Recon methods

recon = PineappleMK7::Modules::Recon

```auto
recon.startScan( (integer) seconds ) # 0 = Continuous
recon.stopScan()
recon.getResults( (integer) scanID )
recon.convertEncryption( (integer) encryption() )
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 :

```auto
ssid()
bssid()
encryption() # return bitmask
hidden()
wps()
channel()
signal()
clients() -> client_mac(), ap_mac() and ap_channel()

```

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

```auto
client_mac()
ap_mac()
ap_channel()

```

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

```auto
client_mac()
ap_mac()
ap_channel()

```

### Module PineAP methods

pineAP = PineappleMK7::Modules::PineAP

```auto
# Clients
pineAP.getClients()

# Deauth
pineAP.deauthAP( (string) bssid, (integer) channel, (array) clients )
pineAP.deauthClient( (string) bssid, (integer) channel, (string) mac )

# Filters
pineAP.filterClient( (string "allow" or "deny") mode )
pineAP.filterSSID( (string "allow" or "deny") mode )

# Handshakes
pineAP.startHandshakesCapture( (hash/object) ap )
pineAP.getHandshakes()
pineAP.stopHandshakesCapture()

# Logging
pineAP.clearActivity()

# Settings
pineAP.enable()
pineAP.setRogue()
pineAP.disable()

# SSIDs
pineAP.addSSID( (string) ssid )
pineAP.clearPool()

```

**getHandshakes()** method have _handshakes()_ submethod return array of objects where object have :

```auto
type()
bssid()

```

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

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

```

### Module Notifications method

notifications = PineappleMK7::Modules::Notifications

```auto
notifications.clearAll()

```

### Module Download method

download = PineappleMK7::Modules::Download

```auto
download.handshake( (string) bssid, (string) type(), (string) destination )

```

### Module Helpers method

helpers = PineappleMK7::Modules::Helpers

**lookupOUI( (string) mac )** method return object with :

```auto
available()
vendor()

```

## GitHub:

> **[GitHub - TW-D/WiFi-Pineapple-MK7\_REST-Client: WiFi Hacking Workflow with WiFi Pineapple Mark VII...](https://github.com/TW-D/WiFi-Pineapple-MK7_REST-Client)**
>
> WiFi Hacking Workflow with WiFi Pineapple Mark VII API
