YiDaCms v3.2 sql注入+逻辑错误

漏洞作者: roker

admin\CheckAdmin.asp [php] username = request.Cookies("username") password = request.Cookies("password") cookies_md5 = request.Cookies("cookies_md5") dim admin_name,admin_pass,admin_qx,admin_aqx set rs = server.createobject("adodb.recordset") sql="select * from shuaiweb_vipadministrator where username='"&username&"'" rs.open sql,dbok,1,1 admin_name = rs("username") admin_pass = rs("password") admin_qx = rs("wait_ader") admin_aqx = rs("wait_adyi") rs.Close set rs=nothing response.write sql if cookies_md5 <> left(MD5(username&password),10) then response.write "登录超时,请重新登录!" response.cookies("username") = "" response.cookies("password") = "" response.end end if [/php]   对于cookie的 username没有防范。 提交 cookie:username=' or '1 满足sql条件。当然 这样还不能进入后台。 接下来的 代码出了一点逻辑问题 if cookies_md5 <> left(MD5(username&password),10) then password 是可控的。 我们可以自己构造 轻松绕过。 05182707dce685ba6a6d4ecb5b05bdabc257909b   Powered by YidaCms! X3.2

漏洞证明:

05182707dce685ba6a6d4ecb5b05bdabc257909b

发表评论