T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:5- Finding
Overbroad Credential and Integration Access Requirements
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:5andSKILL.md:118-139
Vulnerability Type: Excessive permissions and violation of least privilege
Risk Level: MediumVulnerable Code
yaml metadata: {"openclaw":{"requires":{"env":["HRIS_API_KEY","PAYROLL_API_KEY","SLACK_WEBHOOK_URL"],"bins":["curl","jq"]},"os":["macos","linux","win32"],"files":["SKILL.md"],"emoji":"🚀"}}bash # HRIS System Authentication export HRIS_API_KEY="your-workday-or-bamboohr-api-key" export HRIS_SYSTEM="workday" # Options: workday, bamboohr, namely, custom export HRIS_TENANT_ID="your-tenant-id" # Payroll System Authentication export PAYROLL_API_KEY="your-gusto-or-adp-api-key" export PAYROLL_SYSTEM="gusto" # Options: gusto, adp, paychex, square # Communication Channels export SLACK_WEBHOOK_URL="https://hooks.slack.com/services/YOUR/WEBHOOK/URL" export SLACK_DEFAULT_CHANNEL="#hr-alerts" export SENDGRID_API_KEY="your-sendgrid-key" # For email # Document Signing export DOCUSIGN_API_KEY="your-docusign-integration-key" export DOCUSIGN_ACCOUNT_ID="your-account-id" # Security & Compliance export ENCRYPTION_KEY="your-256-bit-encryption-key" export AUDIT_LOG_RETENTION_DAYS="2555" # 7 years export DATA_RESIDENCY="us-east-1" # GDPR/compliance regionTechnical Analysis
The skill declares access to production-sensitive HRIS, payroll, and Slack credentials while also requiring the general-purpose network utility
curl. The package contains onlySKILL.md; it provides no implementation that demonstrates why these credentials are necessary, restricts the permitted API endpoints, limits credential scopes, or enforces approval before external side effects.The broader configuration instructions also solicit SendGrid, DocuSign, and encryption credentials. Because the documented workflows involve employee records, payroll data, account provisioning, communication channels, document signing ...[truncated 2293 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove credential requirements from package metadata until an auditable implementation that needs them is included.
- Replace broad API keys with short-lived OAuth tokens limited to the minimum service, tenant, resource, and operation scopes.
- Use read-only credentials by default and request temporary write authorization only for a specific approved operation.
- Introduce explicit endpoint and HTTP-method allowlists rather than granting unrestricted network access through general-purpose
curl. - Require human confirmation before payroll modifications, HR record changes, account provisioning, purchases, document signing, or disclosure of employee PII.
- Implement a dry-run mode that displays intended API calls and redacted changes before execution.
- Retrieve secrets from a managed secret store at operation time rather than placing them broadly in the agent process environment.
- Prevent credentials and sensitive employee fields from appearing in prompts, command output, logs, error messages, or generated reports.
- Document the exact minimum scopes required for every integration and provide separate development, test, and production configurations.
- Add an auditable implementation with input validation, authorization checks, rate limits, immutable operation logs, and tests proving that unapproved write operations are rejected.
