Skip to content

Commit 7c0e205

Browse files
committed
feat: PhantomKit v1.2.0 - auth, real probe sniffer, unicast deauth, webhooks, NTP, stealth mode and CI
Change 1 - GitHub Actions CI: - .github/workflows/build.yml: compile firmware on every push/PR - CI badge in README.md and README.es.md Change 2 - NTP real timestamps: - main.cpp: uplink WiFi AP+STA mode, NTP sync on boot - config.h: UPLINK_SSID/PASSWORD, NTP_SERVER, NTP_OFFSET/DST defines - credential_store.cpp: formatTimestamp() uses wall-clock time when NTP synced - main.cpp: getTimestamp() shared helper with same NTP-aware logic Change 3 - Stealth Mode: - config.h: STEALTH_MODE define - ap_manager.h/.cpp: setStealthMode() uses SDK softap_config.ssid_hidden - web_server.cpp: POST /api/stealth endpoint, Ajustes tab with toggle button Change 4 - Dashboard Auth: - config.h: DASHBOARD_PASSWORD define - web_server.h/.cpp: session token, /login GET/POST, /logout, isAuthenticated() - All /dashboard and /api/* routes require valid session cookie - Logout button in header Change 5 - Real Probe Sniffer: - probe_sniffer.cpp: IRAM_ATTR callback probePromiscCb() parses 802.11 frames - Extracts Source MAC (buf[46..51]), SSID tag (buf[60+]), RSSI from RxControl - wifi_promiscuous_enable(1) on start, disable on stop - Dashboard shows device table: MAC, sought SSIDs, RSSI - GET /api/probe/devices returns live device JSON Change 6 - Deauth unicast: - deauth.h/.cpp: clientMACs list, parseBSSID(), scanClients() - scanClients() uses IRAM_ATTR callback to detect associated clients - update() sends unicast AP->Client and Client->AP deauths + broadcast fallback - 800ms passive scan window before each attack Change 7 - Webhooks (notifier): - notifier.h/.cpp: NotifierModule with HTTP POST to ntfy.sh or generic endpoint - Config persisted in /notify.cfg on LittleFS - credential_store.cpp: notifier.notify() called on every capture - Dashboard Ajustes tab: URL/topic fields, Guardar and Probar buttons - POST /api/notify with action=save or action=test
1 parent 804740d commit 7c0e205

33 files changed

Lines changed: 845 additions & 115 deletions

.github/workflows/build.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Build Firmware
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
build:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Checkout repository
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: '3.11'
21+
22+
- name: Install PlatformIO
23+
run: pip install platformio
24+
25+
- name: Cache PlatformIO packages
26+
uses: actions/cache@v4
27+
with:
28+
path: ~/.platformio
29+
key: ${{ runner.os }}-platformio-${{ hashFiles('platformio.ini') }}
30+
restore-keys: |
31+
${{ runner.os }}-platformio-
32+
33+
- name: Compile firmware
34+
run: pio run
-2.41 KB
Binary file not shown.

.pio/build/nodemcuv2/firmware.bin

18.7 KB
Binary file not shown.

.pio/build/nodemcuv2/firmware.elf

58.8 KB
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)