1377483 九、發明說明: 【發明所屬之技術領域】 本發明係提供一種軟體檔案之技術領域,尤指提供一 種稽案資料外洩保護方法與系統,特別是用於視窗系統所 產生的檔案資料的保護。 【先前技術】 為防止棺案資料外洩,一般而言是利用檔案權限控管 程序’搭配加解密演算法來達成資料保護的目的,然而檔 案加役程式,通常是在檔案產生後,再決定是否將該檔案 加解密,這種檔案資料外洩保護措施會有一致命的漏洞, 即疋短暫時間内存在一個未加密的檔案版本造成有意或 無意間資料外茂.的機會。 马了完整保護檔案資料 增、編 .........w叩6¾馆々也,你萍 A ,輯及讀取的過程中,全方位的加解密是必要的, 目則尚未有相關保護機制。 習知保護機制有:
1 移轉待定格式,例如p D F :藉由p D F檔案 性’將欲保護的文件轉成P 孩Ml 干锝成PDF保密文件。惟,其是槽 移轉後的保護’需要改變使用者習僧姑w M „ 變使用者習償使用特定格式的槽 閲謂Is ’亦無法達到保譜 咬习侏運原始檔案資料内容之目的。 卜掛程式.在應用軟體開發 容,但如此作法,1'掛程式保濩檔案 快,所以都要寫外掛有寫不一…§多版本更新又 有冩不兀的問喊,成本也不划算。 暫存擋案:在檔案產生後,產生 存權案,而將原太耪安 同内谷之 原本檔案加密並鎖定禁止其他應用程式存 1377483 該檔案。應用軟體對於該檔案的存取都先暫時寫入該暫存 檔案,存取完畢後,再將檔案内容回存到原檔案内容。此 作法的問題是為短暫時間内存在一個未加密的暫存檔案版 本,造成有意或無意間的資料外洩的機會。 參閱第六圖所示,為其現今新版的微軟作業系統基本 架構圖’ 3玄個人電腦(5)内之微軟作業系統内核模式層 (6 )内一定會有一輸出入管理員(10 Manager) ( 1 )及一 過濾器管理員(Filter Manager) (2),其在使用者模式層 ·( 7) t應用程式的輸出入作業(4) 一定會先經過輸出 入管理員(10 M_ger) ( !)及過濾器管理員(Fmer犯⑽财) (2 ),才到達檔案系統(3 ),而檔案系統(3 )資料 亦疋經由輸出入管理員(I〇 Manager)(工)及過濾器管理員 (Filter Manager) ( 2 ),才到達應用程式的輸出入作業 (4 )。 是以’針對上述習知技術所存在之問題點,如何一種 鲁^具理想實用性之創新保護技術,實消費者所殷切企盼, 、係相關業者須努力研發突破之目標及方向。 計韃有鑑於此,發明人本於多年從事相關產品之開發與設 驗針對上述之目標,詳加設計與審慎評估後,終得 • 具實用性之新技術成為本發明。 【發明内容】 三種欲解決之技術問題點:習知保護機制的問題點有下列 性丄移轉特定格式,例如PDF :藉由pDF構案特 等欲保護的文件轉成P.D F保密文件。惟,其是樓案 7/483 =轉後的保護’需要改變使用者習慣使用特定格式的檔案 。賣盗’亦無法達到保護原始檔案資料内容之目的。 2 ·外掛程式:在應用軟體開發外掛程式保護檔案内 ,但如此作法’因為應用軟體實在太多,版本更新又很 、所以都要寫外掛有寫不完的問題,成本也不划算。 3.暫存棺案:在檔案產生後產生一相同内容之暫 存槽案’而將原本樓案加密並鎖定禁止其他應用程式存取 s槽案應用軟體對於該檔案的存取都先暫時寫入該暫存 #案’存取完畢後’再將檔案内容回存到原檔案内容。此 作法的問題是為短暫時間内存在一個未加密的暫存棺案版 本,造成有意或無意間的資料外洩的機會。 、解決問題之技術特點:提供一種檔案資料外洩保護方 法與系,統’係基於微軟作t系統之樓案系、统過滤器驅動程 =(File Sysiem Filter Driver)主架構,加入一個人化安全控 s代理程式及-隱形加解密驅動模組,該隱形加解密驅動 模組放置在系統輸出入管理員(1〇 Manager)與檔案系統動程 式(File System Driver)之間,作業系統上任何檔案的新增、 編輯及讀取動作及資料流,都被隱形加解密驅動模組棚 截。當新檔案產生或暫存時,隱形加解密驅動模組根據權 限及安全控管模組及應用程式辨識模组,決㈣案是否予 以加密,對於需要加密的播案内容,隱形加解密驅動模组 將透過加解密模組將攔截到的資料流加密後儲存於儲存器 令’當應用程式欲讀取棺案内容時,隱形加解密驅動模组 依據應用程式辨識模組及權限及安全控管模組決定是否將 該槽案内容解密,沒有經過隱形加解密驅動模組及加解密 :級的檔案,不管經由任何方式傳送到何處,使用者將盔 去辨識檔案内容資料,達到完善防止資料外线之保護。 對照先前技術之功效: 1 ·先刚技術有暫存檔的漏洞,即其標案是在完成後 保護,所以造成有意無意的資料外洩情形;而本發明之 白名單内標案之寫入動作均會自動加密1以沒有空窗期 2應用程式的外掛,其版本相容/格式相容開發難 度高;而本發明之檔案格式與應用程式不受限。 3 .先前技術轉槽特定格式需# ?文變使用者操作習慣 ,而本發明係在系統核心攔截1以使用者介面完全沒有 改變,不用改變使用者使用習慣。 有關本發明所採用之技術 佳實施例並配合圖式詳細說明 的、構造及特徵,當可由之得 【實施方式】 、手段及其功效,茲舉一較 於后,相信本發明上述之目 一深入而具體的瞭解。 本發 料外洩保 案系統過 當檔案在 檔案資料 參閱 其中個人 0 )及内 核模式層 明開發 護措施 濾、器驅 新增、 不外洩 第一圖 電腦( 核模式 (80 出種利用隱形加解密技術以達成檔案資 。其用於電腦之微軟視窗系統中,尤指檔 動程式(File System Filter Driver)架構下, 輯及讀取的過程中,自動加解密以防護 。以下依序說明本發明技術。 所不,係為本發明之其一實施例系統圖, 1 〇〇)之内,區分有使用者模式層(7 層(80)該微軟視窗作業系統中其内 )内有輸出入官理員G〇 Manager) ( 1 1 ) 1377483 及過濾器管理員(Filter Manager) (12),其係作為内部的 控管及使用者模式層(7 0 )之應用程式的輸出入作業 (1 0 )與檔案系統(4 0 )間之橋樑,本發明主要在使 用者模式層(7 0 )下建立一安全控管代理程式(5 〇 ) ’並於内核模式層(8 0 )之過濾器管理員(Filter Manager) (1 2 )與檔案系統(4 0 )間建立隱形加解密驅動模組 (20) ’如此,應用程式的輸出入作業(1〇)及檔案 系統(4 0 )之資料流,則都會被隱形加解密驅動模組 (2 〇 )棚截,如果是白名單内應用程式存取的標案就在 讀取時解密並依權限開給使用者,而在開新檔或儲存或暫 存時加密並加入識別證到檔案内容中。 一種檔案資料外洩保護方法,係包含有: 步驟一:於使用在檔案系統過濾器驅動程式(File Systefl]
Filter Driver)架構之微軟視窗系統内,載入安裝 女全控管代理程式於該使用者模式層及一隱形 加解密驅動模組安裝於該内核模式層之該過濾器 管理員(Filter Manager)及該檔案系統間,該安全控 管代理程式可與該隱形加解密驅動模組直接溝 通; : $隱形加解密驅動模組内設有數白名單或數權 限; 步驟三:所.有經過隱形加解密驅動模組之擋案均會比對白 名單及權限’儲存前如為白名單則會加密加入識 別也,而開啟檔案時如為白名單則會解密並依權 限開啟給使用者。 1377483
器(6 0 6 〇 )下栽或更新之數權限或數白名單。 參閱第一圖所示,一錄媸安咨Μ冰油租ϋ 組内設之數白名單或數權限 路(6 1 )至安全控管伺服 經網路(6 1 )至 含有: 一種檔案資料外洩保護系統,係包 •使用在槽案系統過濾器驅動程式(File System Filter Driver)架構之微軟視窗系統之一安全控管代理程式(5 〇 鲁)及一隱形加解密驅動模組(2〇),其中該安全控管代 理程式(5 〇)設於作業系統使用者模式層(7〇) 内,而該隱形加解密驅動模組(2 〇 )設於該内核模式=層 (80)之該過濾器管理員(Filter Manager) ( 1 2 )及該標 案系統(4 0 )間,該安全控管代理程式(5 〇 )可與該 隱形加解密驅動模組(2 0 )直接溝通; 該應用程式的輸出入作業(1 0)及檔案系統(4〇 )之所有檔案的新增、編輯及讀取動作及資料流,都被隱 形加解密驅動模組(2〇)攔截’白名單内檔案的隱形加 鲁解密、權限控管或識別證工作均在内核模式層(8 〇 )内執行,使用者不會發覺,並以一權限及安全控管模組 (21)判定是否需進行安全控管,當新檔案產生時,該 隱形加解密驅動模組(2 〇 )根據權限及安全控管模組 * (21) ’決定檔案是否予以加密’加密則利用一加解密 模組(2 2 )加密,加密後的檔案嵌入有識別碼,其後播 案無論在何處,只要沒有隱形加解密驅動模組(2〇)及 權限,則無法正確開啟或編輯。 上述該隱形加解密驅動模組(2 0 )包含有_權限及 •10· 1377483 } 、 5 組 1 } 2 模 2 3 C 密 2 組解。 組{模加法 模組識該算 管模辨述演 控制式上密 全控程 解 安入用 加 组模 模理 密管 解碼 加別 1 識 2 2 4 出應 輸 I 一 及 式 稱 對 為 .可 法 算 演 之 用 使 \)y 2 2 上述該識別證包含有儲存產生檔案環境、權限或安八 控管的資訊,該識別證作為檔案未來讀取編輯時的控管2 據。 參閲第一、二圖所示’其電腦新加入本發明時,會安 裝-安全控管代理程式(50…隱形加解密驅動模电 (2 0 ),該安全控管代理程式(5 Q )設於使用者模式 層(70),該隱形加解密驅動模組(2〇)放置在該内 核模式層(80)之輸出入管理員(1〇舭專〇 (丄丄 棺案系統(4 〇 )之間;* 、 其權限/白名單初始化之動作上,開始(i 1 〇 )時 安全控管代理程式由安全控管飼服器取得權限及白名單, (111),其後安全控管代理程式將權限資料傳送到權 限及安全控管模組(112),且安全控管代理程式將白 名單資料傳送到應用程式辨識模組(113)。 t閱第三圖所示,該新增檀案程序動作為開始 :應用程式送出新増檔案之作業請求(i 2丄), 自員攔截該新增棺案請求’並將該請求送給過渡 二报‘(122) ’過濾器管理員將該新增檔案請求送 新增標案作業二: 制模組接手 業(124),詢問權限及安全控管模組是否 -11- 1377483 1377483 (12 5),否,新 用程式辨識模組該應 否’新增檔案失敗( 構案到檔案系統(1 所示’該讀取文件程 式送出「讀取檔案」 員攔截該讀取檔案請 13 2) ’過濾器管 密驅動模組(1 3 3 業(134),輸出 (13 5),詢問應 名單内(1 3 6 ), 給過濾器管理員(1 入管理員(1362 給應用程式(1 36 案内容是否有識別證 案内容解密(137 内容給過濾器管理員 輸出入管理員(13 回傳給應用程式(1 入識別證到檔案内容 加密(1 3 9 ),輸 系統(1 3 9 1 )。 所示’該檔案儲存程, 增 檔 案 失 敗(1 2 6 用 程 式 是 否在白名單 1 2 6 ) ,是,輸出 2 8 ) 新增檔案完 序 動 作 為 ,開始(1 之 作 業 請 求(1 3 1 求 , 並 將 該請求送給 理 員 將 該 讀取檔案請 ) > 輸 出 入控制模組 入 控 制 模 組從檔案系 用 程 式 辨 識模組該應 否 » 則 輸 出入控制模 3 6 1 ) ’再將檔案 ) 再 輸 出入管理員 3 ) 〇 是 ’則詢問識 ( 1 3 7 )’是,則 1 ) 9 其後輪出入控 ( 1 3 6 1 ),再將 2 ),再輪出入管 有權限新增檔案 • ) ’是,詢問應 内(1 2 7 ), 入控制模組新增 成(1 2 9 )。 參閱第四圖 3 0),應用程 •),輸出入管理 過濾器管理員( 求送給隱形加解 接手讀取檔案作 統讀取槽案内容 用程式是否在白 組回傳檔案内容 内容回傳給輸出 將樓案内容回傳 鲁別碼管理模組樓 加解密模組將;ft 制模組回傳檔案 檔案内容回傳給 理員將檔案内容 別碼管理模組嵌 模組將檔案内容 内容回存到槽案 參閱第五圖 d 6 3 )。否,則識 (1 3 8 ) ’加解密 出入控制模組將擋案 字為,開始(1 4 0 -12- u//483 I,應:程式送出「檔案儲存」之作業請求(l4i), 器技入S理員攔戴該檔案儲存請求,並將該請求送給過濾 心理員(142),過濾器管理員將該檔案儲存請求送 :=解密驅動模组(143),輸出入控制模組接手 c業(144) ’詢問權限及安全控管模組該應 铸疋否有權限(145) ’$,輸出入控制模組回傳 訊息給過渡器管理員(1451),過滤器管理 出入存失敗.訊息給輸出入管理員(1 4 5 2 ),輸 B 員回傳儲存失敗訊息給應用程式(1 4 5 3 )。 疋,則詢問應用程式辨識模 ( τβ"供、,且这應用程式是否在白名單内 :),★,則識別碼管理模組嵌入識別證到棺案内 ) ’加解密模組將槽案内容加密(148), 1出入控制模組將稽 輪出入控制模組回傳儲存成=到樓案“(149), 存成力訊息給過濾器管理員(1 4 y 1 ),過濾器管理員將回值絲士 只、丄4 員(1492).,輸出入管理:存:功訊息給輸出入管理 程式員回傳儲存成功訊息給應用 iqyj) 〇否,則齡山 , 存到檔案系統(149)終入控制模組將檔案内容回 訊息給過據器管理“ i 4 q”入控制模組回傳儲存成功 儲存成功訊息給輸出入管理員r) ’過據器管理員將回傳 員回傳儲存成功訊自1492),輸出入管理 藉由上β I 式(1 4 9 3 )。 稽田上述’本發明遠到〜 解密保護,而且其係在 :整保護標案資料及隱形加 、暫存或儲存過程均自動加解:新增、編輯及讀取的新增 案或未加密的樓案變成 〜密’使得想要竊取該原始槽 & ’進而使得本發明的防護得 •13- 1377483 以滴水不漏。 前文係針對本發明之較佳 進行具體之說明;惟,熟悉.此 本發明之精神與原則下對本發 變更與修改’皆應涵蓋於如下 中 〇 實施例為本發明之技術特徵 項技術之人士當可在不脫離 明進行變更與修改,而該等 申請專利範圍所界定之範_ 【圖式簡單說明]
第一圖:係本發明其一實施例之系統圖。 第二圖:係本發明權限/白名單初始化流程圖。 第三圖:係本發明新增檔案程序流程圖。 第四圖.係本發明讀取文件程序流程圖。 第五圖:係本發明檔案儲存程序流程圖。 第六圖:係習知微軟作業系統基本架構圖。 【主要元件符號說明】 •習用部份. (1 )輸出入管理員(I0Manager) _ (2)過濾器管理員(Filter Manage〇 (3)檐案系統 (4)應用程式的輸出入作業 (5 )個人電腦 (6 )内核模式層 (7 )使用者模式層 •本發明部份. (10) 應用程式的輸出入作業 (11) 輸出入管理員(1〇 Manager) (1 2 )過滤器管理員(puter Manager) (20)隱形加解密驅動模組 1377483 (2 1 )權限及安全控管模組 (22)加解密模組 (23)輸出入控制模組 (2 4 )識別碼管理模組(2 5 )應用程式辨識模組 (40)檔案系統 (50)安全控管代理程式 (60)安全控管伺服器(61)網路 (70)使用者模式層 (80)内核模式層 (1 0 0 )個人電腦 (110)開始 (1 11 )安全控管代理程式由安全控管伺服器取得權限 及白名單 (1 1 2 )安全控管代理程式將權限資料傳送到權限及安 全控管模組 (1 1 3 )安全控管代理程式將白名單資料傳送到應用程 式辨識模組 (1 2 0 )開始 (1 2 1 )應用程式送出新增檔案之作業請求 • (122)輸出入管理員攔截該新增檔案請求,並將該請 求送給過濾器管理員 (1 2 3 )過濾器管理員將該新增檔案請求送給隱形加解 密驅動模組 (1 2 4 )輸出入控制模組接手新增檔案作業 (1 2 5 )詢問權限及安全控管模組是否有權限新增檔案 (126)新增檔案失敗 (1 2 7 )詢問應用程式辨識模組該應用程式是否在白名 單内 -15· 求送 密驅 單内 員 2 82 93 0 3 1 3 2 給過3 3動模3 4 3 5 3 63 6 )輪出入控制模組新增檔案到檔案系統 )新増檔案完成 )開始 )應用程式送出「讀取檔案」之作業請求 )輪出入管理員攔截該讀取檔案請求,並將售 遽器管理員 )過渡器管理員將該讀取檔案請求送給隱形4 組 )輪出入控制模組接手讀取檔案作業 )輪出入控制模組從檔案系統讀取檔案内容 )°旬問應用程式辨識模組該應用程式是否在# 1)輸出入控制模組回傳檔案内容給過濾器售 請解 名 理 3 6 2 )將擋案内容回傳給輸出入管理員 3 >)輸出入管理員將檔案内容回傳給應用 )Μ識別瑪管理模組標案内容是否有識 1)加解密模組將稽案内容解密 :識幻碼管理模組嵌入識別證到檔案内容 )加解密模’組將檔案内容加密 (1 1 )輸出入控制模組將檔案内容回存到檔 4 ◦)開始 程式送出「樓案儲存」之作業請求 求送 統 請 仏過、者 管理員攔截該檔案儲存請求,並. 給過濾器管理員. -16-