Bugtraq mailing list archives

Synergiser <= 1.2 RC1 Local File Inclusion & Full path disclosure


From: kingoftheworld92 () fastwebnet it
Date: 1 Nov 2007 12:59:25 -0000

---------------------------------------------------------------
 ____            __________         __             ____  __   
/_   | ____     |__\_____  \  _____/  |_          /_   |/  |_ 
 |   |/    \    |  | _(__  <_/ ___\   __\  ______  |   \   __\
 |   |   |  \   |  |/       \  \___|  |   /_____/  |   ||  |  
 |___|___|  /\__|  /______  /\___  >__|            |___||__|  
          \/\______|      \/     \/                         
---------------------------------------------------------------

Http://www.inj3ct-it.org             Staff[at]inj3ct-it[dot]org 
Original here: http://www.inj3ct-it.org/exploit/syner.txt
---------------------------------------------------------------

Synergiser <= 1.2 RC1 Local File Inclusion & Full path disclosure

---------------------------------------------------------------

#By KiNgOfThEwOrLd

---------------------------------------------------------------
PoC:
---------------------------------------------------------------
Synergiser cms allows to include a file by the get variabile "page". We can't include a remote file, coz there is a 
filter..but we can include, by a directory traversal, some important files...for example:
---------------------------------------------------------------
http://[target]/[synergiser_path]/index.php?page=../../../etc/passwd
---------------------------------------------------------------
So, we have to know the script path if we wanna browse the server...we can get it generating a full path disclosure, 
like this:
---------------------------------------------------------------
http://[target]/[synergiser_path]/index.php?page=../index.php
---------------------------------------------------------------
We know that a function cannot be declared two times. So, let's read the "index.php" code, and we will found:
---------------------------------------------------------------
include('application_top.php');
---------------------------------------------------------------
This row includes "application_top.php". In that page, is declared a php function: assign_rand_value(); So, including 
index.php in index.php, we will reinclude application_top.php, and we will redeclare the same function. We can't do it! 
So the server will answer:
---------------------------------------------------------------
Fatal error: Cannot redeclare assign_rand_value() (previously declared in [script_path]/application_top.php:9) in 
[script_path]/application_top.php on line 124
---------------------------------------------------------------
And we got the script path! :P
---------------------------------------------------------------


Current thread: