Gauntlet Docs

Overview New Project Wizard Project Dashboard Summary Tab Testing / Console Findings Tab Evidence Tab Targets Testing Modules Multi-Device Collaboration Mobile Companion Export & Import Themes
← Back to Gauntlet

Mobile Companion

Multi-device collaboration via QR codes, mobile photo capture, and real-time synchronization for hardware testing.

Overview

The Mobile Companion is Gauntlet's multi-device collaboration feature. Hardware security testing often requires the tester to be physically at the device while simultaneously managing the software assessment on a separate machine. The companion allows a phone or tablet to join a Gauntlet session for photo capture and status monitoring.

How to Join

Three methods to connect a mobile device to a Gauntlet project:

QR Code (recommended) primary
When Gearbox starts or when a photo prompt appears, QR codes are displayed on the Testing tab. One QR code is generated per network interface on the testing machine. Scan any reachable QR with your phone's camera to open the companion join page.
Direct URL secondary
Navigate to https://<testing-machine-ip>:<port>/join/<project_id> in the mobile browser. The port defaults to 5600. Accept the self-signed certificate warning.
Project QR from Summary secondary
The Summary tab also provides a join QR code that can be scanned at any time, not just during active testing.

Join Page

The join page (/join/<project_id>) is a mobile-optimized view that shows:

  • Project name and device under test
  • All interfaces configured in the project
  • Camera capture button for the currently requested photo module
  • Upload status and confirmation

The join page uses SocketIO to stay synchronized with the main Gauntlet session. When the tester triggers a new photo module on the desktop, the companion page automatically updates to show which photo is needed next.

Photo Capture Flow

  1. Gearbox reaches a photo module (e.g., "Photo" for Ethernet eth0)
  2. A __GB_PROMPT__ token arrives at Gauntlet with the photo context (sub-device, interface, instance, module)
  3. Gauntlet stores the photo context and renders a QR/prompt on the Testing tab
  4. The companion device (already joined or newly scanning the QR) sees the camera view for that specific module
  5. The tester takes the photo on the mobile device
  6. The photo uploads via POST /upload_photo with the project ID and instance context
  7. Gauntlet saves the photo to the correct evidence directory and sends the answer back to Gearbox's stdin
  8. Gearbox proceeds to the next module

Multi-Device Synchronization

All connected devices (desktop browser and any mobile companions) stay synchronized via SocketIO rooms. Events broadcast to the project room include:

EventEffect
gearbox_startedAll devices show the active assessment state
gearbox_outputConsole output streams to all connected views
gearbox_findingNew findings appear on all devices instantly
photo_uploadedPhoto confirmation appears on both desktop and mobile
gearbox_stoppedAll devices reflect the stopped state

Network Requirements

The mobile device must be on the same network (or have routing to) the testing machine. Gauntlet runs over HTTPS with a self-signed certificate, so mobile browsers will show a certificate warning on first connection — accept it to proceed. The per-interface QR codes ensure the mobile device gets a URL with an IP address it can actually reach.

← Multi-Device Collaboration
Export & Import →