Back to skill

Security audit

Recruiting Interview Kit

Security checks for vulnerabilities and agentic risk

Overview

This recruiting skill is local and non-networked, but it ships broader file-audit and secret-pattern scanning code that is not clearly part of interview preparation.

Review this before installing if you expect a narrow recruiting-only skill. The safe default behavior appears local and read-only unless you choose an output file, but the package should remove or clearly disclose the unrelated audit modes and define path/tool scope.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (16)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

声明描述的是一个招聘面试辅助技能,核心能力应是基于 JD 生成面试题、评分维度、红旗项和记录模板。但代码实际并未体现任何与 JD、招聘、候选人评估或面试问题生成直接相关的逻辑。相反,它从 resources/spec.json 读取配置后,按 mode 执行多种本地审计/扫描任务:structured_brief 生成通用结构化报告,directory_audit 扫描目录文本文件,csv_audit 统计 CSV/TSV 字段,pattern_audit 用正则匹配危险命令与 secret-like 内容,skill_audit 检查 Skill 项目文件完整性和 SKILL.md frontmatter。这些能力与已声明用途明显不同,且包含未声明的本地文件系统扫描与安全/规范审计行为。因此描述与实际行为存在实质性不匹配。

Content

No source excerpt is available for this finding.

YARA rule 'agent_skill_mcp_tool_poisoning_metadata': MCP/tool metadata poisoning indicators in tool schemas or skill manifests [agent_skills]

High
Category
YARA Match
Confidence
80% confidence
Finding

YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).

Content

Scanner excerpt · SKILL.md (reported line 4)May include surrounding context.

md
---
name: recruiting-interview-kit
version: 1.0.0
description: "根据 JD 生成面试题、评分维度、红旗项与面试记录模板。;use for recruiting, interview, hiring workflows;do not use for 生成歧视性问题, 替代最终录用决策."
author: OpenClaw Skill Bundle
homepage: https://example.invalid/skills/recruiting-interview-kit
tags: [recruiting, interview, hiring, scorecard]
user-invocable: true
metadata: {"openclaw":{"emoji":"🧑‍💼","requires":{"bins":["python3"]},"os":["darwin","linux","win32"]}}
---
# 招聘面试工具包

## 你是什么
你是“招聘面试工具包”这个独立 Skill,负责:根据

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The script’s implemented capabilities are materially misaligned with the declared recruiting-interview purpose: it performs generic directory auditing, CSV inspection, pattern scanning, and skill-package validation instead of generating interview kits from a JD. This kind of scope mismatch is dangerous because it can be used to inspect arbitrary local files and repositories under the guise of a benign hiring workflow, increasing the risk of unauthorized local data discovery and deceptive tool behavior.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The code includes built-in content/security scanning logic for secrets, private URLs, dangerous shell patterns, and decoded execution snippets, which is unrelated to the stated recruiting use case. In this context, such scanning expands the tool into a local inspection utility that can enumerate sensitive content from arbitrary files, making the benign skill description a misleading wrapper for broader file-analysis behavior.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
83% confidence
Finding

README 标题及整体说明均以中文呈现,文件中未说明是否支持其他语言,也未提供用户可选择语言/locale 的机制。按规则,若技能隐含强制特定语言而没有用户 opt-in 或明确、合理的地域性说明,应视为自然语言政策风险。

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The trigger examples are very short and generic, such as asking to generate interview questions or red flags, which overlaps with ordinary recruiting-related conversation. In systems that auto-route skills based on natural language similarity, this can cause unintended activation and application of the skill outside the user's precise intent, potentially processing hiring-related content or personal data when not desired.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

This markdown file uses Chinese throughout for headings, audit results, and conclusions, which can impose a language requirement on users or reviewers. The policy allows locale constraints only when the skill offers user choice or clearly documents a justified region-specific reason, neither of which appears here.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
92% confidence
Finding

The skill advertises executable capability via python3 and includes instructions to run a local script, but it does not declare an explicit tool scope such as allowed tools or permissions. This creates ambiguity about what the skill is permitted to access and increases the risk of unintended file access or shell execution if the host grants broad defaults.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The title, category label, summary, input hint, sections, examples, and risk text are all written in Chinese, indicating the skill is presented in a fixed language. The file does not mention that the skill is China-specific or provide any user opt-in or alternative locale, which can violate language/locale policy requirements.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The report-generation strings are written directly in Chinese, causing the skill to force a specific language for its user-facing output. This is a natural-language locale policy issue because the file provides no opt-in, selection mechanism, or justification for restricting output to Chinese.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The directory auditing functionality recursively enumerates files and extracts headings/content samples from arbitrary directories, which is not justified by an interview-preparation workflow. While not executing code, it still enables broad local repository inspection and metadata harvesting that could expose sensitive project structure or contents when users believe they are invoking a recruiting tool.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The CLI presents itself as a local support script for the recruiting skill, but the actual modes perform unrelated audits and scans. This discrepancy is dangerous because misleading UX and documentation reduce informed consent and can trick operators into granting access to local files for purposes they did not intend.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The file presents the skill description in a mixed Chinese/English form and the rest of the document is primarily Chinese, but it does not state that language is configurable or user-selected. This can create a locale/language policy concern if the skill is invoked by users expecting another language and no opt-in is provided.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This markdown file presents all user-facing instructions and content in Chinese, but it does not indicate that Chinese is optional or that the skill is intended only for a Chinese-speaking audience. Under the language/locale policy rule, forcing a specific language without user opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

This markdown file presents all headings and instructions only in Chinese, with no indication that the user can choose another language or locale. Under the language/locale policy rule, forcing a specific language without opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The template headings and instructions are entirely in Chinese, which signals a fixed output language for the skill. Because there is no accompanying note that the language is optional, user-selected, or limited to a justified region-specific use case, this appears to impose a locale/language choice by default.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.