0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

分享一種使用RTH示波器探測并解碼HDMI的方法

羅德與施瓦茨中國 ? 來源:羅德與施瓦茨中國 ? 2024-03-14 13:47 ? 次閱讀

引言

現(xiàn)代社會中,人們的日常工作和生活愈發(fā)依賴于計算機(jī)。在處理一些機(jī)密事務(wù)時,信息安全不可謂不重要。在一些單位會采取斷網(wǎng)或禁止插入U盤的方式來防止泄密。然而,計算機(jī)的EMI問題還可能導(dǎo)致信息從其它途徑泄露。本文介紹了一種使用RTH示波器探測并解碼HDMI的方法,并解釋了其實現(xiàn)原理。

RTH示波器相比市面上常見的軟件無線電接收機(jī)采樣率高了很多倍,因此解析出的畫面會更清晰,有利于看清小字體。另外,RTH示波器是手持儀表,攜帶非常方便,還能通過WiFi方式實現(xiàn)信號回傳,簡化了示波器與上位機(jī)之間的連接,降低了整套探測系統(tǒng)的復(fù)雜度。

e39ca526-e1be-11ee-a297-92fbcf53809c.png

既然是EMI問題導(dǎo)致的信息泄露,我們可以先嘗試用示波器的近場探頭配合示波器FFT功能在被攻擊電腦附近進(jìn)行探測。當(dāng)我們移動近場探頭到達(dá)被攻擊電腦的HDMI接口附近,示波器頻譜上會出現(xiàn)好多信號。

e3abd29e-e1be-11ee-a297-92fbcf53809c.pnge3cee32e-e1be-11ee-a297-92fbcf53809c.png ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

▲從上圖可知,HDMI顯示信號已經(jīng)泄露到了空氣中,如果我們能夠找出信號規(guī)律,即可逆向得到原始畫面內(nèi)容。

e3e4c9c8-e1be-11ee-a297-92fbcf53809c.png

我們可以先在被攻擊電腦上使用比較簡單的圖形,并觀察示波器的時域波形,來嘗試找出電腦畫面與泄露信號之間的規(guī)律。

e3f0a8ba-e1be-11ee-a297-92fbcf53809c.png

比如我們可以在被攻擊電腦上開啟畫圖程序,并填充黑色背景。然后中間開啟一個白色長條形的記事本窗口,并嘗試更改這個窗口的寬度,或左右拖動這個窗口。

e4059716-e1be-11ee-a297-92fbcf53809c.png

調(diào)整示波器的水平/垂直刻度和觸發(fā)方式,你會得到這樣有規(guī)律的時域波形。并且你會發(fā)現(xiàn),在示波器屏幕中間的觸發(fā)位置處有一個窄矩形,同時它的左數(shù)3格位置也有類似的窄矩形。說明這種矩形的重復(fù)周期大概是30us。當(dāng)我們在被攻擊電腦上左右拖動記事本窗口的邊沿,則兩個窄矩形之間的較寬矩形就會對應(yīng)運動,并且當(dāng)電腦屏幕上的記事本運動到屏幕邊界處時,示波器顯示的寬矩形也會靠近窄矩形的位置。

e4377538-e1be-11ee-a297-92fbcf53809c.gif

根據(jù)上述規(guī)律,我們可以大膽猜測在窄矩形之間的波形,對應(yīng)的是電腦屏幕上的一行,示波器從左往右的波形對應(yīng)于電腦屏幕的一行中從左往右的像素點。由于目前被攻擊電腦的屏幕內(nèi)容比較簡單,因此可以認(rèn)為它的每一行數(shù)據(jù)基本是相同的。這也就是為什么時域波形看上去是周期性的,重復(fù)周期是30us。如果對模擬視頻制式比較熟悉,你會發(fā)現(xiàn)這一點與PAL或NTSC制式非常相似。

因此,我們可以嘗試用時域波形的幅度對應(yīng)于像素點的亮度,把每一行的波形都用繪圖軟件庫中的函數(shù)繪制出來,行之間的順序也參考模擬視頻,把左側(cè)出現(xiàn)的行放在上方,右側(cè)出現(xiàn)的行放在下方。

e4c2ddda-e1be-11ee-a297-92fbcf53809c.png

大致猜出信號規(guī)律后,我們就可以開始著手寫程序了。

我們需要先配置示波器程控開發(fā)環(huán)境(以Ubuntu系統(tǒng)為例):

1.安裝python3.8

2.在羅德與施瓦茨官網(wǎng)搜索并下載RSVisa(對于Ubuntu系統(tǒng),可下載deb包,并雙擊安裝)

3.使用pip3 install命令安裝pyvisa, rsinstrument, opencv-python等軟件庫 這樣就配置完成了示波器程控開發(fā)環(huán)境。

然后我們找到羅德與施瓦茨在github上的賬號中的RTH示波器范例,并逐步修改,實現(xiàn)自己的程序。

e4ddf570-e1be-11ee-a297-92fbcf53809c.png ? ?

在上方代碼中,我修改了RTH的設(shè)備地址、時基設(shè)置、通道刻度、觸發(fā)方式(可用代碼設(shè)置或保持示波器原先的設(shè)置)。

e4f0d348-e1be-11ee-a297-92fbcf53809c.png ? ?

在上方代碼中,設(shè)置了數(shù)據(jù)類型,并請求數(shù)據(jù)。然后獲取通道的刻度和偏置,實現(xiàn)數(shù)據(jù)歸一化。最終,用matplotlib繪制時域波形。

e5129992-e1be-11ee-a297-92fbcf53809c.png ? ?

運行上述代碼,你就能在程控電腦的屏幕上得到上圖結(jié)果。你會觀察到,現(xiàn)在程控電腦上得到的波形與示波器探測的波形完全一致,比較寬的矩形對應(yīng)的就是被攻擊電腦上的記事本窗口,而比較窄的矩形對應(yīng)的就是被攻擊電腦的屏幕邊界。下一步,我們只要把波形幅度轉(zhuǎn)為像素點亮度即可。

e523b826-e1be-11ee-a297-92fbcf53809c.png

成功運行了RTH程控范例后,我們即可對此范例程序進(jìn)一步修改,以驗證我們之前猜測的想法。 e53ff6bc-e1be-11ee-a297-92fbcf53809c.png ? ? ?

上圖是我修改后的代碼,我做的主要修改是先對整個解碼程序加了一個循環(huán),這樣解碼的畫面才可以不停刷新,而不是只顯示一副畫面。我用abs來對波形數(shù)據(jù)取模,相當(dāng)于實現(xiàn)了AM解調(diào),并把解調(diào)結(jié)果依次繪制在OpenCV的畫布上。繪制順序是從左往右繪制,到達(dá)行尾后換行,到達(dá)列尾后重新回到畫布左上角。繪制完一副畫面后,用imshow函數(shù)把畫面顯示出來。

e561b41e-e1be-11ee-a297-92fbcf53809c.gif

e577fc42-e1be-11ee-a297-92fbcf53809c.png

成功實現(xiàn)HDMI解碼后,我們還可以查詢HDMI規(guī)范,了解為什么這種高清數(shù)字信號能用模擬視頻解調(diào)的方式解出來。

e591906c-e1be-11ee-a297-92fbcf53809c.png ? ? ? ?

從上圖可知HDMI在TMDS模式時,3個通道獨立發(fā)送數(shù)據(jù)。它們對應(yīng)于HDMI線纜中的3對差分線。更具體來說,這3對差分線中分別傳輸?shù)臄?shù)據(jù)就是R、G、B數(shù)據(jù)。

e5ab178a-e1be-11ee-a297-92fbcf53809c.png ? ? ?

不僅如此,從上圖可知這三路R、G、B數(shù)據(jù)是按像素點依次傳輸?shù)?。?dāng)某一行的像素點從左往右傳輸完成后,就會換行,傳輸下一行的RGB數(shù)據(jù),這一點與模擬視頻幾乎一樣,這就解釋了為何我們可以用類似模擬視頻解調(diào)的方式,實現(xiàn)HDMI信號的解碼。不僅HDMI信號以此方式傳輸,早期的DVI信號也是這種方式。因此,也能用類似的方式解碼。

除了這些視頻接口外,顯示屏內(nèi)部的專用信號也存在信息泄露問題,這些問題可能由于顯示屏在生產(chǎn)過程中內(nèi)部電路板的差分走線的不對稱而引入。

結(jié)語

通過本文,相信你已經(jīng)學(xué)會如何自己寫程序控制示波器,并實現(xiàn)對HDMI泄露信號的探測和解碼。在日常工作中,羅德與施瓦茨的示波器和近場探頭也是調(diào)試EMI問題的好幫手。除此之外,羅德與施瓦茨還提供了全套專業(yè)的EMC測試方案,幫助你整改目標(biāo)設(shè)備的EMC問題。



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 示波器
    +關(guān)注

    關(guān)注

    113

    文章

    6167

    瀏覽量

    184325
  • RGB
    RGB
    +關(guān)注

    關(guān)注

    4

    文章

    797

    瀏覽量

    58339
  • HDMI信號
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    7721
  • 無線電接收機(jī)
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    1764
  • 時域波形
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    1888

原文標(biāo)題:【實踐分享】| 被夸爆的HDMI信號泄露檢測技巧,一臺示波器就能實現(xiàn)

文章出處:【微信號:羅德與施瓦茨中國,微信公眾號:羅德與施瓦茨中國】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設(shè)備。這種方法減少了硬件組件、板空間和成本。
    的頭像 發(fā)表于 10-24 14:57 ?261次閱讀
    <b class='flag-5'>一種</b>簡單高效配置FPGA的<b class='flag-5'>方法</b>

    示波器高壓探頭使用方法

    示波器高壓探頭是一種用于測量高電壓信號的儀器,通常用于高壓電源、電機(jī)、變壓器等電氣設(shè)備的測試。以下是示波器高壓探頭的詳細(xì)使用方法
    的頭像 發(fā)表于 10-03 16:43 ?292次閱讀

    數(shù)字示波器的測量方法有哪三

    數(shù)字示波器一種廣泛應(yīng)用于電子測量領(lǐng)域的儀器,它能夠?qū)崟r顯示電壓波形,幫助工程師和技術(shù)人員對電子信號進(jìn)行分析和測量。數(shù)字示波器的測量方法有很多種,不同的測量
    的頭像 發(fā)表于 07-17 18:02 ?1283次閱讀

    電流探頭與示波器:毫安電流的探測與測量

    方面,電流探頭與示波器的結(jié)合為我們提供了一種強(qiáng)大的工具,能夠精確地探測和測量毫安級別的電流。 電流探頭是一種傳感器,用于將電路中的電流轉(zhuǎn)換為示波器
    的頭像 發(fā)表于 06-03 15:05 ?485次閱讀
    電流探頭與<b class='flag-5'>示波器</b>:毫安電流的<b class='flag-5'>探測</b>與測量

    示波器探頭常用的校準(zhǔn)方法

    示波器探頭是連接被測信號與示波器的關(guān)鍵部件,其性能直接影響示波器對信號的捕獲和顯示。為了確保示波器系統(tǒng)的測量精度,對示波器探頭進(jìn)行適當(dāng)?shù)男?zhǔn)
    的頭像 發(fā)表于 05-13 16:34 ?3087次閱讀

    示波器探測不到信號怎么辦

    當(dāng)使用示波器時,如果探測不到信號,可能意味著存在些技術(shù)問題或配置錯誤。
    的頭像 發(fā)表于 05-13 15:12 ?765次閱讀

    示波器波形的觀察方法 示波器波形不穩(wěn)定的原因及處理方法

    示波器,作為電子工程領(lǐng)域中一種極其重要的測量工具,被廣泛用于觀測和分析電信號。通過示波器,我們可以直觀地看到信號的波形,進(jìn)而理解其頻率、幅度、相位等關(guān)鍵信息。然而,在使用示波器時,有時
    的頭像 發(fā)表于 05-10 16:05 ?4382次閱讀

    示波器電流鉗衰減比的設(shè)置方法及應(yīng)用

    示波器電流鉗是一種常用的測量工具,用于測量電流信號。在使用示波器電流鉗時,正確設(shè)置衰減比是非常重要的。本文將介紹示波器電流鉗衰減比的設(shè)置方法
    的頭像 發(fā)表于 05-07 10:12 ?735次閱讀

    示波器表筆:探測微弱信號的能力與應(yīng)用

    微弱信號是項常見的任務(wù)。微弱信號可能是來自傳感器、放大器輸出或其他低幅度信號源的電壓變化。示波器表筆是一種常用的測量工具,但在探測微弱信號時,其性能和限制需要得到充分考慮。本文將探討
    的頭像 發(fā)表于 04-23 10:08 ?994次閱讀
    <b class='flag-5'>示波器</b>表筆:<b class='flag-5'>探測</b>微弱信號的能力與應(yīng)用

    示波器的使用方法 示波器的用途有哪些?

    示波器一種用于測量電壓信號的儀器,它可以將電信號轉(zhuǎn)換為可以在屏幕上顯示的波形圖形。在電子工程領(lǐng)域,示波器個必不可少的儀器,它可以用于許多不同的應(yīng)用和測量。本文將詳細(xì)介紹
    的頭像 發(fā)表于 02-18 16:18 ?1675次閱讀

    示波器的使用方法步驟 示波器的直流耦合和交流耦合的區(qū)別

    示波器一種廣泛應(yīng)用于電子測量的儀器,它用于顯示電壓波形、頻率、相位等電信號的特性。下面將詳細(xì)介紹示波器的使用方法步驟以及直流耦合和交流耦合的區(qū)別。
    的頭像 發(fā)表于 02-04 13:36 ?2583次閱讀

    示波器的使用方法步驟 示波器的主要功能和作用

    示波器一種用于顯示電信號波形的儀器,它能夠通過測量和顯示電壓隨時間變化的圖形,用于分析和診斷電路和信號的性質(zhì)和特征。示波器廣泛應(yīng)用于電子、電力、通信等領(lǐng)域的實驗、測試和維修工作中。
    的頭像 發(fā)表于 01-22 14:54 ?1.5w次閱讀

    SIGLENT示波器的使用方法

    SIGLENT示波器一種常見的電子測量儀器,廣泛應(yīng)用于電子、通信、計算機(jī)等領(lǐng)域。它可以用于觀測和分析各種信號,幫助工程師進(jìn)行電路設(shè)計、故障排查和調(diào)試等工作。在本文中,我們將詳細(xì)介紹SIGLENT
    的頭像 發(fā)表于 01-16 16:49 ?2251次閱讀

    一種產(chǎn)生激光脈沖新方法

    等離子體中脈沖壓縮的概念 英國和韓國的科學(xué)家提出了一種產(chǎn)生激光脈沖的新方法,其功率是現(xiàn)有激光脈沖的1000多倍。 科學(xué)家們使用計算機(jī)模擬聯(lián)合研究,展示了一種壓縮光的新方法,以充分提高光
    的頭像 發(fā)表于 12-07 06:32 ?454次閱讀
    <b class='flag-5'>一種</b>產(chǎn)生激光脈沖新<b class='flag-5'>方法</b>

    HDMI自動切換器是支持多路HDMI輸入HDMI輸出的嗎?

    自動偵測切換不同的輸入源。因此,HDMI自動切換器可以支持多路HDMI輸入HDMI輸出。 HDMI
    的頭像 發(fā)表于 12-04 14:50 ?762次閱讀