Back to skill

Security audit

TM Robot Control

Security checks for vulnerabilities and agentic risk

Overview

This is a real robot-control skill whose core purpose is coherent, but several included commands and examples can move physical hardware or actuate outputs without adequate safety gating or clear warnings.

Install only if you are trained to operate the target OMRON TM robot and can test on an isolated control network with the robot work area clear, emergency stop available, and speed/tooling limits verified. Review or remove the live-motion scripts before use, add confirmation or dry-run gates, and do not treat the provided reset_alarm or camera trigger helpers as validated safety interlocks.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (35)

Intent-Code Divergence

Medium
Confidence
95% confidence
Finding
The script labels J3=90° and J5=90° as a 'safe position', but the implemented checks are informational only and do not prevent motion when the robot is outside that state. In a physical robot-control context, this can mislead an operator into believing interlocks exist when the program will still command movement, increasing the risk of collision, unexpected motion, or equipment/personnel harm.

Intent-Code Divergence

Medium
Confidence
93% confidence
Finding
`trigger_capture()` advertises that it triggers a photo capture, but it performs no camera or robot action and still returns `True`. In automation code, this can create a false success condition that causes downstream logic to act on stale or absent vision data, leading to incorrect robot behavior or unsafe physical actions in an industrial environment.

Intent-Code Divergence

Medium
Confidence
95% confidence
Finding
`reset_alarm` is documented and exposed as an alarm reset, but its implementation only calls `stop_motion()`. In an industrial robotics context, this mismatch can mislead operators or higher-level automation into believing a fault has been cleared when it has not, causing unsafe recovery logic, repeated failed actions, or improper restart procedures.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The document provides copyable examples for networked robot motion and emergency-control functions without any prominent physical safety warning, operating prerequisites, or workspace hazard notice. In the context of industrial/collaborative robot control, omission of these warnings can lead users to execute movement commands in unsafe conditions, risking injury, collisions, or equipment damage.

Missing User Warnings

Low
Confidence
83% confidence
Finding
The release note shows direct connection to a robot over an IP address and describes reading state and sending commands, but omits any warning about network exposure, authentication assumptions, or the sensitivity of telemetry and control channels. In robot-control context, undocumented network trust assumptions can encourage unsafe deployment on flat or shared networks, increasing the chance of unauthorized access or unintended command transmission.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The README documents commands that can move a physical robot and actuate outputs, but it does not provide an explicit safety warning, preconditions, or lockout guidance before demonstrating motion commands such as homing and stop/control operations. In an industrial robotics context, omission of safety instructions can lead to unsafe operation, collision, pinch hazards, or unexpected energizing of tooling, so this is a real safety/security issue rather than a purely documentation concern.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
This release note includes runnable examples for robot motion, emergency stop, and alarm reset in a physical robotics context without any prominent safety warning, precondition checklist, or simulation-first guidance. In an industrial robot skill, omission of operator safety guidance can contribute to unsafe execution, unintended movement, collision, or clearing alarms without proper verification, making this a real safety-relevant vulnerability in documentation.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
This skill documents robot motion, safety functions, and emergency-stop/alarm-reset capabilities without any warning about physical hazards, restricted operation zones, or the need to test in a safe environment. In the context of collaborative robot control, omission of safety guidance can directly contribute to unsafe deployment or misuse that may cause injury, collisions, or equipment damage.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
This report documents robot motion control, digital output control, emergency stop, and alarm reset behavior, but it does not include a clear operator-facing safety warning, prerequisite safeguards, or lockout/verification guidance. In an industrial robot context, publishing operational guidance without explicit safety constraints can contribute to unsafe deployment or misuse, especially where DO may actuate external equipment and motion commands can create physical hazards.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The document explicitly instructs users to enable external write access to the robot controller ('写入允许') without any accompanying warning about authentication, network isolation, authorization, or operational safety constraints. In the context of industrial robot control, exposing write capability can allow unauthorized state changes or unsafe motion-related variable manipulation, creating both cybersecurity and physical safety risk.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
This example issues real robot joint-motion commands without any explicit safety interlock, operator warning, workspace-clearance check, or confirmation step. In a robotics context, sample code is often copied directly into production or test environments, so omitting movement-risk warnings and guardrails can contribute to unintended physical motion, collision, or operator injury.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
This linear-motion example reads the current pose and then commands a 100 mm Z-axis move without warning the user that physical motion will occur or verifying that the path is safe. Because the code targets an actual robot controller API, a user running the example as-is could trigger unexpected movement into tooling, fixtures, or people nearby.

Missing User Warnings

High
Confidence
95% confidence
Finding
This demo issues real robot motion commands, including homing and joint moves, without any explicit operator safety warning, confirmation gate, workspace validation, or simulation-only safeguard. In a robotics context, omitted safety messaging and interlocks materially increase the risk of unintended physical movement causing injury, collisions, or equipment damage when a user runs the example against a live controller.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The example toggles a digital output on a live robot controller without warning that connected tooling, fixtures, or external machinery may activate. Because digital outputs often drive relays, grippers, valves, or downstream automation, running this demo could unexpectedly energize equipment and create safety or process hazards.

Missing User Warnings

High
Confidence
97% confidence
Finding
The full demo combines state monitoring, robot motion, and digital output actuation in one workflow against a live robot IP, but does not present any integrated safety notice or staged confirmation before performing hazardous actions. Combining movement and I/O increases operational risk because both the robot and attached equipment may change state during one run, amplifying the chance of injury or damage if executed in a production cell or uncontrolled environment.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The script directly opens and overwrites a Python source file on disk with no confirmation, backup, atomic write, or path validation. Even though the apparent purpose is a simple indentation fix, this behavior can unintentionally corrupt source code, destroy user changes, or modify the wrong file if the hardcoded path is stale or abused in a broader workflow.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The script unconditionally opens and overwrites a hard-coded Python source file in the user's workspace with no backup, validation, or confirmation. In an agent/skill context, automatic source-file modification is risky because a malformed replacement or unexpected path state can corrupt code, break the skill, or overwrite unintended local files if the environment is different than expected.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The script connects directly to a robot controller and immediately issues a relative motion command as soon as it is run, with no operator confirmation, interlock check, workspace validation, or simulation/dry-run step. In a robotics context, unprompted physical motion is inherently safety-sensitive because accidental execution, wrong frame assumptions, or unexpected surroundings can cause collisions, equipment damage, or human injury.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The test script issues a real robot motion command (`move_joints_zero`) as part of an automated test flow without an explicit safety interlock, operator confirmation, simulation-only mode, or environment check. In a robotics context, test code that can trigger physical movement is dangerous because it may cause unexpected motion, equipment collision, or human injury if run in a live environment.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The script invokes reset_alarm() immediately after the emergency-stop test without any explicit operator confirmation, safety interlock check, or warning. In an industrial robot context, alarm reset can clear a protective stop or fault state and may enable subsequent motion before a human has verified the cell is safe, making this materially risky.

Missing User Warnings

High
Confidence
97% confidence
Finding
This script issues real robot motion commands immediately after connecting, with no operator confirmation, interlock check, dry-run mode, or explicit safety warning before physical movement. In a robotics context this is dangerous because accidental execution can cause unexpected arm motion, collisions, equipment damage, or human injury, especially since the script chains multiple movements automatically.

Missing User Warnings

High
Confidence
97% confidence
Finding
The script issues an arc motion command directly to a physical robot without any operator confirmation, interlock check, workspace validation, or emergency-stop reminder. In a robotics context this is dangerous because movement begins immediately and could cause collision, pinching, or injury if the robot is not in a verified safe state.

Missing User Warnings

High
Confidence
97% confidence
Finding
The linear move command is executed immediately to a hard-coded target pose with no confirmation, no reachability/collision checks, and no disclosure that the robot will move in physical space. Because this is test code controlling real hardware over the network, an unsuspecting user could trigger hazardous motion that damages equipment or injures nearby personnel.

Missing User Warnings

High
Confidence
95% confidence
Finding
Labeling a joint target as a 'safe position' does not make it universally safe; the script commands that motion without confirming the current environment, payload, fixtures, or human presence. This can create a false sense of safety and cause hazardous motion if the assumed safe pose is unsafe for the current installation.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The script connects to a physical robot and issues a movement command immediately using coordinates derived from the current pose, without any operator confirmation, interlock check, workspace validation, or safety warning. In a real robot environment, unexpected motion can create collision, pinch, or impact hazards for nearby people and equipment, so the test-script context makes this more dangerous rather than less.

Static analysis

No suspicious patterns detected.