Back to skill

Security audit

aut-grade-checker

Security checks for vulnerabilities and agentic risk

Overview

This is a simple local Python decision-support CLI for vehicle driving automation level classification, with no persistence, credential access, or hidden network execution.

Installers should understand that this is a decision-support classifier, not legal or regulatory proof. Verify outputs against the current official GB/T 40429 text and expect Chinese CLI/documentation strings.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
The natural-language content presented to users is effectively fixed to Chinese, including the title, warnings, usage explanations, FAQ, and surrounding documentation. The policy forbids forcing a specific language without user opt-in unless the locale constraint is clearly documented and justified, which is not present here.

Natural-Language Policy Violations

Medium
Confidence
90% confidence
Finding
This code file contains user-facing descriptions, errors, and output strings exclusively in Chinese, including the module docstring and CLI/help text. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale restriction is explicitly documented and justified.

Dynamic attribute access via getattr()

Low
Category
Dangerous Code Execution
Content
out_list.append({"tool": META["slug"], "input": d, "errors": [str(e)], "rc": 2, "aigc_mark": AIGC})
        print(json.dumps(out_list, ensure_ascii=False, indent=2))
        sys.exit(0 if allok else 2)
    args = {k: getattr(ns, k) for k in argnames}
    try:
        res, rc = _run(args)
    except GateError as e:
Confidence
50% confidence
Finding
Dynamic getattr() with a non-literal attribute name can access arbitrary object attributes, potentially bypassing access controls.

Static analysis

No suspicious patterns detected.