Skip to content

Security: Output Cache Potential Information Disclosure#457

Open
tuanaiseo wants to merge 1 commit into
mrexodia:mainfrom
tuanaiseo:contribai/fix/security/output-cache-potential-information-discl
Open

Security: Output Cache Potential Information Disclosure#457
tuanaiseo wants to merge 1 commit into
mrexodia:mainfrom
tuanaiseo:contribai/fix/security/output-cache-potential-information-discl

Conversation

@tuanaiseo

Copy link
Copy Markdown

Problem

The rpc.py module implements an download cache for large outputs with OUTPUT_CACHE_MAX_SIZE = 100. The _generate_output_id uses UUID4 which is unpredictable, but cached outputs are accessible via /output/{output_id}.json without authentication shown in the code. If the HTTP server is exposed, this could leak sensitive analysis data from previous tool executions.

Severity: medium
File: src/ida_pro_mcp/ida_mcp/rpc.py

Solution

Add authentication or time-limited signed URLs for cached output access. Implement cache expiration and automatic cleanup. Consider encrypting cached outputs or restricting access to the same transport session that generated them.

Changes

  • src/ida_pro_mcp/ida_mcp/rpc.py (modified)

Testing

  • Existing tests pass
  • Manual review completed
  • No new warnings/errors introduced

…sure

The rpc.py module implements an download cache for large outputs with OUTPUT_CACHE_MAX_SIZE = 100. The _generate_output_id uses UUID4 which is unpredictable, but cached outputs are accessible via /output/{output_id}.json without authentication shown in the code. If the HTTP server is exposed, this could leak sensitive analysis data from previous tool executions.

Affected files: rpc.py

Signed-off-by: tuanaiseo <221258316+tuanaiseo@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant