Back to skill

Security audit

Kalshi

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent read-only Kalshi market lookup guide with no evidence of hidden persistence, credential use, or destructive behavior.

Install only if you want an agent to query public Kalshi prediction-market data. Treat prices as market-implied probabilities, not betting advice, and verify any financial or trading decision independently.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 · references/api.md (reported line 3)May include surrounding context.

md
# Kalshi API

- **Base URL:** `https://api.elections.kalshi.com/trade-api/v2`
- All endpoints are public, read-only. No authentication required.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

The documentation says at L135 that any command not listed in references/api-reference.md does not exist, and the command table at L84-L94 does not include get_series_list(). Yet L149 instructs users to call get_series_list() for troubleshooting, which directly contradicts the file's own intent guidance.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.