浅浅地练习一下sql注入简单版,永真公式。
SQL注入概述:
SQL注入漏洞主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的“数据”拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱裤、被删除、甚至整个服务器权限沦陷)
攻击:
点击链接进入网页,出现登录页面
尝试一下,万能密码admin’ or 1=1 – ,密码随便填。
OK,成功。
还有一种方式:
Kali里面的sqlmap来跑一下。首先网站页面是一个登录页面,是使用post来传输数据的。先用bp来抓一个包。
从图中我们知道了POST传输的数据的格式username=[表单内容]&password=[表达内容]
使用Kali的sqlmap,因为是post请求,所以要在使用’–data=提交的数据’,就会以post的方式来探测。探测结果如下:
查询数据库users:sqlmap -u “url” --data=“” --users
然后爆数据名,爆表,爆列。文章来源:https://www.toymoban.com/news/detail-450188.html
原理:
由于是在靶场中进行的,就可以将源码拿出来看一看。
定义俩个POST参数
$ xx=$ _POST[‘username’];
$ yy=$ _POST[‘password’];
将两个POST的内容传入sql语句执行,再将结果返回来,查询的结果row>0就可以了。
$ result = mysql_query(“select * from user where name=‘$ xx’ and pwd =‘$ yy’”);
但是如果我们在传入的参数里面使用admin’ or 1=1 – ,–是注释标记,传进去就会将语句改变成select * from user where name='admin’ or 1=1 –
,后面的内容已经被–注释掉了,所以随便写都行。因为有or 1=1,这个一定是正确的,那执行的结果肯定也是正确的,就满足$row>0的条件。就被绕过了。文章来源地址https://www.toymoban.com/news/detail-450188.html
到了这里,关于SQL注入(万能密码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!