OpenEMR醫(yī)療軟件曝漏洞,患者資料可能遭竊取

OpenEMR

在本周二(8月7日),一組研究人員公開披露了存在于OpenEMR軟件中的22個安全漏洞。OpenEMR是一個被廣泛使用的醫(yī)療實踐管理軟件,支持電子病歷。在此次被披露的漏洞中,包括了一個門戶身份驗證繞過漏洞,允許攻擊者訪問任何患者的記錄。

這個稱自己為Project Insecurity的研究小組指出,他們從GitHub上下載了OpenEMR 5.0.1.3版本,并在不使用自動化測試工具的情況下對其源代碼進(jìn)行了手動分析。雖然沒有任何一個漏洞能夠被評定為危急級別(Critical),但在22個漏洞中有17個的嚴(yán)重程度被認(rèn)為是較高的。

在接受媒體采訪時,Project?Insecurity的首席執(zhí)行官Matt Telfer?解釋了為什么這個門戶身份驗證繞過漏洞可能是其中最重要的發(fā)現(xiàn)。他說:“一些信息可能會因為這個漏洞而遭到竊取,這包括患者的人口統(tǒng)計,所有的電子病歷、處方和醫(yī)療賬單信息,預(yù)約時間表等。OpenEMR累計存儲有近1億患者的記錄,其中有超過1000萬份的記錄在美國境內(nèi)?!?/p>

根據(jù)這份報告的描述,成功利用這個漏洞允許攻擊者訪問通常需要登錄驗證的門戶頁面。值得注意的是,利用漏洞的方法并不復(fù)雜,只需要導(dǎo)航到注冊頁面并修改所請求的URL,就可以訪問很多頁面,這包括支付頁面、患者個人資料頁面以及實驗室結(jié)果頁面。事實上,在能夠成功訪問個人資料頁面之后,研究人員能夠提取任意患者的個人資料。

更糟糕的是,Project insecure發(fā)現(xiàn)攻擊者完全可以將這個門戶身份驗證繞過漏洞與在OpenEMR的PHP代碼片段中發(fā)現(xiàn)的八個SQL注入漏洞結(jié)合起來使用,以訪問目標(biāo)數(shù)據(jù)庫中數(shù)據(jù)、破壞患者記錄,并在無需授權(quán)的情況下執(zhí)行各種數(shù)據(jù)庫操作。

此外,Project Insecurity還發(fā)現(xiàn)了四個遠(yuǎn)程代碼執(zhí)行(RCE)漏洞,這些漏洞可能允許攻擊者發(fā)出系統(tǒng)命令或升級他們的權(quán)限。

Project Insecurity還指出,OpenEMR還受到多個高嚴(yán)重程度的跨站點請求偽造(CSRF)漏洞的影響,其中最嚴(yán)重的漏洞可能允許攻擊者上傳Web shell并升級到遠(yuǎn)程代碼執(zhí)行,但需要事先誘騙管理員點擊惡意鏈接。

另有三個影響較大的漏洞是值得關(guān)注的,第一個是一個任意文件寫入漏洞,它允許經(jīng)過身份驗證的攻擊者使用精心設(shè)計的請求上傳任意文件;第二個是一個任意文件讀取漏洞,它允許攻擊者在Web目錄之外查看站點上的文件;第三個是一個任意文件刪除漏洞。

最后,OpenEMR還被發(fā)現(xiàn)受到三個未經(jīng)身份驗證的信息泄露漏洞(低風(fēng)險)、一個受限制的文件上傳漏洞(中等風(fēng)險),以及多個未經(jīng)身份驗證的管理操作漏洞的影響(低風(fēng)險),只需要知道相對URL路徑就可實現(xiàn)對漏洞的利用。

由Matt Telfer、Brian Hyde、Cody Zacharias、Corben Leo、Daley Bee、Dominik Penner和Manny Mand組成的Project Insecurity研究小組這份在長達(dá)28頁的漏洞分析報告中指出,OpenEMR的開發(fā)人員已經(jīng)在7月20日發(fā)布了一系列補丁,對這些漏洞進(jìn)行了修復(fù)。