BBSXP最新漏洞简单分析以及利用

鬼仔注:好像是前段时间的文章了,我没有测试。文件头欺骗。

来源:寒水芊芊'blog

PS:天涯那看到的.没经过测试.又是伪装木马上传.文章早出来了.转来.大家测试下.!

无意间发现一个BBSXP的0day,经过我自己测试,有80%左右的成功率,现在已经隔了1个月了,你们能不能利用我不保证。不过估计还有很多没有打上补丁的。以下介绍仅为学习交流使用,请勿用于非法用途。

这个漏洞存在于bbsxp的最新版本(官方的不是最新版)漏洞估计比上次某人发的bbsxp注入漏洞更加严重。很简单,我这个是上传,而且是杀access和sql版,直接就可以拿到webshell,至于拿到webshell后……

首先大家看一段代码,这个是我从网上下的一套bbsxp最新版,我先简单分析以下三段代码:

if FileExt="asa" or FileExt="asp" or FileExt="cdx" or FileExt="cer" then error2("对不起,管理员设定本论坛不允许上传 "&FileExt&" 格式的文件")

if Sitesettings("WatermarkOption")="Persits.Jpeg" and FileMIME="image/pjpeg" and UpClass<>"Face" then
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Jpeg.Open Server.MapPath(""&SaveFile&"")

'判断用户文件中的危险操作
sStr="getfolder|createfolder|deletefolder|createdirectory|deletedirectory|saveas encode|function|UnEncode|execute|重命名|修改|属性|新建|复制|服务器|下载"
sNoString=split(sStr,"|")
for i=0 to ubound(sNoString)
if instr(sTextAll,sNoString(i)) then
set filedel=server.CreateObject ("Scripting.FileSystemObject")
filedel.deletefile server.mappath(""&SaveFile&"")
response.write "你的ip和时间已被纪录,由于你曾多次使用该方法对系统进行非法攻击,我们将会把你的数据向海南省公安部及海口网警报告!"
response.write "<br>"
response.write "时间:"&date()&" "&time()&""
response.write "<br>"
response.write "I P:"&request.servervariables("remote_addr")&" "
set MyFiletemp=server.CreateObject("Scripting.FileSystemObject")
set wfile=myfiletemp.opentextfile(server.mappath("ypsql.txt"),8)
wfile.writeline date()&" "&time()&" "&request.servervariables("remote_addr")
Response.end
end if

其中:文件保存类型是通过FileMIME判断FileMIME="image/pjpeg",也就是说上传类型要是图片,然后第一段代码,if FileExt="asa" or FileExt="asp" or FileExt="cdx" or FileExt="cer" then error2("对不起,管理员设定本论坛不允许上传 "&FileExt&" 格式的文件")的意思是:出错时候检查后缀.如果后缀是asa或者asp或者cdx或者cer的时候他就会提示错误。然后FileExt=文件后缀第三段代码的意思是:如果文件中有getfolder,createfolder等等特征的话。他就提示错误.错误类型在下边自己看了。

Bssxp是通过这3段代码来过滤上传类型的.可这却造成了一个逻辑性的漏洞.聪明的读者可能已经发现了.他过滤的后缀只有asa、asp、cdx、 cer如果我们传的文件的后缀不是这4个呢?嘿嘿,不是这4个也不能传.为什么?因为后边还有个FileMIME="image/pjpeg"。好,我们让文件是image/pjpeg。具体怎么实现呢?很简单。在我们的马马头部加上gif89a。也就是文件头欺骗。我们测试下一下看看:

成功了! 然后你想干什么就可以干什么了。不过千万别非法入侵别人的系统哦~

相关日志

楼被抢了 18 层了... 抢座Rss 2.0或者 Trackback

  • 719100

    [lol :roll: 不晓得5.15上能用不?

  • 719100

    :cry: 文件头是具体是哪?
    是文件的最前面 还是 是 . 后面的

  • wildenwolf

    上传成功了,但却生成了.gif,地址为UpFile/UpFace/250.gif,不知道怎么回事,鬼鬼仔指点一下!

  • 鬼仔

    我也不清楚,这个我并没有测试。

  • wildenwolf

    研究过bbsxp7access版,进后台,发现备份数据库那里,不能改路径,你有好的办法得到shell没有,请指点一下!

  • 坦丁

    我昨天看到這個0DAY但是我不知道應該在什么位置上傳這個ASP木馬。鬼仔指導下?

  • 719100

    一句话木马

  • wildenwolf

    插哪儿,提交地址?请明示?

  • 719100

    那我也不晓得了

  • 719100

    对了比如我的小马是1.jpg重命名应该是什么?

  • 719100

    应该是在发贴那里

  • 鬼仔

    文件头欺骗是要在你的文件中写入
    用记事本打开就可以,然后在第一行写入:gif89a
    并不是要重命名你的文件
    可以上传的地方就OK

  • xhming

    想知道这段是怎样过的~~
    if instr("|"&UpFileTypes&"|","|"&FileExt&"|") <= 0 then error2("对不起,管理员设定本论坛不允许上传 "&FileExt&" 格式的文件")

  • xhming

    是因为UpFace.asp文件,没有提供UpFileTypes变量给upfile.asp文件才绕过if instr("|"&UpFileTypes&"|","|"&FileExt&"|") <= 0 then error()2吗?而postupfile.asp文件则提供了,所以过不了?

  • 鬼仔

    禁止了asa、asp、cdx、 cer四种格式的上传,但是aspx没有禁止,而且还有一句FileMIME="image/pjpeg",禁止上传非图片类型的文件,所以要文件头欺骗。
    这些文章中都有说明。

  • 小妖

    /upfile/upface/24.aspx

    aspx?

  • 绝对嚣张

    我的aspx的小马使用asp的小马重命名 然后修改文件头做成的,可以上传,得到url后,不能正常运行,是不是网站坐在的服务器不能运行aspx的文件,或者aspx的小马做错了? :???:

  • xcrypt

    若对方不支持asa、asp、cdx、 cer以外的文件解析的话,那么就没有利用价值了~~

发表评论