- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Uc接口带来的安全隐患.PDF
Uc 接口带来的安全隐患
作者:flyh4t@
时间:2011.1.14
UCenter 是 Comsenz 旗下各个产品之间信息直接传递的一个桥梁,通过 UCenter 站
Comsenz UCenter
长可以无缝整合 系列产品,实现用户的一站式注册、登录、退出。 可以让
Comsenz 旗下所有产品联系地更加紧密,实现用户的统一注册登录,让社区真正运转起来 。
UCenter 拥有机制完善的接口,经过简单修改便可以挂接其它任何平台的第三方的网
络应用程序。UCenter 作为信息传统桥梁,拥有统一的短信息、好友机制,最终用户可以
过它轻松通行在各个应用之中,无需重复登录、注册、退出。当前几乎国内所有主流的 cms
都默认集成了 Ucenter 的api 文件。
第三方的程序在使用 UCenter 挂接让 Comsenz 时,依靠一个 UC_KEY 实现程序的互
通,部分第三方程序没有真正理解 UCenter 的机制,造成了多种安全风险。
一、 UC_KEY 未初始化漏洞
部分第三方程序默认把 UC 的接口文件存在在web 目录,如果网站管理员不使用uc 功
能,则 UC_KEY 就没有初始化。我们以 ECShop v2.6.1 一个注入漏洞为例子,api/uc.php
部分代码如下
code begin
define(UC_VERSION, 1.0.0); //UCenter 版本标识
……
define(IN_ECS, TRUE);
require ./init.php; //如果不启用 uc 功能,则该文件不初始化 UC_KEY
include(ROOT_PATH . uc_client/client.php);
include(ROOT_PATH . uc_client/lib/xml.class.php);
// include ecshop uc_client web /
注意,这个地方是 ,虽然 默认没有把 放到 目录,但是出错
/后程序能继续执行下去
$ecs_url = str_replace(/api, , $ecs-url());
$code = $_GET[code]; //我们提交的变量
parse_str(authcode($code, DECODE, UC_KEY), $get);
/ /authcode 是负责解码和编码的函数,仅依赖于 UC_KEY ,这个是UC 外挂程序的关键
//注意 parse_str 有转意敏感字符的功能
if(time() - $get[time] 3600)
//我们提交的 time 可以为很大的数字,如time=1111111111111111111 ,保证不进入exit
{
exit(Authracation has expiried);
}
if(empty($get))
{
exit(Invalid Request);
}
$action = $get[action];
$timestamp = time();
if($action == test)
{
exit(API_RETURN_SUCCEED);
}
/* 用户删除 API 接口 */
elseif($action == deleteuser) //我们提交 aciont=deleteuser ,进入该过程
{
!API_DELETEUSER exit(API_RETURN_FORBIDDEN);
$uids = $get[ids];//注意这个地方 ids 中的敏感符号会被parse_str 转意
if (delete_user($uids))//我们向下看这个函数
{
exit(API_RETURN_SUCCEED);
}
}
……
/**
*
删除用户接口函数
*
* @access public
* @param int $uids
* @return void
*/
您可能关注的文档
- NCS-PT105ⅡSProfibusDP压力变送器使用手册-中科博微.PDF
- NJHQJA的真空平板玻璃支撑柱应力数值分析.PDF
- NS3051HP智能高静压差压变送器.PDF
- NTE系列电动执行器操作说明书-Nutork.PDF
- OminiViewEnterprise8端口KVM扩展器将服务器控制端口添加到.PDF
- OMX图片添加BAR及DV文件导出TIFF说明.doc
- OOD&MACHINERY变温压差膨化干燥法制备紫薯生全粉-食品与机械.PDF
- Openshift容器平台为企业添加创新动能.PDF
- OPERATINGMANUAL声光组合方柱型多层旋转型警示灯Bulb.PDF
- OPS2电子式油压差开关油压差传感器测压机械部件.PDF
文档评论(0)