- +1
30分鐘從工作電腦入侵公司內(nèi)網(wǎng),Win11:更新強制要求有TPM2.0,知道為啥了吧?
博雯 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
工作電腦被偷的30分鐘后,公司內(nèi)網(wǎng)就進(jìn)人了。
不僅擁有活動目錄上的基本特權(quán),還能在內(nèi)部文件中來去自如!
可我那保護(hù)重重的Windows防火墻呢?
我那可以生成和存儲各種密鑰的TPM芯片呢?
黑客到底是怎么越過這些阻礙的?繞過TPM
好,現(xiàn)在請出我們的受害者——
一臺Windows 10系統(tǒng)的聯(lián)想筆記本電腦。
使用的是微軟的BitLocker,通過微軟的可信平臺模塊(TPM)加密。
這時,要提取驅(qū)動器解密密鑰進(jìn)而入侵內(nèi)網(wǎng),就需要從TPM入手:
不過這是一種結(jié)構(gòu)高度復(fù)雜,且含有許多篡改檢測和保護(hù)的硬件。直接攻擊可能會花費大量時間。因此,我們可以關(guān)注一下TPM周圍的依賴關(guān)系和內(nèi)容。
比如……并沒有使用TPM 2.0標(biāo)準(zhǔn)的加密通信特性的BitLocker。
這意味著從TPM發(fā)出的數(shù)據(jù)都是以明文形式游走在SPI總線上的,包括Windows的解密密鑰。
如果能抓住那個密鑰,就能夠解密驅(qū)動器,獲得VPN客戶端配置的訪問權(quán)限,進(jìn)而有訪問內(nèi)部網(wǎng)絡(luò)的可能。
可現(xiàn)在問題又來了。
要抓取SPI總線上的數(shù)據(jù),就要將引線或探針連接到TPM的引腳上。
而這個“引腳”只有0.25毫米寬,0.5毫米間隔,還是一個平放在芯片面上,難以用物理方式連接的偽·引腳。
那有沒有更大,更好連接的呢?
還真有:
這是與TPM共享一個SPI總線的CMOS芯片,它的引腳非常清晰分明。好,Saleae邏輯分析儀,連接!
從預(yù)登陸功能的“后門”入侵現(xiàn)在,探測儀已經(jīng)連接,開始啟動電腦。
我們現(xiàn)在需要在數(shù)以百萬計的SPI字節(jié)中,找到一個正在被發(fā)送的BitLocker解密密鑰。
先用高級分析器(HLA)進(jìn)行事務(wù)分析:
經(jīng)過幾天的故障排除和比較之后,我們發(fā)現(xiàn)了TPM命令包的不同位掩碼的組合,以及用于尋找密鑰的不同正則表達(dá)式。再用bitlocker-spi-toolkit解析這些請求,鑰匙就拿到了!
接下來讓我們用鑰匙解密固盤(SSD),看看里面到底有什么。拔出固態(tài)硬盤,安裝在一個適配器上,然后插上:
在做了一個磁盤鏡像之后,我們使用Dislocker工具集來解密驅(qū)動器:$ echo daa0ccb7312 | xxd -r -p > ~/vmk
$ mkdir ~/ssd ~/mounted
$ sudo losetup -P /dev/loop6 /mnt/hgfs/ExternalSSD/ssd-dd.img
$ sudo fdisk -l /dev/loop6
Disk /dev/loop6: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: BD45F9A-F26D-41C9-8F1F-0F1EE74233
Device Start End Sectors Size Type
/dev/loop6p1 2048 1026047 1024000 500M Windows recovery environment
/dev/loop6p2 1026048 2050047 1024000 500M EFI System
/dev/loop6p3 2050048 2312191 262144 128M Microsoft reserved
/dev/loop6p4 2312192 500117503 497805312 237.4G Microsoft basic data <- bitlocker drive
$ sudo dislocker-fuse -K ~/vmk /dev/loop6p4 -- ~/ssd
$ sudo ntfs-3g ~/ssd/dislocker-file ~/mounted
$ ls -al ~/mounted
total 19156929
drwxrwxrwx 1 root root 8192 May 5 19:00 .
drwxrwxrwt 17 root root 4096 Jun 15 09:43 ..
drwxrwxrwx 1 root root 0 May 6 14:29 '$Recycle.Bin'
drwxrwxrwx 1 root root 0 May 4 10:55 '$WinREAgent'
-rwxrwxrwx 1 root root 413738 Dec 7 2019 bootmgr
-rwxrwxrwx 1 root root 1 Dec 7 2019 BOOTNXT
lrwxrwxrwx 2 root root 15 May 4 11:18 'Documents and Settings' -> ~/mounted/Users
現(xiàn)在就可以離線訪問內(nèi)容的明文了!
此外,我們還發(fā)現(xiàn)了正在使用的VPN客戶端: Palo Alto的全球保護(hù)(GP)。
GP有一項預(yù)登陸(Pre-logon)功能,會對端點(而不是用戶)進(jìn)行身份驗證,并允許域腳本或其他任務(wù)在端點啟動后立即運行。
這樣,我們就可以使用粘滯鍵后門(Sticky Keys Backdoor),在不需要任何憑證的的前提下訪問VPN。
有了后門訪問之后,我們需要將解密后的Windows映像引導(dǎo)為虛擬機。
因此,先創(chuàng)建一個VMDK,將解密BitLocker分區(qū)和加密映像的起始扇區(qū)映射到適當(dāng)?shù)腣M分區(qū):
# Disk DescriptorFile
version=1
CID=19362586
parentCID=ffffffff
createType="partitionedDevice"
# Extent description
RW 63 FLAT "ssd-dd.img" 0
RW 1985 FLAT "ssd-dd.img" 2048
RW 1024000 ZERO
RW 1024000 FLAT "ssd-dd.img" 1026048
RW 262144 FLAT "ssd-dd.img" 2050048
# This is the 4th partition where the encrypted bitlocker drive was
RW 497805312 FLAT "dislocker2-file" 0
RW 655 ZERO
RW 33 FLAT "ssd-dd.img" 63
ddb.virtualHWVersion = "4"
ddb.adapterType="ide"
ddb.geometry.cylinders="16383"
ddb.geometry.heads="16"
ddb.geometry.sectors="63"
ddb.uuid.image="43e1e-5c24-46cc-bcec-daad3d500"
ddb.uuid.parent="00000000-0000-0000-0000-000000000000"
ddb.uuid.modification="8d285-ad86-4227-86d4-ec168b6b3"
ddb.uuid.parentmodification="00000000-0000-0000-0000-000000000000"
ddb.geometry.biosCylinders="1024"
ddb.geometry.biosHeads="255"
ddb.geometry.biosSectors="63"
再使用VMDK和粘滯鍵后門的WIndows鏡像,創(chuàng)建并啟動虛擬機,按下WIndows + U:
△全球保護(hù)狀態(tài):已連接然后就可以在域中運行基本的SMB命令了。
比如查詢?nèi)缬脩?、組、系統(tǒng)等網(wǎng)域控制器的各種類型的領(lǐng)域信息。
或者列出并查看中小企業(yè)內(nèi)部共享的文件內(nèi)容:
還可以通過訪問這個電腦帳戶來發(fā)動內(nèi)部攻擊。比如將一個文件寫入內(nèi)部文件服務(wù)器,并將其讀回:
至此,我們已經(jīng)獲得了內(nèi)部網(wǎng)絡(luò)的訪問權(quán)限——包括在活動目錄上的基本特權(quán),以及對內(nèi)部文件共享的訪問權(quán)限。
而以此開始做LNK攻擊或trojaned pdf等入侵,最終致使數(shù)據(jù)泄露也就有了可能。
Windows11更新強制要求設(shè)備有TPM2.0
當(dāng)然,上述的所有過程都不是真的黑客攻擊。
而是美國的一家網(wǎng)絡(luò)安全公司Dolos Group面對客戶疑惑的回應(yīng):
你能用偷來的筆記本干什么?能進(jìn)入我們的內(nèi)網(wǎng)嗎?
因此,Dolos Group團(tuán)隊就展示了如何使用一臺“被盜”的公司筆記本電腦,將幾個漏洞鏈接在一起,最后進(jìn)入公司內(nèi)網(wǎng)。而讓人注意的是,Dolos Group團(tuán)隊在入侵的最開始就提到:
BitLocker沒有使用 TPM 2.0標(biāo)準(zhǔn)的加密通信特性。
這不禁讓人想到了Windows11更新時強制要求設(shè)備有TPM2.0的措施:
所以,2.0版本對比1.X標(biāo)準(zhǔn)都增加了哪些功能?簡單來說,TPM 2.0大幅增加了模塊內(nèi)置加密算法的種類和安全性。
因此兼容的軟件和場景更多,生成的密碼更長更難破解。
結(jié)合上文對適用了舊版本TPM的電腦的入侵,微軟會將TPM2.0列入Windows 11的必須硬件配置列表中,似乎也就不難理解了。
不過,也有網(wǎng)友對此表示:
為了避免這種問題,你應(yīng)該有一個必要的外部密碼來解鎖硬盤,而非TPM。
參考鏈接:[1]https://dolosgroup.io/blog/2021/7/9/from-stolen-laptop-to-inside-the-company-network
[2]https://news.ycombinator.com/item?id=27986316
團(tuán)隊網(wǎng)站:
https://dolosgroup.io/
— 完 —
本文系網(wǎng)易新聞?網(wǎng)易號特色內(nèi)容激勵計劃簽約賬號【量子位】原創(chuàng)內(nèi)容,未經(jīng)賬號授權(quán),禁止隨意轉(zhuǎn)載。
原標(biāo)題:《30分鐘從工作電腦入侵公司內(nèi)網(wǎng)!Win11:更新強制要求有TPM2.0,知道為啥了吧?》
本文為澎湃號作者或機構(gòu)在澎湃新聞上傳并發(fā)布,僅代表該作者或機構(gòu)觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發(fā)布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。





- 報料熱線: 021-962866
- 報料郵箱: news@thepaper.cn
互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006
增值電信業(yè)務(wù)經(jīng)營許可證:滬B2-2017116
? 2014-2026 上海東方報業(yè)有限公司




