| Title | elie mcp-project 0.1.0 Path Traversal |
|---|
| Description | MCP Research Server stores arXiv search results under PAPER_DIR = "papers". The search_papers(topic, max_results) tool incorrectly reuses the caller-controlled topic string as a filesystem directory name:
path = os.path.join(PAPER_DIR, topic.lower().replace(" ", "_"))
file_path = os.path.join(path, "papers_info.json")
Because the code only lowercases the string and replaces spaces, traversal sequences such as ../ remain intact. A malicious topic therefore escapes the intended papers/ directory and causes the server to create or overwrite papers_info.json in an attacker-chosen location on the host.
|
|---|
| Source | ⚠️ https://github.com/elie/mcp-research-server/issues/1 |
|---|
| User | LittleW (UID 97283) |
|---|
| Submission | 04/12/2026 12:14 (3 months ago) |
|---|
| Moderation | 04/28/2026 15:17 (16 days later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 359971 [elie mcp-project 0.1.0 research_server.py search_papers topic path traversal] |
|---|
| Points | 20 |
|---|