| 제목 | geekgod382 filesystem-mcp-server 4e3e83852b1395de0a437bd4fd66376422f4ea0c Path Traversal |
|---|
| 설명 | The repository README says access is limited to configured ALLOWED_PATHS, with the default root set to the operator's home directory. In server.py, that policy is implemented by is_path_allowed(path), which computes os.path.abspath(path) and then checks abs_path.startswith(allowed) for each configured root.
That string-prefix check is bypassable. If /home/alice is allowlisted, a sibling path such as /home/alice_backup/loot.txt still starts with /home/alice and is therefore treated as allowed even though it is outside the intended root.
Because the same helper guards read_file_tool, write_file_tool, delete, move, copy, and directory-listing operations, an untrusted MCP caller can use prefix-sharing paths to read, write, or delete files outside the configured ALLOWED_PATHS boundary.
|
|---|
| 원천 | ⚠️ https://github.com/geekgod382/filesystem-mcp-server/issues/1 |
|---|
| 사용자 | LargeW (UID 97302) |
|---|
| 제출 | 2026. 04. 13. AM 11:36 (2 개월 ago) |
|---|
| 모더레이션 | 2026. 04. 29. PM 01:36 (16 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 360123 [geekgod382 filesystem-mcp-server 1.0.0 read_file_tool/write_file_tool server.py is_path_allowed 디렉토리 순회] |
|---|
| 포인트들 | 20 |
|---|