温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

什么是本地SQL注射

发布时间:2021-09-24 11:21:13 来源:亿速云 阅读:102 作者:iii 栏目:数据库

这篇文章主要介绍“什么是本地SQL注射”,在日常操作中,相信很多人在什么是本地SQL注射问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”什么是本地SQL注射”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

何为本地注射?简单地讲,就是本来你在服务器上无法进行SQL注入,因为服务器上的WEB程序很安全,对request("id")这样的请求过滤很严,或是限制输入格式为数字等等方法,你只能选择放弃放弃注入。

但是在有的时候,你可以在本机的IIS里进行注入,从而达到对服务器注射的目的,避过服务器的request参数提交过滤。举例子来说明吧,现在你误打误撞,利用暴库或是其他的漏洞,得到了服务器的conn.asp文件,那么恭喜你,入侵离成功不远了。

conn.asp文件代码一般如下:

<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "PROVIDER=SQLOLEDB;DATA SOURCE=61.121.140.37;UID=admin;pwd=12345;DATABASE=master"
%>

这里面记录的就是服务器的数据库的一些信息了,一般也会得到连接密码,说明是MSSQL的系统,非常好搞。如果服务器有URL可以进行SQL语句注射的话,恢复下XP_CMDshell,我们就能执行很多命令了,DOS命令也随便你。但是很可惜,我们不能注射,只有这么一个conn.asp文件可以利用。

那么,我们在本机来欺骗服务器,不过你要知道那个服务器采用的是什么web程序,不然你下面就不好写代码,我们来写一个sqltest.asp文件,在其中不做任何过滤,将这个文件和conn.asp一起放到你的IIS中的wwwroot下面,这样你就能通过Localhost来访问啦。

sqltest.asp代码如下:

<!--#include file="conn.asp"-->
<%
dim rs,strSQL,id
set rs=server.createobject("ADODB.recordset")
id = request("id")
strSQL ="select * from DVBBSmdb where GuestID=" & id
rs.open strSQL,conn,1,3
rs.close
%>

那个DVBBSmdb是我虚构的,大家要改成这个web程序的数据库的库名。看到没有,id的提交参数没有经过任何的过滤,没有用replace或是其他的函数。现在我们在啊D中输入注射URL:http://localhost/sqltest.asp?id=1。接着用啊D在本地服务器执行命令或是跑用户名和密码,就等同于在你要入侵的服务器上进行注射,绕过了它的防注入措施。

到此,关于“什么是本地SQL注射”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sql
AI