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

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

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

探究海康威視攝像機中的重大漏洞

電子工程師 ? 來源:廣州虹科電子科技有限公 ? 作者:廣州虹科電子科技 ? 2021-06-01 15:40 ? 次閱讀

前言

虹科Vdoo的安全研究團隊對領(lǐng)先的物聯(lián)網(wǎng)產(chǎn)品和安全設(shè)備進行了大規(guī)模的安全研究,為了提高效率和透明度,此過程設(shè)備供應商也參與其中。

這項研究的一部分是研究人員在多家供應商的設(shè)備中發(fā)現(xiàn)了零日漏洞。這些漏洞我們已經(jīng)負責任地以最佳方式向供應商披露,并將在披露期限結(jié)束后逐步分享。

我們發(fā)現(xiàn)易受攻擊設(shè)備的供應商之一是??低?/u>。研究團隊在??低暟踩珨z像機中發(fā)現(xiàn)了一個漏洞。攻擊者利用該漏洞能成功獲取攝像機IP地址,并且使用攝像機的root特權(quán)(通過LAN或Internet)遠程執(zhí)行代碼。虹科Vdoo負責任地披露了此漏洞(CVE-2018-6414),并與海康威視的安全團隊合作解決了此問題。

該漏洞并未在現(xiàn)場得到利用,因此不會對??低暱蛻粼斐扇魏尉唧w的隱私侵犯或安全威脅。??低晥F隊迅速采取了行動,修補了此漏洞,并將其他易受攻擊的產(chǎn)品也安裝了補丁。

技術(shù)概述

攝像機運行Linux操作系統(tǒng)。davinci進程包括攝像機的許多功能,比如Web服務器,并以使用者ID 0特權(quán)運行(用戶ID名為“admin”,當使用者ID為0時,它有效地賦予了root特權(quán))。攝像頭的Web界面基于Embedthis appweb 3 Web服務器,??低暈槠涮砑恿艘恍┐a。

??低曁砑恿薟eb服務器的一些特殊頁面來控制攝像機的設(shè)置,通常這些特殊頁面僅在HTTP身份驗證通過后運行,但是其中一些頁面不需要身份驗證。

在處理對不需要HTTP身份驗證的頁面的請求的代碼中,存在對sscanf的非安全調(diào)用,當使用特制請求時,該調(diào)用會導致緩沖區(qū)溢出,從而損壞內(nèi)存和導致任意代碼執(zhí)行或進程崩潰。

技術(shù)挑戰(zhàn)

此漏洞使攻擊者可以在相機的固件中執(zhí)行他們選擇的一段代碼。當用戶使用登錄網(wǎng)頁登錄時,將發(fā)送一個POST請求,其中也可以包含GET參數(shù)。

在解析特定GET參數(shù)的代碼中,有一個對isoc99_sscanf的調(diào)用。該isoc99_sscanf函數(shù)類似于已知的scanf函數(shù),但不是從stdin讀取它的輸入,而是從一個字符串輸入。在這種情況下,輸入的字符串包含請求查詢字符串:

087cd2ac-c288-11eb-9e57-12bb97331649.jpg

函數(shù)的格式字符串由參數(shù)名稱組成,后面連接“ =%s”。這意味著函數(shù)期望字符串以參數(shù)名稱開頭,后面連接“ =”,然后將其后的任何字符串讀入上圖中名為“ s1”的堆棧變量中。這允許我們向堆棧中寫入任意數(shù)量的字節(jié),%s沒有限制。唯一的限制是Web服務器應用于整個URI(包括查詢字符串)的限制。

在頁面背后的任何邏輯發(fā)生之前,首先應用Web服務器的限制,如appweb 3源代碼所示(可以在github上查找):

088d44fc-c288-11eb-9e57-12bb97331649.jpg

通過查看相關(guān)功能,可以找到??低晹z像機分配給maxUrl的值:

0899a3a0-c288-11eb-9e57-12bb97331649.jpg

將偽代碼與原始代碼進行比較時,很容易理解“ v3 [52]”代表conn-》 http-》 limits,并且該值的偏移量是48。當找到用于初始化值的函數(shù)時我們將看到該值設(shè)置為0x400(這與原始appweb 3源代碼中找到的值不同):

08b9a3ee-c288-11eb-9e57-12bb97331649.jpg

當使用GET變量從0x400中減去URI的長度時,我們得到了可以在變量的值中使用的有效負載的限制。我們?nèi)匀恍枰獜脑撝抵袦p去一個字節(jié),因為還檢查了URI的長度是否相等?,F(xiàn)在,我們可以檢查可用字節(jié)可以做什么。

回到漏洞的函數(shù),我們將觀察堆??蚣懿z查其中的“ s1”變量的偏移量。在此特定固件中,變量位于與堆棧起始位置足夠近的偏移量處,這意味著我們可能會溢出到堆棧幀的起始位置。但是,在我們檢查的某些其他固件版本中,該變量位于堆棧的較低地址,這不允許我們到達堆棧幀的起始位置。在這種情況下,如果通過覆蓋駐留在堆??蚣苌系淖兞?,漏洞可能仍會部分被利用。

由于調(diào)用函數(shù)的返回地址位于堆棧幀的起始位置,因此通過覆蓋它,我們可以控制接下來要運行的代碼(在函數(shù)返回時)。

由于攻擊是基于%s sscanf格式說明符的,因此我們不能在攻擊中使用任何空格,也不能使用NULL字符。這限制了我們,因為代碼部分中的所有地址都以NULL字節(jié)開頭。但是,我們使用了眾所周知的技術(shù)來克服此限制。

幫助利用此漏洞的一件重要的事是,雖然已將ASLR用于已加載的共享庫,但未將其用于固件的主要二進制文件。因此,可以準確知道代碼所在的位置,從而使我們可以跳至自己選擇的代碼段。我們還可以看到?jīng)]有使用stack canaries,因此我們可以安全地覆蓋堆棧的內(nèi)容,而無需對其進行檢查。

完成所有操作后,我們需要選擇一個地址跳轉(zhuǎn)至該地址。例如,類似于Foscam PoC,我們選擇跳到一段代碼來重置設(shè)備的憑據(jù),從而使我們能夠以管理員身份登錄設(shè)備。然后,作為設(shè)備管理員,我們可以控制任何設(shè)置,包括使用自定義固件升級設(shè)備的能力。

考慮到此漏洞帶來的風險,我們決定不發(fā)布PoC,以保護尚未升級其設(shè)備的用戶免受惡意攻擊。

給設(shè)備制造商的建議

攻擊者很容易發(fā)現(xiàn)并利用相機中的不良體系結(jié)構(gòu)導致的漏洞,因此制造商應該檢查其設(shè)備研發(fā)過程中是否存在以下問題:

1.使用不安全的函數(shù)。sscanf是一個潛在的不安全函數(shù),尤其是與%s或%[]一起使用時??梢栽谥С值腁PI中用sscanf_s替換sscanf,或者可以通過添加長度說明符來安全使用sscanf(需要確保長度小于緩沖區(qū)長度,應謹慎使用)。

最佳操作是即使在特定情況下也不要使用任何不安全的功能版本,定期使用它們很危險。特別是,建議不要使用sscanf。固件中發(fā)現(xiàn)的其他可能不安全的功能包括strcpy(可以替換為strncpy),strcat(可以替換為strncat),sprintf(可以替換為snprintf)等等。

2.主二進制文件缺少ASLR。ASLR已在設(shè)備上運行的Linux OS中實現(xiàn)并打開,唯一要做的更改是通過在GCC上添加“ -pie-fPIE”標志來使其與主要二進制文件兼容。使用此功能,攻擊者無法猜測他想跳轉(zhuǎn)到的功能地址。

3.缺少stack canaries。這是一個非常簡單且重要的安全功能,可以通過在GCC中添加“ -fstack-protector-all”標志來啟用該功能,當可執(zhí)行文件識別出堆棧受到破壞時將崩潰。這將導致短暫的拒絕服務,但至少它不允許攻擊者運行其選擇的代碼。

重要的是要注意此功能可能會導致性能下降,因為對每個功能都檢查了stack canaries。如果性能下降使其無法使用,則可以控制stack canaries的創(chuàng)建,并將其設(shè)置為僅放在極容易遭受基于堆棧的緩沖區(qū)攻擊的函數(shù)上。這可以通過將“ -fstack-protector”標志與“ --param ssp-buffer-size”一起使用來完成。

4.URL參數(shù)應該被清理為僅包含ASCII可打印字符。與ASLR結(jié)合使用,將降低該漏洞的利用率。

5.使用對稱加密對固件文件進行加密。這使攻擊者可以打開固件進行研究。

6.固件文件未經(jīng)過數(shù)字簽名。這使攻擊者可以重新打包惡意固件,供應商應考慮簽署其固件,以防止受到這種威脅。

7.在我們研究的固件中,使用了appweb 3,特別是它的舊版本-長期未維護。如https://www.embedthis.com/appweb/download.html 所述,此版本以及一些較新的版本被稱為“壽命終止”,這意味著它將不會獲得任何安全補丁。

8.該設(shè)備的幾乎所有邏輯都包含在一個二進制文件中。當所有內(nèi)容都在一個二進制文件中時,特權(quán)分離就會減少,這會增加攻擊面。例如,任何設(shè)備功能中可能存在的拒絕服務漏洞都將使主進程崩潰,并且許多設(shè)備功能也將遭受損失,而不僅僅是使負責特定邏輯的進程崩潰。將攝像機的邏輯劃分為不同的二進制文件可能還會使利用代碼執(zhí)行漏洞變得更加困難,因為進程內(nèi)存中的可用代碼更少,無法跳轉(zhuǎn)。

編輯:jq

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

原文標題:虹科案例|安全性防護平臺-??低晹z像機中的重大漏洞

文章出處:【微信號:Hongketeam,微信公眾號:廣州虹科電子科技有限公司】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    ??低?/b>推出抗振系列攝像機

    海康威抗振系列攝像機產(chǎn)品的應用,正助力大型起重設(shè)備的遠程控制自動化建設(shè),打造更為高效、安全的作業(yè)環(huán)境。??低?/b>將通過這些創(chuàng)新技術(shù),推動港口
    的頭像 發(fā)表于 11-06 14:44 ?254次閱讀

    浙大與??低?/b>合作再添新成果

    近日,隨著“AIoT-Center智慧應用聯(lián)合實訓基地”揭牌儀式完成,全國干部教育培訓浙江大學基地(以下簡稱“浙大干訓基地”)、浙江大學繼續(xù)教育學院(以下簡稱“浙大繼續(xù)教育學院”)與杭州??低?/b>數(shù)字技術(shù)股份有限公司(以下簡稱“??低?/div>
    的頭像 發(fā)表于 11-06 14:39 ?237次閱讀

    智能工業(yè)檢測:??低?/b>HK-100C網(wǎng)絡控制板的前沿技術(shù)

    智能工業(yè)檢測:??低?/b>HK-100C網(wǎng)絡控制板的前沿技術(shù)
    的頭像 發(fā)表于 10-15 14:20 ?199次閱讀

    中國鐵塔攜手??低?/b>推動千行百業(yè)數(shù)字化建設(shè)

    日前,中國鐵塔股份有限公司(以下簡稱“中國鐵塔”)與杭州??低?/b>數(shù)字技術(shù)股份有限公司(以下簡稱“??低?/b>”)在杭州舉行了戰(zhàn)略合作協(xié)議簽署儀式。中國鐵塔副總經(jīng)理劉國鋒和
    的頭像 發(fā)表于 09-04 11:15 ?596次閱讀

    海康威攜手中國聯(lián)通共同推動千行百業(yè)數(shù)字化轉(zhuǎn)型

    7月19日至20日,以“向新同行,共創(chuàng)智能新時代”為主題的2024國聯(lián)通合作伙伴大會在上海世博中心舉行。???/b>集團董事長、??低?/b>董事長
    的頭像 發(fā)表于 07-20 15:00 ?2001次閱讀

    華東材料與海康威簽署戰(zhàn)略合作協(xié)議

    近日,華東材料有限公司(以下簡稱“華東材料”)與杭州海康威數(shù)字技術(shù)股份有限公司(以下簡稱“??低?/b>”)在杭州簽署戰(zhàn)略合作協(xié)議。雙方將重點圍繞智慧礦山、智能工廠、智慧港口及商品混凝土領(lǐng)
    的頭像 發(fā)表于 07-19 11:31 ?605次閱讀

    ??低?/b>助力電裝(杭州)打造智能工廠

    ??低?/b>協(xié)助工廠部署了AR相機及系統(tǒng)平臺,打通了生產(chǎn)、設(shè)備保全、能源等業(yè)務系統(tǒng)和關(guān)鍵模塊,實現(xiàn)了對生產(chǎn)現(xiàn)場的可視化全景掌握,進一步提升了管理和決策效率。
    的頭像 發(fā)表于 07-19 11:26 ?643次閱讀
    <b class='flag-5'>??低?/b><b class='flag-5'>視</b>助力電裝(杭州)打造智能工廠

    國網(wǎng)智能與??低?/b>達成戰(zhàn)略合作

    近日,國網(wǎng)智能科技股份有限公司(以下簡稱“國網(wǎng)智能”)與杭州??低?/b>數(shù)字技術(shù)股份有限公司(以下簡稱“??低?/b>”)在杭州簽署戰(zhàn)略合作協(xié)議。雙方將重點圍繞智能巡視系統(tǒng)、智慧工地及輸電可視化
    的頭像 發(fā)表于 06-27 09:34 ?755次閱讀

    海康威助力快遞行業(yè)場景數(shù)字化

    ? 目前,??低?/b>相關(guān)技術(shù)方案已在快遞打包、分揀、裝載運輸、終端配送、退換貨等多個環(huán)節(jié)開展場景數(shù)字化建設(shè),助力企業(yè)提升運營管理效率,也給大家?guī)砀玫捏w驗。 快速識別面單信息,快遞包裹“不掉
    的頭像 發(fā)表于 06-20 14:06 ?1173次閱讀

    ??低?/b>英國銷售逆勢增長

    盡管19個月前,英國政府出于安全考慮,禁止在“高風險”政府場所安裝來自中國的攝像頭,其中就包括知名安防設(shè)備制造商??低?/b>的產(chǎn)品,但最新數(shù)據(jù)顯示,這家公司在英國的銷售額卻呈現(xiàn)出逆勢增長的趨勢。
    的頭像 發(fā)表于 06-12 10:08 ?685次閱讀

    中華全國總工會為??低?/b>頒發(fā)“全國五一勞動獎狀”

    浙江工人報以《以數(shù)智科技讓亞運更智能》為題報道了??低?/b>亞運項目團隊
    的頭像 發(fā)表于 05-06 10:43 ?667次閱讀
    中華全國總工會為<b class='flag-5'>??低?/b><b class='flag-5'>視</b>頒發(fā)“全國五一勞動獎狀”

    2023年??低?/b>實現(xiàn)營收893.4億元,同比增長7.42%

    4月19日晚,??低?/b>(002415)披露2023年年度報告。2023年,海康威實現(xiàn)營收893.4億元,同比增長7.42%,歸屬上市公司股東凈利潤141.08億元,同比增長9.89%
    的頭像 發(fā)表于 04-20 14:31 ?1818次閱讀
    2023年<b class='flag-5'>海康威</b><b class='flag-5'>視</b>實現(xiàn)營收893.4億元,同比增長7.42%

    東海實驗室和??低?/b>簽署戰(zhàn)略合作協(xié)議,攜手推進智慧海洋建設(shè)

    3月27日,東海實驗室與杭州海康威數(shù)字技術(shù)股份有限公司(簡稱“??低?/b>”)在舟山簽署戰(zhàn)略合作協(xié)議。
    的頭像 發(fā)表于 03-29 15:02 ?987次閱讀

    蜂窩物聯(lián):農(nóng)情監(jiān)測攝像機,無人值守,記錄生長全過程

    和物聯(lián)網(wǎng)技術(shù),蜂窩物聯(lián)基于海康威攝像機開發(fā)了農(nóng)情監(jiān)測攝像機可以遠程查看作物長勢、病蟲害情況、果實成熟度等。為農(nóng)業(yè)作業(yè)提供科學依據(jù)。 農(nóng)情監(jiān)測攝像機
    的頭像 發(fā)表于 03-04 15:27 ?464次閱讀
    蜂窩物聯(lián):農(nóng)情監(jiān)測<b class='flag-5'>攝像機</b>,無人值守,記錄生長全過程

    ??低?/b>攝像機密碼重置方法

    經(jīng)常使用??低?/b>攝像機,如果碰到密碼忘記,重試多次被鎖定了怎么辦?密碼找不回怎么辦?蒙圈了吧!
    的頭像 發(fā)表于 01-09 10:21 ?4238次閱讀
    <b class='flag-5'>海康威</b><b class='flag-5'>視</b><b class='flag-5'>攝像機</b>密碼重置方法