Back to skill

Security audit

Query real-time and historical financial data across equities and crypto prices, market moves, metrics, and trends for analysis, alerts, and reporting

Security checks for vulnerabilities and agentic risk

Overview

MarketPulse is a disclosed financial-data lookup skill that sends requested market queries to the AISA API using the user's API key, with no hidden persistence or local data access found.

Install only if you are comfortable sending market research requests, ticker lists, dates, screening filters, and your AISA bearer token to api.aisa.one. Avoid using confidential trading strategies or sensitive internal watchlists unless that third-party service is approved for your environment.

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 Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (29)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding

The skill declares required environment variables and clearly relies on network access, but it does not declare an explicit tool scope such as permissions or allowed-tools. That creates an authorization gap where a host or reviewer cannot easily enforce least privilege, increasing the chance the skill runs with broader capabilities than intended.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The skill references the external domain api.aisa.one as part of its core operation, confirming that user requests are sent to an outside service. This is not inherently malicious, but it is a genuine external transmission surface that should be transparently disclosed and constrained.

Content

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

bash
# Historical price data (daily)
curl "https://api.aisa.one/apis/v1/financial/prices?ticker=AAPL&interval=day&interval_multiplier=1&start_date=2025-01-01&end_date=2025-12-31" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Weekly price data

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The skill references the external domain api.aisa.one as part of its core operation, confirming that user requests are sent to an outside service. This is not inherently malicious, but it is a genuine external transmission surface that should be transparently disclosed and constrained.

Content

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

bash
# Historical price data (daily)
curl "https://api.aisa.one/apis/v1/financial/prices?ticker=AAPL&interval=day&interval_multiplier=1&start_date=2025-01-01&end_date=2025-12-31" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Weekly price data

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This documented request sends authenticated stock query data to api.aisa.one, creating a routine but real data egress path. The risk is contextual rather than exploit-specific: user research activity and API credentials are involved in every call.

Content

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

md
-H "Authorization: Bearer $AISA_API_KEY"

# Weekly price data
curl "https://api.aisa.one/apis/v1/financial/prices?ticker=AAPL&interval=week&interval_multiplier=1&start_date=2025-01-01&end_date=2025-12-31" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Minute-level data (intraday)

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The intraday price example transmits authenticated market queries to an external provider. Such requests may reveal trading timing interests or analysis behavior, so this is a valid egress concern even though it aligns with the skill's purpose.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Minute-level data (intraday)

curl "https://api.aisa.one/apis/v1/financial/prices?ticker=AAPL&interval=minute&interval_multiplier=5&start_date=2025-01-15&end_date=2025-01-15"
-H "Authorization: Bearer $AISA_API_KEY"

text

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The company news example sends a ticker and authorization token to a third-party service. In context this is expected behavior, but it still constitutes data transfer to an external party and should be treated as such.

Content

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

bash
# Get news by ticker
curl "https://api.aisa.one/apis/v1/financial/news?ticker=AAPL&limit=10" \
  -H "Authorization: Bearer $AISA_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This financial statements request is an authenticated outbound call to api.aisa.one. The main risk is privacy and governance rather than code execution: user lookups and usage patterns are sent to an external service.

Content

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

bash
# All financial statements
curl "https://api.aisa.one/apis/v1/financial/financial_statements/all?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Income statements

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The income statement example performs external transmission of query data and credentials to a third-party API. This is ordinary for API-backed skills, but still a real security-relevant egress channel.

Content

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

md
-H "Authorization: Bearer $AISA_API_KEY"

# Income statements
curl "https://api.aisa.one/apis/v1/financial/financial_statements/income?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Balance sheets

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This balance sheet lookup sends authenticated traffic to an external service. The danger is moderate because the API key and user-requested symbols leave the local environment, even though no obviously sensitive local files are accessed.

Content

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

md
-H "Authorization: Bearer $AISA_API_KEY"

# Balance sheets
curl "https://api.aisa.one/apis/v1/financial/financial_statements/balance?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Cash flow statements

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The cash flow request is another authenticated egress path to api.aisa.one. It is consistent with the skill's stated purpose, but users should still be informed that their request parameters and usage are visible to the service provider.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Cash flow statements

curl "https://api.aisa.one/apis/v1/financial/financial_statements/cash?ticker=AAPL"
-H "Authorization: Bearer $AISA_API_KEY"

text

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This metrics snapshot example transmits a ticker and bearer token to an external provider. The issue is not hidden malware behavior, but undisclosed or under-scoped external data transfer.

Content

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

bash
# Real-time financial metrics snapshot
curl "https://api.aisa.one/apis/v1/financial/financial-metrics/snapshot?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Historical financial metrics

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

Historical financial metrics requests are sent to a third-party API with authentication. That creates a legitimate but security-relevant dependency on external transmission and secret handling.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Historical financial metrics

curl "https://api.aisa.one/apis/v1/financial/financial-metrics?ticker=AAPL"
-H "Authorization: Bearer $AISA_API_KEY"

text

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The analyst estimates example shows external authenticated queries to api.aisa.one. This can expose user research subjects and request history to the provider, so it should be treated as a true egress finding.

Content

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

bash
# Earnings per share estimates
curl "https://api.aisa.one/apis/v1/financial/analyst/eps?ticker=AAPL&period=annual" \
  -H "Authorization: Bearer $AISA_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This insider trades lookup sends query data and authentication to an external service. In some environments, the topic being researched could itself be sensitive, making transparency and scoping important.

Content

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

bash
# Get insider trades
curl "https://api.aisa.one/apis/v1/financial/insider/trades?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The institutional ownership request is another outbound authenticated API call. The external transmission is expected but remains a real security concern because user interest data and an access token are shared with a third party.

Content

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

bash
# Get institutional ownership
curl "https://api.aisa.one/apis/v1/financial/institutional/ownership?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This SEC filings example transmits requested company data and credentials to api.aisa.one. The context makes the activity legitimate, but not risk-free: it still creates an observable external research trail.

Content

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

bash
# Get SEC filings
curl "https://api.aisa.one/apis/v1/financial/sec/filings?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Get SEC filing items

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The SEC items request is an authenticated external transmission. Even though the data requested is public-market information, the user’s pattern of access and authorization secret are still security-relevant.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Get SEC filing items

curl "https://api.aisa.one/apis/v1/financial/sec/items?ticker=AAPL"
-H "Authorization: Bearer $AISA_API_KEY"

text

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The company facts lookup sends ticker-based requests and a bearer token to a remote service. This is functionally necessary but should still be explicitly declared and constrained.

Content

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

bash
# Get company facts by CIK
curl "https://api.aisa.one/apis/v1/financial/company/facts?ticker=AAPL" \
  -H "Authorization: Bearer $AISA_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
86% confidence
Finding

The stock screener POST request can transmit richer user-defined filters and analysis criteria to the external API, potentially revealing proprietary investment strategy or internal screening logic. That makes this egress path slightly more sensitive than simple ticker lookups.

Content

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

bash
# Screen for stocks matching criteria
curl -X POST "https://api.aisa.one/apis/v1/financial/search/stock" \
  -H "Authorization: Bearer $AISA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filters":{"pe_ratio":{"max":15},"revenue_growth":{"min":0.2}}}'

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This interest rates snapshot example performs an authenticated outbound request to api.aisa.one. The transmitted content is low sensitivity here, but the general external transmission and secret exposure considerations still apply.

Content

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

bash
# Current interest rates
curl "https://api.aisa.one/apis/v1/financial/interest_rates/snapshot" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Historical interest rates

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The historical interest rates request sends query data and the API key to an external provider. This is expected behavior for the skill, yet still a genuine egress channel requiring disclosure and least-privilege controls.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Historical interest rates

curl "https://api.aisa.one/apis/v1/financial/interest_rates/historical?bank=fed"
-H "Authorization: Bearer $AISA_API_KEY"

text

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The crypto snapshot example transmits the requested ticker and authentication token to a third-party API. Crypto watchlists and request patterns may be sensitive in some operational contexts, so the external transmission is security-relevant.

Content

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

bash
# Get current BTC price (use ticker format: SYMBOL-USD)
curl "https://api.aisa.one/apis/v1/financial/crypto/prices/snapshot?ticker=BTC-USD" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Get current ETH price

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

This ETH snapshot request is an authenticated external call. It matches the skill’s purpose, but still exposes user query activity and the bearer token to the service provider.

Content

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

md
-H "Authorization: Bearer $AISA_API_KEY"

# Get current ETH price
curl "https://api.aisa.one/apis/v1/financial/crypto/prices/snapshot?ticker=ETH-USD" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Get current SOL price

External Transmission

Medium
Category
Data Exfiltration
Confidence
84% confidence
Finding

The SOL snapshot example demonstrates another external data egress path using the user's API key. The risk is moderate because the skill is designed for this behavior, but the documentation does not pair it with strong privacy or permission scoping guidance.

Content

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

md
-H "Authorization: Bearer $AISA_API_KEY"

# Get current SOL price
curl "https://api.aisa.one/apis/v1/financial/crypto/prices/snapshot?ticker=SOL-USD" \
  -H "Authorization: Bearer $AISA_API_KEY"

# Get TRUMP token price

External Transmission

Medium
Category
Data Exfiltration
Confidence
85% confidence
Finding

The TRUMP token snapshot request is still just an authenticated third-party API call, but queries involving politically themed or speculative assets may be especially sensitive from a privacy or reputational perspective. This slightly increases the contextual sensitivity of the egress path.

Content

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

-H "Authorization: Bearer $AISA_API_KEY"

Get TRUMP token price

curl "https://api.aisa.one/apis/v1/financial/crypto/prices/snapshot?ticker=TRUMP-USD"
-H "Authorization: Bearer $AISA_API_KEY"

text

Static analysis

No suspicious patterns detected.