近年來發生多件起因為網站使用第三方元件而導致資安事件,其中又以FCKEditor所導致之資安事件最多,最有名的案例為2010年燦坤遭受之攻擊事件最為嚴重,造成個資外洩與網站被竄改等後果。由於第三方元件套件眾多,無法一一列舉,本文件將以FCKEidtor為例,簡述FCKEditor之攻擊原理,並對於自我檢查與防範此類攻擊提供建議,至於其它未提到之套件,建議客戶請程式開發廠商自行確認,謹守套件最小安裝原則,沒用到的元件不要安裝,若有檔案或帳號管理功能,務必做到存取控管或認證管理,以防止駭客利用Google Hacking收集資訊並進行後續攻擊。
FCKEditor簡介
FCKEditor(現已改版為CKEditor),為一網頁版之所見即所得編輯器,可在多數瀏覽器(Internet Explorer、Firefox、Safari、Chrome and Opera)上啟動類似Office Word的文件編輯環境,可進行線上文書編輯,廣為多種網站套件所使用。
FCKEditor除了強大的所見即所得網頁編輯器以外,為了提供更豐富的圖文體驗,也加入了檔案上傳的功能,方便使用者將圖片或Flash等檔案上傳至伺服器,豐富文件內容,不過資安問題也由此而生。單純的所見即所得編輯器是靠JavaScript運作於客戶端,弱點與臭蟲僅會影響於客戶端,資安風險較小;但是在加入了檔案上傳功能後,駭客就有機會將惡意檔案上傳於伺服器,並透過網頁伺服器的弱點加以執行。倘若駭客成功上傳並執行惡意程式,可能造成網站頁面遭受塗改、網頁掛馬、個資外洩、系統停止服務等後果,影響巨大。由於FCKEditor已經停止維護,建議停止使用,或升級為新版的CKEditor以確保弱點的修補。
正常之FCKEditor連線流程
駭客利用FCKEditor進行攻擊
相關新聞
原文網址: 燦坤資料外洩: IIS6漏洞加FCKeditor惹禍,Information Security 資安人科技網 http://www.informationsecurity.com.tw/article/article_detail.aspx?aid=5790
FCKEditor可利用弱點
許多駭客會藉由網站的上傳功能將惡意程式上傳至網站,再加以執行以取得系統權限。這個兩個階段分別可以由以下步驟達成:
- 上傳階段:
FCKEditor內建檔案上傳工具,並內建一測試頁面(fckeditor/editor/filemanager/connectors/test.html)提供管理者進行上傳測試之用,同樣駭客亦可利用該工具上傳惡意程式。由於上傳檔案本身的風險較大,FCKEditor本身預設是禁止使用者上傳檔案的,並且在fckeditor\editor\filemanager\connectors\aspx\ config.ascx(此路徑因伺服器而異)下設置了驗證用的Hook function。倘若管理者疏忽在未妥善驗證的情況下開放了檔案上傳功能,駭客即有機會將惡意程式上傳至伺服器。 - 執行階段:
FCKEditor提供的檔案系統模組可以直接操縱檔案系統,進行如列出檔案列表、探查真實路徑、建立資料夾等行為 (fckeditor/editor /filemanager/browser/default/browser.html?typeall&connector=connectors/asp/connector.asp),駭客利用此弱點或手動找尋上傳之後門程式位址,並藉由網頁伺服器之弱點執行後門程式,如IIS6副檔名解析弱點可以無視副檔名執行任意檔案。
自我檢測
您可藉由以下方式發現貴單位網站上是否有使用FCKEditor:
- 打開瀏覽器。
- 前往www.google.com。
- 搜尋「fckeditor site:單位FQDN」。
- 若有發現則請廠商確認是否存在問題並修補。
建議處置
由於FCKEditor潛在操作上之安全漏洞,建議可依下列方法強化:
一、 FCKEditor移除或套件刪除
若網站已經沒有使用到FCKEditor功能,建議將FCKEditor全部移除;若需要使用到FCKEditor功能,但不需要使用檔案上傳功能,建議將檔案上傳功能之套件移除,檔案上傳功能移除方式如下:
- 移除目錄fckeditor\editor\filemanager
- 修改fckconfig.js以下設定為false
- FCKConfig.LinkUpload
- FCKConfig.ImageUpload
- FCKConfig.FlashUpload
- 移除以下範例檔案
- fckeditor\_samples
- fckeditor\editor\filemanager\connectors\uploadtest.html
- fckeditor\editor\filemanager\connectors\test.html
- 移除fckeditor\editor\filemanager\connectors中不用的語言目錄。
二、 FCKEditor安全性補強
若需要使用到FCKEditor之所有功能,建議升級至最新版CKEditor,以避開舊版本之弱點。
並設定fckconfig.js以下參數限制上傳之副檔名。
- FCKConfig.LinkUploadAllowedExtensions
- FCKConfig.ImageUploadAllowedExtensions
- FCKConfig.FlashUploadAllowedExtensions
若使用語言為asp.net,請修改fckeditor\editor\filemanager\ connectors\aspx\config.ascx中CheckAuthentication()函數進行適當驗證,避免駭客未經驗證即可進行攻擊。
三、 IIS伺服器安全性強化
IIS伺服器建議將不需使用之執行副檔名移除,如asa、cer、cdx等,避免因疏於過濾遭駭客利用。
關閉上傳資料夾與靜態目錄之執行權限,若為IIS伺服器,請於IIS管理員中右擊該目錄選擇"屬性">"目錄">"執行權限",改為無即可。
網站目錄必須明確拒絕匿名登入帳號的寫入權限,包括 NETWORK SERVICE 與 IUSR_MachineName 兩個預設的群組,僅於特定上傳目錄開放。若上傳之檔案不須開放公開存取,最好儲存於網站根目錄之外。
四、 WAF防護設定
若網站已經沒有使用到FCKEditor功能,但已經沒人可以進行FCKEditor維護,可由WAF設定FCKEditor關鍵字來進行阻擋。
五、 限制搜尋引擎收集資訊
可於網站根目錄放置robots.txt來限制Google或Yahoo等搜尋引擎收集敏感資訊,如FCKEditor等重要目錄,設定方式可參考Microsoft等各大網站之設定或http://zh.wikipedia.org/wiki/Robots.txt
0 意見:
張貼留言
如您對本文有任何建議或意見,歡迎您留下您寶貴的意見!