TW201227285A - Providing a security boundary - Google Patents

Providing a security boundary Download PDF

Info

Publication number
TW201227285A
TW201227285A TW100141289A TW100141289A TW201227285A TW 201227285 A TW201227285 A TW 201227285A TW 100141289 A TW100141289 A TW 100141289A TW 100141289 A TW100141289 A TW 100141289A TW 201227285 A TW201227285 A TW 201227285A
Authority
TW
Taiwan
Prior art keywords
application
computer
security monitor
system resources
access
Prior art date
Application number
TW100141289A
Other languages
English (en)
Other versions
TWI554879B (zh
Inventor
Kristofer Hellick Reierson
Souza Lidiane Pereira De
Angela Mele Anderson
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW201227285A publication Critical patent/TW201227285A/zh
Application granted granted Critical
Publication of TWI554879B publication Critical patent/TWI554879B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Description

201227285 々、發明說明: -:.7 . *; ·ν :· ν •二,《 . ..7 r ν, · 【發明所屬之技術領域】 本發明係關於提供安全邊界。 【先前技術】 貝料中心管理員面對在維護可接受的電源、硬體和空門 要求的同時亦要滿足資料中心的資料要求的富有挑:二 的任務。通常’為了將支出最小化,管理員提高資料中心 内的伺服器的應用密度。應用密度是一種對在單個實體電 腦上執行的應用的數量的量度。藉由增加在每台實體電腦 上執行的應用的數量,可將支援資料中心操作所需的飼服 器的數量最小化。 為了提高資料中心内的應用密度,管理員亦可以利用虛 ,機器(VMs)。虛擬機器可以藉由使多個虛擬機器能夠共 予-台機器的實體資源來提高應用密度。然而,出於各種 理由,在相同的VM内執行兩個不同的應用並不總是可能 的。例如,由於安全考慮可能不期望兩個不同的應用在相 同的VM内執仃。作為另—個實例,在相同的vM上執行 的兩個不同的應用在嘗試存取相同資源時可能衝突。 為了使兩個潛在衝突的應用能夠在相同的電腦上執 行,為每個應用執行-個單獨的倾可能是有必要的^ :’由於與執行每個虛擬機器相關聯的授權成本,以此方 二四仃夕㈤VM可能是昂貴的。另外,當在包括大量機器 、%境中操作時’例如在雲環境中操作,執行多個VM的 201227285 效能成本可能是顯著的。在資料中心内,每個VM通常被 監控和管理。因此’操作資料中心的管理成本隨著VM的 增加而提高’因為每個VM可能需要各種補丁或策略,以 便以期望的方式來操作。 此處所呈現的本案正是對於該等和其他考慮事項而提 出的。 【發明内容】
此處揭示提供安全邊界的概念和技術。經由實施此處呈 現的概念和技術’可以按照提供應用之間的安全邊界的方 式在相同電腦上執行多個應用。以此方式,可在相同的實 體或虛擬電腦上執行以其他方式是不期望或不可能的兩 個或兩個以上應用。因此,此次揭示的技術可用於減少VM 的數量’以及執行不相容或衝突應用所需的相關聯的授權 費° 根據此處所呈現的一個態樣,安全監視器在學習模式中 執行以監控由正在執行的應用所作出的應用程式編寫介 面(API )調用,從而辨識該應用所使用的資源。安全監 視器將每個所辨識的資源的可編輯虛擬存取控制列表 (ACL )添加到安全監視器資料庫,該安全監視器資料庫 可用於控制對每個所辨識的系統資源的存取,範圍從完全 存取到禁止存取。一旦安全監視器已經辨識了 API調用所 存取的資源,則該安全監視器允許該API調用照常進行。 在操作實施模式中,安全監視器監控由正在執行的應用 201227285 所作出的API調用,以決定該應用是否被授權存取系統資 源。特定言之,當安全監視器處於實施模式時,安全監視 器截取由應用作出的API調用。安全監視器隨後存取安全 監視器資料庫以決定發出請求的應用是否被授權存取所 凊求的系統資源。若安全監視器決定該應用被授權存取所 請求的系統資源,則允許該API調用照常繼續。若安全監 視器決定該應用未被授權存取所請求的系統資源,則安全 監視器拒絕應用對系統資源的存取。系統管理員可以編輯 ACL以允許被拒絕的應用存取所請求的系統資源。 應當理解的是,此處揭示的實施例可與虛擬化應用、在 硬體虛擬化環境中執行的非虛擬化應肖、在非虛擬化環境 中執行的非虛擬化應用,以及其他類型的應用結合使用。 亦應备理解’上述標的亦可被實施為電腦控制的裝置、電 腦程序、計算系統或諸如電腦可讀取儲存媒體等製品。經 由閱讀下文的詳細描述並審閱相關聯的附圖,該等及各種 其他特徵將變得顯而易見。 提供本發明内容以便以簡化的形式介紹將在以下具體 實施方式中進一步描述的一些概念。本發明内容並不音欲 辨識所主張標的的關鍵特徵或必要特徵,亦不意欲將本發 明内谷用來限制所主張標的的料。此外,所主張找 限於解決在本發明的任一部分 、示、 的實施例。 k及的任何或所有缺點 【.實施方式】 201227285 以下詳細描述涉及用於提供安全邊界的技術。如上文簡 要地論述並以下更詳細地描述的,執行其中截取應用AH 調用的操作學習模式。在安全監視器資料庫中記錄辨識 ΑΡΙ調用的資料。在應用的執行時間,安全監視器在操作 學習模式期間基於儲存在資料庫中的資料,允許應用存取 育源。關於該等程序的其他細節將在以下參考圖16 供。 儘管在結合電腦系統上的作業系統和應用程式的執行 而執行的程式模組的-般上下文中呈現了此處描述的桿 的,但是本領域技藝人士將認識到,其他實施例可以結合 其他類型的程式模組來執行。—般而言’程式模組包括執 打特定任務或實施特定抽象資料類型的常式、程式、元 件、資料結構和其他類型的結構。此外,本領域技藝人士 將明白,可以利用盆#雷 ,、他電腩系統配置來實踐此處描述的枳 :’該等電腦系統配置包括掌上型設備、多處理器系統: 基於微處理器的或可程式設計消費電子產品、小型 大型電腦等等。 在^的轴描述巾,料考構成本發明的—部分的附 m且在附圖中作為說明圖示各特定實施例或實例。現 在=附圖(全部若干附圖中相同的元件符號表示相同的 几件)’將呈現用於提供安全邊界的計算系統電腦可堆 取儲存媒體和電腦實施的方㈣各態樣。 " 中可實施此處所描述的標㈣各態 適的汁算環境_的實例的電腦軟體架構圖言之: 7 201227285 圖1圖示用於實施硬體虛擬化計算環境的說明性軟體架 構。如本領域已知的,虛擬化允許主機電腦在單個電腦上 同時執行多個作業系統。作業系統的每個正在執行的實例 通常被稱作為虛擬機器。 為了賦能虛擬機器的執行,可以執行軟體系統管理程序 102以提供用於配置、執行並管理虛擬機器的操作的功 能。系統管理程序102是在其執行時所基於的主機電腦的 實體硬體106之上,並在一或多個作業系統1〇8A l〇8c之 下執打的軟體層。亦可以用硬體來實施系統管理程序1〇2。 系統g理程序i 〇2提供被稱為分區的隔離執行環境。在 圖1所不的實例中,作業系統108A和應用l10A在第一分 區中執行,作業系統108B和應用li〇B在第二分區中執 仃,並且作業系統1〇8c和應用u〇c在第三分區中執行。 系統管理程序1〇2為每個分區提供其自身的虛擬硬體資源 集4 (例如,s己憶體、設備,以及中央處理單元(「cpu」) 週』)系統管理程序1 02亦依須求控制並仲裁對底層硬 體106的存取。 如將在以下更詳細描述的,系統管理程序102可以藉由 為每個系統資源指派存取控制列纟(acl )以及基於包括 允許使用系統資源的應肖UG的許可列表來指派使用每個 '資原的許可,來實施本文揭示的用於提供安全邊界的 功能’:在相同分區内執行的應肖110之間提供安全邊 八他貫施例中,此處所呈現的功能可在作業系統 或者由女裝低級作業系統驅動程式以賦能此處所 201227285 揭示的功能的應用程式來實施。就此而言,應當理解的 是*圖1僅是說明性的,並且.此處所呈現的實施例可在已 經經由很多不同方式實施的很多不同類型的虛擬化環境 中使用。例如,此處揭示的各實施例可與虛擬化應用、在 硬體虛擬化環境中執行的非虛擬化應肖、在非虛擬化環境 中執行的非虛擬化應用,以及其他類型的應用結合使用。 圖2是圖示其中安全監視器2〇6在操作學習模式(「學 習模式」)中執行的軟體環境200的電腦軟體架構圖。在 圖2所示的軟體環境2〇〇中,一或多個應用2〇2在諸如伺 服器電腦、標準桌上型或膝上型電腦,或平板電腦的電腦 上執行。例如,應用202可包括人力資源(HR)應用、記 帳應用、結構化查詢語言(Sql)伺服器等。 在執行期間,應用202可以發出一或多個應用程式編寫 ii面(API )調用,從而促進與其他程式通訊並存取系統 貧源。應當理解的是,如此處使用的,術語「系統資源」 包括作業系統(〇S )不以其他方式控制使用的存取的全部 資源或物件。例如,系統資源可包括網路端點、網路埠、 檔案、訊窗、使用者介面(m)元素、註冊儲存體、開放 資料庫連接性(0DBC)連接字串,以及其他類型的資源。 處於學習模式時,安全監視器2〇6截取由應用2〇2作出 的API調用°此被示為圖2中的方塊204。回應於截取API 調用,安全監視器2〇6將一或多個可編輯的ACL與作為 API調用#目標的系統資源相關聯。-或多個可編輯ACL 可用於控制對系統資源的存取,範圍從完全存取系統資源 201227285 到禁止存取。在一個實施例中,安全監視器206將一或多 個ACL儲存在安全監視器資料庫208中。元資料可包括辨 識應用202所請求的系統資源的資料,以及許可應用202 存取該資源的指示。在ACL被儲存到安全監視器資料庫 208之後’允許所截取的AP:[調用照常繼續。此在圖2的 方塊2 1 0中圖示。 如將在以下更詳細地描述的,安全監視器2〇6在應用2〇2 的執行時間利用安全監視器資料庫208的内容來允許或拒 絕對系統資源的存取。特定言之,安全監視器2〇6將許可 已經由上文描述的學習模式處理過的應用202存取資源的 API調用。未在上文描述的學習模式中被處理的應用202 存取資源的AP I調用將不被許可。就此而言,安全監視器 206儲存在安全監視器資料庫208中的資料被用作白名 單。管理員可以在學習模式發生之後藉由編輯白名單以添 加或移除應用(例如,應用202 )來允許或拒絕對系統資 源的存取。因此,應當理解的是,儲存在以上描述的安全 監視器資料庫208中的資料的類型僅是說明性的,並且安 全監視器可以儲存其他類型的資料。 圖3是安全監視器206在操作實施模式(「實施模式」) 中執行的電腦軟體環境300。環境300包括在相同的電腦 上執行的應用302和應用304。儘管應用302和應用304 在伺服器上執行,但該等應用可以發出一或多個API調 用’從而促進與其他程式通訊以及存取系統資源。 在圖3所示的實例中,安全監視器206已在上文描述的. 10 201227285 學習模式中處理過應用302。然而,尚未在學習模式中執 行應用304。因此,安全監視器資料庫208包括辨識由應 用302作出的API調用的資料。安全監視器資料庫2〇8不 包括辨識由應用304作出的API調用的資料。 處於實施模式時,安全監視器206截取由應用302和應 用3 04作出的API調用。此在圖3中由方塊3 06來表示。 回應於戴取API調用,安全監視器206存取安全監視器資 料庫208的内容以決定是否應當許可該API調用。例如, 在一個實施例中’安全監視器206存取在學習模式期間健 存的ACL和元資料,以決定是否應當許可由應用302和應 用3 04作出的API調用。 由於應用302已在學習模式中被處理過,因此安全監視 器2〇6決定應用3〇2被授權存取所請求的系統資源。由於 應用302被授權存取系統資源,因此允許所截取的由應用 302作出的API調用照常繼續。此在圖3的方塊312和314 中圖示。由於應用304尚未在學習模式中被執行過,因此 安全監視器206亦決定應用3〇4不被授權存取系統資源。 由於應用304未被授權存取系統資源,因此不許可所截取 的由應用3 〇4作出的API調用繼續。 圖4疋圖示常式4〇〇的流程圖,常式4〇〇圖示操作學習 模式的安全監視器206的操作的各態樣。應該瞭解,此處 參考圖4和其他附圖所描述的邏輯操作是(丨)作為電腦實 轭的動作或在計算系統上執行的程式模組的序 列及/或(2) 作為计算系統内的互連機器邏輯電路或電路模組來實施 11 201227285 — 、於计异系統的效能及其他要求,可以選 賁施。因此,此處描述的邏輯摔 5的 作、n… 稱為狀態、操 作…構§又備、動作或模組。該等操作、結構化設備 作和模組可以用軟體、㈣、專用數位邏輯m 組合來實施。亦應該理解…執行比附圖中圖示並在此 處描述的操作更多或更少的操作。該等操作亦可以按與此 處所描述的不同的次序來執行。 一常式彻在操作402開始,其中管理員在學習模式中執 行安全監視器206。一旦安全監視器2〇6開始執行常式 400繼續至操卩4G4,其中在電腦上執行的應用開始纽 調用。常式從操作404繼續至操作4〇6。 在操作406,安全監視器2〇6截取由—或多個應用開始 的API調用。回應於截取Αρι調用,常式4〇〇繼續至操作 408’其中安全監視器2〇6將作出該Αρι調用的應用添加 到與所清求的資源相關聯的ACL。亦可以許可管理員藉由 修改ACL來指定應用可以存取資源。常式4〇〇從操作4〇8 繼續至操作410。 在操作410,將一或多個ACL·儲存在安全監視器資料庫 208中。一旦女全監視器206已經更新了安全監視器資料 庫208,常式400繼續至操作412,在彼處允許所截取的 API調用照常繼續。常式400從操作412繼續至操作4 14, 在彼處結束。 鼠5是圖示常式500的流程圖,常式5〇〇圖示在實施模 式中操作的安全監視器206的操作的各態樣。常式5〇〇始 12 201227285 於操作502,其中一或多個應用以上文描述的方式開始Αρϊ 調用。作為其回應’在操作5〇4,安全監視器2〇6截取由 應用作出的API調用。 在操作506,安全監視器2〇6存取安全監視器資料庫 208。女全監視器206隨後使用儲存在安全監視器資料庫 2〇8中的資料來決定開始Αρι調用的應用是否被授權存取 所請求的系統資源。此在操作5〇8處發生。 右安全監視盗206決定一個應用被授權存取所請求的系 統資源,則常式繼續至操作51〇,其中伺服器允許該Αρι 調用照常繼續。在操作512 ’許可應用地存取所請求的 資源。常式500從操作512繼續至操作514,在彼處結束。 若在操作508,安全監視器2〇6決定應用3〇4未被授權 存取所請求的系統資源,則常式繼續至操# 52〇,其中伺 服器阻止由應用304作出的Αρι調用執行。常式5〇〇從操 作520繼續至操作522,在彼處結束。 應當理解的是,安全監視器裏可儲存與無效的AH調 用有關的資訊。可以經由合適的使用者介面向管理員提供 該資訊。管理員可以使用該資料來衫是否應該允許作出 無效的API|^的應时取特定的系統資源。就此而言, 管理員可以修改儲存在安全監視器資料庫謂中的資料 丨 ACL )以許可在未來執行期間由該應用作出的 API調用的執行。 圖6圖示能夠執行此處所描述的用於提供安全邊界纪 體-件的電腦600的說明性電腦架構。如圖6所示㈣ 13 201227285 架構顯示了一般桌上型、膝上型或伺服器電腦,並且可以 用來執行此處所呈現的軟體元件的任何態樣。 圖6所不的電腦架構包括中央處理單元6〇2 (「cpu」)、 包括隨機存取記憶體614(「RAM」)和唯讀記憶體(「R〇Mj) 616的系統記憶體608,以及將記憶體耦合至cpu 6〇2的 系統匯流排604。基本輸入/輸出系統被儲存在R〇M 616 中,該系統包含幫助諸如在啟動期間在電腦6〇〇中的元件 之間傳遞資訊的基本常式。電腦6〇〇進一步包括用於儲存 作業系統618、應用程式和其他程式模組的大容量儲存設 備610’此將在本文中更為詳盡地描述。 大容量儲存設備610經由連接至匯流排6〇4的大容量儲 存控制器(未圖示)連接到CPU 602。大容量緒存設備61〇 及其相關聯的電腦可讀取媒體為電腦6〇〇提供非揮發性儲 存器。儘管對此處包含的電腦可讀取媒體的描述提及了諸 如硬碟或CD-ROM驅動器之類的大容量儲存設備,但是本 領域的技藝人士應該明白,電腦可讀取媒體可以是可由電 腦600存取的任何可用電腦儲存媒體。 舉例而言(但並非限制)’電腦可讀取媒體可以包括以 用於儲存諸如電腦可讀取指令、資料結構、程式模組之類 的資sfl或其他資料的任何方法或技術實施的揮發性和非 揮發性、可移除和不可移除媒體。例如,電腦可讀取媒體 包括但不限於,RAM、ROM、EPROM、EEPROM、快閃記 憶體或其他.固態記憶體技術、CD-ROM、數位多功能光碟 (「DVD」)、HD-DVD、藍光(BLU-RAY)或其他光學儲存 14 201227285 盗、磁帶盒、磁帶、磁碟儲存器或其他磁性儲存設備,或 可用於儲存所需資訊且可以由電腦600存取的任何其他媒 體。 根據各實施例,電腦600可以使用經由諸如網路620之 類的網路到遠端電腦的邏輯連接來在聯網環境中操作。電 腦600可經由連接至匯流排6〇4的網路介面單元6〇6來連 接到網路620。應當理解,網路介面單元6〇6亦可以被用 來連接到其他類型的網路和遠端電腦系統。電腦6〇〇亦可 包括用於接收和處理來自多個其他設備的輸入的輸入/輸 出控制器612,該等設備包括鍵盤、滑鼠或者電子觸控筆 (未在圖6中圖示)。類似地,輸入/輸出控制器可以提供 至顯不螢幕、印表機或其他類型的輸出設備(亦未在圖6 中圖示)的輸出。 如前簡述的一般,多個程式模組和資料檔案可以儲存在 電腦6〇〇的大谷1儲存裝置610和RAM 614内,包括適於 制聯網的桌上型、膝上型或飼服器電腦的操作的作業系 統618。大谷量儲存設備61〇和RAM 614亦可儲存一或多 個程式极組。特定言之,大容量儲存設備610和raM 614 可儲存系統管理程序,應用202、302和3〇4,安全監 視器206,以及安全監視器資料庫208,其每一個皆在上 文參考圖1-5詳細描述。大容量儲存設備61〇和ram 614 亦可儲存其他類型的程式模組和資料。 、、解本'文所描述的軟體元件在被載入到CPU 602 中並被執行時可以將CPU 6〇2和整體電腦600從通用計算 15 201227285 系統變換成為促進本文所提出的功能而定製的專用計算 系統。CPU 602可以用任何數量的電晶體或其他個別的電 路元件(其可以分別地或共同地假設任何數量的狀態)構 建。更特定地,CPU 002可以回應於包含在本文所揭示的 軟體模組中的可執行指令來作為有限狀態機進行操作。該 等電腦可執行指令可以藉由指定CPU 602如何在各狀態之 間轉換來變換CPU 602,由此變換了構成CPU 6〇2的電晶 體或其他個別硬體元件。 對本文所提出的軟體模組的編碼亦可變換本文所提出 的電腦可讀取媒體的實體結構。在本說明書的不同的實施 例中’實體結構的特定變換可取決於各種因素。該等因素 的實例可包括但不限於:用於實施電腦可讀取媒體的技 術、電腦可讀取媒體是被表徵為主要儲存器還是次要儲存 器等等。例如,若電腦可讀取媒體被實施為基於半導體的 記憶體,則本文所揭示的軟體可以藉由變換半導體記憶體 的實體狀態而在電腦可讀取媒體上編碼。例如,軟體可以 變換構成半導體記憶體的電晶體、電容器或其他個別電路 元件的狀態。軟體亦可變換該等元件的實體狀態以在其上 儲存資料。 作為另一實例,本文所揭示的電腦可讀取媒體可以使用 磁性或光學技術來實施。在該等實施例中,本文所提出的 軟體可以在磁性或光學媒體中編碼了軟體時變換該磁性 或光學媒體的實體狀態。該等變換可以包括改變給定磁性 媒體内的特定位置的磁性。該等變換亦可以包括改變給定 16 201227285 光學媒體内的特定位置的實體特徵或特性,以改變該等位 置的光學特性。在沒有偏離本說明書的範疇和精神的情況 下,實體媒體的其他轉換亦是可能的,先前提供的實例只 是為了促進此論述。 鑒於以上内容,應當理解,在電腦600中發生許多類型 的實體變換來儲存並執行本文所提出的㈣元件。亦應當 理解,電腦6GG可包括其他類型的計算設備,包括掌上型 電腦嵌入式電腦系統、個人數位助理以及本領域技藝 人士已知的其他類型的計算設備。亦可構想電腦6〇〇可以 不包括圖6所示的全部元件,可以包括未在圖6中明確圖 示的其他元件,或者可利用完全不同於圖6所示的架構。 基於上文,應當理解的是,此處提供了用於提供安全邊 界的技術。儘管用對電腦社播姓外 m構特徵、方法和變換動作、特 定計算機器和電腦可讀取媒體專用的語言描述了本文所 提出的標的’但可以理解,㈣中請專利範圍中定義的本 發明不必限於本文述及之㈣特徵、動作或媒體。相反, 該等特定特a、動作和媒體是作 式來揭示的。 貫施-求項的示例性形 上述標的僅作為說明提供,並 卫立不應被解釋 對此處述及之標的作出各種修改和改變,、制了 和述及之示例性實施例和應用, 不必遵循所示 不必者離以下所由社 專利範圍中述及之本發明的真正精神和範_。所附申明 【圖式簡單說明】 17 201227285 、圖巧圖示其中可實施此處所揭示的標的的各態樣的合 適的汁鼻環境的實例的電腦軟體架構圖; 圖2是圖示在此處提供的學習模式中操作的用於根據此 處所呈現的各種實施例提供安全邊界的安全監視器的各 態樣的電腦軟體架構圖; 圖3是圖示根據此處所呈現的各種實施例在執行時的實 施模式中操作的安全監視器的各態樣的電腦軟體架構圖; 圖4是圖示用於在安全監視器處於學習模式時監控系統 資源存取的此處提供的一個說明性常式的各態樣的流程 圖, 圖5是圖示用於安全監視器在實施模式中操作時監控系 統資源存取的此處提供的一個說明性常式的各雜樣的流 程圖;及 圖6是圖示能夠實施本文所呈現的實施例的各態樣的計 算系統的說明性電腦硬體和軟體架構的電腦架構圖。 【主要元件符號說明】 100 計算環境 102 系統管理程序 104 虛擬硬體資源集 106 底層硬體 108A 作業系統 108B 作業系統 108C 作業系統 18 201227285 110A 應用 i 10B 應用 110C 應用 200 軟體環境 202 應用 204 方塊 206 安全監視器 208 安全監視器資料庫 210 方塊 300 電腦軟體環境 302 應用 304 應用 306 方塊 312 方塊 314 方塊 400 常式 402 操作 404 操作 406 操作 408 操作 410 操作 412 操作 414 操作 500 常式 19 201227285 502 操作 5 04 操作 506 操作 508 操作 510 操作 512 操作 514 操作 520 操作 522 操作 600 電腦 602 中央處理單元 604 系統匯流排 606 網路介面單元 608 糸統記憶體 610 大容量儲存設備 612 輸入/輸出控制器 614 隨機存取記憶體(RAM ) 616 唯讀記憶體(ROM) 618 作業系統 620 網路 20

Claims (1)

  1. 201227285 七、申請專利範圍: κ 一種電腦實施的用於提供一安全邊界的方法,該電腦 實施的方法包括以下步驟:執行電腦實施的操作,用於: 執行一安全監視器; 經由該安全監視器截取由一應用發出的用於存取—或多 個系統資源的一或多個應用程式編寫介面(ΑΡΙ)調用; 將資料儲存在與存取該等系統資源相關聯的一安全敗 器資料庫中;及 & 、、’至由該t全監視器在該應用的一執行時間決定發出該— 或夕個API調用的該應用是否被授權存取該等系統資源。 2-如請求項丨之電腦實施的方法,進一步包括以下步驟: 當與該應用相關聯的資料位於該安全監視器資料庫中 時’允許該應用存取該等系統資源;及 當與該應用相關聯的資料不在該安全監視器資料庠中 時’阻止該應用存取該等系統資源。 3. 如請求項2之電腦實施的方法,進一步包括以下步顿. 向一管理員提供與被阻止存取該等系統資源的該應用有 關的資料。 4. 如請求項1之電腦實施的方法,進一步包括以下步驟: 將一或多個存取控制列表(ACLs)與被該應用所請求使用 21 201227285 的該等系統資源相關聯;及 將該或夕個ACL儲存在該安全監視器資料庫中。 5.如請求項4之電腦實施的方法,其中將一或多個 與被該應用所請求使用的該等系統資源相關聯之步帮,以 使用b $乡個ACL來載入該安全監視器資料庫之步 驟在該安全監視器在—學習模式中操作時發生。 ’ 6.如請求項 應用。 之電腦實施的方法, 其中該應用是一虛擬 7.如請求項 單個實體機器 行0 6之電腦實施的方法,其中該虛擬應用在— 上執行,其他虛擬應用亦在該實體機器上執 8.如請求項7之電腦實施的方法,其中在一分區内執行 胃虛擬應用和其他虛擬應用。 求項1之電腦實施的方法,其中該系統資源包括 以下之至少—士 · 一 一通訊連接埠、一註冊儲存體、一開放 貢料庫連接性連接字宰,或―端點。 10. 一 種 JL L , 〃 儲存有電腦可讀取指令的電腦可讀取儲存媒 體,該等指人 相7在由一電腦執行時使得該電腦: 22 201227285 經由一安全監視器截取由一應 ^ '出的用於存取一戎容 個系統貧源的一或多個應用程式編 - 納調用有關的資料儲存在—安全監視器資 ,及 于 基於儲存在該安全監視器資料庫中的該資 個其他應用,使其不能存取該等系統資源。 一’多 如味求項10之電腦可讀取儲存媒體,其中其上進―, 儲存有在由該電腦執行時使該電腦執步 可執行指令: 下動作的電腦 或多個存取控制列表(ACLS)與該等系統資源相 在一虛擬層内提供一安全監視器;及 將一 關聯 12.如請求項U之電腦可讀取儲存媒體,其中其上一 儲存有在由該電腦執行時使該電腦執行、步 可執行指令: 動作的電腦 當在該安全監視器資料庫中發現與該應用相關聯的資料 時’允許該應用存取該等系統資源;及 广 當未在該安全監視器資料庫中發現與該應用相關聯的資 料時’阻止該應用存取該等系統資源。 進—步包括向一 的該應用有關的 13-如請求項12之電腦可讀取儲存媒體, 管理員提供與被阻止存取該等系統資源 資料》 23 201227285 14.如請求項13之電腦可讀取儲存媒體,其中該管理員可 允許被阻止存取該等系統資源的該應用對該等系統資源 的存取。 15.如請求項10之電腦可讀取儲存媒體,其中該應用是一 虛擬應用。 16·如請求項15之電腦可讀取儲存媒體,其中該虛擬應用 在-單個實體機器上執行’其他虛擬應用亦在該實體機器 上執行。 17·如請求項16之電腦可讀取儲存媒體,其中使用命名空 使在該單個實體機器上執行的該等其他虛擬應 用無法察覺該等系統資源。 18-如請求項17之電腦 包括以下之至少一者: 資料庫連接性連接字争 可讀取儲存媒體,其中該系統資源 一通訊埠、一註冊儲存體、一開放 ,或—端點。 19.種電腦實施的用於提供—^ '、 女全邊界的方法,續雷聪 實施的方法包括以^ ^^ S ^ . 行電腦實施的操作,用於: 以插作學習模式執 ,.痛m 女玉監視器,在該操作學習模式 中由一應用發出的、用 F干為褀式 '仔取一系統資源的應用程式編寫 24 201227285 介面(API)調用被截取,且與該系統資源相關聯的存 控制列表(ACLs )被儲存在一安全監視器資料庫中;及 以一操作實施模式執行該安全監視器’在該操作實施模气 中由該應用發出的應用程式編寫介面(Αρι)調用被截果取, 並決定與該應用相關聯的ACL是否儲存在該安全監視器 資料庫中,其中當與該應用相關聯的該等儲存在該安 全監視器資料庫中時’該應用被授權存取线資源,且當 與該應用相關聯的料ACL不儲存在該安全監視器資料 庫中時,該應用未被授權存取系統資源。 2〇·如請求項19之電腦實施的方法,其中該應用包括一虚 ,應用,且其中該系統資源包括以下之至少—者:一通訊 埠、一註冊儲存體、一開放資料庫連接性連接字争,或一 端點。 25
TW100141289A 2010-12-21 2011-11-11 提供安全邊界 TWI554879B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/973,907 US9003543B2 (en) 2010-12-21 2010-12-21 Providing a security boundary

Publications (2)

Publication Number Publication Date
TW201227285A true TW201227285A (en) 2012-07-01
TWI554879B TWI554879B (zh) 2016-10-21

Family

ID=46236300

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100141289A TWI554879B (zh) 2010-12-21 2011-11-11 提供安全邊界

Country Status (7)

Country Link
US (1) US9003543B2 (zh)
EP (1) EP2656271B1 (zh)
JP (1) JP5922149B2 (zh)
CN (1) CN102592077B (zh)
HK (1) HK1172415A1 (zh)
TW (1) TWI554879B (zh)
WO (1) WO2012088109A2 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8667399B1 (en) * 2010-12-29 2014-03-04 Amazon Technologies, Inc. Cost tracking for virtual control planes
US9436534B2 (en) * 2011-01-17 2016-09-06 Infosys Limited Method and system for preemptive detection of occurrence of faulty conditions based on resource usage
US8863232B1 (en) * 2011-02-04 2014-10-14 hopTo Inc. System for and methods of controlling user access to applications and/or programs of a computer
EP2713295A4 (en) * 2011-05-19 2015-04-22 Japan Broadcasting Corp COOPERATIVE RADIO COMMUNICATION RECEIVER, RESOURCE ACCESS CONTROL PROGRAM AND COOPERATIVE RADIO COMMUNICATION SYSTEM
US20140123319A1 (en) * 2011-06-27 2014-05-01 Nokia Corporation System, Method and Apparatus For Facilitating Resource Security
US8856907B1 (en) 2012-05-25 2014-10-07 hopTo Inc. System for and methods of providing single sign-on (SSO) capability in an application publishing and/or document sharing environment
US9419848B1 (en) 2012-05-25 2016-08-16 hopTo Inc. System for and method of providing a document sharing service in combination with remote access to document applications
US8713658B1 (en) 2012-05-25 2014-04-29 Graphon Corporation System for and method of providing single sign-on (SSO) capability in an application publishing environment
CN102750493B (zh) * 2012-06-26 2016-01-06 华为终端有限公司 访问权限控制方法、装置及系统
US9239812B1 (en) 2012-08-08 2016-01-19 hopTo Inc. System for and method of providing a universal I/O command translation framework in an application publishing environment
CN102819715A (zh) * 2012-08-15 2012-12-12 腾讯科技(深圳)有限公司 Api监控方法和装置
US8990942B2 (en) 2013-02-18 2015-03-24 Wipro Limited Methods and systems for API-level intrusion detection
CN104166820B (zh) * 2013-05-16 2017-09-29 北京畅游天下网络技术有限公司 一种数据管理方法和系统
CN109063467A (zh) * 2013-05-27 2018-12-21 华为终端(东莞)有限公司 系统功能调用的方法、装置及终端
EP3063652B1 (en) 2013-10-30 2020-04-29 Hewlett-Packard Enterprise Development LP Application programable interface (api) discovery
US9258315B2 (en) * 2014-01-13 2016-02-09 Cisco Technology, Inc. Dynamic filtering for SDN API calls across a security boundary
US9971582B2 (en) * 2015-06-23 2018-05-15 Ca, Inc. Selecting application wrapper logic components based on features of a mobile application to be wrapped
CN106326764A (zh) * 2015-06-30 2017-01-11 西安中兴新软件有限责任公司 一种信息安全管理方法和装置
MX2017013621A (es) * 2016-02-09 2018-03-08 Siemens Ag Metodo y entorno de ejecucion para ejecutar instrucciones de programa de forma segura.
GB2552966B (en) * 2016-08-15 2019-12-11 Arm Ip Ltd Methods and apparatus for protecting domains of a device from unauthorised accesses
US10360082B2 (en) * 2017-01-19 2019-07-23 International Business Machines Corporation Analysis of application programming interface usage for improving a computer system
US11507653B2 (en) * 2018-08-21 2022-11-22 Vmware, Inc. Computer whitelist update service
KR20210026233A (ko) 2019-08-29 2021-03-10 삼성전자주식회사 디바이스 리소스에 대한 접근을 제어하기 위한 전자 장치 및 그의 동작 방법
US11184454B1 (en) * 2020-12-21 2021-11-23 Coupang Corp. Systems and methods for managing perpetual data requests to conserve resources
WO2023141014A1 (en) * 2022-01-18 2023-07-27 Cisco Technology, Inc. Detecting broken object level and function level authorization issues with api services

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974549A (en) * 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
US6970081B1 (en) * 1998-09-17 2005-11-29 Koninklijke Philips Electronics N.V. Distributed software controlled theft detection
US7017188B1 (en) 1998-11-16 2006-03-21 Softricity, Inc. Method and apparatus for secure content delivery over broadband access networks
US6763370B1 (en) 1998-11-16 2004-07-13 Softricity, Inc. Method and apparatus for content protection in a secure content delivery system
US7225264B2 (en) 1998-11-16 2007-05-29 Softricity, Inc. Systems and methods for delivering content over a computer network
US7370071B2 (en) 2000-03-17 2008-05-06 Microsoft Corporation Method for serving third party software applications from servers to client computers
US6938096B1 (en) 1999-04-12 2005-08-30 Softricity, Inc. Method and system for remote networking using port proxying by detecting if the designated port on a client computer is blocked, then encapsulating the communications in a different format and redirecting to an open port
US7200632B1 (en) 1999-04-12 2007-04-03 Softricity, Inc. Method and system for serving software applications to client computers
US7730169B1 (en) 1999-04-12 2010-06-01 Softricity, Inc. Business method and system for serving third party software applications
US6711686B1 (en) * 1999-06-29 2004-03-23 Dell Usa L.P. Security management tool for managing security attributes in computer systems
US7320141B2 (en) * 2001-03-21 2008-01-15 International Business Machines Corporation Method and system for server support for pluggable authorization systems
US7028305B2 (en) 2001-05-16 2006-04-11 Softricity, Inc. Operating system abstraction and protection layer
US7590743B2 (en) 2003-12-23 2009-09-15 Softricity, Inc. Method and system for associating a process on a multi-user device with a host address unique to a user session associated with the process
WO2006020094A2 (en) 2004-07-20 2006-02-23 Softricity, Inc. Method and system for minimizing loss in a computer application
FR2881854B1 (fr) 2005-02-04 2008-01-11 Radiotelephone Sfr Procede de gestion securisee de l'execution d'une application
JP4628149B2 (ja) * 2005-03-14 2011-02-09 株式会社エヌ・ティ・ティ・ドコモ アクセス制御装置及びアクセス制御方法
JP4849941B2 (ja) * 2006-04-12 2012-01-11 株式会社エヌ・ティ・ティ・ドコモ ソフトウェア動作モデル化装置
JP2007286905A (ja) * 2006-04-17 2007-11-01 Nec System Technologies Ltd 情報処理端末装置、ファイル流出防止方法およびファイル流出防止プログラム
US20070294699A1 (en) 2006-06-16 2007-12-20 Microsoft Corporation Conditionally reserving resources in an operating system
KR100843701B1 (ko) 2006-11-07 2008-07-04 소프트캠프(주) 콜 스택에 기록된 정보를 이용한 에이피아이 확인방법
JP4473256B2 (ja) * 2006-12-27 2010-06-02 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーションプログラムによるリソースアクセスを制御するための情報処理装置、方法、及びプログラム
US8291227B2 (en) * 2007-02-02 2012-10-16 Red Hat, Inc. Method and apparatus for secure communication
JP2009048359A (ja) * 2007-08-17 2009-03-05 System Integrate Co Ltd 情報処理装置の監視・管理システム
JP5382450B2 (ja) * 2008-02-14 2014-01-08 日本電気株式会社 アクセス制御装置、その方法及び情報記録媒体
US8196175B2 (en) 2008-03-05 2012-06-05 Microsoft Corporation Self-describing authorization policy for accessing cloud-based resources
US8510805B2 (en) * 2008-04-23 2013-08-13 Samsung Electronics Co., Ltd. Safe and efficient access control mechanisms for computing environments
KR100951852B1 (ko) 2008-06-17 2010-04-12 한국전자통신연구원 응용 프로그램 비정상행위 차단 장치 및 방법
JP4653230B2 (ja) 2008-09-22 2011-03-16 株式会社エヌ・ティ・ティ・ドコモ Api検査装置及び状態監視装置
EP2194456A1 (en) * 2008-12-05 2010-06-09 NTT DoCoMo, Inc. Method and apparatus for performing a file operation

Also Published As

Publication number Publication date
EP2656271A4 (en) 2017-06-28
TWI554879B (zh) 2016-10-21
CN102592077A (zh) 2012-07-18
EP2656271B1 (en) 2018-09-05
US9003543B2 (en) 2015-04-07
EP2656271A2 (en) 2013-10-30
WO2012088109A2 (en) 2012-06-28
WO2012088109A3 (en) 2012-09-27
JP5922149B2 (ja) 2016-05-24
HK1172415A1 (zh) 2013-04-19
US20120159570A1 (en) 2012-06-21
CN102592077B (zh) 2014-11-19
JP2014501409A (ja) 2014-01-20

Similar Documents

Publication Publication Date Title
TW201227285A (en) Providing a security boundary
US9465955B1 (en) System for and methods of controlling user access to applications and/or programs of a computer
US7467158B2 (en) Object virtualization
JP5989001B2 (ja) ペルソナベースのアプリケーションエクスペリエンスの提供
US8527989B2 (en) Tracking loading and unloading of kernel extensions in isolated virtual space
US20130091183A1 (en) Volume Management
US10776322B2 (en) Transformation processing for objects between storage systems
US9934404B2 (en) Inter-process access control
US9734311B1 (en) Secure authentication of firmware configuration updates
US10411957B2 (en) Method and device for integrating multiple virtual desktop architectures
US10866909B2 (en) Technologies for protecting virtual machine memory
EP3543850B1 (en) Cloud system data management method
CN106296530B (zh) 针对非聚合基础设施的信任覆盖
US20120011502A1 (en) Managing unique electronic identification for kernel extensions in isolated virtual space
US9971613B2 (en) Tag based permission system and method for virtualized environments
US20150160973A1 (en) Domain based resource isolation in multi-core systems
WO2023087278A1 (zh) 一种云平台权限设置方法、装置、终端设备及存储介质
US9754121B2 (en) System and methods for live masking file system access control entries
US11695777B2 (en) Hybrid access control model in computer systems
US9239729B1 (en) Sidecar file framework for managing virtual disk plug-in data and metadata
JP2019082912A (ja) 情報処理装置及び構成要素の管理方法
US20240111689A1 (en) Cache service for providing access to secrets in containerized cloud-computing environment

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees