T09 · Insecure Skill Coding Practices
- Location
SKILL.md:243- Finding
Unrestricted API Traffic Logging May Expose Delivery Credentials and Personal Data
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 91–99 and line 243
Vulnerability Type: Sensitive data exposure through excessive logging
Risk Level: MediumThe Skill recommends recording all API requests and responses even though those messages can contain recipient names, telephone numbers, full addresses, precise coordinates, callback URLs, signatures, and other delivery information.
Relevant order fields from lines 91–99, translated into English:
text | receiver_name | String | Required | Recipient name | | receiver_phone | String | Required | Recipient phone number | | receiver_address | String | Required | Recipient address | | receiver_lat | Double | Required | Recipient latitude | | receiver_lng | Double | Required | Recipient longitude | | callback_url | String | Required | Callback URL |The vulnerable recommendation at line 243, translated into English:
text 3. Record all API requests and response logs to facilitate troubleshooting.Technical Analysis
The recommendation uses an unrestricted logging policy rather than a minimum-data, allowlisted policy. API request bodies can contain recipient identity, contact information, full delivery addresses, and exact geographic coordinates. Responses and callbacks can also contain order details, courier names, courier phone numbers, identifiers, signatures, or operational metadata.
Logging entire request and response objects copies sensitive information from a comparatively short-lived transaction channel into logging systems, observability platforms, backups, support exports, and developer consoles. These secondary systems commonly have broader access and longer retention periods than the production API itself.
The behavior is not required for the Skill's declared delivery-integration functionality. Troubleshooting can instead rely on request IDs, sanitized error codes, endpoint names, status codes, and ...[truncated 1823 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the instruction to log all traffic with a structured, allowlisted logging policy.
- Log only operationally necessary fields, such as:
- Internal request or correlation ID
- API endpoint name
- HTTP status code
- Sanitized provider error code
- Request duration
- Retry count
- Never log complete request or response bodies in production by default.
- Redact or omit names, phone numbers, full addresses, coordinates, callback tokens, signatures, application secrets, and other authentication material.
- If temporary payload diagnostics are unavoidable, require explicit authorization, use synthetic or masked data, and automatically disable verbose logging after a short period.
- Apply least-privilege access controls to logging and observability systems.
- Encrypt logs in transit and at rest, enforce short retention periods, and prevent sensitive records from being copied into unrestricted support exports or backups.
- Add automated log-scrubbing tests to verify that sensitive fields cannot enter production logs.
- Document an incident-response process for rotating credentials and deleting retained records if sensitive API traffic is accidentally logged.
