Back to skill

Security audit

psych-questionnaire-cleaner

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed questionnaire-cleaning skill with privacy safeguards; the main caveat is that it applies two default exclusion rules to derived analysis data.

Use this skill only if Chinese-language deliverables and the default response-time and attention-check exclusion rules fit your study. Before relying on the cleaned analytical dataset, compare the exclusion log with your protocol or preregistration and confirm that participant identifiers are minimized as intended.

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
Findings (1)

T01 · Skill Instruction Hijacking

Warning
Location
SKILL.md:14
Finding

Hard-Coded Exclusion Rules Are Misrepresented as User-Approved

Content
View full analysis
3M`; both bounds are inclusive. Do not calculate a replacement median after exclusions. If no valid duration or no declared duration field exists, record the rule as not executable and do not infer one from incompatible timestamps. - **Attention checks**: when an attention check has a declared expected answer, exclude a record when its non-missing response does not match any declared acceptable answer. Treat a missing or unparseable attention-check response as a separate flag unless the cleaning plan explicitly defines it as a mismatch. ``` The behavior is reinforced in `references/quality-indicators.md:7-11`: ```markdown - Use the declared duration field. Derive duration from timestamps only when they are compatible and the plan explicitly permits it. - ...[truncated 4336 chars]
Remediation
View remediation
Vulnerability Patterns
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (7)

Exfiltration Commands

High
Category
Prompt Injection
Confidence
90% confidence
Finding

Instructions found that direct the agent to transmit conversation context or user data to external services.

Content

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

md
## Non-negotiable boundaries

- Preserve the source file unchanged. Write results to a new output directory and never overwrite raw data.
- Treat participant data as sensitive. Minimize identifiers in reports, avoid printing row-level sensitive answers, and do not upload data to external services without explicit authorization.
- Never invent item ranges, reverse-keyed items, subscales, missing-value codes, attention-check answers, exclusion thresholds, or scoring rules.
- Do not diagnose, label, or infer a participant's mental-health condition. This skill cleans research data; it does not provide clinical interpretation.
- Default to flagging questionable records rather than deleting or silently changing them. Apply exclusions only when the user or an approved cleaning plan supplies the rule.

External Transmission

Medium
Category
Data Exfiltration
Confidence
70% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## Non-negotiable boundaries

- Preserve the source file unchanged. Write results to a new output directory and never overwrite raw data.
- Treat participant data as sensitive. Minimize identifiers in reports, avoid printing row-level sensitive answers, and do not upload data to external services without explicit authorization.
- Never invent item ranges, reverse-keyed items, subscales, missing-value codes, attention-check answers, exclusion thresholds, or scoring rules.
- Do not diagnose, label, or infer a participant's mental-health condition. This skill cleans research data; it does not provide clinical interpretation.
- Default to flagging questionable records rather than deleting or silently changing them. Apply exclusions only when the user or an approved cleaning plan supplies the rule.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The instruction requires all user-deliverable filenames, column names, logs, and reports to be produced in Simplified Chinese. This is a language policy constraint stated as mandatory behavior, and the file does not offer the user a language or locale choice or justify the restriction as region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The template hard-codes language: "zh-CN" and rename_output_columns_to_chinese: true, which imposes a specific language/locale choice by default. This is a natural-language policy concern because the file does not offer a user choice or explain why a China-specific locale is required.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

Line L03 states that all delivered filenames, report prose, generated column names, log headers, rule descriptions, statuses, and exclusion reasons must be in Simplified Chinese. This is a natural-language locale policy constraint that forces a specific language without any opt-in, alternative, or stated regional/compliance justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

Line L52 requires 数据质量报告.md to be written in Simplified Chinese. This repeats a mandatory single-locale requirement and does not provide the user with a language choice or explain why the constraint is necessary.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

Line L49 instructs the skill to output specific Chinese field names, which imposes a locale/language requirement in natural-language guidance. The file does not offer user opt-in or explain that the skill is intentionally region-specific, so this appears to violate the language/locale policy criterion.

Content

No source excerpt is available for this finding.