Back to skill

Security audit

E2E Test Recorder

Security checks for vulnerabilities and agentic risk

Overview

The recorder itself is coherent, but the package also includes GitHub publishing scripts that can use tokens, create public repositories, push code, tag releases, and even force-push.

Install only in an isolated test project. Use dummy accounts and sanitized data when recording, do not share recordings without review, and avoid running scripts such as auto-release, github-api-release, or deploy unless you intend to publish code and fully understand the GitHub token and git push behavior.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (10)

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The publishing guide promotes browser-operation recording, test-process recording, and performance-data collection without warning that these features may capture credentials, personal data, internal application content, or other sensitive screen/browser information. In the context of an E2E recording skill, this omission increases the risk of accidental over-collection and unsafe sharing of recordings, logs, and artifacts during installation, testing, and publication.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The README promotes recording browser sessions, E2E flows, and API tests, and even includes examples that type usernames and passwords, but it does not warn that recordings, screenshots, logs, and generated artifacts may capture credentials, tokens, personal data, or internal application content. In this context, users may unknowingly store or share sensitive information in output files or CI artifacts, creating a realistic confidentiality risk.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The skill promotes browser/screen recording and storing output media but does not warn users that recordings may capture credentials, personal data, session tokens, notifications, or other sensitive on-screen content. In a recording/testing skill, this omission materially increases the risk of accidental secret exposure because users are encouraged to record realistic login and app workflows.

Missing User Warnings

High
Confidence
99% confidence
Finding
The example explicitly types a password during a recorded session, normalizing the practice of capturing credentials in video artifacts without any caution. This is dangerous because recorded media may be stored, shared, or checked into repositories, exposing reusable credentials or training users into insecure handling of secrets.

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The API test example includes registration data such as username, email, and password and suggests producing recorded output, but provides no guidance on handling sensitive or personal data. Even if the sample values are illustrative, the pattern encourages recording and storing account data in artifacts, logs, or demos without privacy controls.

Missing User Warnings

High
Confidence
96% confidence
Finding
The script unconditionally creates a public GitHub repository (`private: false`) and is designed to publish local project contents externally, yet it provides no explicit upfront confirmation, preview, or safeguard against accidental disclosure. In a skill context, this is especially risky because users may run automation from a working repository containing proprietary code, credentials, or internal artifacts and unknowingly publish them.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The script executes `git remote add origin`, changes the branch name, pushes commits, and creates/pushes tags without any confirmation step or dry-run mode. These state-changing operations can alter repository configuration and publish code to an external service, making accidental disclosure or unintended repository modification plausible.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The 'evaluate' action passes attacker-controlled or untrusted 'text' directly into page.evaluate, enabling arbitrary JavaScript execution in the browser context of whatever page is loaded. In this recorder, that can manipulate authenticated sessions, scrape sensitive page data, trigger destructive actions in web apps, and interact with internal sites reached by the automated browser, making the skill context materially more dangerous.

Missing User Warnings

Medium
Confidence
87% confidence
Finding
The script creates directories and writes a configuration file automatically, without prior consent or a dry-run/safe mode. In an agent-skill context, undisclosed filesystem mutation is risky because simply running a 'test' can alter the user workspace, overwrite expected config state, or interfere with automation pipelines that assume validation is read-only.

Tool Parameter Abuse

High
Category
Tool Misuse
Content
]);
      
      if (forcePush) {
        execSync('git push -u origin main --force || git push -u origin master --force', { stdio: 'inherit' });
        console.log(chalk.green('✅ 强制推送完成'));
        return true;
      }
Confidence
90% confidence
Finding
The script offers an interactive force-push path and executes `git push ... --force`, which can overwrite remote history and destroy collaborators' commits. In the context of an agent skill or automation helper, this is more dangerous because users may approve prompts without fully understanding the consequences, causing irreversible integrity loss in a shared repository.

Static analysis

Detected: suspicious.dangerous_exec, suspicious.dynamic_code_execution, suspicious.exposed_secret_literal

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
scripts/auto-release.js:45

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
scripts/deploy.js:23

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
scripts/github-api-release.js:162

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
simple-test.js:55

Dynamic code execution detected.

Critical
Code
suspicious.dynamic_code_execution
Location
scripts/utils.js:316

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
scripts/auto-release.js:27

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
scripts/github-api-release.js:199