header-logo
Suggest Exploit
vendor:
Gnuboard
by:
flyh4t
7.5
CVSS
HIGH
SQL Injection
89
CWE
Product Name: Gnuboard
Affected Version From: Gnuboard <= 4.33.02
Affected Version To: Gnuboard <= 4.33.02
Patch Exists: YES
Related CWE: CVE-2011-4066
CPE: a:sir:gnuboard:4.33.02
Metasploit: N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References: N/A
Nuclei Metadata: N/A
Platforms Tested: Linux+Apache
2011

Gnuboard <= 4.33.02 PATH_INFO SQL INJECTION Vulnerability

Bug found By Flyh4t & alpha.liu, SIR GNUBoard(http://sir.co.kr) is a widely used bulletin board system of Korea. It is freely available for all platforms that supports PHP and MySQL. But we find a SQL INJECTION affects SIR GNUBoard version 4.33.02. The codes can be download here http://sir.co.kr/main/gnuboard4/. The vulnerability code is in /bbs/tb.php, where the $_SERVER[PATH_INFO] is not affected by the magic_quotes_gpc set of php, allowing arbitrary sql code to be injected through $_SERVER[PATH_INFO]. The $write_table can be injected through $bo_table, leading to sql injection, and no need of single quotes. The Proof of Concept is bbs/tb.php/[sql]/[sql].

Mitigation:

Ensure that the application is not vulnerable to SQL injection attacks by using parameterized queries, stored procedures, and escaping all user-supplied input.
Source

Exploit-DB raw data:

# Exploit Title: Gnuboard <= 4.33.02 PATH_INFO SQL INJECTION Vulnerability
# Google Dork: inurl:gnuboard4/bbs/board.php
# Date: 2011-2-14
# Author: flyh4t
# Software Link: http://sir.co.kr/main/gnuboard4/
# Version: Gnuboard <= 4.33.02
# Tested on: linux+apache
# CVE : CVE-2011-4066


Gnuboard <= 4.33.02 PATH_INFO SQL INJECTION Vulnerability
---------------------------------
Bug found By Flyh4t & alpha.liu
mail:
flyh4t phpsec@hotmail.com
alpha  alpha@patching.net
Site:bbs.wolvez.org
---------------------------------
SIR GNUBoard(http://sir.co.kr) is a widely used bulletin board system of Korea.  
It is freely available for all platforms that supports PHP and MySQL.  
But we find a SQL INJECTION affects SIR GNUBoard version 4.33.02 
The codes can be download here
http://sir.co.kr/main/gnuboard4/
Here is the Vulnerability code in /bbs/tb.php
 
-----------------------vul code-------------------
//bbs/tb.php
$arr = explode("/", $_SERVER[PATH_INFO]);
//$_SERVER[PATH_INFO] is not affected by the magic_quotes_gpc set of php
//we can inject arbitrary sql code include single quotes through $_SERVER[PATH_INFO] 
$bo_table = $arr[1];
$wr_id = $arr[2];
$to_token = $arr[3];
//we can pass arbitrary sql code to $bo_table 
$write_table   = $g4[write_prefix] . $bo_table;
// $write_table can be injected through $bo_table
$sql = " select wr_id, ca_name, wr_email from $write_table where wr_id = '$wr_id' ";
//here $write_table lead to sql injection,and no need of  single quotes
$wr = sql_fetch($sql, FALSE);
if (!$wr[wr_id] || !($_POST[title] && $_POST[excerpt] && $_POST[url] && $_POST[blog_name])) 
{
    $tmp_dir = str_replace("/tb.php", "", $_SERVER[SCRIPT_NAME]);
    header("location:$tmp_dir/board.php?bo_table=$bo_table&wr_id=$wr_id");
    exit;
}
-----------------------vul code end-------------------

-----------------------poc------------------------
bbs/tb.php/[sql]/[sql]
--------------------------------------------------