91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

454398 ? 來(lái)源:電子發(fā)燒友網(wǎng)整理 ? 作者:h1654155596.7254 ? 2017-08-04 09:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為助力中國(guó)電子工程師更好將創(chuàng)新創(chuàng)意落地,

由華強(qiáng)芯城、電子發(fā)燒友網(wǎng)攜手ARM聯(lián)合舉辦

華強(qiáng)芯城2017工程師創(chuàng)新設(shè)計(jì)大賽[點(diǎn)擊報(bào)名]

為什么要舉辦這個(gè)大賽?

簡(jiǎn)單來(lái)說(shuō),就是一個(gè)給工程師創(chuàng)意創(chuàng)新造夢(mèng)的舞臺(tái);

沒(méi)有參賽利器?送你mbed相關(guān)開(kāi)發(fā)套件;

如果你是一枚科技極客俠,

擁有無(wú)數(shù)天馬行空的想法;

如果你是智造DIY達(dá)人,

用有眾多令人欽羨的技能;

如果你想親自參與改變未來(lái)智能電子產(chǎn)品,

而且創(chuàng)意爆表;

NB了,Word天!你還在猶豫什么?

Come on!“華強(qiáng)芯城2017工程師創(chuàng)新設(shè)計(jì)大賽”并且期待你組隊(duì)來(lái)迎戰(zhàn)!

未來(lái)的創(chuàng)新設(shè)計(jì)舞臺(tái)就在這里

快來(lái)盡情揮灑你的靈感吧~




嵌入式產(chǎn)品Hacking 一直都是備受關(guān)注的議題,而越來(lái)越多的攻擊者也瞄上了物聯(lián)網(wǎng)嵌入式設(shè)備。跟以往純軟件安全研究不同的是,這類研究往往需要結(jié)合相應(yīng)的硬件知識(shí)和設(shè)備。如何能快速入門(mén)嵌入式系統(tǒng)?本文分享針對(duì)I2C協(xié)議的實(shí)戰(zhàn)案例和相應(yīng)的工具使用。希望可以一起來(lái)Hacking all the Things。

I2C協(xié)議基礎(chǔ)

凡是接觸過(guò)嵌入式系統(tǒng)的朋友,對(duì)I2C協(xié)議一定不會(huì)陌生。其與UART,SPI和JTAG等并列為最常見(jiàn)調(diào)試協(xié)議。I2C 全稱為Inter-Integrated Circuit,是由飛利浦公司設(shè)計(jì)的一種多主從架構(gòu)的串口通訊協(xié)議。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

I2C協(xié)議非常簡(jiǎn)單,僅有Clock 和 Data 兩條數(shù)據(jù)總線,外加 Ground. 通常是1個(gè)主設(shè)備和多個(gè)從設(shè)備的架構(gòu)。在通訊速度上分別為100khz,400khz,1Mhz,3.2Mhz。在運(yùn)用方面對(duì)速度沒(méi)有高要求的,都可以使用I2C進(jìn)行通訊。比如PC風(fēng)扇的溫度和電池的電壓數(shù)據(jù)采集等,每個(gè)I2C設(shè)備都各有一個(gè)讀和寫(xiě)地址,只有知道了這個(gè)讀寫(xiě)地址才能跟其通訊。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

除此之外許多用來(lái)存儲(chǔ)系統(tǒng)配置和參數(shù)的EEPROM芯片自身也支持I2C協(xié)議,比如IBM Thinkpad 系列用來(lái)存儲(chǔ)BIOS 密碼的EEPROM,就是通過(guò)I2C協(xié)議在MCU與EEPROM 之間進(jìn)行交互。

神器BusPirate

工欲善其事必先利其器,擁有一款神器對(duì)嵌入式設(shè)備Hacking將起到事半功倍的作用。BusPirate 是由Dangerous prototypes 設(shè)計(jì)出品的一款硬件hacking 瑞士軍刀,支持多項(xiàng)常見(jiàn)協(xié)議并可跨平臺(tái)Windows/Linux/MAC,并擁有豐富的幫助文檔。

BusPirate可以Sniffing 和讀寫(xiě) I2C等協(xié)議,同時(shí)還可對(duì)AVR 等芯片進(jìn)行編程操作,在操作上也是非常簡(jiǎn)單,只需用minicom 以115200 波特率跟BusPirate連接便可。

BusPirate支持協(xié)議如下:

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

BusPirate 接口連接示意圖:

BusPirate 命令列表:

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

攻擊案例 -- 數(shù)字密碼鎖

接下來(lái)我們來(lái)看一個(gè)通過(guò)分析I2C 協(xié)議,從而破解門(mén)鎖密碼的實(shí)戰(zhàn)案例,我們的目標(biāo)是這款 型號(hào)為YL99 的數(shù)字密碼鎖。這款密碼鎖完全依賴于用戶設(shè)置的數(shù)字密碼,也許對(duì)某些人來(lái)說(shuō)不需要帶一堆鑰匙的確方便了很多。

因?yàn)閅L99 是完全電子化的的門(mén)鎖,所以提供了普通機(jī)械鎖沒(méi)有的功能。比如YL99 擁有多 個(gè)功能不同的賬戶,Master 賬戶:可用于設(shè)置管理用戶密碼(默認(rèn)0123#)。普通賬戶:用于存儲(chǔ)普通用戶密碼。YL99 同時(shí)還提供了貼心的防密碼泄漏功能,操作方法:鍵入起始碼(0) + 跟隨用于掩蓋的任意幾位數(shù)字+ 跟隨正確密碼 + # (確認(rèn)結(jié)束)。 通過(guò)這樣的方式就算邊上有人,也不怕被看到正確密碼了。

但是千里之堤,潰于蟻穴。YL99 的設(shè)計(jì)缺陷,竟能讓人從外部將鎖的鍵盤(pán)部分分離,從而訪問(wèn)到內(nèi)部PCB 主板。而玩過(guò)硬件Hacking 的朋友都知道,被人輕易訪問(wèn)到內(nèi)部PCB 主板部分是大忌。

在YL99被打開(kāi)后主板結(jié)構(gòu)便展現(xiàn)眼前。除了YL99 使用的元器件外,我們還可以清晰看到主板上還標(biāo)有一個(gè)Reset 復(fù)位觸點(diǎn)。那么這個(gè)時(shí)候我們便可以通過(guò)短接復(fù)位觸點(diǎn)和Ground 的方式將密碼恢復(fù)到出廠設(shè)置,從而得到bypass 的目的。但這方法的短處也非常明顯,在bypass 的時(shí)候每次都需要卸螺絲,而且如果恢復(fù)到出廠值,很容易就被人發(fā)現(xiàn)了。

不過(guò)好戲才剛開(kāi)始。我們?cè)谥靼迳线€發(fā)現(xiàn)了YL99使用的MCU em78p156e 和用來(lái)存儲(chǔ)密碼信息的EEPROM 24C02。通過(guò)閱讀24C02 的datasheet 我們得知其使用I2C 協(xié)議和MCU 通訊,同時(shí)datasheet 也清晰的標(biāo)出了芯片管腳的用途,比如I2C 使用的SCL(時(shí)鐘頻率) 和SDA(數(shù)據(jù)總線)。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

終于我們的神器BusPirate要派上用場(chǎng)了。我們首先用數(shù)據(jù)線將24C02的I2C 管腳和BusPirate的對(duì)應(yīng)接口連接起來(lái)。

隨后通過(guò)minicom 或其他serial tools 進(jìn)入Buspirate的I2C調(diào)試模式。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

在I2C 的調(diào)試模式中,有個(gè)非常有用的功能I2C sniffer。通過(guò)它我們可以監(jiān)控I2C 的數(shù)據(jù),用過(guò)WIRESHARK 的朋友一定不會(huì)陌生。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

開(kāi)啟了I2C Sniffer 模式后,我們便可開(kāi)始觀察MCU 和 EEPROM之間的密碼交互。比如YL99 的密碼輸入過(guò)程為起始碼(0) + 正確密碼 + 結(jié)束確認(rèn)(#)。

通過(guò)觀察發(fā)現(xiàn)在按下結(jié)束確認(rèn)(#) 后,MCU 便向24C02 發(fā)送密碼驗(yàn)證請(qǐng)求。但隨后致命的設(shè)計(jì)錯(cuò)誤出現(xiàn),EPPROM 24C02 將正確的密碼以明文的方式發(fā)回給MCU 以求完成密碼驗(yàn)證過(guò)程,而這過(guò)程我們通過(guò)BusPirate 的I2C sniffer一覽無(wú)遺。

手把手DIY,教你強(qiáng)攻嵌入式設(shè)備那些黑科技

▲如圖:因?yàn)槭褂玫膌ittle endian 所以密碼 123 和456 會(huì)反著顯示

總結(jié)

通過(guò)本文的介紹和實(shí)踐案例,相信大家對(duì)I2C 協(xié)議和利用方式有了一定的了解。劍走偏鋒,反其道行之。攻擊者往往將系統(tǒng)的短板作為攻擊點(diǎn),倘若某款嵌入式系統(tǒng)的設(shè)計(jì)者僅僅考慮到軟件層面的安全,而攻擊者又能得到物理訪問(wèn)的話,那些防御方式便形同虛設(shè)。同時(shí)嵌入式產(chǎn)品往往面臨上市后便難以升級(jí)的困難,一旦攻擊方式曝光由此給產(chǎn)品帶來(lái)的損失是巨大的,因此安全產(chǎn)品在設(shè)計(jì)之初即應(yīng)將安全考慮進(jìn)去。

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

    關(guān)注

    5200

    文章

    20483

    瀏覽量

    334596
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3753

    瀏覽量

    133691
  • DIY
    DIY
    +關(guān)注

    關(guān)注

    176

    文章

    898

    瀏覽量

    359331
  • 智能硬件
    +關(guān)注

    關(guān)注

    205

    文章

    2424

    瀏覽量

    111507
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    電子發(fā)燒友年終盤(pán)點(diǎn)——內(nèi)容精選

    其中排名靠前的TOP50,在這里綜合精選20余篇,讓諸位重溫這些文章。DIY高大上!用STM32單片機(jī)搞定四旋翼無(wú)人機(jī)飛控你想知道的NB-IoT知識(shí)都在這里了!手把手DIY,教你
    發(fā)表于 02-06 15:01

    手把手教你怎樣去實(shí)現(xiàn)一個(gè)嵌入式軟件架構(gòu)的設(shè)計(jì)

    手把手教你怎樣去實(shí)現(xiàn)一個(gè)嵌入式軟件架構(gòu)的設(shè)計(jì)?有哪些步驟及其要求呢?
    發(fā)表于 12-24 06:54

    手把手教你構(gòu)建一個(gè)完整的工程

    手把手教你構(gòu)建一個(gè)完整的工程
    發(fā)表于 08-03 09:54 ?33次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>構(gòu)建一個(gè)完整的工程

    手把手教你寫(xiě)批處理-批處理的介紹

    手把手教你寫(xiě)批處理-批處理的介紹
    發(fā)表于 10-25 15:02 ?69次下載

    美女手把手教你如何裝機(jī)(中)

    美女手把手教你如何裝機(jī)(中) 再來(lái)是硬碟的部份,這款機(jī)殼還不錯(cuò),可以旋轉(zhuǎn)支架~
    發(fā)表于 01-27 11:14 ?1638次閱讀

    美女手把手教你如何裝機(jī)(下)

    美女手把手教你如何裝機(jī)(下) 接著下來(lái)就是今天的重頭戲,開(kāi)核蘿!~
    發(fā)表于 01-27 11:16 ?3170次閱讀

    手把手教你學(xué)電子書(shū)制作

    手把手教你學(xué)電子書(shū)制作,可以自己DIY電子書(shū)
    發(fā)表于 09-13 11:26 ?0次下載

    手把手教你安裝Quartus II

    本章手把手把教你如何安裝 Quartus II 軟件 ,并將它激活 。此外 還有USB -Blaster下載器的驅(qū)動(dòng)安裝步驟 。
    發(fā)表于 09-18 14:55 ?9次下載

    手把手教你在家搭建監(jiān)控系統(tǒng)

    手把手教你在家搭建監(jiān)控系統(tǒng)
    發(fā)表于 01-17 19:47 ?30次下載

    手把手教你如何開(kāi)始DSP編程

    手把手教你如何開(kāi)始DSP編程。
    發(fā)表于 04-09 11:54 ?13次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>如何開(kāi)始DSP編程

    手把手教你學(xué)LabVIEW視覺(jué)設(shè)計(jì)

    手把手教你學(xué)LabVIEW視覺(jué)設(shè)計(jì)手把手教你學(xué)LabVIEW視覺(jué)設(shè)計(jì)手把手教你學(xué)LabVIEW視
    發(fā)表于 03-06 01:41 ?3561次閱讀

    嵌入式 - STM32開(kāi)發(fā)指南》手把手教你搭建STM32開(kāi)發(fā)環(huán)境 [Windows版 - 3]

    嵌入式 - STM32開(kāi)發(fā)指南》手把手教你搭建STM32開(kāi)發(fā)環(huán)境 [Windows版 - 1]《嵌入式 - STM32開(kāi)發(fā)指南》手把手
    發(fā)表于 12-06 09:36 ?0次下載
    《<b class='flag-5'>嵌入式</b> - STM32開(kāi)發(fā)指南》<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>搭建STM32開(kāi)發(fā)環(huán)境 [Windows版 - 3]

    嵌入式 - STM32開(kāi)發(fā)指南》手把手教你搭建STM32開(kāi)發(fā)環(huán)境 [Linux版 - 3]

    嵌入式 - STM32開(kāi)發(fā)指南》手把手教你搭建STM32開(kāi)發(fā)環(huán)境 [Linux版 - 1]《嵌入式 - STM32開(kāi)發(fā)指南》手把手
    發(fā)表于 12-06 09:36 ?0次下載
    《<b class='flag-5'>嵌入式</b> - STM32開(kāi)發(fā)指南》<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>搭建STM32開(kāi)發(fā)環(huán)境 [Linux版 - 3]

    嵌入式秘術(shù)】手把手教你如何劫持RTOS(下)

    在《【嵌入式秘術(shù)】手把手教你如何劫持RTOS(上)》中,我們做了簡(jiǎn)單的熱身——介紹了一種在你擁有某一個(gè)庫(kù)的源代碼或者.lib文件時(shí),如何...
    發(fā)表于 01-25 18:51 ?7次下載
    【<b class='flag-5'>嵌入式</b>秘術(shù)】<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>如何劫持RTOS(下)

    手把手教你學(xué)FPGA仿真

    電子發(fā)燒友網(wǎng)站提供《手把手教你學(xué)FPGA仿真.pdf》資料免費(fèi)下載
    發(fā)表于 10-19 09:17 ?2次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>學(xué)FPGA仿真