Back to skill

Security audit

oxypages-publish

Security checks for vulnerabilities and agentic risk

Overview

This skill clearly teaches an agent how to publish user-approved static websites to OxyPages, with the expected public upload and optional API-key behavior disclosed.

Before installing, confirm you are comfortable letting the agent publish selected site files to OxyPages. Use an API key only when you want permanent account-owned sites, and remember that deployments can replace an existing site's files.

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
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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 (9)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 · README.md (reported line 23)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 47)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 53)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 102)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 106)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 118)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 123)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 141)May include surrounding context.

md
## Keep it honest

- Sizes and file counts are read from `GET https://api.oxypages.com/limits`
  at run time, so they cannot go stale. Hourly publish caps are deliberately
  NOT written down anywhere in the skill: they are tuned from the admin panel,
  and the `429` response states the live one. Re-check `/limits` before

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 102)May include surrounding context.

bash
# Existing sites: id, name, subdomain, url, status
curl -sS https://api.oxypages.com/v1/sites \
  -H "Authorization: Bearer $OXYPAGES_API_KEY"

# A new site (the subdomain is generated; name is optional)

Static analysis

No suspicious patterns detected.