T05 · Unauthorized Access and Privilege Escalation
- Location
scripts/main.py:48- Finding
Unrestricted Access to Internal, Private, and Cloud Metadata Endpoints
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a real API testing skill, but it gives broad outbound request and file-write capability with weak scoping and safety guidance.
Review this before installing. Use it only with URLs you control or are authorized to test, avoid private/internal/metadata endpoints, do not paste live tokens or sensitive data into command-line headers or bodies, and avoid the output-file option until path containment and overwrite behavior are fixed. Pin the requests dependency for reproducible installs.
scripts/main.py:48Unrestricted Access to Internal, Private, and Cloud Metadata Endpoints
scripts/main.py:138Output Path Validation Bypass Allows Files Outside the Skill Directory to Be Overwritten
README.md:7Unpinned Third-Party Dependency Creates Supply-Chain Exposure
Referenced artifact was not completely inspected
python3 scripts/main.py run --url "https://api.example.com/users" --method GET
Referenced artifact was not completely inspected
python3 scripts/main.py run --url "https://api.example.com/users" --method GET
Referenced artifact was not completely inspected
python3 scripts/main.py run --url "https://api.example.com/users" --method GET
Referenced artifact was not completely inspected
python3 scripts/main.py run --url "https://api.example.com/users" --method GET
Referenced artifact was not completely inspected
python3 scripts/main.py run --url "https://api.example.com/users" --method GET
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
python3 scripts/main.py run --url "https://jsonplaceholder.typicode.com/posts" --method POST --body '{"title": "test", "body": "content"}'
python3 scripts/main.py run --url "https://api.example.com/data" --method GET --headers '{"Authorization": "Bearer token123", "User-Agent": "MyApp"}'
## Command Reference
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
python3 scripts/main.py run --url "https://jsonplaceholder.typicode.com/posts" --method POST --body '{"title": "test", "body": "content"}'
python3 scripts/main.py run --url "https://api.example.com/data" --method GET --headers '{"Authorization": "Bearer token123", "User-Agent": "MyApp"}'
## Command Reference
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
python3 scripts/main.py run --url "https://jsonplaceholder.typicode.com/posts" --method POST --body '{"title": "test", "body": "content"}'
python3 scripts/main.py run --url "https://api.example.com/data" --method GET --headers '{"Authorization": "Bearer token123", "User-Agent": "MyApp"}'
## Command Reference
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
python3 scripts/main.py run --url "https://jsonplaceholder.typicode.com/posts" --method POST --body '{"title": "test", "body": "content"}'
python3 scripts/main.py run --url "https://api.example.com/data" --method GET --headers '{"Authorization": "Bearer token123", "User-Agent": "MyApp"}'
## Command Reference
The README encourages sending headers and bodies to arbitrary endpoints but does not warn users against transmitting secrets, production credentials, or sensitive payloads during testing. In a tool specifically designed to make outbound HTTP requests, this omission can lead to accidental disclosure of API keys, tokens, or personal data to third-party or misconfigured endpoints.
The documentation includes a DELETE example against a user resource without any warning that the action may be irreversible or harmful in real environments. For a generic API testing tool, such examples can normalize running destructive operations against live systems and increase the risk of accidental data deletion.
The DELETE example uses a JWT-like bearer token in plaintext, which more strongly resembles real credential material and can encourage copying, reuse, or normalization of exposing tokens in docs, terminals, and logs. Because it appears in a destructive request example, the combination raises the chance of misuse against real systems.
The skill is documented as sending arbitrary HTTP requests and static analysis detected network and file-write capable behavior, but the manifest does not declare any explicit tool scope or permissions boundary. This creates ambiguity about what the skill is allowed to do and weakens review and runtime guardrails, increasing the chance of unintended outbound requests or local artifact writes without clear user awareness.
The skill description explains how to send requests, headers, and bodies to external endpoints but does not warn users that sensitive data such as API tokens, personal data, or internal URLs may be transmitted off-system. In a tool specifically designed for arbitrary endpoint testing, omission of that warning materially raises the risk of accidental credential or data disclosure.
This example explicitly demonstrates sending an Authorization bearer token to an external endpoint without any warning about credential exposure. In the context of a skill that facilitates arbitrary outbound requests, showing secret-bearing headers in documentation can normalize unsafe usage and lead users to transmit real tokens to untrusted or mistyped destinations.
python3 scripts/main.py run --url "https://api.example.com/users" --method POST --body '{"name": "John", "email": "john@example.com"}'
With custom headers:
python3 scripts/main.py run --url "https://api.example.com/users" --method GET --headers '{"Authorization": "Bearer token123"}'
## Examples
The example shows an Authorization header with a bearer token value, which encourages users to paste credential material directly into shell history, logs, and command output. Even though the token is illustrative, this pattern promotes insecure handling of secrets in a tool that transmits headers over the network.
No suspicious patterns detected.