Back to skill

Security audit

Technical File STED Expert(医械技术文件STED专家)

Security checks for vulnerabilities and agentic risk

Overview

This skill provides medical-device documentation guidance, with no harmful execution behavior found, although its bundled security assurances are unreliable.

Use this as a drafting aid and verify current requirements with official regulators. Do not treat its bundled audit, scores, or ownership hashes as security certification: they contain inconsistencies. The optional checker overwrites security_results.json in the directory you select. All bundled files were inspected, resolving the scanner's material coverage gap.

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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (4)

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

Scanner excerpt · 安全审计报告.md (reported line 28)May include surrounding context.

md
| 风险维度 | 检查结果 | 判定 |
|---|---|---|
| 命令执行 | 包内无任何自动执行的脚本命令(curl/wget/bash/pip/npm 均 0 命中) | ✅ 无风险 |
| 远程脚本下载执行 | 无 `curl \| bash`、base64 解码执行等模式 | ✅ 无风险 |
| 网络请求 | 外链全部指向官方域(erps.cmde.org.cn / eur-lex.europa.eu / health.ec.europa.eu / www.cmde.org.cn / www.ecfr.gov / www.fda.gov / www.imdrf.org / www.pmda.go.jp),无任何自动网络行为 | ✅ 无风险 |
| 文件系统操作 | 无删除/移动/写盘指令 | ✅ 无风险 |
| 凭据访问 | 无读取 API key / token / 环境变量行为;敏感扫描 0 命中 | ✅ 无风险 |

Skill declares no tool scope ('permissions' or 'allowed-tools') but code capabilities were detected: file_read, file_write.

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding

Without declared permissions the skill's intent is opaque and cannot be validated.

Content

No source excerpt is available for this finding.

The package-cleanliness check excludes caches while reporting that no caches are present.

Medium
Category
Excessive Agency
Confidence
98% confidence
Finding

The package-cleanliness check explicitly skips pycache entries but can still report that no caches or binaries exist. This creates a security-assurance blind spot that could let unwanted artifacts escape this check, although it does not itself execute them or establish malicious intent.

Content

No source excerpt is available for this finding.

Dynamic import via __import__()

Medium
Category
Dangerous Code Execution
Confidence
75% confidence
Finding

Dynamic import() can load arbitrary modules at runtime, bypassing static analysis and potentially importing malicious code.

Content

Scanner excerpt · medical-device-techfile-sted_security_test.py (reported line 117)May include surrounding context.

python
result = {
        "skill": "medical-device-techfile-sted",
        "version": re.search(r"^version:\s*[\"']?([\w.]+)", sk.split("---")[1], re.M).group(1),
        "timestamp_local": __import__("datetime").datetime.now().isoformat(timespec="seconds"),
        "scope": "本地闭环 · 零真实凭据 · 可重复",
        "dimensions": dims,
        "overall": round(overall, 2),