首先在后台admin目录下的 checkadmin.asp中 ,直接看代码 -
-
- <%
- dim admin_name,admin_pwd
- admin_name=trim(request("admin_name"))
- admin_pwd=trim(request("admin_pwd"))
- set rs=server.createobject("adodb.recordset")
- sql="select * from admin_user where name=\'"&admin_name&"\'"
- rs.open sql,conn,1,1
- if not rs.eof then
- if admin_pwd=rs("password") then
- session("admin")=admin_name
- response.redirect "main.asp"
- else
- Response.Write "<script language=\'javascript\'>window.confirm(\'密码不正确,请后退重填!!\');</script>"
- Response.Write "<script language=\'javascript\'>parent.window.history.go(-1);</script>"
- end if
- else
- Response.Write "<script language=\'javascript\'>window.confirm(\'用户名不正确!!\');</script>"
- Response.Write "<script language=\'javascript\'>parent.window.history.go(-1);</script>"
- end if
- %>
未过滤单引号,但由于之后又跟数据库中存在的密码进行比较,所以万能密码or 是无法登录了,但可以通过变异的万能密码来绕过,使用特定的 union 语句,将密码置为1 然后就可以通过验证了,比如说这里我观察到 admin_user中一共有三个字段 字段名分别为 name,password,id ,password位于 第二个字段上,可以构造如下语句简单绕过认证。 用户名填写:1\' union select 1,1,1 from admin_user where \'1\'=\'1 密码直接填写:1 这样就OK。 后台文件中upfile.asp存在上传漏洞,代码如下: -
-
- <%
- dim upload,file,formName,formPath,iCount
- set upload=new upload_5xSoft
- response.write upload.Version&"<br><br>"
- if upload.form("filepath")="" then
- HtmEnd "请输入要上传至的目录!"
- set upload=nothing
- response.end
- else
- formPath=upload.form("filepath")
-
- if right(formPath,1)<>"/" then formPath=formPath&"/"
- end if
- iCount=0
- for each formName in upload.file
- set file=upload.file(formName)
- if file.FileSize>0 then
- file.SaveAs Server.mappath(formPath&file.FileName)
- response.write file.FilePath&file.FileName&" ("&file.FileSize&") => "&formPath&File.FileName&" 成功!<br>"
- iCount=iCount+1
- end if
- set file=nothing
- next
- set upload=nothing
- Htmend iCount&" 个文件上传结束!"
- sub HtmEnd(Msg)
- set upload=nothing
- response.write "<br>"&Msg&" [<a href=""javascript:history.back();"">返回</a>]</body></html>"
- response.end
- end sub
- %>
未对上传文件进行任何过滤,登录后可以上传任意文件,未做任何文件名的修改。 由于分析的是一个小程序,刚我也测试了一下,能拿shell的站不多,也就不提供关键字了,主要是学习一下找漏洞的思路吧 2010.8.12 (责任编辑:admin) |