T09 · Insecure Skill Coding Practices
- Location
scripts/playwright_stealth.py:25- Finding
Chromium Sandbox Disabled While Loading Arbitrary URLs
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This browser automation skill is mostly coherent, but it promotes anti-bot evasion and can expose credentials while running unsafe browser and install steps.
Review this skill carefully before installing. Use it only for websites and accounts you are authorized to automate, avoid entering real passwords or cookies, do not run it as root, and prefer pinned dependencies plus a sandboxed browser/container. Treat its form automation as capable of changing account or site state.
scripts/playwright_stealth.py:25Chromium Sandbox Disabled While Loading Arbitrary URLs
SKILL.md:20Unpinned Playwright and Browser Artifact Installation
scripts/playwright_stealth.py:109Form Values and Login Credentials Written to Plaintext Logs
The skill description explicitly advertises bypassing anti-bot detection, which is a strong abuse signal rather than a neutral automation feature. In context, this materially increases risk because it frames the skill for stealthy interaction with third-party services, enabling evasion of access controls and platform safeguards.
The chained privileged command combines update and install in a single shell line, which reduces reviewability and encourages copy-paste execution of compound root actions. This becomes more dangerous in an install recipe that also downloads external software, because failures or unexpected substitutions can be harder for users to detect and safely recover from.
command: |
# 下载并安装Google Chrome
wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -O /tmp/chrome.deb
sudo apt update && sudo apt install -y /tmp/chrome.deb xvfb
label: Install Google Chrome
- id: playwright-env
kind: shell
The Playwright section reiterates stealth usage for bypassing anti-bot detection as a routine feature, not as a narrowly scoped testing capability. That makes the guidance more dangerous because it operationalizes evasion in normal workflows such as login and posting on external sites.
The install steps download and install software via shell with elevated privileges but provide no integrity verification, trust warning, or least-privilege guidance. This is dangerous because users may execute privileged commands from the skill verbatim, expanding the blast radius if the package source, network path, or installation flow is compromised.
The skill instructs users to run sudo package installation commands directly from the skill content. While admin installation can be legitimate, presenting privileged commands without safety notes or verification guidance is risky because it encourages blind elevation and broad system modification.
command: |
# 下载并安装Google Chrome
wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -O /tmp/chrome.deb
sudo apt update && sudo apt install -y /tmp/chrome.deb xvfb
label: Install Google Chrome
- id: playwright-env
kind: shell
This step again uses sudo for environment setup, increasing the chance of unnecessary root-level changes for a workflow that is otherwise largely user-space. In context, repeated privilege escalation normalizes unsafe execution habits and can magnify harm from mistakes or dependency compromise.
kind: shell
command: |
# 创建Python虚拟环境并安装Playwright
sudo apt install -y python3.11-venv
python3 -m venv ~/.playwright-env
source ~/.playwright-env/bin/activate
pip install playwright
The skill promotes automatic login, form filling, and mentions using logged-in cookies, but does not warn about credential handling, cookie theft/reuse, account lockout, or abuse risks. In this context, the automation targets real consumer platforms, which increases the chance that users will apply it to sensitive accounts without adequate safeguards.
The function can automatically click a submit control after filling arbitrary fields, which can cause external state changes such as account actions, purchases, or form submissions without any explicit user confirmation at the time of execution. In this skill’s context, the stated goal includes automated login and bypassing anti-bot detection, which increases the likelihood of unattended interaction with third-party sites and makes silent submission more risky.
The browser context forces a Chinese locale and Shanghai timezone for all runs. This is a natural-language policy concern because it imposes a specific language/locale setting without offering the user a choice or documenting a justified region-specific limitation.
No suspicious patterns detected.