mirror of
https://github.com/bettercap/bettercap
synced 2025-08-20 05:23:19 -07:00
misc: small fix or general refactoring i did not bother commenting
This commit is contained in:
parent
6393dc1ea5
commit
d5fb7b6754
5 changed files with 28 additions and 13 deletions
|
@ -4,15 +4,22 @@ require("telegram")
|
||||||
var fakeESSID = random.String(16, 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
|
var fakeESSID = random.String(16, 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
|
||||||
var fakeBSSID = random.Mac()
|
var fakeBSSID = random.Mac()
|
||||||
|
|
||||||
|
function graph(who, where) {
|
||||||
|
// generates a .dot file with the graph for this mac
|
||||||
|
run('graph.to_dot ' + who);
|
||||||
|
// uses graphviz to make a png of it
|
||||||
|
run('!dot -Tpng bettergraph.dot > ' + where);
|
||||||
|
}
|
||||||
|
|
||||||
function onDeauthentication(event) {
|
function onDeauthentication(event) {
|
||||||
var data = event.data;
|
var data = event.data;
|
||||||
|
|
||||||
run('graph.to_dot ' + data.address1);
|
graph(data.address1, '/tmp/graph_deauth.png');
|
||||||
run('!dot -Tpng bettergraph.dot > /tmp/graph_deauth.png')
|
|
||||||
|
|
||||||
var message = '🚨 Detected deauthentication frame:\n\n' +
|
var message = '🚨 Detected deauthentication frame:\n\n' +
|
||||||
'Time: ' + event.time + "\n" +
|
// 'Time: ' + event.time + "\n" +
|
||||||
'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" + session.GPS.Updated.String() + "\n\n" +
|
// 'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" +
|
||||||
|
//session.GPS.Updated.String() + "\n\n" +
|
||||||
'RSSI: ' + data.rssi + "\n" +
|
'RSSI: ' + data.rssi + "\n" +
|
||||||
'Reason: ' + data.reason + "\n" +
|
'Reason: ' + data.reason + "\n" +
|
||||||
'Address1: ' + data.address1 + "\n" +
|
'Address1: ' + data.address1 + "\n" +
|
||||||
|
@ -27,12 +34,12 @@ function onDeauthentication(event) {
|
||||||
function onNewAP(event){
|
function onNewAP(event){
|
||||||
var ap = event.data;
|
var ap = event.data;
|
||||||
if(ap.hostname == fakeESSID) {
|
if(ap.hostname == fakeESSID) {
|
||||||
run('graph.to_dot ' + ap.mac);
|
graph(ap.mac, '/tmp/graph_ap.png');
|
||||||
run('!dot -Tpng bettergraph.dot > /tmp/graph_ap.png')
|
|
||||||
|
|
||||||
var message = '🚨 Detected possible rogue AP:\n\n' +
|
var message = '🚨 Detected possible rogue AP:\n\n' +
|
||||||
'Time: ' + event.time + "\n" +
|
// 'Time: ' + event.time + "\n" +
|
||||||
'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" + session.GPS.Updated.String() + "\n\n" +
|
// 'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" +
|
||||||
|
//session.GPS.Updated.String() + "\n\n" +
|
||||||
'AP: ' + ap.mac + ' (' + ap.vendor + ')';
|
'AP: ' + ap.mac + ' (' + ap.vendor + ')';
|
||||||
|
|
||||||
// send to telegram bot
|
// send to telegram bot
|
||||||
|
@ -45,8 +52,7 @@ function onHandshake(event){
|
||||||
var data = event.data;
|
var data = event.data;
|
||||||
var what = 'handshake';
|
var what = 'handshake';
|
||||||
|
|
||||||
run('graph.to_dot ' + data.station);
|
graph(data.station, '/tmp/graph_handshake.png');
|
||||||
run('!dot -Tpng bettergraph.dot > /tmp/graph_handshake.png')
|
|
||||||
|
|
||||||
if(data.pmkid != null) {
|
if(data.pmkid != null) {
|
||||||
what = "RSN PMKID";
|
what = "RSN PMKID";
|
||||||
|
@ -57,8 +63,9 @@ function onHandshake(event){
|
||||||
}
|
}
|
||||||
|
|
||||||
var message = '💰 Captured ' + what + ':\n\n' +
|
var message = '💰 Captured ' + what + ':\n\n' +
|
||||||
'Time: ' + event.time + "\n" +
|
//'Time: ' + event.time + "\n" +
|
||||||
'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" + session.GPS.Updated.String() + "\n\n" +
|
//'GPS: lat=' + session.GPS.Latitude + " lon=" + session.GPS.Longitude + " updated_at=" +
|
||||||
|
//session.GPS.Updated.String() + "\n\n" +
|
||||||
'Station: ' + data.station + "\n" +
|
'Station: ' + data.station + "\n" +
|
||||||
'AP: ' + data.ap;
|
'AP: ' + data.ap;
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,6 @@ function sendMessage(message) {
|
||||||
|
|
||||||
function sendPhoto(path) {
|
function sendPhoto(path) {
|
||||||
var url = 'https://api.telegram.org/bot' + telegramToken + '/sendPhoto';
|
var url = 'https://api.telegram.org/bot' + telegramToken + '/sendPhoto';
|
||||||
var cmd = 'curl -s -X POST "' + url + '" -F chat_id=' + telegramChatId + ' -F photo="@' + path + '"';
|
var cmd = 'curl -s -X POST "' + url + '" -F chat_id=' + telegramChatId + ' -F photo="@' + path + '" > /dev/null';
|
||||||
run("!"+cmd);
|
run("!"+cmd);
|
||||||
}
|
}
|
|
@ -7,6 +7,9 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func (mod *Module) generateDotGraph(bssid string) error {
|
func (mod *Module) generateDotGraph(bssid string) error {
|
||||||
|
mod.wLock.Lock()
|
||||||
|
defer mod.wLock.Unlock()
|
||||||
|
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
if err := mod.updateSettings(); err != nil {
|
if err := mod.updateSettings(); err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -7,6 +7,9 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func (mod *Module) generateJSONGraph(bssid string) error {
|
func (mod *Module) generateJSONGraph(bssid string) error {
|
||||||
|
mod.wLock.Lock()
|
||||||
|
defer mod.wLock.Unlock()
|
||||||
|
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
if err := mod.updateSettings(); err != nil {
|
if err := mod.updateSettings(); err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
@ -10,6 +10,7 @@ import (
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"regexp"
|
"regexp"
|
||||||
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -46,6 +47,7 @@ type Module struct {
|
||||||
gw *Node
|
gw *Node
|
||||||
iface *Node
|
iface *Node
|
||||||
eventBus session.EventBus
|
eventBus session.EventBus
|
||||||
|
wLock sync.Mutex
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewModule(s *session.Session) *Module {
|
func NewModule(s *session.Session) *Module {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue