中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle數據庫實現SQL注入模擬與恢復

發布時間:2021-08-13 19:15:48 來源:億速云 閱讀:259 作者:chen 欄目:關系型數據庫

本篇內容主要講解“Oracle數據庫實現SQL注入模擬與恢復”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Oracle數據庫實現SQL注入模擬與恢復”吧!


1.      Oracle SQL注入過程

1.1.SQL注入方式

從網上下載感染病毒的介質,在數據庫實例創建時SQL注入腳本被執行并創建了相應的觸發器和加密存儲過程。這種注入方式由于在數據庫實例創建時用SYS賬號運行了被感染的腳本文件因此不需要依賴數據庫中的DBA權限的用戶。這種注入方式通過在$ORACLE_HOME/rdbms/admin下的prvtsupp.plb文件中添加一個加密的過程和一個觸發器的創建腳本,在用戶創建實例時會執行prvtsupp.plb該文件從而達到入侵的目的。通過對prvtsupp.plb文件中的過程進行解密后的內容如下:

Oracle數據庫實現SQL注入模擬與恢復

另外一種注入方式就是網上下載了被病毒感染的PL/SQL或Toad客戶端工具,如果用戶登陸這些工具時使用具有dba權限的用戶,則工具會在后臺執行執行相應的病毒腳本并創建上面的過程和觸發器。

1.1.SQL注入行為

該觸發器在每次數據庫重啟后執行存儲過程,而存儲過程執行時會判斷當前時間距數據庫創建時間是否大于指定的天數 (我這次遇到的是300天),如果大于指定的天數則在數據庫重啟后將數據庫字典基表TAB$備份后并清空。

在TAB$表被清空后如果數據庫不再重啟的話,數據庫后臺alert日志在報一系列ORA-00600后會一直會報錯ORA-00604和ORA-00957

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

2.      Oracle SQL注入過程模擬

模擬直接執行原加密的存儲過程,如下:

Oracle數據庫實現SQL注入模擬與恢復

執行存儲過程后關閉數據庫再次啟動發現報錯ORA-00600提示bootstrap核心對象損壞。

Oracle數據庫實現SQL注入模擬與恢復

3.      應急修復過程測試

本次模擬修復采用shell腳本調用bbed批量修改tab$表對應的塊,來恢復tab$表刪除的記錄。由于只修改了tab$對應的簇表塊并沒有修復索引(索引可以禁用,不建議修復)。所以在修復后只能通過exp將用戶數據導出后進行重建數據庫來恢復數據。

將受損的基表對應的SYSTEM表空間數據文件上傳到linux平臺執行相應的恢復腳本進行恢復如下:

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

Oracle數據庫實現SQL注入模擬與恢復

修復完成后將文件拷貝回windows平臺,然后啟動數據庫(建議以read only方式打開數據庫,我這里是測試環境懶的執行了)

Oracle數據庫實現SQL注入模擬與恢復

導出對應的用戶數據

       Oracle數據庫實現SQL注入模擬與恢復

4.      日常預檢查、處理

對于生產庫建議定期進行病毒特征排查,如何及時發現并且數據庫沒有重啟且select * form tab$查詢不為空,則可以通過手動drop對應的存儲過程和觸發器(通過以下語句來檢查數據庫是否已感染相應的SQL注入病毒)。

select 'drop ' || object_type || ' ' || owner || '.' || object_name || ';'

  from dba_objects

 where object_name in ('DBMS_SUPPORT_DBMONITOR', 'DBMS_SUPPORT_DBMONITORP');

其次可以對用同版本數據庫正常的prvtsupp.plb文件來替換$ORACLE_HOME/rdbms/admin/prvtsupp.plb感染病毒的文件,防止后續數據庫新建議實例時再次感染病毒。

到此,相信大家對“Oracle數據庫實現SQL注入模擬與恢復”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

小金县| 乌兰察布市| 乌鲁木齐县| 扬州市| 封丘县| 太仓市| 施甸县| 南召县| 杭锦旗| 洛南县| 呼伦贝尔市| 双柏县| 昭通市| 河东区| 商水县| 太原市| 宝丰县| 宁陕县| 灵寿县| 桦南县| 筠连县| 嘉黎县| 江都市| 南京市| 大宁县| 阜新| 绥阳县| 额敏县| 克拉玛依市| 五寨县| 油尖旺区| 修水县| 饶阳县| 凉山| 中江县| 茌平县| 永丰县| 巴楚县| 西充县| 鲜城| 湘乡市|