Waraxe IT Security Portal  
  Login or Register
::  Home  ::  Search  ::  Your Account  ::  Forums  ::   Waraxe Advisories  ::  Tools  ::
April 19, 2024
 Members List
 IRC chat
 Base64 coder
 MD5 hash
 CRC32 checksum
 ROT13 coder
 SHA-1 hash
 Sql Char Encoder
 y3dips ITsec
 Md5 Cracker
 User Manuals
 Recommend Us
 Your Account

User Info
Welcome, Anonymous

Latest: MichaelSnaRe
New Today: 0
New Yesterday: 0
Overall: 9145

People Online:
Visitors: 653
Members: 0
Total: 653
PacketStorm News
·301 Moved Permanently

[waraxe-2006-SA#044] - XSS in phpNuke 7.8 and older versions

Author: Janek Vind "waraxe"
Date: 13. February 2006
Location: Estonia, Tartu
Web: http://www.waraxe.us/advisory-44.html

Target software description:

phpNuke 6.0 - 7.8

Homepage: http://phpnuke.org/

What is phpNuke ?

PHP-Nuke is a news automated system specially designed to be used in Intranets and Internet.
The Administrator has total control of his web site, registered users, and he will have in
the hand a powerful assembly of tools to maintain an active and 100% interactive web site
using databases.


Potentially harmful cross-site scripting bug has been found in phpNuke software.
All versions from 6.0 to 7.8 are affected. Version 7.9 has not been tested against this bug,
but probably it is affected too. As in case of any XSS bugs, there can be many ways to
exploit this bug, for example stealing the cookies, containing username/hashed password.


So what is the cause of this XSS case? As common in phpNuke world, problem lies in
uninitialized variable - "$pagetitle". This global variable is used for transfer page
title from module worker-code to "head()" function in "header.php" file.

Looking at source ("header.php" line ~ 28):

----------------[ from source code ]------------------

function head() {
global $slogan, $sitename, $banners, $nukeurl, $Version_Num, $artpage, $topic,
$hlpfile, $user, $hr, $theme, $cookie, $bgcolor1, $bgcolor2, $bgcolor3, $bgcolor4,
$textcolor1, $textcolor2, $forumpage, $adminpage, $userpage, $pagetitle;
$ThemeSel = get_theme();
echo "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
echo "<html>
echo "<head>
echo "<title>$sitename $pagetitle</title>
----------------[ /from source code ]-----------------

So we see, that "$pagetitle" is directly rendered to html code. And after searching in
source code, we can see that it is not initialized by default.
Hmm, what about running some tests ...

Let's try "http://localhost/nuke78/?pagetitle=w00t></title></head><body>test"

and we see, that html tags injection is really possible.
Now comes the hard part - how to inject scripting code? Phpnuke is using some anti-XSS
filters agaist injection, so direct attack with "<script>" and other usual tags will not
succeed. Well, as always, there can be found ways to bypass filters and after playing some
time with various injection tricki, I found this possibility:

[------ real life exploit ------]


[----- /real life exploit ------]

This method was tested successfully with 3 browsers - IE 6, Firefox and Opera 8.51 .
So it seems, that phpnuke anti-xss filter must be made to be more bulletproof ...

Bye all and have a nice day ;)

How to fix:

Write one code line to "mainfile.php":

$pagetitle = '';

This will initialize affected variable and patch the hole.


Greetz to LINUX, Heintz, y3dips, shai-tan, slimjim100, zer0-c00l and
all other active members from waraxe forum !

Raido Kerna - tervitused!

Additional resources:

DX expeditions database - http://www.dxdb.com/

HDD data recovery - http://www.hdd911.com/


Janek Vind "waraxe"

Homepage: http://www.waraxe.us/

Copyright © by Waraxe IT Security Portal All Right Reserved.

Published on: 2006-02-13 (19998 reads)

[ Go Back ]
Top members by posts
waraxe  waraxe - 2407
vince213333  vince213333 - 737
pexli  pexli - 665
Mullog  Mullog - 540
demon  demon - 485
shai-tan  shai-tan - 477
Cyko  Cyko - 375
tsabitah  tsabitah - 328
y3dips  y3dips - 281
Currently there is a problem with headlines from this site

Space Raider game for Android, free download - Space Raider gameplay video - Zone Raider mobile games
All logos and trademarks in this site are property of their respective owner. The comments and posts are property of their posters, all the rest (c) 2004-2020 Janek Vind "waraxe"
Page Generation: 0.139 Seconds