T09 · Insecure Skill Coding Practices
- Location
SKILL.md:28- Finding
Task Metadata Transmitted Over Unencrypted HTTP
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 28–34
Vulnerability Type: Cleartext HTTP communication
Risk Level: MediumVulnerable Code Snippet:
markdown GET http://www.aicnic.cn/jobs/api/jobs/infos/hpcai28/{jobId}bash curl -X GET "http://www.aicnic.cn/jobs/api/jobs/infos/hpcai28/{jobId}" -H "accept: */*"Technical Analysis
The Skill instructs the Agent to send a user-provided job identifier to an external API over unencrypted HTTP. HTTP provides neither transport confidentiality nor server authenticity and does not protect response integrity.
An attacker capable of observing or modifying network traffic—such as an attacker on the same wireless network, a compromised gateway, or a malicious upstream proxy—could read the requested job ID or alter the API response. Because the workflow trusts
data.jobStateand other returned metadata, a forged response could cause the Agent to report an incorrect task status, job name, or execution time.The same insecure endpoint and request pattern are repeated at lines 67 and 75. No authentication credentials are shown in the audited file, so credential exposure is not established.
Attack Path
- A user asks the Agent to query the status of a job.
- The Agent inserts the supplied
jobIdinto the documented HTTP endpoint. - The request traverses the network without TLS protection.
- A network-positioned attacker intercepts the request and learns the job identifier.
- The attacker may modify the server response and provide a forged
data.jobState, such as changingFAILEDtoCOMPLETED. - The Agent parses the unverified response and presents the attacker-controlled status or metadata to the user.
Impact Assessment
Exploitation does not grant demonstrated local system privileges or code execution. Its scope is limited to the confidentiality and integrity of information exchanged with this API.
Potential imp ...[truncated 297 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the endpoint with an HTTPS URL supported by the authoritative service:
text https://www.aicnic.cn/jobs/api/jobs/infos/hpcai28/{jobId} - Require valid TLS certificate and hostname verification. Do not disable verification through options such as
curl -k. - Reject redirects from HTTPS to HTTP and restrict redirects to the expected trusted hostname.
- Validate the job ID against its expected format and URL-encode it before constructing the request.
- Apply connection and response timeouts, response-size limits, and an allowlist for accepted content types.
- Validate the JSON schema, API result code, and expected field types before presenting any returned information.
- Update every occurrence of the endpoint and examples in
SKILL.md, including lines 28, 34, 67, and 75, so users are not directed back to the insecure transport.
- Replace the endpoint with an HTTPS URL supported by the authoritative service:
