王學(xué)奎,陳 奇,盧怡鵬
(1.北京電視臺(tái),北京 100022;2.新奧特(北京)視頻技術(shù)有限公司,北京 100195)
國(guó)內(nèi)高清攝像機(jī)大多采用P2存儲(chǔ)卡(松下高清數(shù)字?jǐn)z像機(jī))和藍(lán)光盤(索尼高清數(shù)字?jǐn)z像機(jī))作為存儲(chǔ)介質(zhì),但不論是P2卡還是藍(lán)光盤都可以作為計(jì)算機(jī)的移動(dòng)存儲(chǔ)介質(zhì),可通過PCI插槽、USB接口等通用接口完成與計(jì)算機(jī)的連接,其文件格式也采用了通用的文件格式,這樣的設(shè)計(jì)使病毒或木馬可以輕松地通過這些新介質(zhì)傳入制播網(wǎng)。對(duì)于如何解決因采用新介質(zhì)而帶來的安全防護(hù)問題,北京電視臺(tái)在高清制播網(wǎng)建設(shè)中,建設(shè)了高清新介質(zhì)安全防護(hù)系統(tǒng)。高清新介質(zhì)安全防護(hù)系統(tǒng)從Windows設(shè)備驅(qū)動(dòng)層面完成對(duì)新介質(zhì)中非法文件的屏蔽,從而隔斷了惡意代碼傳入制播網(wǎng)系統(tǒng)的途徑,并對(duì)新介質(zhì)的使用進(jìn)行有效的管理。
新存儲(chǔ)介質(zhì)與傳統(tǒng)磁帶方式相比具有明顯的優(yōu)越性,如便于與計(jì)算機(jī)之間進(jìn)行數(shù)據(jù)交換,便于攜帶,物理性能更好等。本文所針對(duì)的高清新介質(zhì)主要指可以通過USB接口、PCI、1394等計(jì)算機(jī)通用接口完成與計(jì)算機(jī)之間以文件方式進(jìn)行直接數(shù)據(jù)交換的介質(zhì)。目前國(guó)內(nèi)普遍使用的高清數(shù)字新介質(zhì)為藍(lán)光盤和P2卡,其他介質(zhì)(各類閃存卡)的防護(hù)方式與之類似。
P2卡是松下公司推出的插卡式PC卡介質(zhì),是為專業(yè)音視頻應(yīng)用而設(shè)計(jì)的小型固態(tài)存儲(chǔ)卡,它的存儲(chǔ)核心采用了4片高速SD卡,這些SD卡安裝到一個(gè)接口電路板上,并由一個(gè)P2 Controller LSI控制與外部設(shè)備進(jìn)行通信。P2卡符合PC卡標(biāo)準(zhǔn)(2型),可以直接插入到筆記本式計(jì)算機(jī)的卡槽中,也可以通過USB接口或PCI接口的方式接入工作站??ㄉ系囊粢曨l數(shù)據(jù)以文件形式存儲(chǔ),每一段剪輯都由MXF和元數(shù)據(jù)文件組成。這些數(shù)據(jù)不需要數(shù)字化處理,可以立即用于非線性編輯。目前P2卡有64 Gbyte,32 Gbyte和16 Gbyte三種型號(hào)。P2卡結(jié)構(gòu)如圖1所示。
圖1 P2卡結(jié)構(gòu)圖
P2存儲(chǔ)卡在出廠時(shí)沒有做任何的安全防護(hù)處理,對(duì)于安裝了P2存儲(chǔ)卡驅(qū)動(dòng)程序的計(jì)算機(jī),P2存儲(chǔ)卡就是一個(gè)移動(dòng)存儲(chǔ)介質(zhì)(如同U盤),P2存儲(chǔ)卡沒有任何限制讀寫數(shù)據(jù)的措施,即任意的數(shù)據(jù)及文件都可以寫入P2存儲(chǔ)卡的任意位置。
藍(lán)光盤,即藍(lán)光DVD。由索尼、松下、日立、夏普、先鋒、LG、三星、飛利浦和湯姆遜等公司組成的藍(lán)光盤聯(lián)盟開發(fā)完成。藍(lán)光盤用以儲(chǔ)存高畫質(zhì)的音視頻及其他數(shù)據(jù)資料,因其數(shù)據(jù)讀寫采用波長(zhǎng)為405 nm的藍(lán)色激光波,將其命名為Blu-ray。一個(gè)單層的藍(lán)光盤的容量為25 Gbyte或27 Gbyte,雙層可達(dá)到46 Gbyte或54 Gbyte,而4層及8層的藍(lán)光盤容量可達(dá)100 Gbyte或200 Gbyte。藍(lán)光盤單光頭讀寫速率達(dá)到72 Mbit/s,雙光頭讀寫速率可達(dá)到144 Mbit/s。
藍(lán)光盤向下兼容DVD,VCD以及CD,藍(lán)光盤文件格式采用CDFS格式,可以用藍(lán)光刻錄機(jī)寫入資料,可使用同一張光盤記錄多種不同的視頻格式。光盤記錄是把信息作為“數(shù)據(jù)文件”進(jìn)行處理,除了視頻和音頻流,光盤還可以記錄多種元數(shù)據(jù),如日期、時(shí)間、位置信息等。電視臺(tái)使用的藍(lán)光盤是專業(yè)藍(lán)光盤,藍(lán)光專業(yè)光盤只能被專業(yè)的藍(lán)光驅(qū)動(dòng)器讀寫數(shù)據(jù),普通的家用級(jí)藍(lán)光機(jī)是無法對(duì)藍(lán)光專業(yè)光盤讀寫數(shù)據(jù)的。藍(lán)光盤邏輯結(jié)構(gòu)如圖2所示。
圖2 藍(lán)光盤邏輯結(jié)構(gòu)圖
藍(lán)光專業(yè)光盤在出廠時(shí)對(duì)目錄結(jié)構(gòu)及文件夾屬性進(jìn)行了如下安全處理:
1)藍(lán)光專業(yè)光盤根目錄無法寫入數(shù)據(jù)。藍(lán)光專業(yè)光盤根目錄下的文件夾中只有“General”和“UserData”能進(jìn)行數(shù)據(jù)讀寫;
2)藍(lán)光專業(yè)光盤根目錄下的文件夾中除“General”和“UserData”外,其他文件夾不能進(jìn)行數(shù)據(jù)手動(dòng)寫入;
3)使用者在具備索尼藍(lán)光驅(qū)動(dòng)器、攝像機(jī)等專業(yè)設(shè)備的前提下,可以向藍(lán)光專業(yè)光盤中的“General”和“User-Data”兩個(gè)目錄內(nèi)寫入任何格式數(shù)據(jù)。
通過對(duì)P2卡及藍(lán)光盤的存儲(chǔ)機(jī)制的分析,可以得出新介質(zhì)給制播業(yè)務(wù)帶來方便的同時(shí),給制播網(wǎng)的安全帶來了隱患。實(shí)際上P2卡和藍(lán)光盤廠商附帶了一些針對(duì)自身產(chǎn)品的安全防護(hù)軟件,如P2卡所帶的“P2CardCleaner”安全軟件可以刪除P2卡內(nèi)所有的非法文件(非P2系統(tǒng)文件及非法MXF文件),但“P2CardCleaner”軟件運(yùn)行在Windows操作系統(tǒng)之上,“P2CardCleaner”與Windows是同步識(shí)別P2存儲(chǔ)卡內(nèi)文件的,也就是說當(dāng)P2卡內(nèi)有病毒時(shí),可能在“P2CardCleaner”未將其刪除時(shí),已經(jīng)將病毒傳至工作站。筆者對(duì)此進(jìn)行過實(shí)際驗(yàn)證,對(duì)于幾百個(gè)非法文件,P2CardCleaner的刪除是需要一些時(shí)間的,在刪除過程中,蠕蟲和木馬很輕易地就感染了P2卡上載工作站。“P2CardCleaner”軟件可以限制非法類型數(shù)據(jù)的寫入,但在判斷文件的合法性時(shí),只是簡(jiǎn)單的分析文件后綴名和文件的命名格式,對(duì)于將病毒文件的后綴被人為改為合法后綴名的情況,“P2CardCleaner”是不能正確判斷的。
因此,目前的解決方法是不能滿足制播網(wǎng)安全要求的,要徹底解決問題,需要另辟蹊徑。經(jīng)過充分調(diào)研,筆者認(rèn)為在Windows操作系統(tǒng)設(shè)備驅(qū)動(dòng)層面解決問題是可行的,即在操作系統(tǒng)在對(duì)設(shè)備進(jìn)行識(shí)別時(shí),完成對(duì)非法文件的屏蔽。
新介質(zhì)自身應(yīng)具有一定的保護(hù)機(jī)制,防止用戶破壞介質(zhì)內(nèi)的系統(tǒng)文件夾內(nèi)的數(shù)據(jù)。如果人為或其他原因?qū)⑦@些系統(tǒng)文件刪除或更改,將會(huì)導(dǎo)致不能正確將媒體文件和元數(shù)據(jù)文件進(jìn)行讀寫,因此需要將系統(tǒng)文件進(jìn)行保護(hù),不能出現(xiàn)非法刪除或更改。
媒體數(shù)據(jù)安全是安全防護(hù)的重點(diǎn),可以從以下幾個(gè)方面入手。
2.2.1 屏蔽手段
存儲(chǔ)介質(zhì)應(yīng)自身或通過輔助軟件提供一定的屏蔽手段,能夠在驅(qū)動(dòng)層面屏蔽掉除必要的拍攝、上下載目錄外的所有目錄(包括根目錄下的所有數(shù)據(jù)),防止用戶違規(guī)操作。對(duì)非編工作站所連接的存儲(chǔ)介質(zhì),做到對(duì)非指定的目錄、文件不予識(shí)別,對(duì)指定目錄下的非視音頻文件不予識(shí)別。
2.2.2 查毒手段
當(dāng)新介質(zhì)接入上載(非編)工作站時(shí),上載工作站在確認(rèn)識(shí)別到新介質(zhì)之后,自動(dòng)調(diào)用該工作站上的殺毒軟件(如SYMANTEC SEP11),對(duì)新介質(zhì)進(jìn)行全盤掃描殺毒。
2.2.3 識(shí)別手段
識(shí)別新介質(zhì)專有ID號(hào)。在上載(非編)工作站,首先識(shí)別接入工作站上的新介質(zhì)專有ID,判斷是否屬于合法介質(zhì)。合法介質(zhì)指由電視臺(tái)配發(fā)的介質(zhì),其ID號(hào)應(yīng)被系統(tǒng)自動(dòng)識(shí)別,以避免外部不可控的介質(zhì)接入制播網(wǎng)。對(duì)于非法介質(zhì)應(yīng)報(bào)警提示,并記錄日志。
識(shí)別新介質(zhì)內(nèi)的文件合法性。在識(shí)別到接入工作站的合法介質(zhì)后,能夠限制特定文件類型的讀寫。對(duì)于文件類型的識(shí)別,不能只是簡(jiǎn)單的檢測(cè)文件后綴名和文件的命名格式,要通過文件頭分析等深層次的檢測(cè),真正實(shí)現(xiàn)對(duì)文件類型的判斷。
2.2.4 日志記錄
對(duì)任何與之連接的存儲(chǔ)介質(zhì)進(jìn)行任何操作,系統(tǒng)均要生成相應(yīng)的日志,并記錄存儲(chǔ)介質(zhì)ID號(hào)、文件合法性等。
2.2.5 集中管理功能
應(yīng)提供統(tǒng)一管理的功能。需要管理的內(nèi)容主要包括文件類型讀寫的限定、新介質(zhì)目錄訪問權(quán)限的制定、密碼修改、策略的下發(fā)、日志記錄、用卡統(tǒng)計(jì)、客戶端狀態(tài)的監(jiān)控等。對(duì)所有客戶端的報(bào)警,日志信息均有及時(shí)提示。支持對(duì)新介質(zhì)ID庫(kù)、合法文件類型、合法寫入設(shè)備類型的定義和更新。
通過分析可以得知,高清新介質(zhì)安防系統(tǒng)的核心是防止惡意代碼通過新介質(zhì)傳入制播網(wǎng)。惡意代碼可以分為病毒、特洛伊木馬、蠕蟲、陷門、間諜軟件、竊聽軟件等,這些惡意代碼可以通過網(wǎng)絡(luò)、文件、移動(dòng)存儲(chǔ)介質(zhì)傳播,高清新介質(zhì)安防系統(tǒng)要完成的任務(wù)是阻斷通過移動(dòng)介質(zhì)傳播惡意代碼的途徑。目前,一些防病毒軟件具備封閉USB、1394、光驅(qū)等功能,也有一些專門用于封閉計(jì)算機(jī)外設(shè)端口的軟件,但都不能全面達(dá)到新介質(zhì)安全防護(hù)要求。
筆者從Windows設(shè)備驅(qū)動(dòng)層面解決如何顯示或者隱藏文件,從而起到文件訪問控制的作用。
與文件識(shí)別相關(guān)的Windows Native API內(nèi)核模塊共有3個(gè),分別為 NtQuery Directory File,ZwCreate File,ZwOpen File,其中前綴Nt表明是Native API函數(shù)。通過HOOK這3個(gè)函數(shù),讓其返回值按照實(shí)際需求屏蔽掉不需要看到的文件夾和文件類型。
3.1.1 NtQuery Directory File
此Native API主要控制文件列表的查詢,從Windows用戶層的所有關(guān)于文件的查詢均要通過此函數(shù)。故利用HookZw Query Directory File函數(shù)修改 NtQuery Directory File函數(shù)的返回列表可以控制用戶層的查詢結(jié)果,實(shí)現(xiàn)基本的文件隱藏。
3.1.2 ZwCreate File
試驗(yàn)選取液固比601,浸取時(shí)間120 min,測(cè)定浸取溫度對(duì)Ba2+、OH-濃度以及水溶性鋇存在形式的影響,試驗(yàn)結(jié)果如圖4、圖5。
ZwCreateFile是負(fù)責(zé)打開、創(chuàng)建和執(zhí)行Windows系統(tǒng)中文件、設(shè)備以及管道等絕大部分組件的函數(shù),Hook(HookZwCreateFile)此函數(shù)之后,要根據(jù)打開的對(duì)象類型以及文件名稱進(jìn)行過濾,確保非信任文件不會(huì)被打開。
3.1.3 ZwOpenFile
同ZwCreate File一樣,ZwOpen File也會(huì)管理部分文件的打開和執(zhí)行,為了防止非信任文件被打開,會(huì)Hook此函數(shù)(HookZw Open File),根據(jù)打開的對(duì)象類型以及文件名稱進(jìn)行過濾,確保非信任文件不會(huì)被打開。
NtQuery Directory File,NtOpen File以及 NtCreate File的調(diào)用者可以屬于不同的進(jìn)程,這些函數(shù)的輸入?yún)?shù)由其自己的調(diào)用者傳遞,本模塊在捕獲函數(shù)調(diào)用后根據(jù)情況處理不同的參數(shù)。
與輸入的情況相似,在處理完各個(gè)進(jìn)程的查詢和打開請(qǐng)求之后,鉤子函數(shù)(HookZw Query Directory File,HookZw Create File,HookZw Open File)中模塊輸出按照屏蔽名單過濾之后的結(jié)構(gòu),并將其返回原調(diào)用者。
3.1.4 黑白名單定義
設(shè)計(jì)白名單的定義為“對(duì)于某一個(gè)確定的驅(qū)動(dòng)器,如果白名單存在,則僅顯示白名單中的內(nèi)容,白名單以外的所有文件不顯示,為隱藏狀態(tài)”,即可以稱白名單為“信任”名單。同時(shí),黑名單的定義為“針對(duì)某一個(gè)驅(qū)動(dòng)器,如果白名單不存在,黑名單無效;如果白名單存在,白名單優(yōu)先,黑名單僅針對(duì)白名單文件夾及其子文件(夾)”。
以上的設(shè)計(jì)規(guī)則即滿足“信任優(yōu)先”策略,黑名單的存在是對(duì)信任的補(bǔ)充,即信任文件夾內(nèi)部有可能存在錯(cuò)誤或者非法文件,但是也能被數(shù)據(jù)安全防控系統(tǒng)排除。
圖3 新介質(zhì)安防系統(tǒng)工作流程圖
3.2.1 服務(wù)器端
可以統(tǒng)一配置客戶端所需信息,利用數(shù)據(jù)庫(kù)存儲(chǔ)客戶端回傳的監(jiān)測(cè)信息,并實(shí)時(shí)監(jiān)控客戶端運(yùn)行狀態(tài)。服務(wù)器端的配置采用B/S架構(gòu),管理員可以通過瀏覽器訪問Web頁(yè)來配置、監(jiān)控整個(gè)系統(tǒng)。
管理員可通過登陸服務(wù)器端,配置策略文件,查看客戶端工作狀態(tài),監(jiān)視P2卡插入信息??蛻舳嗽趩?dòng)時(shí),主動(dòng)連接服務(wù)器,下載最新的策略文件,包括信任文件模板,P2驅(qū)動(dòng)器列表,信任P2卡ID列表;當(dāng)連接不到服務(wù)器時(shí),使用舊策略文件工作。
服務(wù)器端具有數(shù)據(jù)庫(kù)、Web訪問、策略配置、客戶端管理的功能。
3.2.2 客戶端
客戶端安裝后可隨工作站的操作系統(tǒng)的啟動(dòng)而自動(dòng)啟動(dòng),實(shí)現(xiàn)對(duì)P2卡的控制訪問。當(dāng)P2卡插入時(shí),首先根據(jù)其ID查詢是否為授權(quán)ID,授權(quán)的P2卡將按授權(quán)策略顯示可信內(nèi)容,非授權(quán)P2卡將隱藏全部?jī)?nèi)容。
服務(wù)端與客戶端使用特定通信機(jī)制進(jìn)行數(shù)據(jù)傳遞,實(shí)現(xiàn)模板分發(fā),客戶端狀態(tài)監(jiān)測(cè),P2卡監(jiān)測(cè)信息記錄幾個(gè)功能。
服務(wù)器端通過接收客戶端定時(shí)發(fā)送的心跳,記錄客戶端的狀態(tài)。服務(wù)器端可以MAC地址作為標(biāo)志,顯示所有客戶端的連接狀態(tài)。
P2卡監(jiān)測(cè)信息包含了P2卡所在驅(qū)動(dòng)器號(hào)、P2卡ID號(hào)、ID授權(quán)狀態(tài)、所在主機(jī)信息(MAC、主機(jī)名)以及上傳時(shí)間。
客戶端服務(wù)隨系統(tǒng)啟動(dòng)后,會(huì)啟動(dòng)移動(dòng)設(shè)備監(jiān)視線程,并檢測(cè)已經(jīng)掛載的驅(qū)動(dòng)器設(shè)備;如果為本地硬盤,則將該磁盤直接劃入信任磁盤,不實(shí)施信任文件策略,用戶可以訪問位于該盤的任意文件。
對(duì)于監(jiān)測(cè)到的已掛載非本地硬盤及新添加的移動(dòng)磁盤,都會(huì)搜集基本的設(shè)備信息,如設(shè)備類型、設(shè)備ID(P2卡)和分配的驅(qū)動(dòng)器號(hào)。將搜集到的基本信息與配置模板中的可信設(shè)備信息進(jìn)行比較,比較包括是否為可信設(shè)備類型,驅(qū)動(dòng)器號(hào)是否為在可信的范圍內(nèi),設(shè)備ID是否與可信ID值匹配。
無法通過認(rèn)證的設(shè)備,將被定義為非信任設(shè)備,用戶將收到系統(tǒng)托盤發(fā)出的提示信息,用戶同時(shí)無法訪問該設(shè)備上的任何文件。
通過認(rèn)證的設(shè)備,將被定位為可信設(shè)備,系統(tǒng)托盤也會(huì)發(fā)出相應(yīng)的提示,用戶可訪問在信任列表內(nèi)的文件及文件夾,殺毒軟件也會(huì)自動(dòng)掃描可顯示的文件。
北京電視臺(tái)高清新聞網(wǎng)采用了P2卡作為存儲(chǔ)介質(zhì),新介質(zhì)安防系統(tǒng)在高清新聞網(wǎng)得到了實(shí)際應(yīng)用。北京電視臺(tái)高清新聞網(wǎng)為每臺(tái)高清非編工作站配備了一個(gè)PCI接口的P2驅(qū)動(dòng)器,每個(gè)P2驅(qū)動(dòng)器上有6個(gè)PCI插槽,可以支持同時(shí)插入6塊P2卡。
北京電視臺(tái)還制定了嚴(yán)格的P2卡使用管理規(guī)范,技術(shù)與管理密切結(jié)合,在新聞網(wǎng)正式運(yùn)行期間,沒有出現(xiàn)因使用P2卡導(dǎo)致的網(wǎng)絡(luò)安全問題。與通過視音頻信號(hào)重新編碼上載相比,通過P2驅(qū)動(dòng)器將文件高清素材直接拷貝到制作網(wǎng)內(nèi),大大降低了素材上載時(shí)間,對(duì)于像新聞網(wǎng)注重時(shí)效性的制作方式,不僅提高了網(wǎng)絡(luò)安全性,更有效降低了新聞制作周期。