色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

模糊測試如何加強物聯(lián)網(wǎng)設(shè)備的安全性

小黑羊 ? 來源:小黑羊 ? 作者:小黑羊 ? 2022-07-15 08:17 ? 次閱讀

隨著物聯(lián)網(wǎng)設(shè)備的普及,嵌入式安全攻擊也隨之增加。從歷史上看,嵌入式系統(tǒng)工程師忽略了設(shè)備層的安全性,盡管嵌入式設(shè)備的許多領(lǐng)域都容易受到錯誤的影響。串行端口、無線電接口,甚至編程/調(diào)試接口都可能被黑客利用。模糊測試是工程師發(fā)現(xiàn)嵌入式設(shè)備弱點的重要場所,應(yīng)考慮用于強化物聯(lián)網(wǎng)設(shè)備接口。

什么是模糊測試?

模糊測試就像神話中的百萬只猴子隨機打字寫莎士比亞。在實踐中,小說作品需要許多隨機組合來產(chǎn)生一個簡單的短語,但對于嵌入式系統(tǒng),我們只需要從一個已知的好句子中更改幾個字母。

許多商業(yè)和開源工具可用于實施模糊攻擊。這些工具生成隨機字節(jié)串,也稱為模糊向量或攻擊向量,并將它們提交到正在測試的接口,跟蹤可能表示錯誤的結(jié)果行為。

模糊測試是一個數(shù)字游戲,但我們不能嘗試無限數(shù)量的可能輸入。相反,我們專注于通過最大化模糊向量提交率、模糊向量的有效性和錯誤檢測算法來優(yōu)化測試時間。

模糊測試概念

由于許多模糊測試工具都是為測試 PC 應(yīng)用程序而設(shè)計的,因此如果您將嵌入式代碼作為本地編譯的 PC 應(yīng)用程序運行,則更容易適應(yīng)它們。在 PC 上運行嵌入式代碼會產(chǎn)生巨大的性能優(yōu)勢,但也有兩個缺點。首先,PC 微處理器的反應(yīng)與嵌入式微控制器不同。其次,我們必須重新編寫任何涉及硬件的代碼。然而,在實踐中,在 PC 上運行的優(yōu)勢大于劣勢。真正的障礙是移植代碼以在 PC 上本地編譯的困難。

我們?nèi)绾沃滥:蛄亢螘r觸發(fā)錯誤?崩潰很容易發(fā)現(xiàn),但很難識別導(dǎo)致重置的模糊向量。內(nèi)存溢出錯誤或雜散指針寫入(對黑客最有價值的錯誤類型)幾乎不可能從系統(tǒng)外部辨別出來,因為它們通常不會導(dǎo)致崩潰或重置。

許多現(xiàn)代編譯器,例如 GCC 和 Clang,都有一個稱為內(nèi)存清理的功能。這將內(nèi)存塊標記為干凈或臟,具體取決于它們是否正在使用,并標記任何訪問臟內(nèi)存的嘗試。但是,內(nèi)存清理會消耗閃存、RAMCPU 周期,使其難以在嵌入式設(shè)備上運行。因此,相反,我們可以測試代碼子集,構(gòu)建具有更多資源的設(shè)備版本,或者使用 PC。

測試的有效性可以通過執(zhí)行的代碼量來評估。在這里,編譯器也可以通過使用面包屑子例程調(diào)用來跟蹤內(nèi)存使用情況。代碼覆蓋率庫為每個代碼路徑維護一個使用值表,在面包屑執(zhí)行時遞增它們。

然而,對于嵌入式模糊測試來說,代碼覆蓋率數(shù)字很難解釋,因為大部分代碼對于模糊向量來說是不可訪問的;例如,獨立于接口運行的外圍設(shè)備的設(shè)備驅(qū)動程序。因此,很難為嵌入式系統(tǒng)定義“完整的代碼覆蓋率”——也許只有 20% 的嵌入式代碼是可訪問的。代碼覆蓋還消耗大量閃存、RAM 和 CPU 周期,并且需要專門的硬件或 PC 目標才能運行。

錯誤報告

當模糊測試發(fā)現(xiàn)導(dǎo)致不良行為的向量時,我們需要詳細信息。錯誤發(fā)生在哪里?調(diào)用堆棧的狀態(tài)是什么?錯誤的具體類型是什么?所有這些信息都有助于分類并最終修復(fù)錯誤。

錯誤分類在模糊測試中至關(guān)重要。新的 fuzz 項目經(jīng)常會發(fā)現(xiàn)很多 bug,我們需要一種自動的方法來確定它們的嚴重性。此外,模糊錯誤往往會阻止錯誤,因為它們通常會在代碼路徑中進一步掩蓋其他錯誤。我們需要快速解決模糊測試期間出現(xiàn)的問題。

嵌入式客戶端不像 PC 那樣愿意透露他們的信息。通常,崩潰只會導(dǎo)致設(shè)備重置并重新啟動。雖然這在現(xiàn)場是需要的,但它會擦除設(shè)備的狀態(tài),從而難以了解是否發(fā)生了崩潰、發(fā)生的地點或原因,或者所采用的代碼路徑。工程師必須找到一致的再現(xiàn)向量,然后使用調(diào)試器跟蹤不良行為并找到錯誤。

在模糊測試中,一個測試可能會為幾個錯誤產(chǎn)生數(shù)千個崩潰向量,給人一種錯誤系統(tǒng)的錯誤印象??焖俅_定哪些向量與相同的潛在錯誤相關(guān)聯(lián)非常重要。對于嵌入式設(shè)備,崩潰本身的位置對于錯誤通常是唯一的,通常不需要找到完整的調(diào)用堆棧跟蹤。

連續(xù)模糊測試

由于模糊測試的隨機性,長時間運行它們會增加他們發(fā)現(xiàn)問題的機會。但是,任何項目計劃都不能吸收開發(fā)結(jié)束時冗長的模糊測試周期造成的延遲。

在實踐中,模糊測試將在發(fā)布過程之后在其自己的分支上開始。任何新發(fā)現(xiàn)的錯誤都將在本地分支中修復(fù),以便測試可以繼續(xù),而新錯誤不會阻止額外的錯誤發(fā)現(xiàn)。作為發(fā)布周期的一部分,從模糊測試先前版本中發(fā)現(xiàn)的錯誤將被評估以包含在新版本中。最后,應(yīng)該將發(fā)現(xiàn)錯誤的模糊向量添加到正常的質(zhì)量保證過程中,以驗證修復(fù)并確保這些錯誤不會無意中重新引入代碼中。

我們應(yīng)該在不同場景下對設(shè)備進行模糊測試;例如,如果聯(lián)網(wǎng),設(shè)備對連接請求的響應(yīng)會有所不同。在每個可能的場景上運行模糊測試是不切實際的,但我們可以為每個可能狀態(tài)的值包括模糊測試。例如,對每種不同的設(shè)備類型運行模糊測試,同時保持其他變量相同。然后為一個設(shè)備類型的另一個變量(例如網(wǎng)絡(luò)連接狀態(tài))運行不同的值。

模糊測試架構(gòu)

兩種突出的模糊測試架構(gòu)是定向模糊測試,其中模糊向量由工程師在測試前指定,以及覆蓋引導(dǎo)模糊測試,其中模糊工具從一組初始測試向量開始,并根據(jù)數(shù)據(jù)包的滲透程度自動改變它們編碼。

此外,并非所有代碼都可以在 PC 上運行,并且為嵌入式應(yīng)用程序開發(fā) PC 模擬器可能是不切實際的,具體取決于所測試的內(nèi)容。

以下是四種模糊測試架構(gòu)的總結(jié):

嵌入式硬件上的直接接口測試——在嵌入式設(shè)備上運行正常的生產(chǎn)映像,并通過接口注入模糊數(shù)據(jù)包

數(shù)據(jù)包(堆棧)注入測試——直接調(diào)用傳入的數(shù)據(jù)包例程,而無需通過無線運行接口

使用模擬器進行定向模糊測試——使用基于 PC 的模擬技術(shù)開發(fā)和測試嵌入式代碼

使用模擬器進行覆蓋引導(dǎo)的模糊測試(如下所示的 Libfuzz)

pYYBAGLO9neASlSfAAGpSLM1AqI995.png

多個模糊測試器

在使用調(diào)試接口鎖定和安全啟動鎖定嵌入式設(shè)備后,我們需要考慮對設(shè)備接口進行模糊測試。用于保護 Web 服務(wù)器的許多相同工具和概念可以適用于嵌入式設(shè)備。

為工作使用正確的工具。Coverage-guided fuzzing 對于連續(xù)模糊測試是必要的,但如果您的代碼僅在嵌入式硬件上執(zhí)行,那么定向模糊器可能是提供一定程度的模糊測試覆蓋率的不錯選擇。

最后,您應(yīng)該在盡可能多的場景中使用多個模糊測試器,因為每個測試器都會對設(shè)備進行略微不同的測試,從而最大限度地提高覆蓋率,從而提高嵌入式設(shè)備的安全性。

審核編輯:郭婷

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

    關(guān)注

    5086

    文章

    19140

    瀏覽量

    305865
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44704

    瀏覽量

    374161
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1634

    瀏覽量

    49161
收藏 人收藏

    評論

    相關(guān)推薦

    電池的安全性測試項目有哪些?

    電池的安全性測試是保證電池在實際使用過程中穩(wěn)定、安全的重要手段。通過一系列嚴格的測試項目,能夠有效評估電池在不同條件下的表現(xiàn),并提前發(fā)現(xiàn)潛在的安全
    的頭像 發(fā)表于 12-06 09:55 ?417次閱讀
    電池的<b class='flag-5'>安全性</b><b class='flag-5'>測試</b>項目有哪些?

    電池安全性測試關(guān)鍵:圓柱與軟包電池測試設(shè)備指南

      在進行圓柱電池和軟包電池的安全性測試時,必須使用一系列專業(yè)的測試設(shè)備,以全面評估電池在不同極限條件下的表現(xiàn)。常見的必備測試儀器包括電池
    的頭像 發(fā)表于 12-06 09:35 ?285次閱讀
    電池<b class='flag-5'>安全性</b><b class='flag-5'>測試</b>關(guān)鍵:圓柱與軟包電池<b class='flag-5'>測試</b><b class='flag-5'>設(shè)備</b>指南

    在電氣安裝中通過負載箱實現(xiàn)最大效率和安全性

    在電氣安裝中,負載箱是一種常用的設(shè)備,主要用于模擬實際的電力負載,以便進行各種電氣設(shè)備測試和調(diào)試。通過負載箱,可以實現(xiàn)最大效率和安全性,從而提高電氣
    發(fā)表于 11-20 15:24

    藍牙AES+RNG如何保障聯(lián)網(wǎng)信息安全

    安全性。在競爭應(yīng)答機制中,隨機數(shù)生成器也發(fā)揮著關(guān)鍵作用。它確保了在多個設(shè)備競爭同一資源時,能夠依據(jù)公平且隨機的原則分配訪問權(quán),有效避免通信沖突與擁塞現(xiàn)象的發(fā)生。同時,隨機數(shù)生成器還能有效防御重放攻擊。通過
    發(fā)表于 11-08 15:38

    深圳南柯電子 大功率電源EMC測試整改實驗室:確保設(shè)備安全性

    深圳南柯電子|大功率電源EMC測試整改實驗室:確保設(shè)備安全性
    的頭像 發(fā)表于 10-30 14:38 ?211次閱讀
    深圳南柯電子 大功率電源EMC<b class='flag-5'>測試</b>整改實驗室:確保<b class='flag-5'>設(shè)備</b>的<b class='flag-5'>安全性</b>

    如何提高聯(lián)網(wǎng)設(shè)備的互聯(lián)

    聯(lián)網(wǎng)(IoT)正在改變我們的生活方式,從智能家居到工業(yè)自動化,設(shè)備間的互聯(lián)是實現(xiàn)這些變革的基礎(chǔ)。然而,不同制造商和不同技術(shù)之間的兼容性問題、安全
    的頭像 發(fā)表于 10-29 11:35 ?437次閱讀

    聯(lián)網(wǎng)設(shè)備的標準與規(guī)范

    的兼容安全性和互操作。 1. 聯(lián)網(wǎng)設(shè)備的標準
    的頭像 發(fā)表于 10-29 11:34 ?671次閱讀

    如何實現(xiàn)聯(lián)網(wǎng)安全

    凸顯。 1. 設(shè)備安全:從源頭開始 聯(lián)網(wǎng)設(shè)備安全性應(yīng)該從設(shè)計階段就開始考慮。制造商需要確保
    的頭像 發(fā)表于 10-29 10:24 ?368次閱讀

    智能系統(tǒng)的安全性分析

    )和非對稱加密(如RSA)等技術(shù),確保數(shù)據(jù)在存儲和傳輸過程中的機密。 加密算法應(yīng)經(jīng)過廣泛驗證和測試,以確保其安全性和可靠。 數(shù)據(jù)完整
    的頭像 發(fā)表于 10-29 09:56 ?267次閱讀

    如何測試聯(lián)網(wǎng)設(shè)備的功耗

    如何測試聯(lián)網(wǎng)設(shè)備的功耗聯(lián)網(wǎng)(IoT)將涵蓋我們?nèi)粘I畹母鱾€方面,因為它使數(shù)十億的物品能夠隨
    的頭像 發(fā)表于 10-11 08:05 ?470次閱讀
    如何<b class='flag-5'>測試</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b><b class='flag-5'>設(shè)備</b>的功耗

    利用JTAGLOCK特性增強設(shè)備安全性

    電子發(fā)燒友網(wǎng)站提供《利用JTAGLOCK特性增強設(shè)備安全性.pdf》資料免費下載
    發(fā)表于 09-14 10:06 ?3次下載
    利用JTAGLOCK特性增強<b class='flag-5'>設(shè)備</b><b class='flag-5'>安全性</b>

    基于聯(lián)網(wǎng)設(shè)備管理

    聯(lián)網(wǎng)設(shè)備管理的重要日益凸顯,設(shè)備數(shù)量激增帶來數(shù)據(jù)泄露風(fēng)險。加強
    的頭像 發(fā)表于 09-10 11:04 ?658次閱讀
    基于<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>的<b class='flag-5'>設(shè)備</b>管理

    開關(guān)電源安全性測試項目有哪些?如何測試

    總結(jié)而言,通過對開關(guān)電源進行過壓保護、過流保護、短路保護、絕緣電阻測試、高壓測試以及溫升測試等一系列全面的安全性檢測,可以充分評估電源的可靠
    的頭像 發(fā)表于 05-23 17:41 ?965次閱讀
    開關(guān)電源<b class='flag-5'>安全性</b><b class='flag-5'>測試</b>項目有哪些?如何<b class='flag-5'>測試</b>?

    DC電源模塊的安全性能評估與測試方法

    BOSHIDA DC電源模塊的安全性能評估與測試方法 DC電源模塊的安全性能評估與測試方法應(yīng)包括以下幾個方面: ?DC電源模塊的安全性能評估
    的頭像 發(fā)表于 03-08 11:15 ?709次閱讀
    DC電源模塊的<b class='flag-5'>安全性</b>能評估與<b class='flag-5'>測試</b>方法

    如何解決聯(lián)網(wǎng)應(yīng)用的網(wǎng)絡(luò)安全性議題?

    隨著聯(lián)網(wǎng)應(yīng)用的普及,聯(lián)網(wǎng)設(shè)備已經(jīng)逐漸出現(xiàn)在我們的日常生活之中,但這些產(chǎn)品也成為了惡意份子攻擊的目標,如何確保
    的頭像 發(fā)表于 02-21 09:42 ?890次閱讀
    如何解決<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>應(yīng)用的網(wǎng)絡(luò)<b class='flag-5'>安全性</b>議題?
    主站蜘蛛池模板: 哺乳期妇女挤奶水36d| 水蜜桃亚洲一二三四在线| www.青青草| 亚洲国产成人精品不卡青青草原| 男人就爱吃这套下载| 国产在线视精品在亚洲| YELLOW视频在线观看最新| 伊人草| 午夜无码国产理论在线| 秋霞av伦理片在线观看| 老师你下面好紧夹死了| 国产在线精品亚洲第一区| 超碰v| 99久久99久久精品国产片果冻| 亚洲在线2018最新无码| 我们中文在线观看免费完整版| 强奸日本美女小游戏| 免费观看亚洲视频| 久久久久999| 极品美女穴| 国产一及毛片| 国产激情一级毛片久久久| 成人性生交大片| gogogo视频在线观看| 2021国产精品视频| 在线欧美免费人成视频| 亚洲中文久久精品AV无码| 亚洲AV无码国产精品色午夜情| 双手绑在床头调教乳尖| 日本一本二本三区免费免费高清| 免费鲁丝片一级在线观看| 老师的脚奴| 快穿女主有名器的H纯肉黄暴拉文| 精品国产乱码久久久久久免费流畅| 国产精品亚洲欧美一区麻豆| 国产成人精品男人的天堂网站 | 羞羞答答影院在线| 我要干av| 性夜夜春夜夜爽AA片A| 小草高清视频免费直播| 香蕉动漫库|