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

  #1  
Старый 14.11.2013, 23:48
qaz
Познавший АНТИЧАТ
Регистрация: 12.07.2010
Сообщений: 1,546
С нами: 8334326

Репутация: 75


По умолчанию

Цитата:
Сообщение от YaBtr  
____
ну также как бы будет ошибка и ничего не выведет
 
Ответить с цитированием

  #2  
Старый 15.11.2013, 01:03
YaBtr
Постоянный
Регистрация: 30.05.2012
Сообщений: 600
С нами: 7343606

Репутация: 652


По умолчанию

Цитата:
Сообщение от qaz  
ну также как бы будет ошибка и ничего не выведет
Соглашусь, ибо потестировал!

Тебе необходимо еще одно поле (с помощью слэшей коментируется часть запроса).

Например:

Цитата:
Сообщение от None  
SELECT id, text FROM `news` WHERE user_login =
'\' && 'UNION SELECT 1, concat_ws(0x3a,column1,column2) from table_name; --';
 
Ответить с цитированием

  #3  
Старый 15.11.2013, 01:09
Inoms
Участник форума
Регистрация: 23.06.2013
Сообщений: 103
С нами: 6783446

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

Можно так-же попробовать двойным url енкодингом попробовать пронести кавычку, но это очень сомнительно, но всё-же..)
 
Ответить с цитированием

  #4  
Старый 15.11.2013, 04:30
Br@!ns
Постоянный
Регистрация: 03.09.2010
Сообщений: 885
С нами: 8258006

Репутация: 25


По умолчанию

при попытке into outfile выскакиевает ошибка "CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error". При повторном запросе того же самого запроса с тем же путем и тем же файлом, пишет "CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error: 1086 File ', home=>www, pp2.txt' already exists. Файл в итоге этот все равно не создается, и несуществует (не инклудится). Пробовал разные папки и разные имена файлов. file_priv Y.

Разжуйте пожайлуста что ему ненравится тут, и что можно сделать. Спасибо
 
Ответить с цитированием

  #5  
Старый 15.11.2013, 12:30
Unknown
Новичок
Регистрация: 21.06.2005
Сообщений: 1
С нами: 10992741

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

Цитата:
Сообщение от qaz  
есть уязвимый на скулю скрипт, типа такого
$login = $_GET['login'];
SELECT id, user_name FROM users WHERE user_login = '$login'
ковычки слешируются, как составить любой запрос на выборку данных?
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]$login[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"\' union select 1,2-- "[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
после слеширования кавычек получается

PHP код:
[COLOR="#000000"][COLOR="#0000BB"]$login[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"\\' union select 1,2-- "[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
\\ - экранированный обратный слеш.

----

Цитата:
Сообщение от None  
при попытке into outfile выскакиевает ошибка "CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error". При повторном запросе того же самого запроса с тем же путем и тем же файлом, пишет "CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[HY000]: General error: 1086 File ', home=>www, pp2.txt' already exists. Файл в итоге этот все равно не создается, и несуществует (не инклудится). Пробовал разные папки и разные имена файлов. file_priv Y.
Разжуйте пожайлуста что ему ненравится тут, и что можно сделать. Спасибо
Возможно дело в правах выставляемых на файл. То есть он создаётся, но тот от кого выполняется процесс php прочитать его не может. Может быть дело в правах на папке, пробовал /tmp? Если нет то попробуй там создать.
 
Ответить с цитированием

  #6  
Старый 15.11.2013, 17:03
Inoms
Участник форума
Регистрация: 23.06.2013
Сообщений: 103
С нами: 6783446

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

Цитата:
Сообщение от Ganz Euler  
Ganz Euler said:
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]$login[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"\\' union select 1,2-- "[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
\\ - экранированный обратный слеш.
В итоге запрос будет выглядеть вот так:

SELECT id, user_name FROM users WHERE user_login = '\' union select 1,2--'

Т.е запись \' union select 1,2-- - обычный текст (логин).
 
Ответить с цитированием

  #7  
Старый 15.11.2013, 17:14
Unknown
Новичок
Регистрация: 21.06.2005
Сообщений: 1
С нами: 10992741

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

Неправильно написал я немного, но по сути верно всё.

PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"][/COLOR][/COLOR
Код:
sergey@notebook $ php test.php 
\\' union select 1,2--
Т.е. запрос SELECT id, user_name FROM users WHERE user_login = '\\' union select 1,2-- '

С точки зрения PHP правильно было бы написать мне тогда

PHP код:
[COLOR="#000000"][COLOR="#0000BB"]$login[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"\\\\' union select 1,2-- "[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
, я же написал значение переменной по факту.
 
Ответить с цитированием

  #8  
Старый 15.11.2013, 17:49
Inoms
Участник форума
Регистрация: 23.06.2013
Сообщений: 103
С нами: 6783446

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

Да, действительно верно, не обратил изначально внимание на сторону php В общем, чтобы запрос сработал, автору нужно в логин отправить \' и далее подставить сам запрос.
 
Ответить с цитированием

  #9  
Старый 18.11.2013, 19:19
andrxx
Новичок
Регистрация: 07.11.2013
Сообщений: 12
С нами: 6586166

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

нужна помощь ) тут есть скуль? у меня не получается раскрутить =\

Цитата:
Сообщение от None  
http://www.circassian-genocide.com/cg-maps.php?page='&showold=yes
 
Ответить с цитированием

  #10  
Старый 19.11.2013, 12:51
HeaVeNSeR
Новичок
Регистрация: 03.12.2008
Сообщений: 5
С нами: 9176819

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

ребят,хелп

в админке одной CMS есть такой аплоад файлов:

Код:
if ($input->p['do'] == "install") {
	if ($settings['demo'] == "yes") {
		$error_msg = "This is not possible in demo version";
	}
	else {
		if ($input->p['sesion_id'] != $_SESSION['sesion_id']) {
			$error_msg = "Invalid token try again please";
		}
		else {
			if ($_FILES['file']['type'] != "text/xml") {
				$error_msg = "Invalid File";
			}
			else {
				if (0 load("../upload/" . $_FILES['file']['name']);
					$langnames = $doc->getElementsByTagName("name");
					$langname = $langnames->item(0)->nodeValue;
					$langversions = $doc->getElementsByTagName("ptcevolution");
					$langversion = $langversions->item(0)->nodeValue;
					$langfiles = $doc->getElementsByTagName("filename");
					$langfile = $langfiles->item(0)->nodeValue;

					if ((empty($$langname) || empty($$langversion)) || empty($$langfile)) {
						$error_msg = "Invalid File";
					}
					else {
						if ($langversion != $software['version']) {
							$error_msg = $langname . " is not configured for PTCEvolution " . $software['version'];
						}
						else {
							$verifylang = $db->fetchOne(("SELECT COUNT(*) AS NUM FROM language WHERE name='" . $langname . "' and version='" . $software['version'] . "'"));

							if ($verifylang == 0) {
								$datastored = array("name" => $langname, "version" => $langversion, "filename" => $langfile);
								$insert = $db->insert("language", $datastored);
								$success_msg = $langname . "  was sucessfully installed! Click here to manage installed languages";
							}
							else {
								$error_msg = $langname . " is already installed on this site.";
							}
						}
					}

					unlink("../upload/" . $_FILES['file']['name']);
				}
			}
		}
	}
}
то есть,если зайти под админом,подменить Content-type на text/xml и попробывать залить shell.php - он зальется в папку upload

Код:
move_uploaded_file($_FILES['file']['tmp_name'], "../upload/" . $_FILES['file']['name']);
но тут же удалится

Код:
unlink("../upload/" . $_FILES['file']['name']);
есть ли возможность задержать файл в папке /upload/ или же успеть выполнить код?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ваши ламерские приколы (Ну когда только комп появился) PEPSICOLA Болталка 188 23.05.2010 10:05
Ваши любимые компьютерные игры PEPSICOLA Болталка 280 19.08.2009 00:01
Ваши телеги... F-IFTY Болталка 13 18.08.2009 18:22
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.