欢迎光临
我们一直在努力

关于sql注入的简要演示(入坑抛砖)

首先可能大家都会问什么是sql?

sql是数据库的一种类型,是用来存储网站数据的。

每当我们点开一个网站,就会从网站的数据库中获取相关的内容。

我们来梳理一下访问网页的简图:

关于sql注入的简要演示(入坑抛砖)

看完这个以后,我们发现一个问题,当我们对发送数据这块动足够脑筋的时候,只要输入合理是可以做很多事情的,我们可以利用其方式获取很多内容。

接下来我们来讲解一下“ \' ”这个符号在sql中的运用

首先\' 在sql中闭合一句话结束,如果这句话用的是 \' 来闭合,那么我们人为的加入 \’ 是不是可以在后面接新的语句了呀?接新的句子就可以做自己想要做的事情了。

当然,如果大家想要真的理解还是要多学学sql和asp等语言。

接下来我们来开始演示吧~

关于sql注入的简要演示(入坑抛砖)

接下来步入正轨,进入域名以后,我们会发现网站是要我们输入id的,所以在这里按照sql的要求输入

http://localhost/sqli/less-1/?id=1

这里的?id=1是数据库的进入的格式,想要回去对应的数据变数字就行了。

关于sql注入的简要演示(入坑抛砖)

http://localhost/sqli/less-1/?id=2

关于sql注入的简要演示(入坑抛砖)

接着变换id,我们发现有多个账户密码,这些都是这个网站对应的数据库里面的内容。也是数据库里面对应的路径。

接下来就是重点了,当我们在http://localhost/sqli/less-1/?id=1后面加入 \’ 时候,我们来看一下

关于sql注入的简要演示(入坑抛砖)

我们发现这个网站出现了报错,并且出现了错误信息的一个反馈

\'\'1\'\' limit 0,1\'

这是由于我们加入 \’ 引起的,我们来看一下这个报错语句,分析一下它,去掉最外层的 ‘\’ 得到 \’1\’\’ limit 0,1 我们发现这个数据库有限制,输出只能是一行。

因为我们加入了\’闭合了语句,那么结合后面的内容,我们可以在\’后面补充一些句子来得到更多的内容,在这里我想获取数据库用户名,一般默认user

http://localhost/sqli/less-1/?id=1\’and updatexml(1,concat(0x7e,user()),0)%23

%23就是\’的意思。 是#url编码之后的值,因为sql语句在进入数据查询的时候会进行一次url解码,所以这个地方必须是url编码之后的值

关于sql注入的简要演示(入坑抛砖)

这里我们看到出现了

~root@localhost

也就是数据库的用户名是 root

接下来我要查询数据库名称

http://localhost/sqli/less-1/?id=1\’ and updatexml(1,concat(0x7e,datebase()),0)%23

关于sql注入的简要演示(入坑抛砖)

这里因为我把数据库文件名字改了所以没有查出来,当然,如果你知道的够多,这里还有很多种做法,这里的datebase的名字是可以猜解出来的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://www.cnblogs.com/anbus/p/9928540.html

赞(0) 打赏
主机商所有内容均来自网络,若无意侵犯到您的权利,请及时与联系 QQ 2232175042,将在48小时内删除相关内容!!主机测评网 » 关于sql注入的简要演示(入坑抛砖)

主机商评测网 找服务器 更专业 更方便 更快捷!

专注IDC行业资源共享发布,给大家带来方便快捷的资源查找平台!

联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫