Versioned security assessment

Report ID: SA-81DCBA71

10/28/2026, 5:13:35 PM

feeling-search security assessment v4

Skill Security Certification Report

Audit History
Scanner version 3.0.0 Audit model: codex Latest published report
Skill name
feeling-search
Version
v1.1.2
Maintainer
xixi048
Coverage
3 Files scanned · 1,099 Lines analyzed
Policy version
skillstore-security-audit-policy-v1

Highest confirmed finding severity

Medium

1 confirmed security finding requires attention.

Installation context

Check the current Skill page

This page summarizes report evidence only. The Skill page provides the canonical install advisory.

Open current Skill page

This report does not block or authorize the manifest or ZIP.

Most alerts are false positives involving Markdown backticks, multilingual prose, ordinary Python indexing, and documented application configuration. Confirmed risks concern quota tokens in GET URLs and token files created without restrictive permissions. Configurable endpoints also lack HTTPS enforcement; no evidence found for prompt injection, obfuscated execution, or deliberate credential exfiltration.

Report position

Latest published report

Latest refers to the report sequence, not to artifact currentness.

Audit attestation

Active attestation

A public attestation is available for this exact report.

Human verification

Not verified

No human verification is recorded for this report.

Coverage

3 Files scanned · 1,099 Lines analyzed

4 items shown for review

Limitations

This report does not claim runtime or sandbox execution and does not prove the absence of side effects.

Evidence chain

Follow the evidence from source binding to the install contract. Available evidence supports verification; it is not a safety guarantee.

  1. Source

    Commit and path bound

  2. Artifact

    Content and tree hashes bound

  3. Audit

    Complete

  4. Install contract

    Open manifest to verify

    Open manifest

Capabilities observed

Observed means this report recorded supporting evidence. Not recorded does not prove that a capability is absent.

Contains scripts

May execute code included with the Skill.

Not recorded by this audit

Network access

May connect to external services.

Observed in 10 evidence locations

Filesystem access

May read or write local files.

Observed in 8 evidence locations

Env variables

May read values from the process environment.

Observed in 4 evidence locations

External commands

May invoke commands or programs outside the Skill.

Observed in 50 evidence locations

Capability review items (3)
Medium
Python file write/append
with open(tmp, "w", encoding="utf-8") as fh:
save_quota writes bearer tokens using ordinary open without enforcing private permissions. Under permissive umasks, other local users can read accessible credential files.
Low
Python HTTP libraries
req = urllib.request.Request(url, method="GET")
The GET helper accepts quota_url output containing the bearer token in its query string. Token validation and balance requests expose credentials to URL logging.
Low
Python HTTP libraries
with urllib.request.urlopen(req, timeout=TIMEOUT) as resp:
urlopen transmits GET requests used by quota validation and balance commands. Their URLs include bearer tokens, creating credential exposure through server or proxy logs.

Risk findings

Confirmed security concerns are separated from items that still need review.

Confirmed security concerns (1)

RISK-001 Medium
Quota Credentials Can Be Sent to Insecure Configured Endpoints
env_base accepts FS_API_BASE without HTTPS validation. Quota and image commands reuse saved bearer tokens against that endpoint, exposing credentials over plaintext HTTP.
The code directly concatenates the configured base with authenticated routes without checking its scheme. Exploitation requires an insecure endpoint configuration; the default uses HTTPS.

Remediation

Suggested fixes recorded by this audit. Applying them is the maintainer’s responsibility.

  1. FIX-001
    Medium
    Quota files and temporary files use default permissions, which can expose credentials under permissive umasks.
    Create credential files exclusively with owner-only permissions and private directories; apply equivalent Windows access controls before storing tokens.
  2. FIX-002
    Medium
    FS_API_BASE accepts insecure endpoints while commands automatically reuse saved quota credentials.
    Require HTTPS for authenticated requests and bind saved tokens to their issuing origin; require explicit approval before sending credentials elsewhere.
  3. FIX-003
    Low
    Quota balance and token validation requests place bearer tokens in URL query parameters.
    Send quota tokens only through the supported X-FS-Quota header, and redact credentials from request logs and diagnostic output.

Expert evidence

Immutable subject identity, scanner metadata, dismissed matches, and source-level evidence.

Artifact subject

Marketplace commit
81dcba714ae5ba0c5bcfb8914fb9bc2fbb2bb48a
Content hash
ed2875354adb6b36f46de3ee80eee89ee14629e79754897c05354dc30d198e93
Tree hash
775d3aa9baa8c742eefc90b2a3089529863cc457128e05ed467a227fa207d07b
Skill path
skills/xixi048/feeling-search
Audit payload hash
8dfa7b07cbaf178d80bfaf4da5f7f2d4

Analysis metadata

Audit model: codex

Analysis state: Complete

Scope is limited to the recorded files, lines, methods, and evidence. No runtime or sandbox execution is claimed.

Verify and export

The manifest and lockfile bind install artifacts to cryptographic hashes. This integrity claim is separate from the security assessment.

Audit attestation: active