TWI395113B - 在受限程序中之檔案轉換 - Google Patents

在受限程序中之檔案轉換 Download PDF

Info

Publication number
TWI395113B
TWI395113B TW097106499A TW97106499A TWI395113B TW I395113 B TWI395113 B TW I395113B TW 097106499 A TW097106499 A TW 097106499A TW 97106499 A TW97106499 A TW 97106499A TW I395113 B TWI395113 B TW I395113B
Authority
TW
Taiwan
Prior art keywords
file
format
converter
file format
restricted
Prior art date
Application number
TW097106499A
Other languages
English (en)
Other versions
TW200844789A (en
Inventor
Ambrose T Treacy
Maithili V Dandige
Eric Fox
Robert A Little
Christopher C White
David Leblanc
Benjamin J Bunker
Aaro N E Erlandson
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 TW200844789A publication Critical patent/TW200844789A/zh
Application granted granted Critical
Publication of TWI395113B publication Critical patent/TWI395113B/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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • 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
    • 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/2149Restricted operating environment

Description

在受限程序中之檔案轉換
本發明是有關於在受限程序中的檔案轉換。
對於處置像是病毒及特洛伊木馬之惡意程式碼一直是軟體開發者的關注項目。駭客通常是在當一應用程式或檔案格式內的弱點為已知利用這些弱點。在弱點成為廣知時的同一天利用一已知弱點的惡意程式碼稱為零日攻擊。到目前為止,僅有極為少數的解決方法能夠有效地處置這種零日攻擊。
由於惡意程式碼在零日攻擊時能夠流通的速度之故,因此開發者並無足夠時間以實作補丁或其他解決方法來處置弱點。通常,可獲用的唯一解決方法是藉由鼓勵使用者依循安全最佳實作,像是關閉不需要的服務、保持最新近的補丁並且避免開啟來自於未知或未預期來源的附件,以降低開啟惡意程式碼的潛在機會。一旦弱點成為已知之後,一使用者可避免開啟受到該弱點所影響的檔案。然而,在其中一使用者必須存取該檔案的情況下,這並不能提供一種適當解決方法。
此外,用以搜尋並移除惡意程式碼之現有可獲用軟體應用程式(即如防毒軟體)必須具備一些對於惡意程式碼或所攻擊之弱點的先前知識。例如有些應用程式會針對先前既經識別為惡意之程式碼而向文件進行搜尋。其他應用程 式則是需要關於弱點的知識,像是在一結構中應針對於不尋常程式碼而進行搜尋的特定欄位。這些方法各者皆需要(對於程式碼或弱點的)先前知識。而在一零日攻擊裡弱點則將為未知,並且駭客一般是建立不會被識別為具有惡意的新程式碼。這會造成目前可獲用的軟體應用程式對於零日攻擊而言並無效用。
本發明之具體實施例即為針對該等及其他考量所製作。同時,前文中雖討論相當特定的問題,然應瞭解不應將本發明具體實施例限制於解決在背景說明中所論述的特定問題。
本概述係提供以介紹一種按一較簡化形式,而在後文「詳細說明」乙節中進一步描述的多種概念。本概述並非為以識別所主張之主題項目的各項關鍵特點或基本特性,亦非為以用於決定所主張主題項目之範圍的輔助。
描述多個具體實施例,以藉由將具一第一檔案格式之檔案轉換成一具一第二檔案格式的經轉換檔案,進而將惡意程式碼自具該第一檔案格式之檔案中移除或是令其為無效用。在許多具體實施例裡,於將該檔案轉換成經轉換檔案之過程中,可將包含在該檔案內的惡意程式碼移除或令其為無效用。可由一轉換器執行該轉換作業,而此轉換器係載入於一受限電腦程序之中。該電腦程序具有受限優權,而將其對底層作業系統及電腦系統的存取加以限制。 從而,即使是在轉換過程裡該嵌入於該檔案中的惡意程式碼努力嘗試要執行,由於該者係載入在該受限程序之內,因此該者亦會被限制在能夠造成損害的範圍裡。
可按如一電腦程序、一計算系統,或者按如一像是一電腦程式產品或電腦可讀取媒體的製造物項以實作具體實施例。該電腦程式產品可為一電腦儲存媒體,其可由一電腦系統讀取,並且編碼一電腦指令程式以執行一電腦程序。該電腦程式產品亦可為一於一載波上之經傳播信號,其可由一計算系統讀取並且編碼一電腦指令程式以執行一電腦程序。
後文中參照於隨附圖式以更完整地說明各式具體實施例,而該等圖式構成其一部份,並且顯示出為以實作本發明的特定具體實施例。然而,該等具體實施例可按眾多不同形式所具體實作,並且不應被詮釋為受限於本文所述之各項具體實施例;相反地,該等具體實施例係提供以使得本揭示可為通徹而完整,同時能夠將本發明範圍完整地提供予熟諳本項技藝之人士。該等具體實施例可為按如方法、系統或裝置所實作。從而,該等具體實施例可採取一硬體實作、一全為軟體實作或者一合併軟體及硬體特點之實作的形式。因此,不應將後文詳細說明視為具有限制意義。
各式具體實施例的邏輯操作係實作為(1)一序列在一 計算系統之上運行的電腦實作步驟,及/或(2)在該計算系統內的互連機器模組。此實作係根據實作該具體實施例之計算系統的效能要求而定之選擇結果。從而,組成本揭所述具體實施例的邏輯操作可另稱為運算、步驟或模組。
簡言之,該等具體實施例係針對於藉由將具一第一檔案格式之檔案轉換成一第二檔案格式,以將惡意程式碼自具該第一檔案格式之檔案中移除或是令其為無效用。該惡意程式碼可經移除或令為無效用而無須任何對於該程式碼,或者用以載荷該程式碼之弱點,的先前知識。可由一轉換器執行該轉換作業,而此轉換器係載入於一受限電腦程序之中。該電腦程序具有受限優權,而將其對底層作業系統及電腦系統的存取加以限制。從而,即使是在轉換過程裡該嵌入於該檔案中的惡意程式碼努力嘗試要執行,由於此受限存取之故,該者亦會被限制在能夠造成損害的範圍裡。在本申請案文中,該詞彙「惡意程式碼」具有廣泛意義,並且包含被納入在一檔案或應用程式內而用於未經授權目的之軟體。惡意程式碼的範例包含病毒、蠕蟲、特洛伊木馬,以及其他不為人所樂見的軟體。
第1圖說明一,根據一具體實施例,可用以安全地開啟一可能含有惡意程式碼之檔案的系統100。在此具體實施例裡,該系統100含有作業系統102,其具有一註記表112、應用程式104、轉換器106和一檔案110。該檔案110含有資料110A以及一檔案副檔名110B(即如作為該檔案名稱的一部份)。此外,根據此具體實施例,該應用程式 104包含一限制政策114。在一些具體實施例裡,該限制政策114標明阻擋哪些類型的檔案(亦即檔案格式)而不被該應用程式104開啟。並且,該限制政策114亦標明阻擋儲存哪些檔案類型。該等限制政策及其在阻擋開啟及/或儲存一檔案方面之使用方式可如標題為「FILE BLOCKING MITIGATION」的美國專利申請案第___號(又可依律師案號14917.0503US01所識稱)案文中詳細討論,此案與本申請案係共同擁有並於相同日期所申審,且茲依其整體而按如參考方式併入本案。
該轉換器106係用以將檔案自一第一檔案格式轉換成為一第二檔案格式。將檔案自該第一檔案格式轉換成該第二檔案格式可將可能嵌入於該檔案內的惡意程式碼予以移除,或者另其為無效用。該轉換器106可為像是存取作業系統函式之目的而與該作業系統102進行通訊。在第1圖所示之具體實施例裡,該轉換器106係載入於一受限程序120中,因此是在該受限程序120內進行自一第一檔案格式至一第二檔案格式的檔案轉換作業。該受限程序120對該作業系統102,以及該作業系統102執行於其上之底層電腦系統,具有有限的存取優權。換言之,該程序120對於請求作業系統函式具有有限特權。
現參照該應用程式104,其可為像是存取作業系統函式之目的而與該作業系統102進行通訊。在第1圖所示之具體實施例裡,該應用程式104並非如同該轉換器106般位於一受限程序內,且因此對於請求作業系統函式具有較 大的優權。此外,該應用程式104可開啟、編輯、儲存及/或建立檔案。在第1圖所示之具體實施例裡,該應用程式104與該檔案110進行互動。即如一範例,該應用程式104可為一文書處理應用程式。一使用者可啟用該應用程式104,然後藉該應用程式104開啟一檔案(即如該檔案110),其可將該檔案110載入至記憶體內,並供以存取該檔案。然後該使用者將資料(亦即資料110A)增入及編輯至該檔案110之內。該應用程式104並不受限於某一特定類型的應用程式,而可為任何種類的應用程式,像是文書處理、試算表、圖形呈現等等。
在一具體實施例裡,該應用程式104亦設定副檔名110B,藉以標明該檔案110具有一特定類型。例如,在此具體實施例裡,副檔名110B係該檔案110之檔案名稱的一部份,並且是在當「儲存」或「另存」該檔案時指配予該檔案。例如,一文書處理應用程式可令一檔案(即如一文字文件)具有一副檔名「doc」,藉此標明該檔案為具有二進位檔案格式。
系統管理者有時會利用像是110B之副檔名,藉以偵測或阻擋潛在的惡意檔案(亦即具一可受攻擊而引入惡意程式碼之已知弱點的檔案)。例如,一電子郵件伺服器可經組態設定以偵測並阻擋所有具一特定副檔名之檔案的電子郵件,而同時又讓具有其他副檔名的電子郵件進入電子郵件客戶端網路。然而,由於可僅藉由將一檔案重新命名為一不同副檔名而簡易地操縱副檔名,因此對於識別出具惡 意程式碼之檔案以阻止引入至網路內來說,利用副檔名並不是一種足以信賴的機制。此外,在一檔案進入一網路前先阻擋該檔案會讓一正期待收到該檔案的使用者無法獲知該檔案遭受阻擋,且/或該檔案出現有安全問題。
在第1圖所示之具體實施例裡,該應用程式104含有一類型檢測器模組124。該類型檢測器模組124可檢視檔案資料(即如110A),並且決定一檔案的真實檔案格式。該詞彙「真實檔案格式」在本申請案中是用以描述一檔案的實際格式。即如一範例,一文書處理文件可具有一 .doc、 .dot或是 .wiz的檔案格式。應瞭解在第1圖所示之具體實施例裡,檔案的真實檔案格式並非藉由檢測一副檔名,像是該副檔名110B,所決定。相反地,該類型檢測器模組124檢視檔案資料之一部分,即如110A,並且根據該檢視結果以決定一檔案的真實檔案格式。
在一具體實施例裡,該類型檢測器模組124自一檔案讀取前數個位元組的資料(亦即嗅聞該檔案),並且根據該等像是在受檢視資料內之標頭資訊及資料結構的特性,該類型檢測器模組124即可決定一檔案的真實檔案格式。在本申請案文中,一真實檔案格式係利用一副檔名所描述。例如,一檔案格式可經描述如 .doc、 .dot及/或 .wiz。然而,不應將按一副擋名描述一真實檔案格式與決定一真實檔案格式相混淆,因後者並不牽涉到檢視該副檔名。
操作上,該系統100首先啟用一像是該應用程式104之應用程式。啟用該應用程式104可由一使用者例如藉由 雙點擊一代表該應用程式104之圖像以請求啟用該應用程式104所進行。或另者,一使用者可例如藉由雙點擊該檔案110之圖像以請求開啟該檔案110。在此情況下,該作業系統102可將該副檔名110B關聯於該應用程式104並啟動該應用程式104。
該應用程式104在當啟用時可載入組態資訊。在一些具體實施例裡,該組態資訊係儲存在該作業系統102的一註記表112內。在這些具體實施例裡,當啟用該應用程式104時,其將向該作業系統102請求該組態資訊,而這將會自該註記表112中擷取該資訊。在一具體實施例裡,該限制政策114係按如該作業系統102之註記表內的組態資訊所儲存;例如按註記鍵項之形式。從而,當啟用該應用程式104時,其將會自該註記表112擷取該限制政策114。
在一些具體實施例裡,存取該限制政策114係受限於該等具優權以寫入/修改該註記表112的使用者,例如具有系統管理優權的使用者。因此,一系統管理者可有效地控制該等受限制而無法利用該應用程式104開啟或儲存的檔案格式。
一旦啟用後,即可利用該應用程式104以開啟、編輯及儲存擋案。即如一第一範例,當該應用程式104嘗試開啟該檔案110時,該類型檢測器模組124首先檢視該資料110A的一部分,藉以決定該檔案110的真實檔案格式。即如前述,在一具體實施例裡,該類型檢測器模組124藉由檢視該資料110A的前數個位元組以決定該真實檔案格 式。該類型檢測器模組124可利用在該資料110A內的標頭資訊或資料結構以作出關於該檔案110之真實檔案格式的決定。一旦決定出該檔案110的真實檔案格式後,該應用程式104將該真實檔案格式比較於該限制政策114。若該檔案110之真實檔案格式並未被該限制政策114識別如阻擋開啟,則該應用程式104可藉由將該檔案載入至記憶體內,並供使用者存取檔案以能夠在該檔案110中增入、編輯及儲存資料的方式來開啟該檔案110。
若該檔案110的真實檔案格式經該限制政策114識別為限制開啟,則該應用程式104將阻擋開啟該檔案110。在一具體實施例裡,該應用程式104可對一使用者顯示一訊息,表示該檔案具有一受限制而無法開啟的檔案格式。
在另一具體實施例裡,回應於決定該檔案110被阻擋而無法開啟,可啟用該轉換器106以將該檔案自其真實檔案類型轉換成一不被阻擋開啟的第二檔案類型。在此具體實施例裡,該轉換器106被載入至該受限程序120中,並且用以將該檔案110轉換為一不被阻擋由該應用程式104開啟的第二檔案。
在一些該系統100的具體實施例裡,一系統管理者可將該轉換器106設定作為處理一具一特定檔案格式之檔案的內定處置器。萬一出現零日攻擊,其中一特定檔案格式既經識別為有弱點,則一系統管理員可藉由將該轉換器106設定為處理此一有弱點格式之檔案的內定處置器,以減輕對一電腦系統或網路的可能損害。這可降低在零日攻 擊過程中的損害可能性,因為每當一使用者嘗試開啟一按一有弱點檔案格式而儲存的檔案時,即啟用該轉換器106以將該檔案轉換成另一格式。即如前述,此轉換可令惡意程式碼不致被傳送/儲存在該經轉換檔案內。此外,由於是將該轉換器106載入到該受限程序120內,因此任何會執行的惡意程式碼都將對一電腦系統或網路產生有限度影響。
而在一些具體實施例裡,一系統管理者可藉由對該應用程式104設定一限制政策以阻擋具有弱點格式的檔案,以在一零日攻擊過程中採行額外的預防措施。從而,連同於將該轉換器106設定作為內定處置器,一電腦系統或網路可擁有強固保護,藉以抗防可能由被納入在一具有弱點格式之檔案內的惡意程式碼所造成之損害。
第2圖說明一系統200而進一步詳細說明該轉換器106。該系統200含有檔案202A,其係具一第一檔案格式(檔案格式1);一轉換器106;一經轉換檔案202B,其係具一第二檔案格式(檔案格式2);以及一具有註記表112的作業系統102。在第2圖所示之具體實施例裡,該轉換器106係載入至一受限程序120內,因而會在該受限程序120之內進行此一自該檔案格式1至該檔案格式2的轉換。該受限程序120對該作業系統102,以及該作業系統102執行於其上之底層電腦系統,具有有限的存取優權。這可確保即使是像是該惡意程式碼204之惡意程式碼確為執行,能夠對該作業系統102及底層電腦系統造成的損害也為有 限。第2圖顯示該轉換器106之具體實施例的細節,其將具一第一檔案格式的檔案202A轉換成一具一第二檔案格式的經轉換檔案202B,並且可在處理過程裡將該惡意程式碼204自該經轉換檔案資料中移除或是令其為無效用。
操作上,該系統200首先啟用該轉換器106。該轉換器106的啟用可為由一使用者例如藉由雙點擊一代表該轉換器106之圖像以請求啟用該轉換器106而進行。或另者,一使用者可例如藉由雙點擊該檔案202A的圖像以請求開啟該檔案202A。在此情況下,該作業系統102可將該檔案202A(或其副檔名)關聯於該轉換器106,並且啟動該轉換器106。
該轉換器106在當啟用時會載入該受限程序120內。當啟用時,該轉換器106可自該註記表112載入組態資訊。該組態資訊可包含註明該程序120受限於此之特定機制的資訊。該程序120對該作業系統102,以及該作業系統102執行於其上之底層電腦系統,具有有限的存取優權。即如熟諳本項技藝之人士所將知曉者,該等施加於該程序120上之特定限制和該程序120所受限於此之機制將是根據該特定作業系統102,以及藉由其他像是該檔案202A之風險層級的設計考量而定。
在一些具體實施例裡,會拒絕准允該程序120執行一些特定操作及/或呼叫該作業系統102的一些特定函式。例如,會拒絕准允該程序120讀取或寫入資訊至該作業系統102的註記表112,這是因為該註記表112儲存有對於各種 應用程式的敏感組態資訊。然而,可准允該程序120讀取並且寫入資料至其他儲存位置。在其他的具體實施例裡,該程序120受限於執行僅該等用以將一檔案自該檔案格式1轉換成該檔案格式2所必要的函式。例如,該程序120僅可准允以自正予轉換之檔案(即如該檔案202A)讀取資料,並以具檔案格式2之經轉換資訊將資料寫入至經轉換檔案(即如該檔案202B)。
即如前述,該程序120所受限之機制將根據該特定作業系統102而定。在一具體實施例裡,該作業系統102係一版本的「WINDOWS」作業系統,其提供數種方式以限制一程序的存取優權。例如,在「WINDOWS」作業系統的多項版本裡,每個程序具有一相關的存取權符,其描述該程序之安全情境,而含有一對於該程序之泛系統優權的列表。一通常描述一受限安全情境之存取權符稱為一受限權符。一受限權符描述一組泛系統優權的有限集合。在一具體實施例裡,該程序120係受限於與一描述一組泛系統優權之有限集合的有限權符相關聯。
在利用一「WINDOWS」作業系統版本的其他系統200具體實施例裡,該程序120可藉由關聯於一工作物件而受限。一工作物件可供按如一單元之方式以管理程序群組。工作物件可控制與其等相關聯之程序的屬性。一工作物件可用以將限制施行於一相關程序上,像是運作集合大小、程序優權及工作結束時間限制。在一具體實施例裡,該程序120是由關聯於一施行對於該程序120之預定限制的工 作物件所限制。
在其他具體實施例裡,可利用一桌面容器或視窗站台以限制該程序120。許多版本的「WINDOWS」作業系統可提供桌面容器以讓多個使用者能夠登入於一視窗站台。桌面容器係一安全容器物件,其係被納入在一視窗站台內。一桌面容器係一多個使用者介面構件之邏輯集組,其又被納入於一視窗站台內,即如許多版本的「WINDOWS」作業系統所實作者。一些於運行在許多「WINDOWS」作業系統版本內之多個程序間的通訊之特點是基於該等程序是否被指配予相同桌面所調控,並且在一些情況下,通訊是藉由該等程序是否共享相同的視窗站台所調控。程序間通訊可具有安全內隱性,並且為此原因,在一些具體實施例裡該受限程序120是運行於一個別視窗站台內(這意味著一個別桌面,因為所有桌面僅具有一個視窗站台作為一容器)。
在利用「WINDOWS」作業系統的系統200具體實施例裡,可利用一受限權符、工作物件及視窗/桌面容器之組合以限制該程序120。利用兩個以上的這些機制,可在將檔案202A自檔案格式1轉換成具檔案格式2之檔案202B的過程中,提供對可由在該程序120內執行之惡意程式碼所造成的損害加以限制之強固安全性。
在將該轉換器106載入該受限程序120之後,該轉換器106將該檔案202A自檔案格式1轉換為具檔案格式2的經轉換檔案202B。即如前述,該轉換器並未擁有任何對 於可能包藏在該檔案202A內之惡意程式碼204的知識,而對於弱點亦一無所悉。在一些具體實施例裡,該轉換器106利用一剖析器及一引擎以轉換該檔案202A。該剖析器剖析該檔案以擷取資料,其由該引擎按不同檔案格式,亦即該檔案格式2,所表示。該新近表示的資料儲存在該經轉換檔案202B之內。在一具體實施例裡,於剖析該檔案202A的處理過程中,該剖析器識別該檔案202A內的特性,像是該檔案202A的標頭資訊及資料結構,而該者可利用這些特性以決定要將哪些資料傳送至該經轉換檔案202B內。該惡意程式碼204並不含有由該轉換器106用以決定儲存在該經轉換檔案202B內之資料的特性,且因而不會被納入在該經轉換檔案202B裡。當該轉換器106的剖析器對該惡意程式碼104進行剖析時,該者將不會辨識將該資料傳送至該檔案202B內的必要特性。從而,可將該惡意程式碼204自被傳送至該經轉換檔案202B的檔案資料之中移除。然後,可在該受限程序120以外,安全地開啟及存取該經轉換檔案202B。
而在其他具體實施例裡,該惡意程式碼204可能被傳通至該經轉換檔案202B。應用程式通常是在開啟一檔案之前先利用一剖析器以掃描該檔案。像是該惡意程式碼204的惡意程式碼常常是針對於設計來開啟具一特定檔案格式之檔案的剖析器為目標。亦即,該惡意程式碼204可能是針對於用以開啟具檔案格式1之檔案的剖析器為目標。因此,即使是該惡意程式碼204被納入在該經轉換檔案202B 內,此惡意程式碼也不會造成過多的安全威脅,這是由於該經轉換檔案202B將會由設計來開啟具檔案格式2之檔案的剖析器所開啟。從而,在一些具體實施例裡,僅將該具檔案格式1之檔案202A轉換成具檔案格式2的經轉換檔案202B即可消除該惡意程式碼204的威脅,即使是該程式碼係納入在該經轉換檔案202B之內亦然。
在一些情況下,當該轉換器106嘗試要轉換該檔案202A時,該惡意程式碼204可能會攻擊該轉換器106。即如前文所詳述,該轉換器106是運行於該受限程序120內,而其具有有限特權。從而,即使是該惡意程式碼204在該檔案202A的轉換過程中努力嘗試要成功地執行,這仍將受限於該者可能造成的損害之內。
在一些具體實施例裡,由該轉換器106所執行之轉換作業可提供優於經特定設計以自檔案中移除惡意程式碼之軟體應用程式的優點。一般說來,這些設計來移除惡意程式碼的應用程式必須具備一些知識,像是尋找以識別惡意程式碼或結構以檢視可為儲存惡意酬載之弱點的特性。相對地,該轉換器106並未擁有該惡意程式碼204的任何知識,而該惡意程式碼204不具備為將該資料自該檔案格式1轉換為該檔案格式2所必要之特徵的唯一事實即可將該惡意程式碼204自被傳送至該經轉換檔案202B的資料之中移除。此外,即使該惡意程式碼204被傳送至該經轉換檔案202B之中,這也因該經轉換檔案202B的新檔案格式(即如檔案格式2)之故而不會造成嚴重安全威脅。
在一些具體實施例裡,該轉換器106係一雙向轉換器,意思是其可將檔案格式1轉換成檔案格式2,並且亦可將檔案格式2轉換回到檔案格式1。在一具體實施例裡,於該轉換器106既已產生該經轉換檔案202B並且自傳送至該經轉換檔案202B中移除該惡意程式碼204之後,其可將該經轉換檔案202B轉換回到檔案格式1。在一具體實施例裡,該檔案202A可為一已識別為具有一安全弱點的二進位檔案格式(檔案格式1)。因此,該檔案202A被該轉換器106轉換為具一XML檔案格式(檔案格式2)的經轉換檔案202B,這可移除該惡意程式碼204或令其為無效用。然而,一使用者可能並不未具備一能夠開啟具XML格式之檔案的應用程式。因此,接著可將該檔案202B轉換回到該二進位檔案格式(檔案格式1),藉以讓一使用者能夠開啟並存取該檔案資料。
第3-5圖說明根據多項具體實施例的操作流程300、400及500。
可在任何適當的計算環境中執行該等操作流程300、400及500。例如,可由一像是系統100及200(第1圖和第二圖)之系統執行該等操作流程,藉以自一檔案移除惡意程式碼並且安全地開啟該檔案。因此,該等操作流程300、400及500的說明可參照於第1圖及第2圖元件之至少一者。不過,任何對於第1圖及第2圖元件的參照僅係為說明之目的,並應瞭解第1圖及第2圖之實作係一運用於該等操作流程300、400及500的非限制性環境。
此外,該等操作流程300、400及500雖按一特定次序而循序地說明且描述,然在其他具體實施例裡,該等操作可為按不同次序、重複多遍及/或平行方式所執行。並且,在一些具體實施例裡,可省略或合併一或更多操作。
第3圖說明一,根據一具體實施例,用以自一檔案移除惡意程式碼的操作流程300。在操作302,一能夠將一檔案自一第一格式轉換至一第二格式的轉換器係載入至一受限程序之內。在一些具體實施例裡,該轉換器係該轉換器106(第1圖及第2圖),其係載入至該受限程序120內(第1圖及第2圖)。該受限程序120對於存取一例如像是該作業系統102之作業系統具有有限特權。施加於該程序上的該等限制可侷限由在該轉換器轉換一檔案之過程中所執行的惡意程式碼造成損害的可能性。
該操作302可為因一使用者例如藉由雙點擊一代表該轉換器之圖像以請求啟用一轉換器的結果所啟動。或另者,一使用者可例如藉由雙點擊一檔案的圖像以請求開啟該特定檔案,並且回應於此操作302,會藉由將該轉換器載入至一受限程序以啟用該轉換器。
在既已將該轉換器載入至一受限程序內之後,操作流程即前進到操作304,在此可藉由將該檔案自一第一格式轉換至一第二格式以移除惡意程式碼。操作304是在該受限程序之內執行。在一具體實施例裡,是由該轉換器106在該受限程序120之內執行此轉換作業。即如前述,該轉換器106按一第一檔案格式剖析一檔案,並且在該檔案內 識別出用以自該檔案擷取資料的特性。然後,將所擷取資料儲存在一具一第二檔案格式的經轉換檔案內。該經轉換檔案不含任何可能嵌入於該第一檔案內的惡意程式碼。然後,可在一比起檔案轉換過程中所利用之受限程序而較無限制的程序裡安全地開啟該經轉換檔案。
第4圖說明一,根據一具體實施例,用以安全地開啟一檔案以存取該檔案內之資料的操作流程400。在操作402,收到一開啟一檔案的請求。在一具體實施例裡,由一像是該轉換器106(第1圖及第2圖)之轉換器接收該請求。例如,一使用者可藉由啟用一轉換器然後透過該轉換器選擇一檔案之方式以嘗試開啟該檔案。在另一具體實施例裡,則是由一像是該應用程式104(第1圖)的應用程式收到該請求。一使用者可藉由啟用該應用程式然後選擇該檔案以嘗試開啟一檔案。在一些具體實施例裡,是在當一使用者選擇一檔案時,像是藉由雙點擊該檔案的圖像,收到該請求。
然後該操作流程前進到操作404,在此一能夠將一檔案自一第一格式轉換至一第二格式的轉換器係載入至一受限程序之內。在一些具體實施例裡,該轉換器係該轉換器106(第1圖及第2圖),其係載入至該受限程序120內(第1圖及第2圖)。該受限程序具有有限特權可向一作業系統請求函式及存取在底層電腦系統之資訊。這可減輕由在該程序120之內執行惡意程式碼可能會造成的損害。
在操作406,該轉換器自該第一檔案格式轉換一檔 案,藉以產生一具一第二檔案格式的第二檔案。在一些具體實施例裡,轉換該檔案的程序可移除任何可能已嵌入於該檔案內的惡意程式碼而不致儲存在該第二檔案中。可移除惡意程式碼而無須對該惡意程式碼的知識,或是任何可被該惡意程式碼利用之弱點的知識。在其他具體實施例裡,在該檔案裡的任何惡意程式碼可僅藉由將該檔案自該第一檔案格式轉換至該第二檔案格式而令為無效用。在一些具體實施例裡,該轉換器係該轉換器106(第1圖及第2圖),其剖析該檔案以自該檔案擷取資料並予儲存在該第二檔案內。
在操作406之後,流程前進到操作408,在此開啟該檔案。在一些具體實施例裡,該操作408可牽涉到一應用程式,其能夠開啟並供以存取具該第二檔案格式的經轉換檔案。在其他具體實施例裡,該操作408可牽涉到一些額外操作,像是第二次轉換該經轉換檔案。例如,在操作406內所使用的轉換器可為一雙向式轉換器,其可將檔案自該第一檔案格式轉換成該第二檔案格式,並且亦可將具該第二檔案格式之檔案轉換成該第一檔案格式。在一具體實施例裡,操作408牽涉到利用該轉換器以將具該第二檔案格式之檔案轉換回到原始第一檔案格式。接著,此操作可後隨以啟用一能夠按該第一檔案格式開啟該檔案的應用程式。
在其他具體實施例裡,可利用另一轉換器以將一檔案自該第二檔案格式轉換至一第三檔案格式。在此一具體實 施例裡,操作408可牽涉到啟用一第二轉換器,其將具該第二檔案格式之檔案轉換成一第三檔案格式。接著,此操作可後隨以啟用一能夠開啟並供以存取具該第三檔案格式之檔案的應用程式。
第5圖說明一,根據一具體實施例,用以安全地開啟一檔案的操作流程500。在操作502,收到一開啟一檔案的請求。在一具體實施例裡,是由一像是該應用程式104(第1圖)的應用程式收到該請求。例如,一使用者可啟用一應用程式然後選擇該檔案。在一些具體實施例裡,一使用者選擇一檔案,而這可自動地啟用一適當應用程式以開啟該檔案(或是提示該使用者選擇一應用程式以開啟該檔案)。
在操作504,檢視來自該檔案的檔案資料以決定一真實檔案格式。在一具體實施例裡,可利用一具有一類型檢測器模組,像是該類型檢測器模組124(第1圖),的應用程式,藉以在將該檔案載入至記憶體內之前先檢測檔案資料。由該類型檢測器模組所檢測之檔案資料僅為在該檔案內之資料的一微小部分。藉由識別該資料內的特性,像是標頭資訊及資料結構,該類型檢測器模組即可作出對於該真實檔案格式的決定,而無須檢視在該檔案內所有或大部份的資料。
在操作506,決定該檔案之真實檔案格式是否為限制開啟。在一些具體實施例裡可藉由一像是該限制政策114(第1圖)之限制政策以作出該決定,其註明阻擋開啟哪些檔案格式。若在操作506作出一該真實檔案格式並不被阻 擋的決定,則流程前進到操作508,在此可藉由將該檔案載入至記憶體內並供以存取該檔案來開啟該檔案。例如,在一具體實施例裡,一像是該應用程式104之應用程式執行操作508,藉由將該檔案載入記憶體並且可供一使用者透過該應用程式進行存取,以讓該使用者能夠編輯、增入並儲存資料於該檔案內。
而若在操作506決定該檔案之真實檔案格式確經限制開啟,則流程前進到操作510。在操作510,將一能夠將一檔案自一第一格式轉換至一第二格式的轉換器載入至一受限程序內。在一些具體實施例裡,該轉換器係該轉換器106(第1圖及第2圖),其係載入至該受限程序120內(第1圖及第2圖)。該受限程序具有有限特權可向一作業系統請求函式及存取在底層電腦系統之資訊。此有限特權可減輕由在該程序120之內執行惡意程式碼可能會造成的損害。
在操作512,此一載入至該受限程序內之轉換器自該第一檔案格式轉換一檔案,藉以產生一具一第二檔案格式的第二檔案。在一些具體實施例裡,轉換該檔案的程序可移除任何可能已嵌入於該第一檔案內的惡意程式碼而不致儲存在該第二檔案中。可移除惡意程式碼而無須對該惡意程式碼的知識,或是任何可被該惡意程式碼利用之弱點的知識。在其他具體實施例裡,僅將該檔案自該第一檔案格式轉換至該第二檔案格式可消除來自針對用以開啟具該第一檔案格式之檔案的剖析器之惡意程式碼的風險。在一些具體實施例裡,轉換器係該轉換器106(第1圖及第2圖), 其可對具一第一檔案格式之檔案進行剖析,並且識別出在該檔案內而可用以自該檔案擷取出資料的特性。然後,將所擷取資料儲存在具一第二檔案格式的第二檔案內。該第二檔案不含任何可能嵌入於該第一檔案內的惡意程式碼。
在操作512之後,流程前進到操作508,在此開啟該經轉換檔案。在一些具體實施例裡,該操作508可牽涉到一應用程式,其能夠開啟並供以存取具該第二檔案格式的經轉換檔案。在其他具體實施例裡,該操作508可牽涉到一些額外操作,像是第二次轉換該經轉換檔案。
第6圖說明一可用以實作本揭所述具體實施例的一般電腦環境600。該電腦環境600僅為一計算環境之單一範例,而並非為意指任何有關於電腦及網路架構之使用範圍或功能性上的限制。亦不應將該電腦環境600解譯為具有任何與該範例電腦環境600中所述元件之任一者或組合相關聯的依賴性或要求性。
在其一最基本組態中,該系統600通常含有至少一處理單元602及系統記憶體604。依照該計算裝置的精確組態及型式而定,該記憶體604可為揮發性(像是RAM)、非揮發性(即如ROM、快閃記憶體等),或是一些兩者的組合。此最基本組態在第6圖中係按如虛線606所說明。即如第6圖所示,可將像是該應用程式104(第1圖)而含有該限制政策114及該類型檢測器模組124之應用程式載入至系統記憶體604內,而由該系統600之一使用者加以利用。第6圖亦顯示該受限程序120,而該轉換器106係載入於 其內,藉以將一檔案自一第一格式轉換成一具一第二格式的經轉換檔案,以移除可能嵌入於該檔案內的惡意程式碼。
此外,該系統600亦可具有額外特性/功能性。例如,該系統600亦可含有額外的儲存裝置(可移除及/或非可移除),這些包含磁性或光學碟片或條帶,然不限於此。此等額外儲存裝置在第6圖中係按如可移除儲存裝置608及非可移除儲存裝置610所述。電腦儲存媒體包含按任何用以儲存即如電腦可讀取指令、資料結構、程式模組或其他資料之資訊的方法或技術所實作之揮發性及非揮發性、可移除及非可移除媒體。記憶體604、可移除儲存裝置608及非可移除儲存裝置610皆為電腦儲存媒體的範例。電腦儲存媒體包含,但不限於此,RAM、ROM、EEPROM、快閃記憶體或其他記憶體技術、CD-ROM、數位光碟片(DVD)或其他光學儲存、磁匣、磁帶、磁碟儲存或其他磁性儲存裝置,或者是任何其他可用以儲存所欲資訊並且可由該裝置600所存取的媒體。任何此等電腦儲存媒體皆可為該系統600的一部分。
該系統600亦可包含(多個)通訊連接612,藉以讓該系統能夠與其它裝置進行通訊。該(等)通訊連接612為通訊媒體之一範例。通訊媒體通常可在一經調變資料信號,像是載波或其他傳送機制,裡具體實作電腦可讀取指令、資料結構、程式模組或其他資料,並且含有任何資訊遞送媒體。該詞彙「經調變資料信號」意思是一種信號,其可令其一或更多項的特徵按一將資訊編碼至該信號內之方式 所設定或變化。藉由範例,而非限制,通訊媒體包含像是有線網路或直接網路連接之有線媒體,以及像是音響、RF、紅外線及其他無線媒體的無線網路。該詞彙「電腦可讀取媒體」,即如在此所用,包含儲存媒體及通訊媒體兩者。
該系統600亦可具有(多個)輸入裝置614,像是鍵盤、滑鼠、點筆、語音輸入裝置、觸控輸入裝置等等。亦可包含有(多個)輸出裝置616,像是顯示器、喇叭、印表機等等。所有這些裝置屬業界眾知者,並且無需在此詳細敘述。
在本規格文件全篇中既已參照於「具體實施例」、「一具體實施例」、「另一具體實施例」及「一些具體實施例」,其意義為既已將一特定所述特性、結構或特徵納入在至少一本發明具體實施例之內。因此,使用此一詞句可為參照於一個以上的具體實施例。此外,可按任何適當方式,將所述特性、結構或特徵合併在一或更多個具體實施例之內。
然熟諳本項技藝之人士將能認知到可實作本發明而無須一或更多該等特定細節,或是藉由其他方法、資源、材料等等而實作。在其他實例裡,並未對眾知結構、資源或操作予以詳細顯示或描述,此僅為以避免模糊本發明特點。
雖既已說明及描述本發明之範例具體實施例及應用,然應瞭解本發明並不受限於前文所述的精確組態和資源。可在本揭討論之本發明方法與系統的排置、操作及細節上進行熟請本項技藝之人士顯知的各式修改、更動及變異,而不致悖離所主張的本發明範圍。
100‧‧‧系統
102‧‧‧作業系統
104‧‧‧應用程式
106‧‧‧轉換器
108‧‧‧檔案
110A‧‧‧資料
110B‧‧‧檔案副檔名
112‧‧‧註記表
200‧‧‧系統
202A‧‧‧檔案
202B‧‧‧經轉換檔案
204‧‧‧惡意程式碼
600‧‧‧電腦環境
602‧‧‧處理單元
604‧‧‧系統記憶體
606‧‧‧虛線
608‧‧‧可移除儲存裝置
610‧‧‧非可移除儲存裝置
612‧‧‧(多個)通訊連接
614‧‧‧(多個)輸入裝置
616‧‧‧(多個)輸出裝置
現參照於下列圖式以說明多項非限制性及非窮列性具體實施例,其中,除另標定者外,全篇各圖式裡類似參考編號是指相仿部份。
第1圖說明一,根據一具體實施例,用以自一檔案移除惡意程式碼或是令其為無效用的系統。
第2圖說明一,根據一具體實施例,可用以安全地開啟一可能含有惡意程式碼之檔案的系統。
第3圖說明一用以自一檔案移除惡意程式碼或是令其為無效用的操作流程。
第4圖說明一用以安全地開啟一可能含有惡意程式碼之檔案的操作流程。
第5圖說明一用以安全地開啟一可能含有惡意程式碼之檔案的第二操作流程。
第6圖說明一適用於實作多項具體實施例之計算環境的區塊圖。
100‧‧‧系統
102‧‧‧作業系統
104‧‧‧應用程式
106‧‧‧轉換器
108‧‧‧檔案
110A‧‧‧資料
110B‧‧‧檔案副檔名
112‧‧‧註記表

Claims (19)

  1. 一種將惡意程式碼自具一第一檔案格式之一檔案中移除的方法,該方法包含以下步驟:配置至少一處理器以執行以下操作:回應於開啟該檔案之一請求,將一轉換器載入一受限程序內,該轉換器能夠將該檔案自該第一檔案格式轉換成一第二檔案格式,以在該檔案之轉換期間限制由惡意程式碼造成的損害,且其中該受限程序內之該轉換器對一作業系統具有有限存取特權;利用載入至該受限程序內之該轉換器,將該檔案自該第一檔案格式轉換成具該第二檔案格式的一經轉換檔案,以移除惡意程式碼;及在該轉換處理之後,開啟該經轉換檔案。
  2. 如申請專利範圍第1項所述之方法,其中該轉換器係指定作為處置器,處理所有具該第一檔案格式之檔案。
  3. 如申請專利範圍第1項所述之方法,其中該受限程序具有有限特權可向一作業系統請求函式。
  4. 如申請專利範圍第3項所述之方法,其中該受限程序係限定僅能自該檔案讀取資料以及將資料寫入至該經轉換檔案內。
  5. 如申請專利範圍第3項所述之方法,其中該受限程序基於由一受限權符、一工作物件、一桌面容器及一該等前述物之組合所組成之群組中之一者而具有有限特權。
  6. 如申請專利範圍第1項所述之方法,進一步包含,在該移除步驟之後,將該經轉換檔案轉換成一第三檔案格式之步驟。
  7. 如申請專利範圍第6項所述之方法,其中轉換該經轉換檔案之步驟是由該轉換器所執行,並且該第三檔案格式與該第一檔案格式相同。
  8. 一種電腦可讀取儲存媒體,其儲存有多數電腦指令,當一處理器存取該等指令時即執行該等指令,其中該電腦可讀取儲存媒體不包含一傳播資料訊號,其中當該等指令被執行時用以執行一種開啟一檔案之方法,該方法包含以下步驟:接收一請求以開啟具一第一檔案格式之一檔案;將一轉換器載入一受限程序內,該轉換器能夠將該檔案自該第一檔案格式轉換成一第二檔案格式,以在該檔案之轉換期間限制由惡意程式碼造成的損害,且其中該受限程序內之該轉換器對一作業系統具有有限存取特權; 利用載入至該受限程序內之該轉換器,將該檔案自該第一檔案格式轉換成具該第二檔案格式的一經轉換檔案,其中該轉換處理可將任何出現在該檔案內的惡意程式碼自該經轉換檔案中移除;以及在該轉換處理之後,開啟該經轉換檔案。
  9. 如申請專利範圍第8項所述之電腦可讀取儲存媒體,其中該轉換器係指定作為處置器,處理所有具該第一檔案格式之檔案。
  10. 如申請專利範圍第8項所述之電腦可讀取儲存媒體,其中該受限程序具有有限特權可向一作業系統請求函式。
  11. 如申請專利範圍第10項所述之電腦可讀取儲存媒體,其中該受限程序係限定僅能自該檔案讀取資料以及將資料寫入至該經轉換檔案內。
  12. 如申請專利範圍第10項所述之電腦可讀取儲存媒體,其中該受限程序基於由一受限權符、一工作物件、一桌面容器及一該等前述物之組合所組成之群組中之一者而具有有限特權。
  13. 如申請專利範圍第8項所述之電腦可讀取儲存媒體, 其中該開啟步驟進一步包含啟用一應用程式之步驟,該應用程式能夠開啟具該第二檔案格式的該經轉換檔案。
  14. 如申請專利範圍第13項所述之電腦可讀取儲存媒體,其中該開啟步驟進一步包含將該經轉換檔案轉換成一第三檔案格式之步驟。
  15. 一種開啟一檔案之方法,該方法包含以下步驟:配置至少一處理器以執行以下操作:接收開啟一檔案之一請求;檢視該檔案之資料的一部分以決定該檔案的一真實檔案格式;決定該真實檔案格式是否屬於一被限制開啟的格式;若決定該檔案格式並非屬於一被限制開啟之格式,則開啟該檔案,作為回應;以及若決定該檔案格式係屬於一被限制開啟之格式,則執行以下步驟作為回應:將一轉換器載入一受限程序內,該轉換器能夠將該檔案自一第一檔案格式轉換成一第二檔案格式,以在該檔案之轉換期間限制由惡意程式碼造成的損害,且其中該受限程序內之該轉換器對一作業系統具有有限存取特權;利用載入至該受限程序內的該轉換器,將該檔案 自該第一檔案格式轉換成具該第二檔案格式的一經轉換檔案,其中該轉換處理可將任何出現在該檔案內的惡意程式碼自該經轉換檔案中移除;以及在該轉換處理之後,開啟該經轉換檔案。
  16. 如申請專利範圍第15項所述之方法,其中該決定步驟包含存取一開啟限制政策之步驟,該開啟限制政策註明被限制開啟之格式。
  17. 如申請專利範圍第16項所述之方法,其中該開啟限制政策係儲存在一作業系統的一註記表內。
  18. 如申請專利範圍第17項所述之方法,其中該受限程序具有有限特權可向該作業系統請求函式。
  19. 如申請專利範圍第18項所述之方法,其中該受限程序係限定僅能自該檔案讀取資料以及將資料寫入至該經轉換檔案內。
TW097106499A 2007-02-26 2008-02-25 在受限程序中之檔案轉換 TWI395113B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/679,068 US7797743B2 (en) 2007-02-26 2007-02-26 File conversion in restricted process

Publications (2)

Publication Number Publication Date
TW200844789A TW200844789A (en) 2008-11-16
TWI395113B true TWI395113B (zh) 2013-05-01

Family

ID=39717485

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097106499A TWI395113B (zh) 2007-02-26 2008-02-25 在受限程序中之檔案轉換

Country Status (9)

Country Link
US (1) US7797743B2 (zh)
EP (1) EP2115653B1 (zh)
JP (1) JP4629796B2 (zh)
KR (1) KR101467595B1 (zh)
CN (1) CN101622624B (zh)
BR (1) BRPI0807461A2 (zh)
RU (1) RU2468426C2 (zh)
TW (1) TWI395113B (zh)
WO (1) WO2008106289A1 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359647B1 (en) * 2007-07-19 2013-01-22 Salesforce.Com, Inc. System, method and computer program product for rendering data of an on-demand database service safe
KR100974886B1 (ko) * 2007-12-10 2010-08-11 한국전자통신연구원 파일에 삽입된 악성 코드 제거 장치 및 방법
JP2009271780A (ja) * 2008-05-08 2009-11-19 Canon Inc 電子文書変換装置および電子文書変換方法
US8281398B2 (en) * 2009-01-06 2012-10-02 Microsoft Corporation Reordering document content to avoid exploits
FR2946211B1 (fr) * 2009-05-28 2011-05-27 Sagem Comm Procede de traitement de document par un ordinateur distant, systeme et dispositif amovible connectable a chaud pour la mise en oeuvre de ce procede
HUE038791T2 (hu) * 2009-07-29 2018-11-28 Reversinglabs Corp Hordozható futtatható fájl elemzése
US8566943B2 (en) * 2009-10-01 2013-10-22 Kaspersky Lab, Zao Asynchronous processing of events for malware detection
US8581941B2 (en) * 2009-10-02 2013-11-12 Panasonic Corporation Backlight device and display apparatus
US8140735B2 (en) 2010-02-17 2012-03-20 Novell, Inc. Techniques for dynamic disk personalization
AU2011293160B2 (en) * 2010-08-26 2015-04-09 Verisign, Inc. Method and system for automatic detection and analysis of malware
KR101156227B1 (ko) * 2010-11-22 2012-06-18 주식회사 파수닷컴 전처리가 수행된 파일을 실행하기 위한 파일 처리장치 및 그 방법을 컴퓨터에서 실행시키기 위한 기록매체
CN102855432B (zh) * 2011-06-27 2015-11-25 北京奇虎科技有限公司 一种文件、文件夹解锁和删除方法及系统
US9118686B2 (en) 2011-09-06 2015-08-25 Microsoft Technology Licensing, Llc Per process networking capabilities
US8990561B2 (en) 2011-09-09 2015-03-24 Microsoft Technology Licensing, Llc Pervasive package identifiers
US9773102B2 (en) 2011-09-09 2017-09-26 Microsoft Technology Licensing, Llc Selective file access for applications
US9800688B2 (en) 2011-09-12 2017-10-24 Microsoft Technology Licensing, Llc Platform-enabled proximity service
WO2013101169A1 (en) * 2011-12-30 2013-07-04 Intel Corporation Sharing data amoung smart devices and a cloud network
US8667594B1 (en) * 2012-03-13 2014-03-04 Bromium, Inc. Securing file trust with file format conversions
US8719933B1 (en) 2012-03-13 2014-05-06 Bromium, Inc. Safe printing
US9349008B1 (en) 2012-03-13 2016-05-24 Bromium, Inc. Safe printing
US9047293B2 (en) * 2012-07-25 2015-06-02 Aviv Grafi Computer file format conversion for neutralization of attacks
US10356204B2 (en) 2012-12-13 2019-07-16 Microsoft Technology Licensing, Llc Application based hardware identifiers
US9858247B2 (en) 2013-05-20 2018-01-02 Microsoft Technology Licensing, Llc Runtime resolution of content references
US9686304B1 (en) * 2013-06-25 2017-06-20 Symantec Corporation Systems and methods for healing infected document files
US9805195B1 (en) * 2013-09-17 2017-10-31 The Boeing Company System and method for transferring files between computer systems using information invariant data transformation
JP2016533574A (ja) * 2013-10-17 2016-10-27 ソフトキャンプ カンパニー,リミテッド ファイル形式変換を通じたデータ防疫処理システムと方法
US9582665B2 (en) 2014-01-21 2017-02-28 Operation and Data integrity Ltd. Technologies for protecting systems and data to prevent cyber-attacks
US20160006754A1 (en) * 2014-07-01 2016-01-07 Mcafee, Inc. Secure enclave-rendered contents
US10021128B2 (en) * 2015-03-12 2018-07-10 Forcepoint Llc Systems and methods for malware nullification
US10984192B2 (en) * 2016-06-02 2021-04-20 Samsung Electronics Co., Ltd. Application list providing method and device therefor
US10607004B2 (en) * 2016-09-29 2020-03-31 Intel Corporation Methods and apparatus to improve feature engineering efficiency with metadata unit operations
US9858424B1 (en) 2017-01-05 2018-01-02 Votiro Cybersec Ltd. System and method for protecting systems from active content
US10015194B1 (en) 2017-01-05 2018-07-03 Votiro Cybersec Ltd. System and method for protecting systems from malicious attacks
US10331889B2 (en) 2017-01-05 2019-06-25 Votiro Cybersec Ltd. Providing a fastlane for disarming malicious content in received input content
US10331890B2 (en) 2017-03-20 2019-06-25 Votiro Cybersec Ltd. Disarming malware in protected content
JP6841703B2 (ja) * 2017-03-29 2021-03-10 アドソル日進株式会社 コンピュータ装置
TWI723664B (zh) * 2019-12-05 2021-04-01 中華電信股份有限公司 惡意圖像檔案淨化方法及系統
US11822699B1 (en) 2021-10-21 2023-11-21 Secure Computing, Llc Preventing surreptitious access to file data by malware

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336124B1 (en) * 1998-10-01 2002-01-01 Bcl Computers, Inc. Conversion data representing a document to other formats for manipulation and display
US20050039082A1 (en) * 2003-08-12 2005-02-17 Nachenberg Carey S. Detecting and blocking drive sharing worms
CN1609799A (zh) * 2003-10-23 2005-04-27 微软公司 资源清单
US6901519B1 (en) * 2000-06-22 2005-05-31 Infobahn, Inc. E-mail virus protection system and method
JP2005157898A (ja) * 2003-11-27 2005-06-16 Mitsubishi Electric Corp Xml/データベース連携装置
US20050235164A1 (en) * 2004-04-19 2005-10-20 Gassoway Paul A Systems and methods for computer security
US20060010495A1 (en) * 2004-07-06 2006-01-12 Oded Cohen Method for protecting a computer from suspicious objects
WO2006038987A2 (en) * 2004-09-30 2006-04-13 Citrix Systems, Inc. A method and apparatus for assigning access control levels in providing access to networked content files
WO2006043233A1 (en) * 2004-10-20 2006-04-27 Diego Angelo Tomaselli Antivirus method and system
US7043634B2 (en) * 2001-05-15 2006-05-09 Mcafee, Inc. Detecting malicious alteration of stored computer files
CN1773506A (zh) * 2004-11-12 2006-05-17 国际商业机器公司 管理文件修订的方法与系统
TW200636586A (en) * 2005-03-11 2006-10-16 Lionic Corp System security approaches using multiple processing units

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5058000A (en) 1987-06-30 1991-10-15 Prime Computer, Inc. System for accessing remote heterogeneous database including formatting retrieved data into applications program format
US5191525A (en) 1990-01-16 1993-03-02 Digital Image Systems, Corporation System and method for extraction of data from documents for subsequent processing
US5278978A (en) 1990-03-26 1994-01-11 International Business Machines Corporation Method and system for describing and exchanging data between heterogeneous database systems with data converted by the receiving database system
US5493671A (en) 1993-06-04 1996-02-20 Marcam Corporation Method and apparatus for conversion of database data into a different format on a field by field basis using a table of conversion procedures
US5793498A (en) 1995-03-10 1998-08-11 Telogy Networks, Inc. System for transferring facsimile data without dedicated G3 hardware
US6067410A (en) * 1996-02-09 2000-05-23 Symantec Corporation Emulation repair system
US5696822A (en) * 1995-09-28 1997-12-09 Symantec Corporation Polymorphic virus detection module
JP2977476B2 (ja) 1995-11-29 1999-11-15 株式会社日立製作所 機密保護方法
DE19681186D2 (de) * 1995-12-29 1999-03-11 Tixi Com Gmbh Verfahren und Mikrocomputersystem zur automatischen, sicheren und direkten Datenübertragung
US5812398A (en) 1996-06-10 1998-09-22 Sun Microsystems, Inc. Method and system for escrowed backup of hotelled world wide web sites
JPH11184692A (ja) * 1997-12-22 1999-07-09 Canon Inc 通信装置
US6505300B2 (en) * 1998-06-12 2003-01-07 Microsoft Corporation Method and system for secure running of untrusted content
US6523172B1 (en) 1998-12-17 2003-02-18 Evolutionary Technologies International, Inc. Parser translator system and method
JP2001067216A (ja) * 1999-08-30 2001-03-16 Hiroshi Yoshida コンピュータ・ウイルス防衛除去の為の論理方式及び同システム
US7017187B1 (en) 2000-06-20 2006-03-21 Citigroup Global Markets, Inc. Method and system for file blocking in an electronic messaging system
US6675373B1 (en) 2000-09-07 2004-01-06 Universal Conversion Technologies Automatic generation of balancing logic for data conversion
WO2002093334A2 (en) 2001-04-06 2002-11-21 Symantec Corporation Temporal access control for computer virus outbreaks
US6792543B2 (en) * 2001-08-01 2004-09-14 Networks Associates Technology, Inc. Virus scanning on thin client devices using programmable assembly language
JP2003186632A (ja) * 2001-12-20 2003-07-04 Oki Electric Ind Co Ltd 遠隔端末接続システム
JP2003223521A (ja) * 2002-01-29 2003-08-08 Mitsubishi Electric Corp 設備管理システム及び設備管理方法
JP2003259066A (ja) * 2002-03-04 2003-09-12 Ricoh Co Ltd ネットワークファクシミリ装置
US7369279B2 (en) 2003-03-13 2008-05-06 Sharp Laboratories Of America, Inc. System and method to restrict copying, scanning and transmittal of documents or parts of documents
JP3869409B2 (ja) * 2003-11-21 2007-01-17 株式会社大和総研 ウィルス感染防止システム、メール閲覧用プログラム、および添付ファイル閲覧用プログラム
US20040172551A1 (en) 2003-12-09 2004-09-02 Michael Connor First response computer virus blocking.
US7620990B2 (en) * 2004-01-30 2009-11-17 Microsoft Corporation System and method for unpacking packed executables for malware evaluation
KR20060050768A (ko) * 2004-10-01 2006-05-19 마이크로소프트 코포레이션 액세스 인가 api

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336124B1 (en) * 1998-10-01 2002-01-01 Bcl Computers, Inc. Conversion data representing a document to other formats for manipulation and display
US6901519B1 (en) * 2000-06-22 2005-05-31 Infobahn, Inc. E-mail virus protection system and method
US7043634B2 (en) * 2001-05-15 2006-05-09 Mcafee, Inc. Detecting malicious alteration of stored computer files
US20050039082A1 (en) * 2003-08-12 2005-02-17 Nachenberg Carey S. Detecting and blocking drive sharing worms
CN1609799A (zh) * 2003-10-23 2005-04-27 微软公司 资源清单
JP2005157898A (ja) * 2003-11-27 2005-06-16 Mitsubishi Electric Corp Xml/データベース連携装置
US20050235164A1 (en) * 2004-04-19 2005-10-20 Gassoway Paul A Systems and methods for computer security
US20060010495A1 (en) * 2004-07-06 2006-01-12 Oded Cohen Method for protecting a computer from suspicious objects
WO2006038987A2 (en) * 2004-09-30 2006-04-13 Citrix Systems, Inc. A method and apparatus for assigning access control levels in providing access to networked content files
WO2006043233A1 (en) * 2004-10-20 2006-04-27 Diego Angelo Tomaselli Antivirus method and system
CN1773506A (zh) * 2004-11-12 2006-05-17 国际商业机器公司 管理文件修订的方法与系统
TW200636586A (en) * 2005-03-11 2006-10-16 Lionic Corp System security approaches using multiple processing units

Also Published As

Publication number Publication date
JP2010519662A (ja) 2010-06-03
CN101622624B (zh) 2012-07-04
US7797743B2 (en) 2010-09-14
JP4629796B2 (ja) 2011-02-09
KR101467595B1 (ko) 2014-12-01
EP2115653B1 (en) 2018-04-11
US20080209551A1 (en) 2008-08-28
BRPI0807461A2 (pt) 2014-06-03
EP2115653A1 (en) 2009-11-11
CN101622624A (zh) 2010-01-06
RU2468426C2 (ru) 2012-11-27
KR20090125068A (ko) 2009-12-03
RU2009132088A (ru) 2011-02-27
EP2115653A4 (en) 2016-05-18
TW200844789A (en) 2008-11-16
WO2008106289A1 (en) 2008-09-04

Similar Documents

Publication Publication Date Title
TWI395113B (zh) 在受限程序中之檔案轉換
US11611586B2 (en) Systems and methods for detecting a suspicious process in an operating system environment using a file honeypots
US8281410B1 (en) Methods and systems for providing resource-access information
EP3316166B1 (en) File-modifying malware detection
US7930738B1 (en) Method and apparatus for secure execution of code
EP3107024B1 (en) System and method of restoring modified data
KR101201118B1 (ko) 바이러스 방지 소프트웨어 어플리케이션들의 지식 베이스를모으는 시스템 및 방법
JP7027425B2 (ja) クリプトウェアを検出するためのシステムおよび方法
US10079835B1 (en) Systems and methods for data loss prevention of unidentifiable and unsupported object types
US7660797B2 (en) Scanning data in an access restricted file for malware
US9317679B1 (en) Systems and methods for detecting malicious documents based on component-object reuse
US9418232B1 (en) Providing data loss prevention for copying data to unauthorized media
US7487548B1 (en) Granular access control method and system
US11003786B2 (en) System and method to manage file access rights in an information handling system
JP2008152519A (ja) コンピュータ及びその基本ソフトウェア
KR102559482B1 (ko) It 장비 반출입 관리 시스템
RU2817556C1 (ru) Способ обнаружения подозрительной активности, связанной с использованием интерпретатора командной строки
US20240126882A1 (en) Instructions to process files in virtual machines
US20230297673A1 (en) Detecting a harmful file using a database of vulnerable drivers
EP4246351A1 (en) Detecting a harmful file using a database of vulnerable drivers

Legal Events

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