胡 浩,羅儒俊,齊國雷,劉文斌,丁建鋒,宋 滔
(1.解放軍信息安全測評認證中心,北京 100076;2.中國電子科技網絡信息安全有限公司,四川 成都 610041)
信息化時代,網絡攻擊手段層出不窮。為了防范網絡攻擊,物理隔離是較為常見的一種手段,即將目標設備或網絡從公共或其他可訪問網絡中分離出來。盡管處于物理隔離狀態,通過供應鏈滲透、社會工程學技巧、預置惡意軟件/硬件等方法,仍然可以實現對物理隔離計算機的木馬植入或病毒感染,并構建出基于聲、光、電磁、熱等不同媒質的隱蔽信息傳輸通道[1-2]。
基于電磁波的隱蔽傳輸通道可以通過讀寫計算機的CPU、顯卡、內存等部件,通過數據總線產生電磁信號來建立,且低頻電磁信號容易沿數據線、電力線以傳導形式傳輸,高頻電磁信號容易通過空中以輻射形式傳輸。基于聲波的隱蔽傳輸通道可以通過計算機內置的揚聲器、蜂鳴器產生人耳難以察覺的超聲波來實現,也可以通過控制計算機的散熱風扇轉速變化來產生超聲波。
基于室內LED照明燈可以實現可見光通信,進而實現信息泄露,但需要預先植入硬件木馬,實施難度較大。針對計算機系統,可以利用惡意程序控制計算機自帶的發光模塊(LED顯示屏、鍵盤LED指示燈、屏幕LED指示燈、硬盤LED指示燈),構建出基于可見光的隱蔽傳輸通道,從而實現信息的隱蔽傳輸。
本文首先概述國外隱蔽光傳輸通道的最新研究現狀,分析典型通道的隱蔽性,設計用于檢測LED器件閃爍的光傳感器,發現了LED顯示屏存在固定的閃爍頻率。閃爍頻率的幅度大小與LED顯示屏的亮度明暗具有相關性。通過軟件程序控制LED顯示屏的亮度等級,計算機內的信息以幅度鍵控調制(ASK)方式向外發送光信號,在人眼難以察覺的情況下,建立基于LED顯示屏的隱蔽光傳輸通道,從而實現遠距離接收還原泄露信息。
2002年,洛克希德(馬丁公司的Loughry和奧本大學的Umphress通過植入惡意軟件來控制鍵盤和顯示器的LED指示燈[3-4]閃爍來發送數據,并通過遠程攝像頭接收還原了信息。
2013年,Brasspup通過預選移除顯示器的極化濾波器,利用特制的LED顯示屏[5],實現了隱蔽光通道的信息傳輸。
2016年,坎皮納斯大學的Lopes和Arana通過使用惡意存儲設備控制紅外LED燈,獲取了物理隔離系統中的如個人信息、加密算法密鑰等敏感信息,數據傳輸速率可達15 bit/s,但是必須預先植入硬木馬(具備紅外LED燈的存儲設備[6])。
2017年,本古里安大學Mordechai等人利用計算機的硬盤LED燈[7]實現隱蔽傳輸數據,通過對硬盤進行讀寫操作,間接控制硬盤LED燈。LED燈亮的時間為“1”比特,暗的時間為“0”比特,使用光學傳感器進行接收還原,在黑暗環境下最大傳輸距離可達20 m。
上述研究表明,建立隱蔽光傳輸通道主要有兩種方式:一是植入軟件木馬,通過軟件木馬控制計算機自身的發光模塊建立;二是植入硬件木馬,通過硬件木馬攜帶的發光模塊建立。由于硬件木馬植入難度較大,而利用設備自身的發光模塊通過軟件木馬植入方式實現隱蔽信息傳輸則更容易實現。在計算機自帶的發光模塊中,鍵盤LED指示燈、硬盤LED指示燈雖然隱蔽性較高,但是通過遮擋LED指示燈的方法可以輕易防范。因此,本文提出了一種基于LED顯示屏的新型隱蔽光傳輸通道。
為檢測LED燈的閃爍,設計了基于光敏電阻的光傳感器,如圖1所示。

圖1 光傳感器電路
該電路由1個信號源、1個光敏電阻和1個普通電阻組成。信號源產生特定頻率的方波信號,用于調制LED燈閃爍頻率的載波信號。由于載波頻率必須高于LED燈的閃爍頻率,綜合考慮后選擇1 MHz。當無LED燈照射光敏電阻時,其呈高阻狀態,阻值遠遠大于電阻R,在電阻R上獲得的電壓波形很小,可以近似于0;當有LED等照射光敏電阻時,其阻抗迅速降低,接近0,在電阻R上獲得的電壓波形與信號源產生的波形相同。通過LED燈的不停閃爍,在電阻R上產生一個幅度調制信號,其載波信號為信號源產生的方波,調制在載波上的信號是由LED燈照射光敏電阻產生。該信號的頻率與LED燈閃爍頻率相同,由此可以檢測LED燈閃爍頻率和幅度變化。
目前,大多數計算機配置的LED顯示屏為背光控制亮度,控制方式為PWM方式。PWM控制方式是通過控制逆變電路開關器件的通斷使輸出端產生一系列幅值相等的脈沖,用于代替正弦波或者所需波形。即在輸出波形的半個周期中產生多個脈沖,使各脈沖的等值電壓為正弦波波形,輸出平滑,且低次諧波少。按照一定規則對各脈沖的寬度進行調制,即可改變逆變電路輸出電壓的大小。
總體而言,實現調節屏幕亮度不是通過改變信號頻率,而是通過調節脈沖信號的占空比。占空比越小,單位時間內進入人眼內的光強越少,因此會感覺亮度較低;占空比越大,單位時間內進入人眼內的光強越多,因此會感覺亮度較高,如圖2所示。

圖2 PWM調光方式
LED顯示屏測試方法:①將光傳感器模塊對準LED背光顯示屏,打開光傳感器模塊開關,通過音頻線纜連接光傳感器模塊和上位機;②打開上位機中的信號采集軟件,顯示信號實時頻譜圖和瀑布圖;③通過頻譜圖獲取LED背光顯示屏的閃爍頻率。測試現場布置圖如圖3所示,測試頻譜圖如圖4所示。

圖3 LED背光顯示屏測試現場布置

圖4 LED顯示屏測試頻譜
從圖4可以看出,頻譜圖上出現多個頻點。其中,除零頻外,最低頻點為218 Hz,是LED背光的閃爍頻率;其他頻點為高次諧波。因此,通過光傳感器可獲取LED顯示屏的閃爍頻率。由于PWM方式是調節占空比,所以調節亮度變化并不會改變其閃爍頻率。
由于LED顯示屏存在固定的閃爍頻率,且在LED顯示屏亮度變化時,該閃爍頻率對應的幅度也隨之變化。因此,可以采用ASK調制方式調制泄露信息。通過調節背光亮度使其頻譜圖上的幅度值發生變化。背光亮對應幅值大表示比特“1”,背光暗對應幅值小表示比特“0”。通過這種方式可以將二進制碼調制到LED顯示屏閃爍頻率的幅度變化上。
但是,計算機的PWM控制接口權限未向用戶開放,無法直接利用程序控制背光亮度,可使用windows操作系統提供的亮度調節API接口,通過調用API(Application Programming Interface,應用程序編程接口)接口函數GammaRamp()控制LED顯示屏的亮度等級,產生人眼難以察覺的亮度微弱變化,具有較高的隱蔽性。
ASK解調方式是將光傳感器輸出的電信號進行傅里葉變換(FFT),根據LED顯示屏固定閃爍頻率的幅值大小來判斷邏輯值為比特“0”或“1”。
基于LED顯示屏的隱蔽光傳輸通道驗證的環境布置如圖5所示,具體參數設置如表1所示。

表1 LED背光顯示屏隱蔽光傳輸通道驗證參數
如圖5所示,A為配置了LED顯示屏的目標計算機(泄漏源)。泄漏程序搜索計算機A中的敏感文件進行基于ASK數據調試,并轉化成二進制比特,通過調用API接口控制屏幕亮度微弱變化傳輸數據。B為接收還原計算機,通過光傳感器C(距離目標計算機A約1.5 m)將光信號轉換為電信號,并將該電信號通過音頻口傳輸至B中進行解碼,恢復出泄露信息。
①為泄漏程序,運行在計算機A中,用于讀取敏感文件信息并調用API接口產生泄漏。程序運行時,A中不會出現任何界面,只有在計算機進程管理器中可以查看到泄漏程序運行。
②為被泄漏的測試文件,存儲在計算機A中。
③為分析軟件,運行在計算機B中,從音頻口中讀取采集到的信號,在界面上實時呈現頻譜圖和瀑布圖。
④為還原軟件,運行在計算機B中,從音頻口中讀取采集到的信號并進行解碼,還原出泄露信息。
⑤為還原出的泄露信息,將還原出的信息以文件形式呈現。

圖5 基于LED背光顯示屏的隱蔽光傳輸通道驗證
從圖5可以看出,接收端計算機B能夠成功接收并還原泄露信息。由于受到光傳感器的檢測靈敏度限制,本次驗證中的傳輸距離只有1.5 m。如果采用高靈敏度的光傳感器,其傳輸距離和傳輸速率將大幅提高。本次驗證可以說明,LED顯示屏可以被惡意軟件利用,成為從物理隔離計算機網絡中獲取信息的隱蔽渠道。
本文設計了基于LED燈閃爍頻率檢測的光傳感器,檢測發現了LED顯示屏存在的固定閃爍頻率,分析了LED顯示屏PWM控制原理,通過調用Windows系統的API接口函數實現程序化控制亮度,提出了在固定閃爍頻率上使用ASK調制計算機內部信息進行隱蔽傳輸的方法,最終成功驗證了基于LED背光顯示屏的光信息泄露新渠道,為基于物理隔離網絡的信息安全測評提供了技術支撐。
面對新的隱蔽傳輸通道造成的物理隔離網絡安全威脅,檢測與防護任重道遠。后續將繼續進行新型威脅的分析和挖掘,通過再現威脅并研究其特征,有針對性地提出應對措施,加快信息安全檢測與防護能力建設。