GPS Spoofing and Disruption

Description

Attacking drone navigation through GPS manipulation.

Lua Implementation

-- Task: GPS Spoofing and Disruption
-- Operation: Counter-Drone Operations (C-UAS) (AIR DOMAIN)
-- Refactored to use TaskRunner

local TaskRunner = require("TaskRunner")

local config = {
    subtasks = {"AnalyzeGPSDependence", "GenerateSpoofSignal", "TransmitSpoof", "MonitorEffect"},
    timeoutSeconds = 300,
    flags = {
        activateSensors = true,
        captureTargetLocation = false,
        enableParallelSensing = true,
        requireAmmoForEngagement = true,
        requireEngagementAuth = true,
        enableAttackFallback = true,
        sendStartReport = false,
        sendFallbackReport = false,
        requestSupport = true,
        sendCompletionReport = false,
        fallbackWaitSeconds = 30
    }
}

return TaskRunner.create(config)
14 actions (clickable in blue) 18 predicates (clickable in green)

Behavior Tree

Open full view
  • sequence TaskRoot
    • sequence PreChecks
      • conditional IsOperational cond: IsOperational
      • conditional HasFuel cond: HasFuel
      • conditional HasAmmo cond: HasAmmo
    • parallel SenseAndExecute
      • task ActivateSensors action: ActivateSensors
      • sequence Execution
        • selector EngageOrFallback
          • sequence EngagementSequence
            • conditional CanEngage cond: CanEngage
            • task EngageTarget action: EngageTarget
          • sequence FallbackSequence
            • send RequestSupport
            • task HoldPosition action: Wait
        • sequence SubtaskSequence
          • task AnalyzeGPSDependence Subtask #271
          • task GenerateSpoofSignal Subtask #272
          • task TransmitSpoof Subtask #273
          • task MonitorEffect Subtask #274

Sub-task Records

  • AnalyzeGPSDependence - Assess drone GPS use
  • GenerateSpoofSignal - Create false GPS
  • TransmitSpoof - Broadcast false position
  • MonitorEffect - Observe drone deviation

Parameters

No parameters defined yet.

Outputs

No outputs defined yet.

Manage Primitives