漏洞文件AjaxServer.asp:
Sub digglog() //第691行<pre>If Not lcase(Request.ServerVariables("REQUEST_METHOD"))="post" Then Response.End
。。。。。。
If request("ptrue")=1 Then //第703行
pdigg=oblog.checkuserlogined_digg(unescape(Trim(request("puser"))),Trim(request("ppass")))
oblog.checkuserlogined_digg在/inc/ class_sys.asp文件下:
Public Function CheckUserLogined_digg(puser,ppass)
Dim rs
If Not IsObject(conn) Then link_database
Set rs = Server.CreateObject("adodb.recordset")
rs.open "select top 1 userid,username from oblog_user where username='"&puser&"' and truepassword='"&ppass&"'", conn, 1, 1
If Not (rs.eof Or rs.bof) Then
CheckUserLogined_digg="1$$"&rs("userid")&"$$"&rs("username")
Else
CheckUserLogined_digg="0$$0$$0"
End If
rs.close
Set rs=Nothing
End Function</pre>变量ppass没有任何过滤放入sql执行语句导致sql注入的产生。利用方法必须使用post提交.
Oblog 4.6
oblog
----------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
<a href=http://www.oblog.cn/ target=_blank>http://www.oblog.cn/</a>
暂无评论