Back to skill

Security audit

Interview Evaluation

Security checks for vulnerabilities and agentic risk

Overview

This interview-evaluation skill is not malicious, but it needs Review because it can use prior conversations and local resumes and persist hiring-related feedback without clear user control.

Install only if you are comfortable with a recruiting skill that may consult prior conversations and local resume files for name matching and may update its own reference notes from feedback. Use it with explicit file boundaries, avoid broad resume directories, and require review before any feedback is written into reusable guidance.

Vulnerability Patterns
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • 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
Findings (2)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:82
Finding

Unrestricted Access to Historical Conversations and Local Résumé Files

Content
View full analysis
**English translation of the source instruction:** > “Risk of name-recognition errors in batch interview transcripts: The same candidate may have multiple forms of address in the transcript, including a formal name, nickname, or transcription error. If the user mentions ‘yesterday’s batch list’ or asks to ‘match by name,’ the Agent must first use historical conversations and local résumé files to verify the formal name, and then add a ‘name matching explanation’ table to internal materials. The formal report must not include the name-matching process.” ### Technical Analysis The Skill mandates access to two privacy-sensitive sources: 1. Historical conversation data. 2. Résumé files stored in the local environment. This instruction does not require explicit user authorization before accessing either source. It also does not constrain access to a particular conversation, directory, file, candidate, or set of permitted résumé fields. No data-minimization, purpose-limitation, retention, or access-control requirements are defined. Name disambiguation can be a legitimate part of interview evaluation, but automatic inspection of historical conversations and local files exceeds least privilege when the current-session materials are sufficient or when the user has not explicitly approved cross-session lookup. If the runtime gives the Agent broad filesystem or conversation-history access, the instruction can cause unrelated candidate records to be processed. The requirement to omit the matching process from the formal report further reduces visibility into which additional records were accessed. Although excluding internal processing details from a business report can be reasonable, it should not replace user ...[truncated 1459 chars]
Remediation
View remediation

T02 · Agent Memory Poisoning

Warning
Location
SKILL.md:135
Finding

Unreviewed Persistence of User Feedback into Future Skill Instructions

Content
View full analysis
**English translation of the source instruction:** > “After completing each interview evaluation, proactively ask the user: > > 1. Was the evaluation accurate? Which areas were rated too high or too low? Did subsequent interviews or work outcomes validate the judgment? > 2. Were any capability dimensions omitted? Which dimensions received too much attention, and which were ignored? > 3. Was the attribution accurate? Are there new common attribution errors? > 4. Were the probing techniques effective? Which questions uncovered useful information, and which were ineffective? > > | Feedback type | Content to update | > | --- | --- | > | Evaluation deviation | Record prediction accuracy in `EVOLUTION.md` to build calibration data | > | Attribution error | Add it to `attribution-errors.md` | > | Ineffective probing | Optimize `probing-techniques.md` | > | Missing dimension | Add it to `capability-dimensions.md` | > | New finding | Record it in `EVOLUTION.md` |” ### Technical Analysis The feedback loop directs the Agent to convert user-provided feedback into persistent modifications of files that influence future evaluations. In particular: - `attribution-errors.md` changes future attribution rules. - `probing-techniques.md` changes future interview procedures. - `capability-dimensions.md` changes future evaluation criteria. - `EVOLUTION.md` stores calibration information and new findings. User feedback is untrusted input. The Skill provides no requirement for human review, provenance tracking, authentication, evidence validation, conflict detection, rollback, or separation between proposed changes and active instructions. Consequently, a user can attempt to insert biased, inaccurate, or adversarial evaluation rules that remain active after ...[truncated 1845 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • 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 (10)

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill instructs the agent to inspect historical conversations and local resume files to resolve name mismatches, which expands access beyond the immediate interview materials needed for the task. This creates a real risk of unnecessary cross-context data access, exposing unrelated personal data and increasing the chance of privacy violations or incorrect identity linkage.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The instruction '中文输出' mandates a specific language for all outputs. The file does not indicate that this is optional or contingent on explicit user preference, which creates a language/locale policy concern.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

Mandating that the evaluation be saved as a local Markdown file introduces a side effect—writing to local storage—that is not necessary to generate an interview evaluation. Unprompted file creation can leak sensitive candidate assessments onto disk, violate least-privilege expectations, and surprise users who only asked for a written evaluation in chat.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The instruction to save and deliver a local .md file lacks any warning or consent step for file-writing behavior. Because interview evaluations often contain sensitive hiring judgments and personal data, silently persisting them to local storage increases confidentiality and compliance risks.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The feedback loop instructs the agent to update multiple local knowledge files and track prediction-hit-rate data after completing evaluations, expanding the skill from producing an output into persistent data collection and modification. This can cause unauthorized retention of candidate-related judgments, create hidden state across users, and contaminate future decisions with sensitive or unreviewed data.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The entire skill content is written in Chinese and does not indicate that language is optional, user-selectable, or justified by a region-specific scope. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

This markdown file is written entirely in Chinese and provides no indication that other languages are supported or that the language choice is optional. Under the policy rule for natural-language violations, forcing a specific language without user opt-in is in scope.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

This markdown skill file presents all instructions in Chinese and does not indicate that the user can choose another language or that the skill is intended only for a Chinese-speaking audience. Under the policy, forcing a specific language without user opt-in is 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
95% confidence
Finding

The template content is entirely written in Chinese, including headings and instructions, with no indication that users may choose another language. This can violate a language/locale policy when a skill implicitly requires a specific language without user opt-in or documented regional justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

This markdown file contains natural-language content exclusively in Chinese, which can amount to a language/locale constraint if users are not given an explicit choice or opt-in. The policy specifically calls for flagging cases where a skill forces a specific language without user opt-in, and no such option or justification appears in the file.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.