构造ASP注入点

独自等待 2017年5月12日02:42:16评论501 views字数 635阅读2分7秒阅读模式

为了测试WAF,要写一个ASP+MSSQL2005的注入点,自己又不会ASP,于是网上查到了这个文章,文章虽然很老,但是方法却是比较实用的。

首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去

SQL注入


<%
set rs=server.createobject("ADODB.recordset")
id = request("id")
strSQL = "select * from admin where id=" & id
rs.open strSQL,conn,1,3
rs.close
%>

把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!然后就要构造一个连接数据库的文件了,代码如下:

<%    
strSQLServerName = "000.000.000.000"   '服务器名称或地址
strSQLDBUserName = "sqlname"       '数据库帐号
strSQLDBPassword = "sqlpass"       '数据库密码
strSQLDBName = "sqldataname"       '数据库名称
Set conn = Server.CreateObject("ADODB.Connection")
strCon = "Provider=SQLOLEDB.1;Persist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & ";Password=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
conn.open strCon
%>

这里应该都会了;不过注意的是保存的文件名要和include调用的名字一样。正常情况下,就OK了,伪造成功……

可能由于测试环境的问题,我是ASP+MSSQL2005,所以访问的时候出错了,出错提示如下:

[DBNETLIB][ConnectionOpen(Invalid Instance())] 无效的连接

如果遇到了这样的问题,请把数据库ip后面加一个端口号即可,比如把strSQLServerName = "127.0.0.1"改为

strSQLServerName = "127.0.0.1,1433" 即可。

参考文章:

http://blog.163.com/hack_xk/blog/static/169017572201071024930292/



from www.waitalone.cn.thanks for it.

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
独自等待
  • 本文由 发表于 2017年5月12日02:42:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   构造ASP注入点https://cn-sec.com/archives/50411.html

发表评论

匿名网友 填写信息