• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

phpBB 2.0.13 usercp_register.php输入过滤不充分漏洞

发布: 2007-5-25 12:09 | 作者: 未知 | 来源: Blog.ChinaUnix.net | 查看: 27次 | 进入软件测试论坛讨论

领测软件测试网 受影响系统:
phpBB Group phpBB 2.0.13
描述:
phpBB是一种用PHP语言实现的基于Web的开放源码论坛程序,使用较为广泛。它支持多种数据库作为后端,如Oracle、MSSQL、MySql、PostGres等等。

phpBB的usercp_register.php脚本对用户提交参数缺少充分过滤,远程攻击者可以利用这个漏洞在签名上使用HTML、BBCODE代码。

usercp_register.php文件中存在有漏洞的代码:

$allowhtml = ( isset($HTTP_POST_VARS['allowhtml']) ) ? ( \
($HTTP_POST_VARS['allowhtml']) ? TRUE : 0 ) : $board_config['allow_html']; \
$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( \
($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $board_config['allow_bbcode']; \
$allowsmilies = ( isset($HTTP_POST_VARS['allowsmilies']) ) ? ( \
($HTTP_POST_VARS['allowsmilies']) ? TRUE : 0 ) : $board_config['allow_smilies'];

如果我们在html代码中以allowhtml,allowbbcode或allowsmilies的名定义一个变量的话(任何类型的变量,hidden,text,radio,check,等等),则在签名中就可以使用HTML,BBCODE和Smiles功能。但这只对私人消息有效。

我们的签名本应是经过过滤的,但在私人消息中却没有过滤。

<*来源:Paisterist (paisterist.nst@gmail.com>)
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110987231502274&w=2
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

1 - 拷贝有漏洞论坛注册页的html代码。

2 - 将表单动作改为论坛的路径和profile.php,例如http://phpbb.com/phpBB2/profile.php

3 - 添加变量,这样就可以在私人消息中出现bbcode,htmlcode或smilies。

4 - 通过这个修改后的注册页就可以在签名中加入html代码。

建议:


临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 修改usercp_register.php中有漏洞的代码

有漏洞部分:

$allowhtml = ( isset($HTTP_POST_VARS['allowhtml']) ) ? ( \
($HTTP_POST_VARS['allowhtml']) ? TRUE : 0 ) : $board_config['allow_html']; \
$allowbbcode = ( isset($HTTP_POST_VARS['allowbbcode']) ) ? ( \
($HTTP_POST_VARS['allowbbcode']) ? TRUE : 0 ) : $board_config['allow_bbcode']; \
$allowsmilies = ( isset($HTTP_POST_VARS['allowsmilies']) ) ? ( \
($HTTP_POST_VARS['allowsmilies']) ? TRUE : 0 ) : $board_config['allow_smilies'];

修复:

$allowhtml = ( $board_config['allowhtml']) ) ? TRUE : 0;
$allowbbcode = ( $board_config['allowbbcode']) ) ? TRUE : 0;
$allowsmilies = ( $board_config['allowsmilies']) ) ? TRUE : 0;

厂商补丁:

phpBB Group
-----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.phpbb.com/

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网