Dokuwiki CSV Formula Injection Vulnerability

Title

CSV Formula Injection

Product

DokuWiki

Vulnerable Version

2018-04-22a "Greebo" and older versions

Fixed Version

None

CVE Number

CVE-2018-15474

Impact

medium

Found

09.07.2018

By

Jean-Benjamin Rousseau (Office Zurich) | SEC Consult Vulnerability Lab

DokuWiki is affected by a CSV formula injection vulnerability, which can be exploited by an unauthenticated attacker to exfiltrate sensitive data or even to execute arbitrary code on the local machine of the victim.

Vendor Description

“DokuWiki is a simple to use and highly versatile Open Source wiki software that doesn’t require a database. It is loved by users for its clean and readable syntax. The ease of maintenance, backup and integration makes it an administrator’s favorite. Built in access controls and authentication connectors make DokuWiki especially useful in the enterprise context and the large number of plugins contributed by its vibrant community allow for a broad range of use cases beyond a traditional wiki.”

Source: https://www.dokuwiki.org/dokuwiki

Business Recommendation

The issue will not be fixed according to the vendor. Users are advised to be careful when opening files via the CSV export functionality.

SEC Consult recommends to perform a thorough security review conducted by security professionals to identify and resolve all security issues.

Vulnerability Overview / Description

1) CSV Formula Injection vulnerability

The administration panel of the application has a “CSV export of users” feature which allows the export of user data (username, real name, email address and user groups) as a CSV file. On the registration page, it is possible for an attacker to set certain values in the Real Name field that – when exported and opened with a spreadsheet application (Microsoft Excel, Open Office, etc.) – will be interpreted as a formula. This puts the administrators who open those malicious exported files at risk. Exfiltration of sensitive data or even the execution of arbitrary code on the local machine of the victim will be the result. The final impact depends on the used spreadsheet software on the client of the victim.

Proof Of Concept

1) CSV Formula Injection vulnerability

Registration URL:

www.example.com/doku.php

When the registration request is submitted, the following parameters are sent in a POST request:

sectok=&do=register&save=1&login=login_parameter&fullname=evil_csv_formula_injection_payload&email=email_address

The “fullname” parameter is not sanitized before being stored and during the CSV export. An attacker can inject different CSV formula payloads in the fullname parameter. For example:

=cmd|'/C calc'!A0

As soon as the file gets opened in Microsoft Excel, the program calc.exe is launched. Different warnings might pop up. However, these warnings are usually ignored because the file comes from a trusted source.

Vulnerable / Tested Versions

The latest version 2018-04-22a “Greebo” has been tested:
https://download.dokuwiki.org/out/dokuwiki-8a269cc015a64b40e4c918699f1e1142.tgz

Also found to be vulnerable:

  • 2017-02-19 stable release
  • 2016-06-26 stable release
  • 2015-08-10 stable release
  • 2014-09-29 stable release
  • 2014-05-05 stable release
  • 2013-12-08 stable release

Vendor Contact Timeline

2018-07-18 Contacting vendor through andi@splitbrain.org.
2018-07-18 Vendor replied, they asked for the advisory without encryption.
2018-07-19 Advisory sent without encryption.
2018-07-19 Vendor replied with no intention to fix the vulnerability.
2018-07-30 Reminder sent to the vendor. No reply.
2018-08-20 Ask for updates to the vendor.
2018-08-20 Vendor replied that no patch will be provided.
2018-09-06 Public release of security advisory.

Solution

The issue will not be fixed according to the vendor:
https://github.com/splitbrain/dokuwiki/issues/2450

Workaround

None

Advisory URL

https://www.sec-consult.com/en/vulnerability-lab/advisories/index.html

 

EOF Jean-Benjamin Rousseau / @2018

Contact

Interested to work with the experts of SEC Consult? Send us your application.
Want to improve your own cyber security with the experts of SEC Consult? Contact our local offices.