xt:Commerce会话固定及跨站脚本漏洞
发布日期:2008-09-22
更新日期:2008-09-23
受影响系统:xt:Commerce xt:Commerce 3.04
描述:
BUGTRAQ ID:
31313
xt:Commerce是基于电子商务引擎的网络购物系统。
xt:Commerce的advanced_search_result.php文件中没有正确地过滤对keywords参数所提交的输入便返回给了用户,这可能允许远程攻击者通过跨站脚本攻击在用户浏览器会话中执行任意HTML和脚本代码;此外XTCsid参数可以被设置为任意的值,这样攻击者就可以在用户登录到目标服务器之前便固定会话ID,在用户登录后使用预定义的会话ID值假设他们的在线身份。
<*来源:David Vieira-Kurz
链接:
http://marc.info/?l=bugtraq&m=122210696006059&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
/advanced_search_result.php?keywords=/>"<script>alert(15)</script>&x=1&y=1
https://localhost/xtcommerce304/shopping_cart.php/XTCsid/15031988建议:
临时解决方法:
* 使用htmlspecialchars()或htmlentities()函数确保不要执行html标签和javascript代码:
$keywords = htmlentities($_POST['keywords']);
$keywords = htmlspecialchars($_GET('keywords'));
* 不要接受不是由服务器所生成的会话标识符:
if ( !isset( $_SESSION['SERVER_GENERATED_SID'] ) ) {
session_destroy(); // destroy all data in session
}
session_regenerate_id(); // generate a new session identifier
$_SESSION['SERVER_GENERATED_SID'] = true;
厂商补丁:
xt:Commerce
-----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.xtcommerce-shop.com/浏览次数:2397
严重程度:0(网友投票)