Back to skill

Security audit

Locate internal staff within international enterprises via company ID and personnel ID queries against global corporate databases. Pull full colleague rostersof any target employee with one-click search operations. Recruiters, sales teams and B2B lead generation specialists source bulk batches of valuable businesscontacts seamlessly. Expand professional networking resources and conduct in-depth talent background research. Map out clients’ internal decision-makinghierarchies and unlock additional hidden stakeholders once a core decision-maker is identified.

Security checks across malware telemetry and agentic risk

Overview

This is a paid UpKuaJing colleague-lookup skill with disclosed API-key, billing, and local credential behavior, but users should treat it as a sensitive paid people-data tool.

Install only if you are comfortable using a paid people-data API. Confirm every fee-incurring query, protect the UPKUAJING_API_KEY stored in ~/.upkuajing/.env, avoid sharing outputs that contain sensitive personal or business data, and use the top-up workflow only when you intentionally want to create a payment order.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
Findings (14)

Lp3

Medium
Category
MCP Least Privilege
Confidence
96% confidence
Finding
The skill declares no permissions, but its documented behavior clearly includes reading and writing local files, accessing environment-based secrets, and making network requests. This mismatch is dangerous because it prevents informed consent and review; a user or platform may invoke the skill expecting a simple lookup tool when it can also access credentials, persist data locally, and contact remote services.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
The advertised purpose is a colleague search tool, but the documented behavior extends into account registration, credential storage, account inspection, pricing queries, and payment/order creation. That is a substantial scope expansion that can lead to unexpected financial actions and secret handling beyond the user’s apparent request, increasing the chance of abuse or accidental misuse.

Description-Behavior Mismatch

High
Confidence
97% confidence
Finding
The file implements authentication, API key issuance, account info, recharge orders, and pricing functions, which do not align with the declared purpose of discovering internal company teammates and mapping decision-making circles. This capability mismatch is dangerous because it can conceal billing or credential-management behavior inside a seemingly unrelated skill, increasing the risk of user deception and unauthorized credential handling.

Context-Inappropriate Capability

Medium
Confidence
94% confidence
Finding
Recharge-order creation and pricing retrieval are unrelated to the stated contact-networking purpose, so they expand the skill's operational scope into billing without clear justification. In this context, hidden payment functionality is risky because users may invoke a business-networking skill without realizing it can initiate financial workflows or expose account monetization paths.

Context-Inappropriate Capability

Medium
Confidence
89% confidence
Finding
This module adds outbound network communication and persistent local caching that are not required for the skill's stated purpose of discovering internal teammates and stakeholders. Even though the code appears intended for update checking, it creates an extra data-flow path to a remote service and filesystem state that can surprise users, expand the attack surface, and enable telemetry or abuse if the API base URL or server behavior is compromised.

Vague Triggers

Medium
Confidence
84% confidence
Finding
The trigger phrases are broad enough to match generic business-development or contact-sourcing requests, which can cause the skill to activate in contexts the user did not intend. In combination with paid API calls and sensitive people-data lookup, overbroad triggering raises the risk of unnecessary data access, profiling, and unexpected charges.

Natural-Language Policy Violations

Medium
Confidence
91% confidence
Finding
The description explicitly promotes uncovering hidden stakeholders and mapping decision-making circles, which frames the skill as a tool for covert profiling of individuals within organizations. In this context, the people-enrichment capability is more dangerous because it encourages non-transparent relationship mapping and organizational intelligence gathering rather than a narrow, legitimate lookup.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The code automatically writes a newly issued API key to a local .env file, modifying credential storage on disk without an explicit upfront warning or permission step. This is dangerous because secrets may be stored in an insecure or unexpected location, later exposed through weak file permissions, backups, logs, or accidental inclusion in source control.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The logging helpers can write full request parameters and full API responses to local log files, which may include personal data, company identifiers, and potentially sensitive business intelligence. Even though logging is disabled by default, enabling it creates silent data-at-rest exposure without sanitization, consent, retention controls, or warnings.

Missing User Warnings

Low
Confidence
82% confidence
Finding
The code posts the skill name to a remote API during version checking without any visible user-facing notice or consent in this module. While the transmitted field is limited, silent metadata transmission can still disclose installed-skill usage and environment details, which is more concerning because this behavior is unrelated to the advertised contact-discovery functionality.

Credential Access

High
Category
Privilege Escalation
Content
### **API Key Not Set**
First check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;
If UPKUAJING_API_KEY is not set, prompt the user to choose:
1. User has one: User provides it (manually add to ~/.upkuajing/.env file)
2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env
Wait for user selection;
Confidence
97% confidence
Finding
.env

Credential Access

High
Category
Privilege Escalation
Content
First check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;
If UPKUAJING_API_KEY is not set, prompt the user to choose:
1. User has one: User provides it (manually add to ~/.upkuajing/.env file)
2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env
Wait for user selection;

### **Account Top-up**
Confidence
97% confidence
Finding
.env

Credential Access

High
Category
Privilege Escalation
Content
"envFilePath": str(env_file)
        }

    # 保存到 .env 文件
    try:
        with open(env_file, 'w', encoding='utf-8') as f:
            f.write(f"{API_KEY_ENV}={api_key}\n")
Confidence
85% confidence
Finding
.env

Unpinned Dependencies

Low
Category
Supply Chain
Content
httpx>=0.23.0
Confidence
93% confidence
Finding
httpx>=0.23.0

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
scripts/common.py:196

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
SKILL.md:60