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

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

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

探究??低晹z像機中的重大漏洞

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

前言

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

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

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

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

技術(shù)概述

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

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

在處理對不需要HTTP身份驗證的頁面的請求的代碼中,存在對sscanf的非安全調(diào)用,當使用特制請求時,該調(diào)用會導(dǎo)致緩沖區(qū)溢出,從而損壞內(nèi)存和導(dǎo)致任意代碼執(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服務(wù)器應(yīng)用于整個URI(包括查詢字符串)的限制。

在頁面背后的任何邏輯發(fā)生之前,首先應(yīng)用Web服務(wù)器的限制,如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的長度是否相等。現(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ēng)險,我們決定不發(fā)布PoC,以保護尚未升級其設(shè)備的用戶免受惡意攻擊。

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

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

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

最佳操作是即使在特定情況下也不要使用任何不安全的功能版本,定期使用它們很危險。特別是,建議不要使用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í)行文件識別出堆棧受到破壞時將崩潰。這將導(dǎo)致短暫的拒絕服務(wù),但至少它不允許攻擊者運行其選擇的代碼。

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

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

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

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

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

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

編輯:jq

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

    關(guān)注

    0

    文章

    105

    瀏覽量

    24795
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4260

    瀏覽量

    62231
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4697

    瀏覽量

    68085
  • ??低?/span>
    +關(guān)注

    關(guān)注

    16

    文章

    401

    瀏覽量

    73040

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

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

收藏 人收藏

    評論

    相關(guān)推薦

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

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

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

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

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

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

    華東材料與??低?/b>簽署戰(zhàn)略合作協(xié)議

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

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

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

    ??低?/b>助力快遞行業(yè)場景數(shù)字化

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

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

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

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

    浙江工人報以《以數(shù)智科技讓亞運更智能》為題報道了??低?/b>亞運項目團隊
    的頭像 發(fā)表于 05-06 10:43 ?566次閱讀
    中華全國總工會為<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年,??低?/b>實現(xiàn)營收893.4億元,同比增長7.42%,歸屬上市公司股東凈利潤141.08億元,同比增長9.89%
    的頭像 發(fā)表于 04-20 14:31 ?1782次閱讀
    2023年<b class='flag-5'>??低?/b><b class='flag-5'>視</b>實現(xiàn)營收893.4億元,同比增長7.42%

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

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

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

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

    海康威攝像機密碼重置方法

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

    機器視覺攝像機標定的目的是什么

    空間物體表面某點的三維幾何位置與其在圖像對應(yīng)點之間的相互關(guān)系是由攝像機成像的幾何模型決定的,這些幾何模型參數(shù)就是攝像機參數(shù),為了得到這些參數(shù)而進行的實驗與計算的過程稱為攝像機標定。
    發(fā)表于 11-03 11:07 ?1265次閱讀
    機器視覺<b class='flag-5'>中</b><b class='flag-5'>攝像機</b>標定的目的是什么

    感受普奧4K靜音云臺攝像機的極致魅力

    攝像機
    jf_33011535
    發(fā)布于 :2023年11月03日 08:55:36