Back to skill

Security audit

mobile_pay_bill_ocr

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it says: it sends user-selected mobile payment screenshots to Scnet's OCR API and returns structured transaction data, with prominent privacy warnings.

Install only if you are comfortable sending payment screenshots and extracted transaction details to Scnet's remote OCR service. Review the provider's privacy and retention terms, use a dedicated API key stored with restricted file permissions, and do not upload bills containing other people's personal information unless you have permission.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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 (4)

Missing User Warnings

Medium
Confidence
91% confidence
Finding
The documentation instructs the skill to upload mobile payment bill images to a third-party OCR endpoint, but it does not warn that these images and extracted fields may contain highly sensitive financial and personal data. In this skill context, the omission is meaningful because the entire feature operates on payment screenshots, making silent external transmission a privacy and data-handling risk rather than a generic API call.

External Transmission

Medium
Category
Data Exfiltration
Content
| 变量名 | 默认值 | 说明 |
|--------|--------|------|
| SCNET_API_KEY | 必需 | Scnet API 密钥 |
| SCNET_API_BASE | https://api.scnet.cn/api/llm/v1 | API 基础地址(一般无需修改) |

### 输出
Confidence
92% confidence
Finding
The skill explicitly transmits highly sensitive mobile payment screenshots to an external third-party API endpoint. In this skill context, that data can contain financial history, identities, and transaction counterparties, so external transmission materially increases privacy and compliance risk even though the documentation discloses it.

External Transmission

Medium
Category
Data Exfiltration
Content
> 本文档仅针对 `mobile_pay_bill_ocr` 技能使用的 **移动支付账单识别** 场景。本技能仅支持 `MOBILE_PAYMENT_BILL` 一种识别类型,不接受身份证、合同、印章、发票、卡证等非支付类文档。

## 接口地址
`POST https://api.scnet.cn/api/llm/v1/ocr/recognize`

## 请求头
- `Content-Type: multipart/form-data`
Confidence
84% confidence
Finding
The file documents external transmission to https://api.scnet.cn/api/llm/v1/ocr/recognize, which means payment screenshots leave the local environment and are processed by a remote service. In a skill specifically designed for mobile payment bills, this materially increases sensitivity because the uploaded images can expose merchant names, transaction amounts, timestamps, account identifiers, and other financial metadata.

External Transmission

Medium
Category
Data Exfiltration
Content
)
        sys.exit(error_msg)

    config.setdefault('SCNET_API_BASE', 'https://api.scnet.cn/api/llm/v1')
    return config

def recognize_with_retry(ocr_type, file_path, config, retry_count=0):
Confidence
92% confidence
Finding
This skill transmits user-supplied payment-bill screenshots to an external API endpoint for OCR processing. Because the content likely contains highly sensitive financial and personal data, the external transmission creates a real privacy and data-handling risk if users are unaware, if transport targets are changed via config, or if the third party is not appropriately trusted and governed.

Static analysis

No suspicious patterns detected.