chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

芯片漏洞實戰(zhàn)之破解KASLR

Linux閱碼場 ? 來源:https://paper.seebug.org/497/ ? 作者:蒸米,白小龍 ? 2020-11-26 13:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Meltdown和Spectre分析以及CPU芯片漏洞攻擊實戰(zhàn),教你如何破解macOS上的KASLR。

作者:蒸米,白小龍 @ 阿里移動安全 來源:

https://paper.seebug.org/497/

0x00 影響

早上突然就被Meltdown和Spectre這兩個芯片漏洞刷屏了,但基本上都是一些新聞報道,對漏洞的分析和利用的信息基本為0。作為安全研究者,不能只浮在表面,還是要深入了解一下漏洞才行,于是開始研究這方面的資料。結果發(fā)現(xiàn)其實這個硬件漏洞的影響非常廣,不光是Intel, ARMAMD也受影響,只是AMD的影響比較小罷了。因此基本上所有的操作系統(tǒng)(Windows,macOS,Linux,Android等)都有被攻擊的風險。漏洞有兩種攻擊模式:一種被稱為Meltdown,是在用戶態(tài)攻擊內核態(tài),造成內核信息泄露。另一種被稱為Spectre,一個應用可以突破自己的沙盒限制,獲取其他應用的信息。另外,因為是硬件漏洞,這個攻擊對云的影響非常大,利用這個漏洞,一個guest可以獲取host或同一臺服務器上其他guest的信息,可以說是一個非常嚴重的漏洞,因此亞馬遜和google都在緊急加班修復漏洞。比如google就公布了漏洞修復的進度在:https://support.google.com/faqs/answer/7622138。雖然是硬件漏洞,但是在系統(tǒng)或軟件層面上通過犧牲性能的方法還是可以進行修補的。

0x01 原因

那么我們現(xiàn)在知道漏洞很嚴重了,那么漏洞形成的原因是什么呢?關鍵點在于Speculative execution(推測執(zhí)行)。推測性執(zhí)行是一種優(yōu)化技術,CPU會執(zhí)行一些可能在將來會執(zhí)行任務。當分支指令發(fā)出之后,傳統(tǒng)處理器在未收到正確的反饋信息之前,是不會做任何工作的,而具有預測執(zhí)行能力的新型處理器,可以估計即將執(zhí)行的指令,采用預先計算的方法來加快整個處理過程。如果任務最終沒有被執(zhí)行,CPU還可以回滾到之前的狀態(tài),就當做什么都沒發(fā)生過一樣。但是這樣真的安全嗎?答案是,并不安全。攻擊者通過尋找或構建一些指令就可以在CPU回滾的時間窗口里進行一系列的攻擊。比如Google Blog中提到的邊界檢查繞過(CVE-2017-5753),分支目標注入(CVE-2017-5715), 惡意數(shù)據(jù)緩存加載(CVE-2017-5754)。

舉個例子,如果CPU執(zhí)行下面這段代碼:

arr1->length沒有被緩存的時候, CPU會從arr1->data[untrusted_offset_from_caller]處讀取數(shù)據(jù),如果untrusted_offset_from_caller的值超過arr1->length,就會造成越界讀。當然,正常情況下這并不會出現(xiàn)什么問題,因為在執(zhí)行到判斷語句那一行的時候,CPU發(fā)現(xiàn)不對,后面的語句不應該被執(zhí)行,于是會將狀態(tài)回滾到越界讀之前。

但是接下來,問題就出現(xiàn)了。假設arr1->length,arr2->data[0x200]和arr2->data[0x300]都沒有被緩存,CPU會繼續(xù)推測執(zhí)行下面的代碼,在這里index2會根據(jù)value&1產生兩個不同的值0x200,0x300,而Value就是越界讀到的值。接下來,代碼會根據(jù)Value的值去讀取arr2->data[0x200]或arr2->data[0x300]的值并且這個值會被加入到緩存里。接下來,我們可以再次嘗試去讀取arr2->data[0x200]和arr2->data[0x300],讀取時間短的那個值說明被緩存過了,因此就可以判斷出value&1的值為0還是1,從而做到內核信息泄露。

其實,在google的blog發(fā)布之前,就已經存在類似的攻擊了,只是危害沒有這么大而已,今天我們就直接實戰(zhàn)一個利用Intel CPU芯片漏洞來破解macOS KASLR的攻擊。

0x02 芯片漏洞實戰(zhàn)之破解KASLR

這種攻擊比較簡單,但是是后面高級攻擊的基礎,因此我們先從這個攻擊講起。之前我們講到,為了讓CPU效率更高,它們依靠推測性執(zhí)行在任務到來之前就提前執(zhí)行任務。同樣,數(shù)據(jù)預取就利用這個思想推測性地先將數(shù)據(jù)加載到緩存中。Intel的CPU有五個軟件預取指令:prefetcht0,prefetcht1,prefetcht2,prefetchnta和prefetchw。這些指令作用是提示CPU,告訴他一個特定的內存位置可能很快被訪問。然而,Intel的手冊中卻提到,預取“未映射到物理頁面的地址”會導致不確定的性能損失。因此,我們可以通過CPU預讀指令執(zhí)行的時間長短來判斷這個地址有沒有被映射到物理頁面上。

我們知道KASLR的原理是在內核的基址上增加一個slide,讓攻擊者無法猜測內核在內存中的位置。但是內核肯定是被映射到物理頁面上的,因此我們可以使用預取指令去遍歷內核可能的起始地址,如果執(zhí)行預取指令的時間突然變短,就說明我們猜中了內核的起始地址。我們在網上成功找到了破解macOS 10.13 KASLR的POC,并做了一點簡單的修改:https://pastebin.com/GSfJY72J

其中關鍵代碼如下:

這是一段匯編,參數(shù)會傳入想要預取的地址,然后利用rdtscp和rdtscp來統(tǒng)計指令執(zhí)行的時間,并返回。于是我們從內核可能的起始地址開始,不斷地執(zhí)行這段匯編代碼,直到我們找到內核的起始地址為止。

可以看到在0x15c00000這一行,指令執(zhí)行的時間明顯縮短了。因此,我們可以猜出Kernel Side為0x15c00000。

0x03 修復

根據(jù)某內部漏洞修復人員在twitter上的回復,蘋果已經在macOS 10.13.2上對此類芯片漏洞進行了修復,采用了犧牲性能的針對用戶態(tài)使用兩次映射的方式來解決該問題。并號稱10.13.3上有更好的解決方案。另外iOS的A*系列芯片暫時還不受這類漏洞的影響。

0x04 總結

本篇文章只是給芯片的一系列漏洞開了個頭,我們隨后還會有更多關于芯片漏洞的分析和利用實戰(zhàn),歡迎繼續(xù)關注本系列的文章,謝謝。

參考文獻:

1. https://googleprojectzero.blogspot.hk/2018/01/reading-privileged-memory-with-side.html

2. https://siguza.github.io/IOHIDeous/

3. Prefetch Side-Channel Attacks: Bypassing SMAP and Kernel ASLR, CCS 2016.

責任編輯:PSY

原文標題:性能VS安全?CPU芯片漏洞攻擊實戰(zhàn)(1) - 破解macOS KASLR篇

文章出處:【微信公眾號:Linuxer】歡迎添加關注!文章轉載請注明出處。

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

    關注

    460

    文章

    52520

    瀏覽量

    441033
  • 漏電
    +關注

    關注

    4

    文章

    156

    瀏覽量

    21046
  • intel
    +關注

    關注

    19

    文章

    3496

    瀏覽量

    188474

原文標題:性能VS安全?CPU芯片漏洞攻擊實戰(zhàn)(1) - 破解macOS KASLR篇

文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    以驅動芯片破解掃地機三大核心痛點

    設備的行走穩(wěn)定性、續(xù)航時長與適配能力。鈞敏科技深耕行業(yè)多年,主推英能的ZH6358 與必易微的KP93102 驅動芯片方案,正以硬核技術破解三大核心痛點,為掃地機廠商與用戶帶來雙重革新。
    的頭像 發(fā)表于 06-10 09:45 ?488次閱讀

    紫光同芯安全芯片如何破解防偽溯源行業(yè)痛點

    近日,2025安全識別技術展覽會暨高峰論壇期間,紫光同芯高級產品經理劉嘉維發(fā)表了題為《防偽溯源最佳實踐安全芯片技術》的主題演講,系統(tǒng)性闡述了安全芯片如何破解防偽溯源行業(yè)痛點,并分享了
    的頭像 發(fā)表于 06-05 10:24 ?481次閱讀

    如何利用iptables修復安全漏洞

    隨著網絡安全威脅的不斷增加,安全中心掃描越來越頻繁。尤其是在大數(shù)據(jù)安全中心的漏洞報告中,許多漏洞在生產環(huán)境中無法通過服務升級來修復。
    的頭像 發(fā)表于 03-18 18:02 ?472次閱讀

    AMD與谷歌披露關鍵微碼漏洞

    近日,AMD與谷歌聯(lián)合公開披露了一個在2024年9月發(fā)現(xiàn)的關鍵微碼漏洞,該漏洞主要存在于AMD的Zen 1至Zen 4系列CPU中,特別是針對服務器/企業(yè)級平臺的EPYC CPU。 這一漏洞被編號
    的頭像 發(fā)表于 02-08 14:28 ?531次閱讀

    LwIP應用開發(fā)實戰(zhàn)指南—基于野火STM32

    LwIP應用開發(fā)實戰(zhàn)指南—基于野火STM32—20210122
    發(fā)表于 01-17 14:34 ?8次下載

    華為通過BSI全球首批漏洞管理體系認證

    近日,華為通過全球權威標準機構BSI漏洞管理體系認證,涵蓋了ISO/IEC 27001信息安全管理、ISO/IEC 29147漏洞披露及ISO/IEC 30111漏洞處理流程三大國際標準。華為憑借其
    的頭像 發(fā)表于 01-16 11:15 ?648次閱讀
    華為通過BSI全球首批<b class='flag-5'>漏洞</b>管理體系認證

    淺談加密芯片的一種破解方法和對應加密方案改進設計

    Key計算臨時過程秘鑰Key’,再使用臨時過程秘鑰Key’對數(shù)據(jù)做加解密和密文通訊,這樣來做到每一顆芯片、每一次通訊的加密數(shù)據(jù)都是不一樣,防止數(shù)據(jù)在通訊線路上被破解。 如上圖,主MCU函數(shù)FUNC
    發(fā)表于 12-20 15:31

    淺談加密芯片的一種破解方法和加密方案改進設計

    Key計算臨時過程秘鑰Key’,再使用臨時過程秘鑰Key’對數(shù)據(jù)做加解密和密文通訊,這樣來做到每一顆芯片、每一次通訊的加密數(shù)據(jù)都是不一樣,防止數(shù)據(jù)在通訊線路上被破解。 如上圖,主MCU函數(shù)FUNC
    發(fā)表于 12-20 15:10

    LuatOS開發(fā)4G模組隨機數(shù)(random)|實戰(zhàn)指南

    本次學習的實戰(zhàn)是關于4G模組LuatOS開發(fā)的隨機數(shù)示例指南,希望大家有所收獲。
    的頭像 發(fā)表于 11-30 09:51 ?769次閱讀
    LuatOS開發(fā)<b class='flag-5'>之</b>4G模組隨機數(shù)(random)|<b class='flag-5'>實戰(zhàn)</b>指南

    常見的漏洞分享

    #SPF郵件偽造漏洞 windows命令: nslookup -type=txt xxx.com linux命令: dig -t txt huawei.com 發(fā)現(xiàn)spf最后面跟著~all,代表有
    的頭像 發(fā)表于 11-21 15:39 ?692次閱讀
    常見的<b class='flag-5'>漏洞</b>分享

    高通警告64款芯片存在“零日漏洞”風險

    近日,高通公司發(fā)布了一項重要的安全警告,指出其多達64款芯片組中存在一項潛在的嚴重“零日漏洞”,編號為CVE-2024-43047。這一漏洞位于數(shù)字信號處理器(DSP)服務中,已經出現(xiàn)了有限且有針對性的利用跡象,引起了業(yè)界的廣泛
    的頭像 發(fā)表于 10-14 15:48 ?3374次閱讀

    漏洞掃描一般采用的技術是什么

    漏洞掃描是一種安全實踐,用于識別計算機系統(tǒng)、網絡或應用程序中的安全漏洞。以下是一些常見的漏洞掃描技術: 自動化漏洞掃描 : 網絡掃描 :使用自動化工具掃描網絡中的設備,以識別開放的端口
    的頭像 發(fā)表于 09-25 10:27 ?872次閱讀

    漏洞掃描的主要功能是什么

    漏洞掃描是一種網絡安全技術,用于識別計算機系統(tǒng)、網絡或應用程序中的安全漏洞。這些漏洞可能被惡意用戶利用來獲取未授權訪問、數(shù)據(jù)泄露或其他形式的攻擊。漏洞掃描的主要功能是幫助組織及時發(fā)現(xiàn)并
    的頭像 發(fā)表于 09-25 10:25 ?946次閱讀

    《七劍下天山》“七劍利刃”:“新一代”漏洞掃描管理系統(tǒng)

    。該平臺七個方面功能尤其強大,堪稱梁羽生的武俠小說《七劍下天山》“七劍利刃”: ?日月劍?:多租戶管理。不同租戶間能設置符合各租戶自身特點的漏洞掃描策略,并只能查看當前租戶的漏洞分別情況;平臺管理員能進行全
    的頭像 發(fā)表于 09-09 11:23 ?654次閱讀

    內核程序漏洞介紹

    電子發(fā)燒友網站提供《內核程序漏洞介紹.pdf》資料免費下載
    發(fā)表于 08-12 09:38 ?0次下載