Merge branch 'master' of https://github.com/evilsocket/pwnagotchi
This commit is contained in:
commit
cd78b32a53
54
README.md
54
README.md
@ -153,7 +153,59 @@ Now you can use the `preview.py`-script to preview the changes:
|
|||||||
|
|
||||||
Pwnagotchi has a simple plugins system that you can use to customize your unit and its behaviour. You can place your plugins anywhere
|
Pwnagotchi has a simple plugins system that you can use to customize your unit and its behaviour. You can place your plugins anywhere
|
||||||
as python files and then edit the `config.yml` file (`main.plugins` value) to point to their containing folder. Check the [plugins folder](https://github.com/evilsocket/pwnagotchi/tree/master/sdcard/rootfs/root/pwnagotchi/scripts/pwnagotchi/plugins/default/) for a list of default
|
as python files and then edit the `config.yml` file (`main.plugins` value) to point to their containing folder. Check the [plugins folder](https://github.com/evilsocket/pwnagotchi/tree/master/sdcard/rootfs/root/pwnagotchi/scripts/pwnagotchi/plugins/default/) for a list of default
|
||||||
plugins and all the callbacks that you can define for your own customizations.
|
plugins and all the callbacks that you can define for your own customizations.
|
||||||
|
|
||||||
|
Here's as an example the GPS plugin:
|
||||||
|
|
||||||
|
```python
|
||||||
|
__author__ = 'evilsocket@gmail.com'
|
||||||
|
__version__ = '1.0.0'
|
||||||
|
__name__ = 'gps'
|
||||||
|
__license__ = 'GPL3'
|
||||||
|
__description__ = 'Save GPS coordinates whenever an handshake is captured.'
|
||||||
|
__enabled__ = True # set to false if you just don't use GPS
|
||||||
|
|
||||||
|
import core
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
|
||||||
|
device = '/dev/ttyUSB0'
|
||||||
|
speed = 19200
|
||||||
|
running = False
|
||||||
|
|
||||||
|
|
||||||
|
def on_loaded():
|
||||||
|
core.log("GPS plugin loaded for %s" % device)
|
||||||
|
|
||||||
|
|
||||||
|
def on_ready(agent):
|
||||||
|
global running
|
||||||
|
|
||||||
|
if os.path.exists(device):
|
||||||
|
core.log("enabling GPS bettercap's module for %s" % device)
|
||||||
|
try:
|
||||||
|
agent.run('gps off')
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
agent.run('set gps.device %s' % device)
|
||||||
|
agent.run('set gps.speed %d' % speed)
|
||||||
|
agent.run('gps on')
|
||||||
|
running = True
|
||||||
|
else:
|
||||||
|
core.log("no GPS detected")
|
||||||
|
|
||||||
|
|
||||||
|
def on_handshake(agent, filename, access_point, client_station):
|
||||||
|
if running:
|
||||||
|
info = agent.session()
|
||||||
|
gps = info['gps']
|
||||||
|
gps_filename = filename.replace('.pcap', '.gps.json')
|
||||||
|
|
||||||
|
core.log("saving GPS to %s (%s)" % (gps_filename, gps))
|
||||||
|
with open(gps_filename, 'w+t') as fp:
|
||||||
|
json.dump(gps, fp)
|
||||||
|
```
|
||||||
|
|
||||||
### Random Info
|
### Random Info
|
||||||
|
|
||||||
|
@ -9,5 +9,3 @@ if ifconfig | grep usb0 | grep RUNNING; then
|
|||||||
else
|
else
|
||||||
sudo -H -u root /usr/bin/screen -dmS pwnagotchi -c /root/pwnagotchi/data/screenrc.auto
|
sudo -H -u root /usr/bin/screen -dmS pwnagotchi -c /root/pwnagotchi/data/screenrc.auto
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user