Back to skill

Security audit

费用与预算技能包(免费版)

Security checks for vulnerabilities and agentic risk

Overview

This is a local, read-only financial worksheet checker whose sensitive financial-review role is disclosed and bounded, with no evidence of network use, persistence, or hidden mutation.

Install only if you are comfortable running a local Node-based checker on exported Chinese-language financial worksheets. Treat results as arithmetic and consistency checks, not audit approval, invoice authenticity verification, legal advice, or accounting judgment; review the listed checks not run before relying on the output.

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
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • 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
Findings (45)

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding
主要能力大体匹配:这是一个费用与预算批量核对引擎,按客户处理材料、调用 14 个检查模块、汇总结论、保留原文文件与行号,而且代码明确不联网、不写文件,这些与描述一致。 但存在实质性描述偏差:描述表述为对 14 项检查逐客户核一遍,容易理解为该技能完整提供这 14 项能力;而代码注释和结构明确写明这是“免费档子集”,并带有 CHECKS_WITHHELD/未执行项机制,还会在材料覆盖不足时只跑部分检查并标记未执行。此外,真正规则实现不在本文件,而是分散在 ./parts 下的外部模块中。虽然这不影响“本地运行”,但说明当前代码块本身并不能单独证明完整实现了描述中的全部能力。综合看,应判定为描述与实际行为存在一定不匹配,重点在于描述未如实反映免费/保留能力边界。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
这是明显的描述与行为不符。代码文件自身注释已说明它是“免费档子集”,且主功能仅为“预提费用与到票冲销核对”。实际实现围绕固定表头(项目名称、期初预提余额、本期计提、本期到票冲销、期末预提余额)做内部勾稽、负数检测、合计复核、重复项和空白检测。它没有实现声明中的其余13类检查,例如预算执行差异、报销合规预检、租金押金、物流仓储、设备维保、司机运费、物业费/能耗/收益、长期待摊摊销等。并且输出结构是 findings 列表和总体 summary,不是“每个客户一行结论”。不过,关于“完全本地运行、不需要联网、不需要 API Key”这一点与代码一致:代码仅使用本地处理,不发起网络请求。总体来看,核心能力被大幅夸大,因此应判定为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
这是明显的描述与行为不符。代码文件自述就是“免费档子集”,并明确说明完整付费实现不在包里。实际功能集中在预算执行表内部勾稽,且仅限一个检查主题的部分规则。声明却承诺 14 项完整检查、逐客户输出、附文件与行号的综合核查能力。离线本地运行、无需联网这部分与代码一致,但核心能力范围和输出形态都被大幅夸大,因此应判定为 mismatch。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
该描述与代码存在明显能力不匹配。代码头部和常量说明已明确这是“免费档子集”,完整档实现不在包里。实际功能仅针对“部门费用预算执行表”进行本地文本解析和若干表内勾稽检查,属于 14 项中的一个子项,而且只执行 6 个免费检查,另有 5 个检查被列入未执行。描述却宣称可对 14 项检查逐客户全面核对,并输出每个客户一行、带原文文件与行号的结论,这些能力在当前代码中都未体现。另一方面,“完全本地运行、不联网、不需要 API Key”与代码行为是一致的,因此 mismatch 主要来自功能范围被显著夸大,而不是资源访问方面的问题。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
存在明显描述—行为不符。代码文件名、注释、常量和主逻辑都表明它只负责“承运司机运费结算核对”,而不是声明中的 14 项综合费用预算审查。代码中 CHECKS_GIVEN 仅有 7 个已执行检查,且 CHECKS_WITHHELD 明确列出 5 个未执行检查,注释还直接说明这是“免费档子集”“完整档(付费)的实现不在这个包里”。此外,输入要求是特定字段的司机运费结算文本表,输出也是针对运单/司机的 findings,不是“逐客户一行结论”的总览式结果。资源使用方面,“本地运行、不联网”与声明基本一致,因此不构成问题;核心不符在于功能范围被大幅夸大。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
该描述与代码存在明显的能力范围不一致。代码本身在文件头和实现中都反复说明这是“设备维保与备件领用费用核对”的免费档子集,只做本地表格算术/一致性校验;并通过 CHECKS_WITHHELD 明确列出未执行的检查。用户声明却将其表述为一个可对 14 大类费用预算材料进行全面核查的总能力,还声称逐客户输出结论。虽然“完全本地运行、不联网、无需 API Key”这一点与代码一致,但主功能范围被大幅夸大,属于实质性描述-行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
该代码与“完全本地运行、不联网”这一点基本一致,也没有声明外的网络/API行为。但核心能力与声明严重不符。声明把技能描述为覆盖14个费用/预算审查主题的综合核对工具,而代码文件本身明确是“报销单合规预检(报销单 + 发票)本地引擎”。在实际实现中,analyze()只调用了3个检查函数:重复发票号、发票要素完整性、模板占位符残留。虽然常量CHECKS_WITHHELD列出了更多检查项,但并未执行;更不用说声明中的大量其他业务检查(预算执行差异、租金押金、物流仓储、车队油耗、物业收益分成、长期待摊摊销等)完全没有对应逻辑。因此主目的被明显缩窄,且功能范围与声明存在重大落差,应判定为描述与行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
描述与代码存在明显的范围和用途不一致。描述承诺一个覆盖 14 个审计项目的综合核对能力,但该代码文件只处理“车队油耗与运费核对”这一项,而且还是免费档子集,仅执行 6 个基础检查,另有 5 个该专项内检查都被标记为 withheld/not run。代码没有实现其他 13 个宣称检查项,也没有“逐客户一行结论”的汇总逻辑;它是按台账表格中的车辆/月度明细行做勾稽校验并输出 findings。另一方面,“本地运行、不联网、无需 API Key”与代码行为是一致的,因此 mismatch 的核心在于功能范围和主要目的被大幅夸大。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
该描述与代码的主功能存在明显且重大的不一致。描述承诺的是一个面向多类费用与预算材料的综合核查工具,覆盖14个业务主题,并按客户输出结论;而代码只是单一的运费月结单算术核对器,输入为文本表格,输出为问题列表和汇总。它没有实现预算执行、报销、租金、设备维保、物业收益分成、长期待摊摊销等任何相关能力。虽然“本地运行、无需联网/API Key”与代码一致,但这只是运行方式一致,不能弥补核心业务能力与输出形式的巨大偏差。因此应判定为描述与实际行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
该描述与代码存在明显的能力范围不一致。代码是一个 `lease-rent-check.js` 子模块,只针对租金账单表做确定性算术勾稽:月租×计租月数、本期应收合计、期末欠租、合计复核、重复项与空白值检查。它既没有实现声明中的其余预算/费用类 13 个检查项,也没有实现“押金结算”本身,反而在 `OUT_OF_SCOPE` 中明确写出押金分录不在范围内。此外,代码注释说明这是“免费档子集”,部分检查只是说明文本,不会执行。虽然“本地运行、不联网、不要 API Key”与代码行为一致,但核心功能范围被显著夸大,因此应判定为描述与实际行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
该代码与“完全本地运行、无需联网”这一点基本一致,但核心功能范围与声明严重不符。文件头和实现都明确说明这是“免费档子集”,仅针对‘物流仓储与操作费’这一检查项做部分勾稽校验,且有若干检查项被保留未执行。主入口只接收一个文本表格,解析仓库/期间/体积/托盘数/单价/天数/费用等列,输出发现的问题列表与统计摘要。这与声明中覆盖14类费用与预算核对、逐客户输出一行结论的主要用途存在实质性差异,因此应判定为描述与实际行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
该代码与“完全本地运行、不联网”这一点基本一致,也没有发现越权资源访问或额外触发器问题。但从核心功能看,声明与实际严重不符。描述承诺的是一个覆盖14个检查主题的综合核对工具,而这段代码只实现了“长期待摊费用摊销核对”这一单一子模块,且还是免费版子集,只执行6个内部勾稽检查,另外5个检查项明确列为未执行。输出形式也与声明不符:声明强调“逐客户一行结论,结论带原文文件与行号”,而代码只是对贴入的单张文本表按项目行生成异常列表,只有行号,没有文件级引用,也没有客户维度汇总。因此这是明显的描述-行为不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
描述明显夸大。代码文件名、注释、检查项和公式都表明其唯一核心用途是“物业费与滞纳金核对”。代码中显式列出 CHECKS_GIVEN 仅 6 项,且 CHECKS_WITHHELD 也只是该单一领域内未执行的补充检查,不涉及声明中的其他 13 个业务主题。它不会检查预算执行差异、报销单合规、物流仓储、设备维保、运费对账、公共收益分成、长期待摊摊销等内容。此外,结果结构是 findings 列表加 summary,而不是“逐客户一行结论”;引用能力也只有行号,没有文件级来源管理。唯一与声明一致的是本地运行、无需联网/API Key。整体属于主功能与能力范围的重大不一致。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
描述把技能包装成一个覆盖14类费用/预算审查的通用本地核对工具,但这段代码的主功能非常具体且狭窄:仅处理“物业公共收益公示与分成”台账,并且只执行其中的免费子集检查。代码中通过 CHECKS_GIVEN / CHECKS_WITHHELD 明确表明若干检查项未执行,且输入要求是特定表头的收益台账,不是通用费用预算材料。虽然“本地运行、无需联网/API Key”这一点与描述一致,但核心用途、覆盖范围、输出形式都与声明严重不符,因此应判定为描述与实际行为存在重大不匹配。

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
该描述与代码行为存在明显不匹配。声明把技能描述为一个覆盖14项业务检查的综合核对工具,但提供的代码文件只针对“物业公共能耗分摊”这一单独场景。注释与常量 `CHECKS_GIVEN`/`CHECKS_WITHHELD` 明确说明这是“免费档子集”,实际只做6项检查,且还有5项同主题检查未执行。代码没有任何迹象表明会处理预提费用、预算执行差异、报销合规、租金押金、物流仓储、设备维保、运费结算、物业费滞纳金、公共收益分成、长期待摊摊销等其余声明能力。另一方面,声明中的“完全本地运行,不需要联网/API Key”与代码相符,因为代码只用Node标准库且明确不发起网络请求。因此,资源访问方面基本一致,但核心能力范围和输出承诺被显著夸大,应判定为描述与实际行为不符。

Ae1

High
Category
analysis-evasion
Content
node scripts/run.mjs --sample # 单客户样例(内置)
Confidence
100% confidence
Finding
Referenced artifact was not completely inspected

Ae1

High
Category
analysis-evasion
Content
node scripts/run.mjs --sample # 单客户样例(内置)
Confidence
100% confidence
Finding
Referenced artifact was not completely inspected

Ae1

High
Category
analysis-evasion
Content
node scripts/run.mjs --sample # 单客户样例(内置)
Confidence
100% confidence
Finding
Referenced artifact was not completely inspected

Ae1

High
Category
analysis-evasion
Content
node scripts/run.mjs --sample # 单客户样例(内置)
Confidence
100% confidence
Finding
Referenced artifact was not completely inspected

Description-Behavior Mismatch

High
Confidence
98% confidence
Finding
The implementation exposes only 3 active checks while the skill metadata and module comments describe a much broader 14-item fee/budget audit capability. In a compliance workflow, this creates a dangerous false sense of coverage: users may rely on the tool to clear reimbursements or budget materials that were never actually checked, causing financial loss or audit failure.

Description-Behavior Mismatch

High
Confidence
99% confidence
Finding
The file explicitly states it is only a free-tier subset and implements only a narrow freight reconciliation capability, while the skill metadata/manifest claims a much broader 14-check fee and budget review scope. This mismatch can cause callers to rely on missing controls and treat unperformed checks as completed, creating a security/integrity risk through false assurance rather than code execution.

Natural-Language Policy Violations

Medium
Confidence
89% confidence
Finding
The file’s user-facing natural-language documentation and required material formats are entirely specified in Chinese, including section headers and expected input conventions, with no indication that users may choose another language or locale. Under the policy, forcing a specific language without opt-in is a natural-language policy violation unless the locale restriction is explicitly documented and justified.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The package metadata promises broad coverage across 14 fee/budget checks, but this module explicitly implements only a subset and withholds additional logic. In a financial review skill, that mismatch can cause users to rely on incomplete analysis and falsely believe important control checks were performed, leading to missed accounting errors or compliance gaps.

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
The file’s natural-language instructions, examples, field names, and user-facing messages are entirely in Chinese, including required input guidance and returned advice. There is no indication that the skill is region-specific or that users may opt into another language, which can violate a language/locale policy requiring user choice or documented justification.

Intent-Code Divergence

Medium
Confidence
86% confidence
Finding
The documentation states that no conclusion should be given when materials are insufficient, yet the code still produces findings even when required row cells are blank or unparsable. This creates inconsistent semantics where downstream users may treat a partial, low-quality analysis as authoritative, which is risky in financial control workflows.

Static analysis

No suspicious patterns detected.