偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

CVE-2021-43267:Linux TIPC模塊任意代碼執(zhí)行漏洞

安全 黑客攻防
SentinelLab研究人員發(fā)現(xiàn)Linux Kernel TIPC(Transparent Inter Process Communication,透明進(jìn)程間通信)模塊中的一個安全漏洞,攻擊者利用該漏洞可以在本地或遠(yuǎn)程區(qū)塊下在kernel內(nèi)執(zhí)行任意代碼,并完全控制有漏洞的機(jī)器。

[[433892]]

SentinelLab研究人員發(fā)現(xiàn)Linux Kernel TIPC(Transparent Inter Process Communication,透明進(jìn)程間通信)模塊中的一個安全漏洞,攻擊者利用該漏洞可以在本地或遠(yuǎn)程區(qū)塊下在kernel內(nèi)執(zhí)行任意代碼,并完全控制有漏洞的機(jī)器。

Linux TIPC協(xié)議

TIPC協(xié)議是允許集群中節(jié)點在存在大量節(jié)點容錯的情況下進(jìn)行通信的協(xié)議。該協(xié)議在Linux kernel模塊中實現(xiàn),并包含在大多數(shù)Linux發(fā)行版中。當(dāng)用戶加載時,TIPC可以用作socket并可以使用netlink在接口上進(jìn)行配置。TIPC可以配置為在Ethernet或UDP協(xié)議之上運行。但是低權(quán)限的用戶是無法創(chuàng)建Ethernet幀,因此使用UDP更容易實現(xiàn)本地漏洞利用。

雖然TIPC是在這些協(xié)議之上運行的,但有獨立的地址方案,節(jié)點可以選擇自己的地址。TIPC協(xié)議以對用戶透明的方式工作。所有的消息構(gòu)造和分析都是在kernel中進(jìn)行的。每個TIPC消息都有相同的通用header格式和消息特定的header。

對該漏洞來說,通用header最重要的部分是Header Size和message size。TIPC消息header如下所示:

TIPC消息header

這兩個size大小是由tipc_msg_validate函數(shù)來進(jìn)行驗證的:

TIPC漏洞

2020年9月引入了一個新的用戶消息類型——MSG_CRYPTO,該消息類型允許節(jié)點發(fā)送加密的秘鑰。該消息結(jié)構(gòu)如下所示:

  1. struct tipc_aead_key { 
  2.          char alg_name[TIPC_AEAD_ALG_NAME]; 
  3.          unsigned int keylen;       /* in bytes */ 
  4.          char key[]; 
  5.  }; 

 其中 TIPC_AEAD_ALG_NAME是32位的宏。消息接收后,TIPC kernel模塊需要復(fù)制該信息到該節(jié)點來存儲:

  1.  /* Allocate memory for the key */ 
  2.   skey = kmalloc(size, GFP_ATOMIC); 
  3. /* ... */ 
  4.   
  5.   /* Copy key from msg data */ 
  6.   skey->keylen = ntohl(*((__be32 *)(data + TIPC_AEAD_ALG_NAME))); 
  7.   memcpy(skey->alg_name, data, TIPC_AEAD_ALG_NAME); 
  8.   memcpy(skey->key, data + TIPC_AEAD_ALG_NAME + sizeof(__be32), 
  9.          skey->keylen); 

用來分配的size大小與message payload的size大小是相同的。密鑰算法和密鑰本身也都會被復(fù)制。

從上面的代碼可以看出,Header Size和message size大小都會與真實的包大小來對比驗證有效性。如果這兩個值都在真實包大小的范圍內(nèi),MSG_CRYPTO 消息的keylen或密鑰算法本身都不會再去檢查message大小。也就是說,攻擊者可以創(chuàng)建一個size大小比較小的包來分配堆內(nèi)存,然后用keylen屬性中的任意大小來在該位置的邊界外進(jìn)行寫操作:

可以觸發(fā)該漏洞的MSG_CRYPTO消息示例

漏洞利用

該漏洞可以在本地或遠(yuǎn)程利用。由于對kernel堆中分配的對象的控制更多,因此本地利用更加容易一些。如下所示,攻擊者可以創(chuàng)建一個20字節(jié)的包,并設(shè)置message size為10字節(jié),并繞過檢查:

CVE-2021-43267: Linux TIPC模塊任意代碼執(zhí)行漏洞

目前補丁也已經(jīng)發(fā)布,完整技術(shù)細(xì)節(jié)參見:https://www.sentinelone.com/labs/tipc-remote-linux-kernel-heap-overflow-allows-arbitrary-code-execution/

本文翻譯自:https://thehackernews.com/2021/11/critical-rce-vulnerability-reported-in.html如若轉(zhuǎn)載,請注明原文地址。

 

責(zé)任編輯:姜華 來源: 嘶吼網(wǎng)
相關(guān)推薦

2021-09-23 15:20:18

微軟漏洞代碼

2017-10-12 06:42:16

Tomcat代碼漏洞

2020-10-19 14:01:34

漏洞Linux代碼

2017-05-25 22:20:05

2021-05-27 05:34:47

漏洞網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2025-05-15 07:40:00

2014-10-15 17:29:33

2020-10-23 09:58:57

漏洞

2017-05-27 10:22:37

2021-03-16 10:52:56

Chrome瀏覽器漏洞

2021-01-31 10:31:29

Windows10操作系統(tǒng)RCE漏洞

2024-11-11 16:21:38

2009-05-31 15:34:37

2021-07-29 15:57:11

任意代碼漏洞攻擊

2025-05-20 08:41:17

2021-10-29 11:52:16

谷歌漏洞TPM

2021-10-06 13:54:12

漏洞PoC攻擊

2025-06-04 10:05:43

2025-02-14 23:13:14

2024-10-08 21:22:17

點贊
收藏

51CTO技術(shù)棧公眾號