Back to skill

Security audit

手机号码归属地查询 - Mobile Phone Number Location Query

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it says: it looks up phone-number attribution through JisuAPI, with privacy considerations because submitted numbers are sent to that third-party service.

Install only if you are comfortable sending queried phone numbers to JisuAPI and using a JISU_API_KEY from your environment. Avoid submitting numbers you are not authorized to check, and treat returned errors or responses as coming from the third-party service.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (6)

Tp2

High
Category
MCP Tool Poisoning
Confidence
85% confidence
Finding

Mixing characters from multiple Unicode scripts in a single identifier is a common technique to create visually ambiguous tool names.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
92% confidence
Finding

The skill declares environment-variable use and, by design, sends user-supplied phone numbers to an external API, but it does not declare an explicit tool scope such as permissions or allowed-tools. This weakens policy enforcement and user transparency, making unintended network access and secret use easier to overlook or abuse if the skill is invoked in a broader agent environment.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The skill handles phone numbers, which are sensitive personal data, and the documentation indicates lookups are performed via a third-party service, but the user-facing description does not warn that the number will be transmitted externally. This creates a privacy and consent issue: users may provide personal or third-party phone numbers without understanding that the data leaves the local environment.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
90% confidence
Finding

The skill is explicitly designed to query an external API, so external transmission is intentional; however, it still creates a real data exposure surface because phone numbers are sent off-system to a third party. In the context of a phone-attribution lookup skill this behavior is expected, but it remains sensitive because the data may be logged, retained, or processed outside the user's control.

Content

Scanner excerpt · shouji.py (reported line 14)May include surrounding context.

python
import requests


SHOUJI_QUERY_URL = "https://api.jisuapi.com/shouji/query"


def query_shouji(appkey: str, req: dict):

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill sends a user-supplied phone number to a third-party service, which is privacy-sensitive data disclosure. Even though this transmission is necessary for the feature to work, the code provides no user-facing notice, consent check, masking, or minimization, so users may not realize their phone number is being shared externally.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
72% confidence
Finding

The natural-language documentation and usage descriptions are written only in Chinese, which can impose a language expectation without any indication of user choice or opt-in. Under the language/locale policy, skills should not effectively force a specific language unless that constraint is clearly justified or optional.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.