服务器维护,服务器代维,安全设置,漏洞扫描,入侵检测服务

运维之家

 找回密码
 注册
搜索
查看: 4445|回复: 0

ewebeditor 2.7版本以下又一个注入

[复制链接]
dirtysea 发表于 2009-8-15 00:39:46 | 显示全部楼层 |阅读模式
eweb2.7版本以下又一个注入
首先看代码(ewebeditor.asp):
ub InitPara()
    ' 取全屏标志
    sFullScreen = Trim(Request.QueryString("fullscreen"))
    ' 取对应的内容ID
    sContentID = Trim(Request.QueryString("id"))
    If sContentID = "" Then ShowErr "请传入调用参数ID,即隐藏的内容表单项ID!"
    ' 取样式初始值
    sStyleName = Trim(Request.QueryString("style"))
    If sStyleName = "" Then sStyleName = "standard"
    sSql = "select * from ewebeditor_style where s_name='" & sStyleName & "'"
    oRs.Open sSql, oConn, 0, 1
    If Not oRs.Eof Then
        sStyleID = oRs("S_ID")
        sStyleName = oRs("S_Name")
        sStyleDir = oRs("S_Dir")
        sStyleCSS = oRs("S_CSS")
        sStyleUploadDir = oRs("S_UploadDir")
        nStateFlag = oRs("S_StateFlag")
        sDetectFromWord = oRs("S_DetectFromWord")
        sInitMode = oRs("S_InitMode")
        sBaseUrl = oRs("S_BaseUrl")
        sStyleUploadDir = Replace(sStyleUploadDir, "\", "/")
        If Right(sStyleUploadDir, 1) <> "/" Then
            sStyleUploadDir = sStyleUploadDir & "/"
        End If
    Else
        ShowErr "无效的样式Style参数传入,如果要使用默认值,请留空!"
    End If
    oRs.Close
关键的是这两句:
    sStyleName = Trim(Request.QueryString("style"))
    If sStyleName = "" Then sStyleName = "standard"
    sSql = "select * from ewebeditor_style where s_name='" & sStyleName & "'"
很明显的是style参数没有足够的过滤,如果我们自己给这个地方赋值的话,程序会报错的,如图1.

但接下来的一句还是让我们有可乘之机,If sStyleName = "" Then sStyleName = "standard"保留默认的还是会带入语句执行,加个单引号就报错了,如图2.

我试了好几款工具,发现只有pangolin可以注入,啊D只能发现注入不能继续猜解。
eweb默认的管理员表是:ewebeditor_system
这个表下的默认两个列名为:sys_UserName和sys_userpass
需要手动添加
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|运维之家

GMT+8, 2024-3-29 16:07 , Processed in 0.200507 second(s), 14 queries .

Powered by Dirtysea

© 2008-2020 Dirtysea.com.

快速回复 返回顶部 返回列表