Umbra Wiki weakness weakness/CWE-1236
Back to wiki

CWE-1236 — Improper Neutralization of Formula Elements in a CSV File

provenance: imported · CWE: CWE-1236

CWE-1236: Improper Neutralization of Formula Elements in a CSV File

MITRE CWE weakness

Kind Weakness
Abstraction Base
Status Incomplete
Likelihood of exploit

Description

The product saves user-provided information into a Comma-Separated Value (CSV) file, but it does not neutralize or incorrectly neutralizes special elements that could be interpreted as a command when the file is opened by a spreadsheet product.

Common consequences

  • Confidentiality: Read Application Data, Execute Unauthorized Code or Commands

Mitigations

Implementation — When generating CSV output, ensure that formula-sensitive metacharacters are effectively escaped or removed from all data before storage in the resultant CSV. Risky characters include '=' (equal), '+' (plus), '-' (minus), and '@' (at).

Implementation — If a field starts with a formula character, prepend it with a ' (single apostrophe), which prevents Excel from executing the formula.

Architecture and Design — Certain implementations of spreadsheet software might disallow formulas from executing if the file is untrusted, or if the file is not authored by the current user.

References

  • CWE page: https://cwe.mitre.org/data/definitions/1236.html
  • CWE list: https://cwe.mitre.org/data/index.html