第一种:
squery=lcase(Request.ServerVariables("QUERY_STRING"))
sURL=lcase(Request.ServerVariables("HTTP_HOST"))
SQL_injdata =":||>|<|--|sp_|xp_|\|dir|cmd|^|(|)|+|$|'|copy|format|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
SQL_inj = split(SQL_Injdata,"|")
For SQL_Data=0 To Ubound(SQL_inj)
if instr(squery&sURL,Sql_Inj(Sql_DATA))>0 Then
Response.Write "SQL通用防注入系统"
Response.end
end if
next
第二种:
SQL_injdata =":||>|<|--|sp_|xp_|\|dir|cmd|^|(|)|+|$|'|copy|format|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
SQL_inj = split(SQL_Injdata,"|")
If Request.QueryString<>"" Then
For Each SQL_Get In Request.QueryString
For SQL_Data=0 To Ubound(SQL_inj)
if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then
Response.Write "SQL通用防注入系统"
Response.end
end if
next
Next
End If
If Request.Form<>"" Then
For Each Sql_Post In Request.Form
For SQL_Data=0 To Ubound(SQL_inj)
if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then
Response.Write "SQL通用防注入系统"
Response.end
end if
next
next
end if
第三种
<%
'--------定义部份------------------
Dim Str_Post,Str_Get,Str_In,Str_Inf,Str_Xh,Str_db,Str_dbstr
'自定义需要过滤的字串,用 "■"分离
Str_In = "'■■and■exec■insert■select■delete■update■count■*■%■chr■mid■master■truncate■char■declare"
'----------------------------------
%>
<%
Str_Inf = split(Str_In,"■")
'--------POST部份------------------
If Request.Form<>"" Then
For Each Str_Post In Request.Form
For Str_Xh=0 To Ubound(Str_Inf)
If Instr(LCase(Request.Form(Str_Post)),Str_Inf(Str_Xh))<>0 Then
'--------写入数据库----------头-----
Str_dbstr="DBQ="+server.mappath("SqlIn.mdb")+"DefaultDir=DRIVER={Microsoft Access Driver (*.mdb)}"
Set Str_db=Server.CreateObject("ADODB.CONNECTION")
Str_db.open Str_dbstr
Str_db.Execute("insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('"&Request.ServerVariables("REMOTE_ADDR")&"','"&Request.ServerVariables("URL")&"','POST','"&Str_Post&"','"&replace(Request.Form(Str_Post),"'","''")&"')")
Str_db.close
Set Str_db = Nothing
'--------写入数据库----------尾-----
Response.Write "<Script Language=JavaScript>alert('请不要在参数中包含非法字符尝试注入!')</Script>"
Response.Write "非法 *** 作!系统做了如下记录:<br>"
Response.Write " *** 作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br>"
Response.Write " *** 作时间:"&Now&"<br>"
Response.Write " *** 作页面:"&Request.ServerVariables("URL")&"<br>"
Response.Write "提交方式:POST<br>"
Response.Write "提交参数:"&Str_Post&"<br>"
Response.Write "提交数据:"&Request.Form(Str_Post)
Response.End
End If
Next
Next
End If
'----------------------------------
'--------GET部份-------------------
If Request.QueryString<>"" Then
For Each Str_Get In Request.QueryString
For Str_Xh=0 To Ubound(Str_Inf)
If Instr(LCase(Request.QueryString(Str_Get)),Str_Inf(Str_Xh))<>0 Then
'--------写入数据库----------头-----
Str_dbstr="DBQ="+server.mappath("SqlIn.mdb")+"DefaultDir=DRIVER={Microsoft Access Driver (*.mdb)}"
Set Str_db=Server.CreateObject("ADODB.CONNECTION")
Str_db.open Str_dbstr
Str_db.Execute("insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('"&Request.ServerVariables("REMOTE_ADDR")&"','"&Request.ServerVariables("URL")&"','GET','"&Str_Get&"','"&replace(Request.QueryString(Str_Get),"'","''")&"')")
Str_db.close
Set Str_db = Nothing
'--------写入数据库----------尾-----
Response.Write "<Script Language=JavaScript>alert('请不要在参数中包含非法字符尝试注入!)</Script>"
Response.Write "非法 *** 作!系统做了如下记录:<br>"
Response.Write " *** 作IP:"&Request.ServerVariables("REMOTE_ADDR")&"<br>"
Response.Write " *** 作时间:"&Now&"<br>"
Response.Write " *** 作页面:"&Request.ServerVariables("URL")&"<br>"
Response.Write "提交方式:GET<br>"
Response.Write "提交参数:"&Str_Get&"<br>"
Response.Write "提交数据:"&Request.QueryString(Str_Get)
Response.End
End If
Next
Next
End If
%>
第3中方法需要你自己建个数据库表
试试看吧
壹:先找注入漏洞,在一些新闻或者文章后面加上或者'来测试是不是返回错误,如果返回错误的时候再试空格and 1=1 和and 1=2再看返回错误是否不一样,不一样的说明存在了注入漏洞,开始用各种注入工具进行注入测试发现是ACCESS的数据库则直接暴用户名和密码来后台登陆,再找后台的漏洞看时候可以上传或写进ASP马。如果是SQL的数据库同样可以暴帐号密码,但发现SQL的权限为SA的就可以直接在对方服务器内增加ADMIN帐号SQL连接器连接即而开对方的3389端口开完全控制。贰:找各种附带上传功能的程序,比如动力文章、蚂蚁影视、同学录等等,接下来要注册的进行注册不需要注册的可以把该上传功能保存为本地HTM文件来看是否本地限制格式,如果不是的话那就利用林子大哥做的欺骗上传的HTM或者用NC等工具来抓包进行修改然后再上传ASP马。有些程序则需要你把该程序的源代码下下来之后查看上传是否可行和上传的真确地址。
叁:利用%5c进行暴库如果是.mdb格式的则直接下载,利用数据库查看的工具进行查找帐号和密码,如果密码加密就用dv.exe进行破解只破解纯数字和纯字母!数字字母混合的实在太废时间了不推荐。如果对方数据库为.asp后缀的,那就更好办了在你能填写的信息里填写<%execute request("l")%>的代码来使数据库只执行这个代码就可以用蓝屏大叔的木马客户端来连接对方的数据库上传大的ASP马。
肆:寻找网站各种程序后台,程序越多越好,登陆时先用 'or''=' 帐号密码来测试是否有最老的ASP漏洞,如果都不行再测试默认的帐号密码,一般均为admin或者有的密码为admin888等等。
伍:寻找动网论坛,呵呵 现在大部分都网站都用此论坛程序。动网论坛被高手称为洞网因为其漏洞实在太多了1、上传漏洞,我就不想多说了就是利用upfile.asp 2、默认数据库漏洞,很多的弱智管理员都不改数据库名称的在data/dvbbs7.mdb就可以把数据库下载下来了,再加上dv_log表段看帐号密码使得动网论坛的数据库加密行同虚设。3、虚拟形象插件漏洞,里面同样存在上传漏洞利用方式和upfile.asp一样。4、下载中心插件漏洞,一样的上传漏洞利用方式。5、数据库备份默认地址漏洞,有些管理员改了数据库的地址,但是由于疏忽而没改备份后的数据库路径地址存在于databackup/dvbbs7.mdb下载下来后和上面第2条用法一样。(有许多的论坛都存在漏洞比如Discuz2.2F等等。。)
陆:各种留言本或日记存在默认数据库漏洞,因为是个小程序所以改的人也不是很多。只要下载该程序下来就可以知道数据库地址了。也有很多别的办法可以知道数据库地址,如:暴库、查看conn.asp的源文件、还有就是利用该程序管理员的疏忽 就是在地址后面打上(程序说明.txt、说明.txt、readme.txt等等)自然就会告诉你它的默认地址了^ ^找到了地址之后可以利用获得的管理员密码来破该站所在的别的管理员密码,很管用的呦 呵呵,还有就是asp结尾的数据库大家可以参照上面的叁用蓝屏大叔的木马来入侵。
柒:利用旁注来进行入侵,有时候大家都一个站一点办法都没有,那怎么办呢?呵呵 这个站没有漏洞并不说该站所在服务器别的站也不存在漏洞,那我们就可以利用查找该服务器玉米的工具来找别的站,然后找到别的站之后再来循环上面的壹~~陆。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)