Back to skill

Security audit

Basic Integration Guide

Security checks for vulnerabilities and agentic risk

Overview

This is a documentation-only integration guide, but it normalizes insecure authenticated service calls and destructive business-data APIs without enough safeguards.

Review before installing or following the guide. Treat the examples as non-production until you add TLS or enforced mTLS, redact Authorization and tenant headers from logs, use least-privilege short-lived credentials, replace SNAPSHOT dependencies with pinned releases from a trusted repository, and add confirmation, backup, and approval gates before any delete, reset, import, rollback, or batch-storage operation.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (2)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:48
Finding

Authenticated Service Communications Are Configured Without Transport Encryption

Content
View full analysis
' ``` ### Technical Analysis The documented gRPC configuration explicitly selects plaintext negotiation, while the REST examples use `http://` URLs. Elsewhere, the guide directs clients to transmit `X-TENANT`, `X-UID`, and OIDC bearer-token headers through these service channels. Plaintext communication does not provide transport confidentiality, endpoint authentication, or message integrity. An attacker who can observe or manipulate the relevant network path could read authentication material and tenant context, modify requests or responses, or replay captured credentials. Although the examples use an internal service hostname, an internal network boundary alone does not provide equivalent protection to TLS. Compromised workloads, malicious insiders, incorrectly exposed network interfaces, or weaknesses in cluster network isolation could provide the required network position. ### Attack Path 1. An application is deployed using the documented plaintext gRPC configuration or HTTP examples. 2. The application sends tenant identifiers, user identifiers, bearer tokens, configuration values, or service responses across the network. 3. An attacker gains visibility into the internal network path, such as through a compromised workload, network misconfiguration, or packet-capture capability. 4. The attacker captures an OIDC bearer token or modifies a management request in transi ...[truncated 992 chars]
Remediation
View remediation

T08 · Insecure Dependencies

Warning
Location
SKILL.md:21
Finding

Mutable Maven SNAPSHOT Dependencies Weaken Supply-Chain Integrity

Content
View full analysis
com.ginlong basic-client 1.0.0-SNAPSHOT ``` ```xml com.ginlong basic-grpc-interface 1.0.0-SNAPSHOT ``` ### Technical Analysis Maven `SNAPSHOT` versions are mutable coordinates. Two builds using the same declared version can resolve to different artifact contents depending on repository state and update timing. This prevents the dependency declaration from uniquely identifying the code that was reviewed and makes builds less reproducible. The guide does not specify an approved artifact repository, cryptographic signature policy, trusted checksum, or dependency-verification procedure. Exploitation would require an attacker to influence a repository from which these coordinates are resolved, compromise publishing credentials, or abuse an unsafe repository configuration. The snippets do not by themselves prove that any current artifact is malicious. ### Attack Path 1. A developer follows the guide and configures the application with the documented `1.0.0-SNAPSHOT` dependencies. 2. Maven resolves the coordinates through repositories configured in the project, user settings, parent POM, or organizational mirror. 3. An attacker compromises an authorized publishing account or repository, or otherwise gains the ability to provide an artifact for the mutable coordinates. 4. The attacker publishes a modified SNAPSHOT under the same group ID, artifact ID, and version. 5. A later build refreshes the SNAPSHOT and incorporates the modified artifact without a source-code change to the consuming project. 6. Malicious dependency code executes during the build if ...[truncated 611 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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
Findings (10)

Hidden Instructions

High
Category
Prompt Injection
Confidence
70% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 186)May include surrounding context.

SearchTermsRespPB resp = i18nStub.searchTerms(req);

text

<!-- PLACEHOLDER_SECTION_3_2 -->

### 3.2 ProjectService

Hidden Instructions

High
Category
Prompt Injection
Confidence
70% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 186)May include surrounding context.

SearchTermsRespPB resp = i18nStub.searchTerms(req);

text

<!-- PLACEHOLDER_SECTION_3_2 -->

### 3.2 ProjectService

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · SKILL.md (reported line 716)May include surrounding context.

md
| K8S_ALL_STORAGE_OSS_ENABLED | OSS 存储开关 |
| K8S_ALL_STORAGE_OSS_ENDPOINT | OSS 端点 |
| K8S_ALL_STORAGE_OSS_KEY | OSS Access Key |
| K8S_ALL_STORAGE_OSS_SECRET | OSS Access Secret |
| K8S_ALL_MID_COPYPARTY_ADDR | CopyParty 地址 |
| K8S_ALL_MID_COPYPARTY_PREFIX | CopyParty 路径前缀 |
| K8S_ALL_MID_COPYPARTY_USER | CopyParty 用户名 |

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The guide shows how to pass tenant identifiers, user IDs, and bearer tokens but does not include security guidance on protecting tokens, avoiding logging sensitive headers, or using secure transport. This can lead implementers to expose authentication material in logs, configs, screenshots, or plaintext network paths.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The documentation lists destructive operations such as delete, reset, and clearing draft data without prominently warning that these actions may be irreversible or cause persistent data loss. In an integration guide, users may copy these examples directly into operational workflows, increasing the chance of accidental destructive actions in real environments.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 364)May include surrounding context.

| GET | project/{projectCode}/app/{appCode}/lang | 列出项目相关语言 | | GET | project/{projectCode}/app/{appCode}/translation/version | 词条空间最新版本和语言信息 |

curl 示例:

bash
# 搜索词条空间

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The tenant and dictionary sections document operations including cascading deletes, rollback, import, and draft clearing without safety warnings about persistence, rollback scope, or operational side effects. Because these APIs affect shared configuration and published assets, misuse could disrupt tenants or corrupt production data across environments.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 423)May include surrounding context.

| PUT | tenant-conf/{id} | 更新租户配置 | | DELETE | tenant-conf/{id} | 删除租户配置 |

curl 示例:

bash
# 按编码查询租户

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 527)May include surrounding context.

| POST | /{projectCode}/import | 导入字典资产 | | DELETE | /{projectCode}/draft | 清空草稿资产 |

curl 示例:

bash
# 统一查询字典(生产使用)

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
82% confidence
Finding

The natural-language instructions and descriptions are presented exclusively in Chinese, and the document does not indicate that this locale restriction is optional or region-specific. Per SQP-3, forcing a specific language without user opt-in can be a language/locale policy issue.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.