當前位置:首頁 » 操作系統 » oracle資料庫精講與疑難解析第2版

oracle資料庫精講與疑難解析第2版

發布時間: 2022-10-19 11:40:22

Ⅰ Oracle資料庫精講與疑難解析的介紹

本書是一本毫無保留的Oracle學習寶典。通過作者歷時3年的寫作,本書介紹了Oracle的安裝及卸載、資料庫的啟動關閉、表空間和數據文件的管理、Oracle網路管理、口令文件管理、內存管理、進程管理、用戶管理、數據的導入導出、備份與恢復、模式對象的管理以及應用程序開發等相關知識。本書旨在向讀者解答使用Oracle中遇到的疑難問題,並展示管理Oracle的大量技巧。作者趙振平。

Ⅱ Oracle資料庫精講與疑難解析的圖書目錄

第1篇 創建屬於自己的Oracle資料庫
第1章 認識Oracle的世界——Oracle的體系結構
1.1 Oracle的發家史
1.2 資料庫
1.3 資料庫管理系統(DBMS)
1.4 關系資料庫的概念(RDBMS)
1.4.1 關系資料庫模型
1.4.2 表
1.5 Oracle的總體框架結構
1.5.1 Oracle實例(Oracle Instance)
1.5.2 Oracle的存儲結構
1.6 數據字典(Data Dictionary)
1.6.1 數據字典概述
1.6.2 數據字典的結構
1.6.3 數據字典的使用
第2章 邁出第1步——Oracle的安裝/卸載
2.1 Oracle的安裝
2.1.1 Oracle安裝的幾個概念
2.1.2 Oracle g(10.1)的安裝——Windows篇
2.1.3 Oracle g的安裝——Solaris篇
2.1.4 Oracle安裝疑難解析
2.2 Oracle的卸載
2.2.1 Oracle完全卸載——Windows篇
2.2.2 Oracle完全卸載——UNIX篇
第3章 有米之炊——資料庫的創建與刪除
3.1 創建資料庫
3.1.1 資料庫創建概述
3.1.2 Solaris下用DBCA創建資料庫
3.1.3 DIY——Solaris下手工創建資料庫
3.1.4 資料庫創建疑難解析
3.2 刪除資料庫
3.2.1 資料庫刪除概述
3.2.2 資料庫刪除——手工篇
3.2.3 資料庫刪除——DBCA篇
第2篇 網 絡 管 理
第4章 Oracle網路管理並不難
4.1 Oracle網路體系結構
4.1.1 Oracle應用的幾種網路結構
4.1.2 Oracle Net
4.1.3 OSI模型
4.1.4 Oracle Net的堆棧結構
4.1.5 Oracle監聽器
4.1.6 連接描述符(connect identifier)
4.1.7 網路服務名(Net Service Name)
4.1.8 命名方法
4.1.9 配置Oracle網路的工具
4.2 Oracle網路管理
4.2.1 Oracle網路伺服器端配置
4.2.2 Oracle網路客戶端配置
4.3 Oracle網路管理疑難解析
4.3.1 Oracle網路伺服器端配置疑難解析
4.3.2 Oracle網路客戶端配置疑難解析
4.3.3 Oracle網路與防火牆(Firewall)
第3篇 系 統 管 理
第5章 系統管家婆——sql*Plus的使用
5.1 系統管理工具SQL*Plus
5.2 SQL緩沖區(SQL Buffer)
5.3 SQL*Plus的環境配置
5.3.1 SQL*Plus的環境變數
5.3.2 SQL*Plus站點配置文件(Site Profile)
5.3.3 SQL*Plus用戶配置文件(User Profile)
5.4 SQL*Plus的啟動
5.5 SQL*Plus專有命令介紹
5.5.1 登錄,注銷命令
5.5.2 編輯命令
5.5.3 其他有用的SQL*Plus命令
5.6 SQL*Plus 與疑難解析
第6章 有始有終——資料庫的啟動與關閉
6.1 資料庫啟動
6.1.1 資料庫啟動原理
6.1.2 資料庫啟動
6.1.3 資料庫啟動疑難解析
6.2 資料庫關閉
6.2.1 資料庫關閉原理
6.2.2 資料庫的關閉(SHUTDOWN)
6.2.3 資料庫關閉疑難解析
第7章 理清兩個模式問題——專有/共享伺服器模式
7.1 理解專有伺服器模式(Dedicated Server Mode)
7.2 共享伺服器模式(Shared Server Mode)原理
7.2.1 共享伺服器模式(Shared Server Mode)的架構
7.2.2 監聽器和調度進程的關系
7.2.3 請求隊列(Request Queue)/響應隊列(Response Queue)
7.2.4 調度進程(Dispatcher Processes,Dnnn)
7.2.5 共享伺服器進程(Shared Server Processes,Snnn)
7.3 共享伺服器模式(Shared Server Mode)
7.4 共享伺服器模式(Shared Server Mode)疑難解析
第8章 掌握兩個管理問題——表空間和數據文件的管理
8.1 資料庫存儲結構
8.1.1 物理結構
8.1.2 邏輯結構
8.2 深刻理解表空間
8.2.1 大文件表空間
8.2.2 系統表空間
8.2.3 輔助表空間
8.2.4 回滾表空間(Undo Tablespace)
8.2.5 臨時表空間
8.2.6 表空間中區的管理方式
8.2.7 表空間中段的管理方式
8.2.8 非標准塊表空間
8.2.9 表空間的離線(Offline)與在線(Online)
8.2.10 只讀表空間(Read-Only Tablespace)
8.3 深刻理解數據文件
8.3.1 數據文件的內容
8.3.2 數據文件的尺寸(Size)
8.3.3 離線數據文件
8.3.4 臨時數據文件(Temporary Datafiles)
8.4 表空間管理 與疑難解析
8.4.1 永久表空間管理
8.4.2 臨時表空間管理 與疑難解析
8.4.3 回滾表空間管理 與疑難解析
8.5 數據文件管理 與疑難解析
8.5.1 數據文件管理
8.5.2 數據文件管理疑難解析
第9章 進程管理
9.1 Oracle進程簡介
9.2 用戶進程
9.3 Oracle進程
9.3.1 伺服器進程
9.3.2 後台進程
9.4 進程綜合管理 與疑難解析
9.5 會話管理 與疑難解析
第10章 內存管理
10.1 Oracle內存結構簡介
10.2 系統全局區
10.3 SGA自動管理
10.4 SGA組成介紹
10.4.1 資料庫高速緩沖區
10.4.2 日誌緩沖區
10.4.3 共享池
10.4.4 大池
10.4.5 java
10.4.6 流池
10.5 程序全局區
10.6 內存管理 與疑難解析
第11章 用戶管理
11.1 用戶驗證
11.1.1 口令認證
11.1.2 外部認證
11.1.3 全局認證
11.2 Oracle的安全大門——許可權(Privileges)
11.2.1 系統許可權
11.2.2 對象許可權
11.3 使許可權管理變得更加容易——角色(Role)
11.4 限制用戶的資源消耗——資源限制文件(Profile)
11.4.1 資源限制的級別
11.4.2 限制資源的參數
11.5 用戶與許可權管理 與疑難解析
11.5.1 用戶管理 與疑難解析
11.5.2 許可權管理 與疑難解析
11.5.3 角色管理 與疑難解析
11.5.4 資源限制文件管理 與疑難解析
第4篇 移動你的資料庫
第12章 數據導出
12.1 數據導出方法介紹
12.1.1 Oracle最新導出工具——Data Pump Export
12.1.2 Oracle原來的導出工具——Export
12.2 數據導出
12.3 數據導出疑難解析
第13章 數據導入
13.1 數據導入方法介紹
13.1.1 Oracle最新導入工具——Data Pump Import
13.1.2 Oracle以前的導入方法——Import
13.2 數據導入
13.3 數據導入疑難解析
第5篇 Oracle文件管理
第14章 重中之重——控制文件的管理
14.1 控制文件的概念
14.2 控制文件管理 與疑難解析
第15章 成為資料庫的最高統治者——口令文件(Password File)管理
15.1 超級用戶許可權(SYSDBA、SYSOPER)介紹
15.2 口令文件的基本概念
15.3 啟用口令文件認證
15.4 口令文件管理 與疑難解析
第16章 聯機日誌文件管理
16.1 聯機日誌文件的概念
16.1.1 聯機日誌文件的內容
16.1.2 聯機日誌文件的循環利用
16.2 聯機日誌文件管理 與疑難解析
第17章 參數文件(PFILE/SPFILE)管理
17.1 參數文件的基本概念
17.2 初始化參數文件
17.3 伺服器參數文件
17.4 初始化參數的修改
17.5 參數管理 與疑難解析
第6篇 Oracle高級專題
第18章 全球應用——分布式資料庫疑難攻略
18.1 分布式資料庫系統的概念
18.1.1 同構分布式資料庫系統
18.1.2 異構分布式資料庫系統
18.1.3 資料庫鏈接(Database Link)
18.2 分布式資料庫管理 與疑難解析
第19章 並不陌生的問題——裸設備
19.1 裸設備的概念
19.2 裸設備管理 與疑難解析
第7篇 資料庫備份/恢復
第20章 備份/恢復之基石——歸檔(Archivelog)管理
20.1 歸檔的基本概念
20.1.1 非歸檔模式
20.1.2 歸檔模式
20.1.3 歸檔路徑
20.2 歸檔管理 與疑難解析
第21章 必行之舉——資料庫備份
21.1 理解資料庫備份
21.1.1 資料庫失敗的種類
21.1.2 備份和恢復的解決方案
21.1.3 備份和恢復的物理結構
21.1.4 備份的類型
21.1.5 執行用戶管理的備份
21.2 恢復管理器(RMAN)
21.2.1 通道
21.2.2 備份集的維護
21.2.3 RMAN資料庫
21.2.4 RMAN的使用
21.3 資料庫備份 與疑難解析
21.4 恢復目錄管理 與疑難解析
第22章 失而復得——資料庫恢復
22.1 資料庫恢復
22.1.1 實例恢復
22.1.2 介質恢復
22.1.3 用戶錯誤(User Error)的恢復
22.2 資料庫閃回(Flashback Database)
22.3 用戶管理的恢復(User-managed Recovery)
22.4 聯機日誌文件丟失的恢復
22.5 控制文件損壞的恢復
22.6 數據文件損壞的恢復
22.7 表的恢復(用戶錯誤的恢復)
第8篇 Oracle程序設計
第23章 資料庫通用語言——SQL語句
23.1 結構化查詢語言簡介
23.2 SELECT語句
23.2.1 理解SELECT 語句
23.2.2 SELECT語句使用 與疑難解析
23.3 INSERT語句
23.3.1 理解INSERT語句
23.3.2 INSERT語句使用 與疑難解析
23.4 UPDATE語句
23.4.1 理解UPDATE語句
23.4.2 UPDATE語句使用 與疑難解析
23.5 DELETE語句
23.5.1 理解DELETE語句
23.5.2 DELETE語句的使用
23.6 SQL語句中,集合函數使用 與疑難解析
第24章 模式對象(Schema Object)的管理
24.1 模式(Schema)的概念
24.2 模式對象管理
24.2.1 表(Table)
24.2.2 索引(Index)
24.2.3 外部表(External Table)
24.2.4 臨時表(Temporary Table)
24.2.5 分區表(Partition Table)
24.2.6 聚簇(Cluster)
24.2.7 索引組織表(Index-Organized Table,IOT)
24.2.8 視圖
24.2.9 同義詞
24.2.10 序列
第25章 PL/SQL應用程序開發
25.1 PL/SQL簡述
25.1.1 PL/SQL塊結構
25.1.2 數據類型
25.1.3 運算符
25.1.4 PL/SQL語句控制結構
25.2 存儲過程(Stored Procere)
25.2.1 存儲過程的基本原理
25.2.2 存儲過程管理 與疑難解析
25.3 函數(Function)
25.3.1 函數的基本原理
25.3.2 函數的管理 與疑難解析
25.4 包
25.4.1 包的基本原理
25.4.2 包管理 與疑難解析
25.5 觸發器
25.5.1 觸發器的基本原理
25.5.2 觸發器管理 與疑難解析
25.6 游標
25.6.1 游標的基本原理
25.6.2 游標管理 與疑難解析
速查目錄
第2章 邁出第1步——Oracle的安裝/卸載
第3章 有米之炊——資料庫的創建與刪除
第4章 Oracle網路管理並不難
第5章 系統管家婆——SQL*Plus的使用 實務
第6章 有始有終——資料庫的啟動與關閉
第7章 理清兩個模式問題——專有/共享伺服器模式
第8章 掌握兩個管理問題——表空間和數據文件的管理
第9章 進程管理 實務
第10章 內存管理 實務
第11章 用戶管理 實務
第12章 數據導出 實務
第13章 數據導入 實務
第14章 重中之重——控制文件的管理
第15章 成為資料庫的最高統治者——口令文件(Password File)管理
第16章 聯機日誌文件管理 實務
第17章 參數文件(PFILE/SPFILE)管理
第18章 全球應用——分布式資料庫疑難攻略 實務
第19章 並不陌生的問題——裸設備 實務
第20章 備份/恢復之基石——歸檔(Archivelog)管理 實務
第21章 必行之舉——資料庫備份
第22章 失而復得——資料庫恢復
第23章 資料庫通用語言——SQL語句
第24章 模式對象(Schema Object)的管理
第25章 PL/SQL應用程序開發 實務

Ⅲ Oracle資料庫精講與疑難解析的作者簡介

趙振平,生於20世紀末中國西南的一個邊陲小鎮。21世紀初,那是一個IT業動盪的日子,多少網站林立,又有多少網站倒閉;多少英雄沖鋒,又有多少豪傑流淚。華爾街金融巨子們瘋狂湧入IT業,柯林頓總統先生的」信息高速公路」政策,為我們描繪了IT業的宏偉藍圖,不知天有多高、地有多厚的我們.被捲入了全球IT業的激流中。但是,在激流中有過倒下,在激流中有過彷徨……在彷徨中思考未來。於是公元2001年,我正式主攻資料庫和數據倉庫。開始的歲月,Sybase、Oracle與SQL Server三座大山壓得我無法喘息,從不低頭的我們仍然要繼續前行的路。N年以後,我們越過了Sybase、Oracle、SQL Server、MySQL、DB2這幾座大山。但是,中國至今仍然沒有自主知識產權的資料庫,路還很遠…很長…還需要更多的人與我們一起努力!!

Ⅳ win7安裝Oracle資料庫11g第二版出現的問題 求解決

上圖的失敗都可以忽略,沒有什麼影響。原因時Oracle安裝時要檢測本機的C$共享,如果一定要檢測成功才安裝,可以按照下面步驟操作,以下步驟需要管理員許可權執行:

1、把C盤共享為c$
可以在命令行敲 net share c$=C:\
2、測試一下c$是否共享成功
方法是在命令行敲 net use \\localhost\c$
失敗會是這樣子...: 系統錯誤53 The network path was not found.
成功是這樣子: 命令成功完成。
3、如果第2步失敗, 檢查"服務"里的"Server"和"TCP/IP NetBIOS Helper"服務是否已開啟, 沒有的話啟動它並共享

解決系統錯誤53的經過:
第一步:檢查AutoShareServer和AutoShareWks注冊表值,以確保未將它們設置為0。依次點擊「開始→運行」,輸入regedit,然後按回車鍵進入注冊表編輯器。
第二步:找到並單擊HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters。
第三步:如果LanmanServerParameters子項中的AutoShareServer 和AutoShareWks DWORD值配置的數值為0,則將該值更改為1,重啟操作系統。

Ⅳ 安裝好oracle資料庫11g第二版之後,「僅安裝軟體」沒有在安裝的時候創建資料庫,安裝好之後如何創建。。

點擊 電腦左下角 開始>所有程序>oracle-Db11g_home >配置和移植工具>Database configuration Assistant ,然後就可以創建資料庫了。 如果答的可以望採納。謝謝。

Ⅵ Oracle資料庫基本知識

Oracle資料庫基本知識

Oracle Database,又名OracleRDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。本文為大家分享的是Oracle資料庫的基本知識,希望對大家有所幫助!

它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效率、可靠性好的適應高吞吐量的資料庫解決方案。

介紹

ORACLE資料庫系統是美國ORACLE公司(甲骨文)提供的以分布式資料庫為核心的一組軟體產品,是目前最流行的客戶/伺服器(CLIENT/SERVER)或B/S體系結構的資料庫之一。比如SilverStream就是基於資料庫的一種中間件。ORACLE資料庫是目前世界上使用最為廣泛的資料庫管理系統,作為一個通用的資料庫系統,它具有完整的數據管理功能;作為一個關系資料庫,它是一個完備關系的產品;作為分布式資料庫它實現了分布式處理功能。但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。

Oracle資料庫最新版本為OracleDatabase 12c。Oracle資料庫12c引入了一個新的多承租方架構,使用該架構可輕松部署和管理資料庫雲。此外,一些創新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個資料庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數據和對數據分層。這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle資料庫12c 成為私有雲和公有雲部署的理想平台。

就業前景

從就業與擇業的角度來講,計算機相關專業的大學生從事oracle方面的技術是職業發展中的最佳選擇。

其一、就業面廣:ORACLE幫助拓展技術人員擇業的廣度,全球前100強企業99家都在使用ORACLE相關技術,中國政府機構,大中型企事業單位都能有ORACLE技術的工程師崗位,大學生在校期間興趣廣泛,每個人興趣特長各異,不論你想進入金融行業還是電信行業或者政府機構,ORACLE都能夠在你的職業發展中給你最強有力的支撐,成為你最貼身的金飯碗。

其二、技術層次深:如果期望進入IT服務或者產品公司,Oracle技術能夠幫助提高就業的深度。Oracle技術已經成為全球每個IT公司必選的軟體技術之一,熟練掌握Oracle技術能夠為從業人員帶來技術應用上的優勢,同時為IT技術的深入應用起到非常關鍵的作用。掌握 Oracle技術,是IT從業人員了解全面信息化整體解決方案的基礎。

其三、職業方向多:Oracle資料庫管理方向、Oracle開發及系統架構方向、Oracle數據建模數據倉庫等方向。

Oracle資料庫漏洞分析:無需用戶名和密碼進入你的資料庫

一般性的資料庫漏洞,都是在成功連接或登錄資料庫後實現入侵;本文介紹兩個在2012年暴露的Oracle漏洞,通過這兩種漏洞的結合,可以在不掌握用戶名/密碼的情況下入侵Oracle,從而完成對數據的竊取或者破壞。這兩個漏洞就是CVE-2012-1675和CVE-2012-3137。

引言

國內外很多重要的系統都採用Oracle作為數據存儲的資料庫;在Oracle中存儲著企業或政府大量敏感的信息,在金錢或政治的誘導下,內外部黑客會想法利用管理、網路、主機或資料庫的自身漏洞嘗試入侵到資料庫中,以達到自身的目的。

本文的作者通過對Oracle倆種漏洞的組合研究,設計了一套在不掌握用戶名/密碼的方式入侵到Oracle中;這種方法,比傳統的需要登錄到資料庫中的入侵方法,具有更大的安全隱患和破壞性。

本文希望通過對這兩個漏洞和攻擊方法的介紹,能夠引起相關人員的重視,完善對資料庫安全的措施。

1、概要介紹

本文提供的方法是基於漏洞CVE-2012-1675和CVE-2012-3137對oracle資料庫的攻擊測試的方法。

CVE-2012-1675漏洞是Oracle允許攻擊者在不提供用戶名/密碼的'情況下,向遠程“TNS Listener”組件處理的數據投毒的漏洞。攻擊者可利用此漏洞將資料庫伺服器的合法“TNS Listener”組件中的數據轉向到攻擊者控制的系統,導致控制遠程組件的資料庫實例,造成組件和合法資料庫之間的中間人攻擊、會話劫持或拒絕服務攻擊。

CVE-2012-3137漏洞是Oracle Database 10g/11g身份驗證協議實現中存在一個設計缺陷,攻擊者無需認證即可遠程獲取資料庫用戶密碼哈希相關數據,從而可以離線暴力破解用戶密碼,進一步控制資料庫系統。

我們通過如下的步驟和過程可以實現對Oracle的入侵:

(1)利用CVE-2012-1675進行TNS劫持,在監聽下利用遠程注冊,注冊同名資料庫實例;

(2)新登陸的用戶,在TNS的負載均衡策略下,有可能流量登錄到偽造的監聽服務上;

(3)該監聽服務對用戶的登陸過程進行監控,並將相關數據流量轉發到真實的資料庫上;

(4)利用CVE-2012-3137獲得通訊過程中的認證相關信息;

(5)對認證相關信息進行離線的暴力破解,獲得登陸的密碼;

(6)試用破解的用戶名/密碼登陸Oracle,完成對Oracle中數據的訪問;

2、通過CVE-2012-1675進行TNS劫持

該漏洞存在於Oracle的所有版本,並且Oracle至今僅是發布了警告性通知,並未提供解決方案。

要想利用CVE-2012-1675漏洞做TNS劫持,首先需要了解TNS機制。如下圖所示oracle 通過在本地解析網路服務名到目標主機IP地址,服務埠號,目標資料庫名,把這些信息發送到oracle伺服器端監聽程序,最後再由監聽程序遞送DBMS。

其中關鍵點在於監聽會按照目標資料庫名遞送到名稱正確的資料庫。那麼如果一個監聽下有2個同名資料庫。監聽將自動按照負載均衡把這次訪問發送到負載低的資料庫上,進行連接訪問。資料庫注冊到監聽的方法就決定了,能否同時注冊同名資料庫在同一個監聽下。注冊方式分為本地注冊和遠程注冊,通過修改參數可以調整為遠程注冊。

下面是一段可用的TNS劫持的過程:

1.在劫持機上創建一個和目標資料庫實例同名的資料庫實例。

2.在劫持機上修改 tnsnames.ora 文件

添加

listener_name=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=tcp)(HOST=目標機器IP)(PORT=目標機器埠)))

3.在劫持機上用SQL*Plus 順序執行下面步驟。

1.$ sqlplus / as sysdba

2. SQL> ALTER SYSTEM SETREMOTE_LISTENER='LISTENER_NAME';

3. SQL> ALTER SYSTEM REGISTER;

4.多個客戶端,向資料庫發起登錄。會劫持到一部分客戶端的登錄信息。

最終達到效果如下圖所示:

按照猜想同一個監聽下有2個同名實例。客戶端訪問監聽,監聽按照客戶端中的資料庫名信息分配資料庫,由於監聽下有2個同名資料庫,客戶端鏈接很可能會被分配到劫持者的資料庫實例下,再通過配置劫持者的本地監聽把客戶端請求指回原資料庫。結構圖如下:

測試客戶端鏈接196次。目標資料庫實例獲得113次,劫持資料庫實例獲得83次基本滿足負載均衡的假設。(註上面實例是local server 下面實例是 remote server)

通過以上方式我們可以截獲約一半左右客戶端發送到伺服器的合法鏈接。其中獲得了伺服器IP、埠號、資料庫位置、實例名、登錄用戶名等一系列明文信息和4組密文信息(AUTH_SESSKEY,AUTH_SESSKEY_CLIENT,AUTH_PASSWORD,AUTH_VFR_DATA)。

3、通過CVE-2012-3137進行密碼破解

CVE-2012-3137受影響的資料庫版本有11.2.0.3,11.2.0.2,11.1.0.7,有使用了SHA-1加密演算法的10.2.0.5和10.2.0.4,還有使用了SHA-1的10.2.0.3(運行在z/OS下)版本。

雖然這個漏洞在11.2.0.3中已經解決,但是僅僅資料庫客戶端和伺服器都升級到11.2.0.3並且sqlnet.ora文件中增加SQLNET.ALLOWED_LOGON_VERSION=12才有效。

正如CVE-2012-3137所描述Oracle為了防止第三方通過網路獲取登錄信息包。而對密碼進行了加密處理。本部分只以oracle11.1密碼如何破解為例進行說明。

在發起連接之後(oracle牽手完成),客戶端和伺服器經過協商確定要使用的驗證協議。要完成這個任務,客戶端首先向資料庫發送一個包。包中包含客戶端主要信息和所請求的加密方式。資料庫確認加密方式有效後,發送一個確認服務包如下圖所示:

在通過安全網路服務完成任何所要求的協議之後,資料庫用戶被O3logon(oracle驗證方式) 進行驗證,這個協議執行一個序列來向資料庫證明客戶端擁有密碼。為了避免網路第三方截獲到密碼。首先客戶端發送用戶名到資料庫來表明用戶身份。資料庫端根據加密協議,其中96位的作為資料庫端密鑰,20位的作為偏移量,它對每個連接都是不同的。一個典型的資料庫端發給客戶端的密鑰如下:

AUTH_SESSKEY.....COCDD89FIGODKWASDF……………………

客戶端根據加密演算法向伺服器端發送96位的客戶端密鑰和64位的密碼密鑰。伺服器端計算客戶端傳入的密碼密鑰。如果計算後密碼密文和資料庫中存儲的16位密碼密文一致則驗證通過。

根據這個過程可知上面TNS劫持包中取得的加密信息:AUTH_SESSKEY,AUTH_SESSKEY_CLIENT,AUTH_PASSWORD,AUTH_VFR_DATA這四個值是解密的關鍵。我們把他們按照SHA1,MD5,AES192進行一系列處理。最終通過數據字典碰撞得到密碼明文。

下面這段網上公布的一段示例代碼,這段代碼與筆者的思路不完全相同,但也能大概地說明這個漏洞的攻擊過程:

import hashlib

from Crypto.Cipher import AES

def decrypt(session,salt,password):

pass_hash= hashlib.sha1(password+salt)

key =pass_hash.digest() + 'x00x00x00x00'

decryptor= AES.new(key,AES.MODE_CBC)

plain =decryptor.decrypt(session)

returnplain

session_hex ='6EAAB5422553A7598143E78767'

salt_hex = 'A7193E546377EC56639E'

passwords = ['test','password',''oracle','demo']

for password in passwords:

session_id= decrypt(session_hex.decode('hex'),salt_hex.decode('hex'),password)

print'Decrypted session_id for password "%s" is %s' %(password,session_id.encode('hex'))

ifsession_id[40:] == 'x08x08x08x08x08x08x08x08':

print'PASSWORD IS "%s"' % password

break

4、建議的預防措施

根據以上兩段分析,我們可以有如下的預防措施:

(1)在條件許可的情況下,對Oracle進行補丁升級,對Oracle打cpuoct2012-1515893補丁;注意對於cpuoct2012-1515893補丁要求伺服器端和應用伺服器端同時升級,否則應用系統將無法訪問Oracle;

(2)若無法對Oracle升級,要購買或安裝具備虛擬補丁功能的資料庫安全產品,防止對CVE-2012-3137和CVE-2012-1675的利用;

(3)建立足夠強健的口令,不要使用8位以下密碼,或者字典庫中的口令。

;

Ⅶ oracle資料庫如何解析XML數據獲取值

實現思路:可以通過w3c的dom解析器進行操作,之後通過getName獲取到xmltpye中的屬性值。

舉例:

import java.io.File;

import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;

import org.w3c.dom.Element;

import org.w3c.dom.NodeList;

public class DomTest1

{

public static void main(String[] args) throws Exception

{

// step 1: 獲得dom解析器工廠(工作的作用是用於創建具體的解析器)

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

// System.out.println("class name: " + dbf.getClass().getName());

// step 2:獲得具體的dom解析器

DocumentBuilder db = dbf.newDocumentBuilder();

// System.out.println("class name: " + db.getClass().getName());

// step3: 解析一個xml文檔,獲得Document對象(根結點)

Document document = db.parse(new File("candidate.xml"));

NodeList list = document.getElementsByTagName("PERSON");

for(int i = 0; i < list.getLength(); i++)

{

Element element = (Element)list.item(i);

String content = element.getElementsByTagName("NAME").item(0).getFirstChild().getNodeValue();

System.out.println("name:" + content);

System.out.println("--------------------------------------");

}

}

}

Ⅷ 有沒有《ORACLE資料庫精講與疑難解析》的電子版

這種資源還是在網路搜一下,如果曾經有人在網上發布,或有網站下載,一般都會被搜索引擎收錄;如果搜不到,你可以找一下相關的論壇,最好是那種人氣比較高的論壇,注冊會員,發帖求助,會有高手幫你的。

Ⅸ Oracle資料庫精講與疑難解析的編輯推薦

為你解決Oracle的疑難問題:安裝Oracle時,不能啟動安裝界面……、安裝Oracle時,安裝界面顯示亂碼……、資料庫不能啟動……、不能歸檔資料庫、資料庫被掛起。
本書內容:1認識Oracle的世界——Oracle的體系結構,2邁出第1步——OracIe的安裝/卸載含35個實務,3有米之炊資料庫的創建與刪除含14個實務,4 Oracle網路管理並不難含31個實務,5系統管家婆——SQL*PIus的使用合28個實務,6有始有終一資料庫的啟動關閉含43個實務,7理清兩個模式問題——專有/共享伺服器模式含16個實務,8掌握兩個管理問題——表空間和數據文件的管理含76個實務,9進程管理含14個實務,10內存管理含25個實務,11用戶管理含38個實務,12數據導出含39個實務,13數據導入含26個實務,,,14重中之重——控制文件的管理合個實務,15成為資料庫的最高統治者——口令文件(Password File)管理含14個實務,16聯機日誌文件管理含19個實務,17參數文件(PFILE/SPFILE)管理含9個實務,18全球應用——分布式資料庫疑難攻略含12個實務,19並不陌生的問題——裸設備含6個實務,20備份恢復之基石——歸檔(Archivelog)管理含25個實務,21必行之舉一資料庫備份含38個實務,22失而復得——資料庫恢復含32個實務,23資料庫通用語言——SQL語句含26個實務,24模式對象(Schema Object)的管理含110 個實務,25 PL/SQL應用程序開發含70個實務。
毫無保留:
·耗時3年,作者曾為本書辭職在家專心寫作
·754個實務,件件源自實際工作的經驗與教訓,配有實務速查目錄
·分享經驗,現在作者管理資料庫時,就通過復制本書內容來搞定問題
·為初學者去除Oracle的神秘面紗,少走彎路
·為專業人士提供速查手冊,遇到故障不求人

Ⅹ 有沒有《ORACLE資料庫精講與疑難解析》的電子版

V3.0是一套大型機械設計專業技術工具軟體,主要由機械設計數據資源、機械設計計算和查詢程序、機械工程常用公式計算、機械標准件2D和3D圖庫、機械工程常用英漢詞彙等分系統組成。(1)機械設計數據資源包括:常用基礎資料,零部件設計基礎標准,常用工程材料(金屬、非金屬),零件結構設計工藝性,連接與緊固,彈簧,起重運輸零部件、操作件和小五金,機架、箱體及導軌,潤滑與密封裝置,管道與管道附件,摩擦輪及螺旋傳動,帶傳動和鏈傳動,減速器和變速器,齒輪傳動,軸承,軸,聯軸器、離合器和制動器,常用電動機,常用低壓電器,液壓傳動,氣壓傳動與控制等數據資源模塊。(2)機械設計計算和查詢程序包括:公差與配合查詢,形狀與位置公差查詢,螺栓連接設計校核,鍵連接設計校核,彈簧設計,摩擦輪傳動設計,螺旋傳動設計,帶傳動設計,鏈傳動設計,漸開線圓柱齒輪傳動設計,普通圓柱蝸桿傳動設計計算,平面凸輪機構設計與分析,平面連桿機構設計,滾動軸承設計與查詢,軸設計計算等軟體模塊。(3)機械工程常用公式計算是一個能便捷地進行機械設計中的常用公式計算的工具軟體,亦可以自定義公式進行計算,包括:常用幾何體的幾何及物性計算,各種截面的力學性能、桿件計算,不同形狀截面中性軸的曲率半徑,受靜載荷梁的內力及變位計算公式,接觸應力計算公式,沖擊載荷計算公式,厚壁旋轉圓盤計算公式,等厚旋轉圓盤計算公式,薄殼中應力與位移計算公式,平面彎曲計算,圓盤平板計算等數百項數學、力學計算公式。

熱點內容
精密模具編程 發布:2025-05-14 17:45:16 瀏覽:499
存儲順序和邏輯順序有什麼區別 發布:2025-05-14 17:44:30 瀏覽:275
安卓版設置里的隱身在哪裡 發布:2025-05-14 17:35:16 瀏覽:332
linuxshell密碼 發布:2025-05-14 17:21:11 瀏覽:200
安卓手機聽筒在哪裡關閉 發布:2025-05-14 17:16:20 瀏覽:456
我的世界炸毀50萬伺服器 發布:2025-05-14 17:16:07 瀏覽:123
存儲站源 發布:2025-05-14 17:14:20 瀏覽:864
win2008的ftp設置 發布:2025-05-14 17:03:31 瀏覽:665
萊克發的工資卡密碼是多少 發布:2025-05-14 16:57:10 瀏覽:179
方舟怎麼用自己的存檔進入別人的伺服器 發布:2025-05-14 16:46:25 瀏覽:878