Details
================
Software: Advanced Access Manager
Version: 2.8.2
Homepage: http://wordpress.org/plugins/advanced-access-manager/
Advisory report: https://security.dxw.com/advisories/advanced-access-manager-allows-admin-users-to-write-arbitrary-text-to-arbitrary-locations-which-could-lead-to-arbitrary-code-execution-etc/
CVE: CVE-2014-6059
CVSS: 6.5 (Medium; AV:N/AC:L/Au:S/C:P/I:P/A:P)
Description
================
Advanced Access Manager allows admin users to write arbitrary files and execute arbitrary php
Vulnerability
================
Advanced Access Manager allows writing arbitrary content to arbitrary files. Depending on the server configuration this couldallow arbitrary code execution, overwriting core WordPress files and e.g. blankingwp-config.php. In other configurations this could lead to overwriting files in the uploads directory.
Proof of concept
================
Visit http://localhost/wp-admin/admin.php?page=aam-configpress
Press “Save” (this creates the “aam_configpress” option)
Visit http://localhost/wp-admin/options.php
Set “aam_configpress” to “test.php
Press “Save Changes
Visit http://localhost/wp-admin/admin.php?page=aam-configpress again
Enter “<?php phpinfo();” into the textarea (without the quotes)
Press “Save
Visit http://localhost/wp-content/aam/test.php
Note that there is no restriction on using “../” in the “aam_configpress” option so depending on server configuration you could create files anywhere on the filesystem.
This attack could be scripted to allow upload of binary files, including executable files.
Mitigations
================
Upgrade to version 2.8.3 or later
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
================
2014-08-20: Discovered
2014-09-01: Reported to author via email
2014-09-01:Requested CVE
2014-09-01:Developer responded
2014-09-02:Developer reported the issue fixed
2014-09-03: Advisory published
Discovered by dxw:
================
Tom Adams
Please visit security.dxw.com for more information.