
Modulares WLAN-Audit-Framework für Red Teams mit Modulen für Deauthentifizierung, Rogue-AP und WPA-Handshake-Erfassung. Bietet eine Metasploit-ähnliche CLI für Aufklärung und Ausnutzung drahtloser Netzwerke.
Pinecone ist ein Werkzeug zur Überprüfung von WLAN-Netzwerken, geeignet für den Einsatz im Red Team. Es ist über Module erweiterbar und wurde für den Betrieb auf Debian-basierten Betriebssystemen entwickelt. Pinecone ist speziell für den Einsatz mit einem Raspberry Pi als tragbare drahtlose Überprüfungsbox ausgelegt.
Dieses Tool ist ausschließlich für Bildungs- und Forschungszwecke bestimmt. Verwenden Sie es nur mit ausdrücklicher Genehmigung.
Um Pinecone auszuführen, benötigen Sie ein Debian-basiertes Betriebssystem (getestet wurde es auf Raspbian, Raspberry Pi Desktop und Kali Linux). Pinecone hat die folgenden Anforderungen:
apt-get install python3 installiert werden.apt-get install dnsmasq installiert werden.apt-get install hostapd-wpe installiert werden. Falls Ihr Distributions-Repository kein hostapd-wpe-Paket enthält, können Sie versuchen, es entweder mit einem vorcompilierten Paket aus dem Kali Linux Repository zu installieren, oder es aus dem Quellcode zu kompilieren.Nach der Installation der erforderlichen Pakete können Sie die Python-Paketanforderungen für Pinecone mit pip3 install -r requirements.txt im Projektstammverzeichnis installieren.
Um Pinecone zu starten, führen Sie python3 pinecone.py innerhalb des Projektstammverzeichnisses aus:
root@kali:~/pinecone# python pinecone.py
[i] Database file: ~/pinecone/db/database.sqlite
pinecone >
Pinecone wird über eine Metasploit-ähnliche Befehlszeilenschnittstelle gesteuert. Sie können help eingeben, um eine Liste der verfügbaren Befehle zu erhalten, oder help 'Befehl', um weitere Informationen zu einem bestimmten Befehl zu erhalten:
pinecone > help
Documented commands (type help <topic>):
========================================
alias help load pyscript set shortcuts use
edit history py quit shell unalias
Undocumented commands:
======================
back run stop
pinecone > help use
Usage: use module [-h]
Interact with the specified module.
positional arguments:
module module ID
optional arguments:
-h, --help show this help message and exit
Verwenden Sie den Befehl use 'ModuleID', um ein Pinecone-Modul zu aktivieren. Sie können die Tabulator-Autovervollständigung verwenden, um die Liste der aktuell geladenen Module zu sehen:
pinecone > use
attack/deauth daemon/hostapd-wpe report/db2json scripts/infrastructure/ap
daemon/dnsmasq discovery/recon scripts/attack/wpa_handshake
pinecone > use discovery/recon
pcn module(discovery/recon) >
Jedes Modul hat Optionen, die durch Eingabe von help run oder run --help angezeigt werden können, wenn ein Modul aktiviert ist. Die meisten Module haben Standardwerte für ihre Optionen (überprüfen Sie diese vor dem Ausführen):
pcn module(discovery/recon) > help run
usage: run [-h] [-i INTERFACE]
optional arguments:
-h, --help show this help message and exit
-i INTERFACE, --iface INTERFACE
monitor mode capable WLAN interface (default: wlan0)
Wenn ein Modul aktiviert ist, können Sie den Befehl run [Optionen...] verwenden, um seine Funktionalität zu starten. Die Module geben Rückmeldung über ihren Ausführungsstatus:
pcn script(attack/wpa_handshake) > run -s TEST_SSID
[i] Sending 64 deauth frames to all clients from AP 00:11:22:33:44:55 on channel 1...
................................................................
Sent 64 packets.
[i] Monitoring for 10 secs on channel 1 WPA handshakes between all clients and AP 00:11:22:33:44:55...
Wenn das Modul im Hintergrund läuft (z. B. scripts/infrastructure/ap), können Sie es mit dem Befehl stop anhalten, während das Modul läuft:
pcn script(infrastructure/ap) > run
net.ipv4.ip_forward = 1
[i] Creating NAT rules in iptables for forwarding wlan0 -> eth0...
[i] Starting hostapd-wpe and dnsmasq...
Configuration file: ~/pinecone/tmp/hostapd-wpe.conf
Using interface wlan0 with hwaddr 00:11:22:33:44:55 and ssid "PINECONEWIFI"
wlan0: interface state UNINITIALIZED->ENABLED
wlan0: AP-ENABLED
pcn script(infrastructure/ap) > stop
[i] Stopping hostapd-wpe and dnsmasq...
net.ipv4.ip_forward = 0
[i] Flushing NAT table in iptables...
Wenn Sie mit einem Modul fertig sind, können Sie es mit dem Befehl back deaktivieren. Sie können auch ein anderes Modul aktivieren, indem Sie erneut den Befehl use eingeben.
Shell-Befehle können mit dem Befehl shell oder der Tastenkombination ! ausgeführt werden:
pinecone > !ls
LICENSE modules module_template.py pinecone pinecone.py README.md requirements.txt TODO.md
Derzeit wird die Pinecone-Aufklärungs-SQLite-Datenbank im Verzeichnis db/ innerhalb des Projektstammverzeichnisses gespeichert. Alle temporären Dateien, die Pinecone benötigt, werden im Verzeichnis tmp/ ebenfalls im Projektstammverzeichnis gespeichert.