首頁 > 科技

30分鐘從工作電腦入侵公司內網!Win11:知道為啥了吧?

2021-08-01 03:02:58

博雯 發自 凹非寺量子位 報道 | 公眾號 QbitAI

工作電腦被偷的30分鐘後,公司內網就進人了。

不僅擁有活動目錄上的基本特權,還能在內部檔案中來去自如!

可我那保護重重的Windows防火牆呢?

我那可以生成和儲存各種金鑰的TPM晶片呢?

圖片

黑客到底是怎麼越過這些阻礙的?

繞過TPM

好,現在請出我們的受害者——

一臺Windows 10系統的聯想膝上型電腦。

使用的是微軟的BitLocker,通過微軟的可信平臺模組(TPM)加密。

這時,要提取驅動器解密金鑰進而入侵內網,就需要從TPM入手:

圖片

不過這是一種結構高度複雜,且含有許多篡改檢測和保護的硬體。直接攻擊可能會花費大量時間。

因此,我們可以關注一下TPM周圍的依賴關係和內容。

比如……並沒有使用TPM 2.0標準的加密通訊特性的BitLocker。

這意味著從TPM發出的資料都是以明文形式遊走在SPI總線上的,包括Windows的解密金鑰。

如果能抓住那個金鑰,就能夠解密驅動器,獲得VPN客戶端配置的訪問許可權,進而有訪問內部網路的可能。

可現在問題又來了。

要抓取SPI總線上的資料,就要將引線或探針連線到TPM的引腳上。

而這個「引腳」只有0.25毫米寬,0.5毫米間隔,還是一個平放在芯片面上,難以用物理方式連線的偽·引腳。

那有沒有更大,更好連線的呢?

還真有:

圖片

這是與TPM共享一個SPI匯流排的CMOS晶片,它的引腳非常清晰分明。

好,Saleae邏輯分析儀,連線!

圖片

從預登陸功能的「後門」入侵

現在,探測儀已經連線,開始啟動電腦。

我們現在需要在數以百萬計的SPI位元組中,找到一個正在被髮送的BitLocker解密金鑰。

先用高階分析器(HLA)進行事務分析:

圖片

經過幾天的故障排除和比較之後,我們發現了TPM命令包的不同位掩碼的組合,以及用於尋找金鑰的不同正則表示式。

再用bitlocker-spi-toolkit解析這些請求,鑰匙就拿到了!

圖片

接下來讓我們用鑰匙解密固盤(SSD),看看裡面到底有什麼。

拔出固態硬碟,安裝在一個介面卡上,然後插上:

圖片

在做了一個磁碟映象之後,我們使用Dislocker工具集來解密驅動器:

$ echo daa0ccb7312<REDACTED> | 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

現在就可以離線訪問內容的明文了!

此外,我們還發現了正在使用的VPN客戶端: Palo Alto的全球保護(GP)。

GP有一項預登陸(Pre-logon)功能,會對端點(而不是使用者)進行身份驗證,並允許域指令碼或其他任務在端點啟動後立即運行。

這樣,我們就可以使用粘滯鍵後門(Sticky Keys Backdoor),在不需要任何憑證的的前提下訪問VPN。

有了後門訪問之後,我們需要將解密後的Windows映像引導為虛擬機器。

因此,先創建一個VMDK,將解密BitLocker分區和加密映像的起始扇區對映到適當的VM分區:

# Disk DescriptorFileversion=1CID=19362586parentCID=ffffffffcreateType="partitionedDevice"# Extent descriptionRW 63 FLAT "ssd-dd.img" 0RW 1985 FLAT "ssd-dd.img" 2048RW 1024000 ZERORW 1024000 FLAT "ssd-dd.img" 1026048RW 262144 FLAT "ssd-dd.img" 2050048# This is the 4th partition where the encrypted bitlocker drive wasRW 497805312 FLAT "dislocker2-file" 0RW 655 ZERO RW 33 FLAT "ssd-dd.img" 63ddb.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映象,創建並啟動虛擬機器,按下WIndows + U:

圖片

然後就可以在域中運行基本的SMB命令了。

比如查詢如使用者、組、系統等網域控制器的各種類型的領域資訊。

或者列出並檢視中小企業內部共享的檔案內容:

圖片

還可以通過訪問這個電腦帳戶來發動內部攻擊。

比如將一個檔案寫入內部檔案伺服器,並將其讀回:

圖片

至此,我們已經獲得了內部網路的訪問許可權——

包括在活動目錄上的基本特權,以及對內部檔案共享的訪問許可權。

而以此開始做LNK攻擊或trojaned pdf等入侵,最終致使資料洩露也就有了可能。

Windows11更新強制要求裝置有TPM2.0

當然,上述的所有過程都不是真的黑客攻擊。

而是美國的一家網路安全公司Dolos Group面對客戶疑惑的迴應:

你能用偷來的筆記本幹什麼?能進入我們的內網嗎?

圖片

因此,Dolos Group團隊就展示瞭如何使用一臺「被盜」的公司膝上型電腦,將幾個漏洞連結在一起,最後進入公司內網。

而讓人注意的是,Dolos Group團隊在入侵的最開始就提到:

BitLocker沒有使用 TPM 2.0標準的加密通訊特性。

這不禁讓人想到了Windows11更新時強制要求裝置有TPM2.0的措施:

圖片

所以,2.0版本對比1.X標準都增加了哪些功能?

簡單來說,TPM 2.0大幅增加了模組內建加密演算法的種類和安全性。

因此相容的軟體和場景更多,生成的密碼更長更難破解。

結合上文對適用了舊版本TPM的電腦的入侵,微軟會將TPM2.0列入Windows 11的必須硬體配置列表中,似乎也就不難理解了。

不過,也有網友對此表示:

為了避免這種問題,你應該有一個必要的外部密碼來解鎖硬碟,而非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

團隊網站:https://dolosgroup.io/


IT145.com E-mail:sddin#qq.com