T09 · Insecure Skill Coding Practices
- Location
car.py:21- Finding
API Credential Exposed in URL Query String
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a straightforward car-data lookup skill that uses the user's JisuAPI key to query JisuAPI, with no hidden persistence or unrelated access found.
Install this only if you are comfortable using JisuAPI and sending your AppKey plus car lookup terms, IDs, dates, and ranking parameters to that service. Use a dedicated, limited-quota API key if possible and rotate it if you think it has been logged or exposed.
car.py:21API Credential Exposed in URL Query String
Mixing characters from multiple Unicode scripts in a single identifier is a common technique to create visually ambiguous tool names.
The skill declares runtime requirements including an environment variable for an API key and implies outbound network access to a third-party API, but it does not declare an explicit tool/permission scope. That creates a transparency and policy-enforcement gap: a host may permit broader execution than intended, and users cannot clearly see that the skill can access secrets and make external requests.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
import requests
BASE_URL = "https://api.jisuapi.com/car"
def _call_car_api(path: str, appkey: str, params: dict = None):
The skill sends request parameters, including user-provided values such as keyword, parentid, carid, month, and week, to https://api.jisuapi.com via requests.get. Although this network behavior is central to the skill's purpose, the code does not provide any explicit disclosure near execution points that user input will be transmitted to a third-party service.
No suspicious patterns detected.