国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

這篇具有很好參考價(jià)值的文章主要介紹了Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

  背景

  在2023年8月23日,Group-IB威脅情報(bào)機(jī)構(gòu)發(fā)布了一份報(bào)告,詳細(xì)介紹了WinRAR任意執(zhí)行漏洞CVE-2023-38831的攻擊活動(dòng)。根據(jù)該報(bào)告,這個(gè)漏洞最早于2023年4月被攻擊者利用,然后在2023年7月被Group-IB威脅情報(bào)機(jī)構(gòu)發(fā)現(xiàn)并報(bào)告給了RARLAB。最終,RARLAB在2023年8月2日發(fā)布了修復(fù)了CVE-2023-38831漏洞的正式版本W(wǎng)inRAR v6.23。

漏洞簡(jiǎn)介

  本次漏洞影響范圍為低于WinRAR v6.23的所有版本,以下是該漏洞的基本信息:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

(圖源:WinRAR代碼執(zhí)行漏洞 (CVE-2023-38831) 安全風(fēng)險(xiǎn)通告 - 安全內(nèi)參 | 決策者的網(wǎng)絡(luò)安全知識(shí)庫(kù) (secrss.com))

  WinRAR是一款功能強(qiáng)大的Windows文件壓縮和解壓縮工具,支持高效的壓縮算法、密碼保護(hù)、分卷壓縮、恢復(fù)記錄等功能,同時(shí)提供圖形和命令行界面,以及自解壓縮功能,為用戶(hù)提供便捷且安全的文件管理和傳輸工具。

  在zip文件格式中,使用了ZIPDIRENTRY結(jié)構(gòu)體來(lái)管理壓縮包內(nèi)的文件和文件夾信息,包括名稱(chēng)、名稱(chēng)長(zhǎng)度和修改日期等。WinRAR允許用戶(hù)預(yù)覽和執(zhí)行壓縮包內(nèi)文件。但由于字符串比較代碼的問(wèn)題,當(dāng)用戶(hù)打開(kāi)zip壓縮包并執(zhí)行文件時(shí),WinRAR可能會(huì)錯(cuò)誤地釋放非用戶(hù)所選的文件。

  WinRAR使用了ShellExecuteExW來(lái)啟動(dòng)目標(biāo)文件,這是Windows系統(tǒng)的一個(gè)API函數(shù),用于執(zhí)行目標(biāo)文件操作。然而,當(dāng)文件路徑字符串末尾存在空格時(shí),該API會(huì)在路徑末尾添加通配符“.*”并搜索匹配的文件來(lái)執(zhí)行,導(dǎo)致了非目標(biāo)文件的執(zhí)行。

  綜上所述,這個(gè)漏洞的觸發(fā)包含兩個(gè)環(huán)節(jié):

  a.文件釋放:由于文件名字符串的比較函數(shù)存在一定的問(wèn)題,導(dǎo)致了非目標(biāo)文件被釋放;

  b.文件執(zhí)行:釋放的文件經(jīng)ShellExecuteExW執(zhí)行,當(dāng)路徑字符串末尾有空格時(shí),可能會(huì)導(dǎo)致路徑下其他特定文件的執(zhí)行。

  • 漏洞詳細(xì)分析

  以WinRAR v6.11(x64)為例,分析漏洞的實(shí)現(xiàn)原理和過(guò)程。

  ZIP文件采用了三種數(shù)據(jù)結(jié)構(gòu)來(lái)有效管理壓縮包內(nèi)的文件內(nèi)容:ZIPFILERECORD, ZIPDIRENTRY,ZIPENDLOCATOR,其中ZIPDIRENTRY在本次漏洞觸發(fā)中扮演了關(guān)鍵的角色。在zip壓縮包內(nèi),每個(gè)文件和文件夾都對(duì)應(yīng)了一個(gè)ZIPDIRENTRY數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)包含一個(gè)名為deFileName的成員,用于存儲(chǔ)目標(biāo)文件/文件夾的名稱(chēng)。

  構(gòu)建一個(gè)zip格式的壓縮包,源文件如圖:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  打包為zip后數(shù)據(jù)結(jié)構(gòu)如圖,圖中的ZIPDIRENTRY dirEntry是我們要重點(diǎn)關(guān)注的對(duì)象,這個(gè)數(shù)據(jù)結(jié)構(gòu)下有個(gè)deFileName,指的是這個(gè)結(jié)構(gòu)體管理的目標(biāo)文件的文件名:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-710158.html

  用WinRAR打開(kāi)這個(gè)壓縮包,執(zhí)行test_.txt,可以看到WinRAR在temp目錄下釋放了該文件:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?

?  WinRAR釋放目標(biāo)文件的邏輯是這樣的:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

文件釋放漏洞

  紅色部分是觸發(fā)漏洞的關(guān)鍵點(diǎn)一,通過(guò)各種逆向分析手段,找到了該處代碼:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?  根據(jù)這處代碼的邏輯,如果我們要解壓的文件為test_.txt,那么就會(huì)有三種類(lèi)型的字符串被匹配上:“test_.txt”、“test_.txt\*”、“test_.txt/*”,這里的*表示任意字符串,例如“test_.txt\a.exe”。

  所以,我們對(duì)之前構(gòu)造的壓縮包稍作修改:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  ?然后執(zhí)行test_.txt,就會(huì)發(fā)現(xiàn),WinRAR偷偷釋放了我們不需要的文件:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?

  至此,文件釋放的漏洞解釋完畢,接下來(lái)是文件執(zhí)行。

文件執(zhí)行漏洞

  WinRAR使用API執(zhí)行文件:ShellExecuteExW,這是shell32.dll導(dǎo)出的一個(gè)函數(shù),該API的執(zhí)行邏輯大致如下:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?  圖中標(biāo)紅的函數(shù)CShellExecute::_PerformantBindCtx就是本次漏洞的關(guān)鍵點(diǎn)二,文件執(zhí)行。

  依舊是使用各種逆向分析手段定位到該函數(shù):

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?  其中有兩個(gè)關(guān)鍵函數(shù)PathFindExtensionW和sub_180206AE0:

  PathFindExtensionW是KernelBase.dll的一個(gè)導(dǎo)出函數(shù),用于從一個(gè)文件名中提取出擴(kuò)展名所在位置的字符串指針,如傳入?yún)?shù)為“C:\Windows\test.exe”時(shí),返回值為指向這個(gè)字符串的“.exe”位置的指針,這個(gè)函數(shù)的代碼是這樣的:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  可以看到它調(diào)用了另一個(gè)函數(shù)PathCchFindExtension,這個(gè)子函數(shù)才是提取擴(kuò)展名字符串的關(guān)鍵函數(shù),代碼邏輯也很簡(jiǎn)單,遍歷文件路徑字符串,查找末尾“.*”的位置。

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  需要注意的是,windows下的文件名稱(chēng)本身(不包括路徑),是不可以含有正反斜杠和空格的。

  但我們只是在調(diào)用API,我們可以給它傳任意參數(shù),比如說(shuō)"C:\Windows\test.exe ",注意這里test.exe后面有個(gè)空格,那么這時(shí)會(huì)發(fā)生什么呢?

  PathCchFindExtension返回給PathFindExtensionW一個(gè)指向了0的字符串,PathFindExtensionW又把這個(gè)指針?lè)祷亟oCShellExecute::_PerformantBindCtx,

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

?  然后就會(huì)導(dǎo)致函數(shù)sub_180206AE0被執(zhí)行,這個(gè)函數(shù)就負(fù)責(zé)給文件名加上通配符,然后在路徑下查找匹配的文件:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  • ?漏洞完整驗(yàn)證

  至此我們已經(jīng)把漏洞的兩個(gè)關(guān)鍵環(huán)節(jié)都找到了,只要根據(jù)上面分析的結(jié)果構(gòu)造一個(gè)特殊的zip文件,就可以觸發(fā)這個(gè)漏洞:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

? ? ?圖中標(biāo)紅位置的字符串,在.txt后面都跟著一個(gè)空格。

  然后我們執(zhí)行一下:

Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析

  當(dāng)當(dāng)~驗(yàn)證完畢。

  注:

  此處使用的WinRAR版本為6.11中文版,64位;

  由于系統(tǒng)dll版本的不同,上述API的執(zhí)行情況可能有所差別,請(qǐng)根據(jù)實(shí)際情況進(jìn)行分析;

  閑暇之余隨手寫(xiě)的文章,行文格式很隨意,看不懂的地方還請(qǐng)多看兩遍(doge);

  文章中最后poc演示的zip文件下載鏈接:
  https://drive.google.com/file/d/1MTDv5snH7ca1Y7lQXEj9_3vmKM8bjpXp/view?usp=drive_link

參考鏈接:

WinRAR代碼執(zhí)行漏洞 (CVE-2023-38831) 安全風(fēng)險(xiǎn)通告 - 安全內(nèi)參 | 決策者的網(wǎng)絡(luò)安全知識(shí)庫(kù) (secrss.com)

Konni APT 利用 WinRAR 漏洞(CVE-2023-38831)攻擊數(shù)字貨幣行業(yè) (seebug.org)

CVE-2023-38831 WinRAR 漏洞分析 (seebug.org)

?

到了這里,關(guān)于Winrar代碼執(zhí)行漏洞(CVE-2023-38831)的原理分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Microsoft Message Queuing遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2023-21554)漏洞修復(fù)】

    【Microsoft Message Queuing遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2023-21554)漏洞修復(fù)】

    Windows 消息隊(duì)列服務(wù)是一個(gè)Windows組件,需要系統(tǒng)啟用該組件才能利用此漏洞,該組件可以通過(guò)控制面板添加。Microsoft Message Queuing中存在遠(yuǎn)程代碼執(zhí)行漏洞,未經(jīng)身份驗(yàn)證的遠(yuǎn)程攻擊者通過(guò)向MSMQ服務(wù)器發(fā)送特制的惡意MSMQ數(shù)據(jù)包觸發(fā)此漏洞,最終實(shí)現(xiàn)在服務(wù)器端遠(yuǎn)程代碼執(zhí)行,

    2024年02月15日
    瀏覽(22)
  • 【Citrix篇】1-Citrix ADC/Gateway 遠(yuǎn)程代碼執(zhí)行漏洞CVE-2023-3519和升級(jí)方法

    【Citrix篇】1-Citrix ADC/Gateway 遠(yuǎn)程代碼執(zhí)行漏洞CVE-2023-3519和升級(jí)方法

    目錄 一、前言 二、實(shí)驗(yàn)效果 三、影響的版本(CVE-2023-3519) 四、升級(jí)前準(zhǔn)備 五、命令行升級(jí)步驟 六、GUi界面升級(jí)步驟 七、公司介紹 近期我們收到Citrix發(fā)布關(guān)于NetScaler ADC 、NetScaler Gateway的風(fēng)險(xiǎn)通告,漏洞編號(hào)為CVE-2023-3519, 漏洞等級(jí):嚴(yán)重,漏洞評(píng)分:9.8 漏洞影響 :Hack可

    2024年02月08日
    瀏覽(20)
  • CVE-2021-22204 GitLab RCE之exiftool代碼執(zhí)行漏洞深入分析(二)

    文章寫(xiě)于2022-01-19,首發(fā)在天融信阿爾法實(shí)驗(yàn)室 1 前言 2 前置知識(shí) 2.1 JPEG文件格式 2.2 Perl模式匹配 3 exiftool源碼調(diào)試到漏洞分析 3.1 環(huán)境搭建 3.2 漏洞簡(jiǎn)介 3.3 exiftool是如何解析嵌入的0xc51b標(biāo)簽 3.4 exiftool是如何調(diào)用parseAnt函數(shù) 3.5 parseAnt函數(shù)分析 3.6 parseAnt漏洞分析 4 漏洞利用 4.1

    2024年02月14日
    瀏覽(20)
  • CVE-2022-30190分析以及復(fù)現(xiàn)和POC利用 //Microsoft Office MSDT 遠(yuǎn)程代碼執(zhí)行漏洞

    CVE-2022-30190分析以及復(fù)現(xiàn)和POC利用 //Microsoft Office MSDT 遠(yuǎn)程代碼執(zhí)行漏洞

    在微軟官方的介紹里,是從 Word 等調(diào)用應(yīng)用程序使用 URL 協(xié)議調(diào)用 MSDT 時(shí)存在遠(yuǎn)程執(zhí)行代碼漏洞。成功利用此漏洞的攻擊者可以使用調(diào)用應(yīng)用程序的權(quán)限運(yùn)行任意代碼。 意思是惡意 Word 文檔可以使用遠(yuǎn)程模板功能從遠(yuǎn)程服務(wù)器獲取 HTML 文件,并且 HTML 代碼可以使用 Microsoft 的

    2024年02月04日
    瀏覽(69)
  • 解決 遠(yuǎn)程 服務(wù)器--Microsoft Windows CredSSP 遠(yuǎn)程執(zhí)行代碼漏洞(CVE-2018-0886)【原理掃描】(KB4103725 或 KB4103715)

    解決 遠(yuǎn)程 服務(wù)器--Microsoft Windows CredSSP 遠(yuǎn)程執(zhí)行代碼漏洞(CVE-2018-0886)【原理掃描】(KB4103725 或 KB4103715)

    系統(tǒng): windows server 2012 R2 standard 掃描出漏洞: Microsoft Windows CredSSP 遠(yuǎn)程執(zhí)行代碼漏洞(CVE-2018-0886)【原理掃描】 按照微軟官方給的答案: https://portal.msrc.microsoft.com/zh-CN/security-guidance/advisory/CVE-2018-0886,對(duì)應(yīng)下載安裝包是 KB4103725 或 KB4103715 但是下載后安裝 報(bào)錯(cuò): 此更新不適用此

    2024年02月06日
    瀏覽(26)
  • Windows Server 2012 R2服務(wù)器Microsoft 消息隊(duì)列遠(yuǎn)程代碼執(zhí)行漏洞CVE-2023-21554補(bǔ)丁KB5025288的安裝及問(wèn)題解決

    Windows Server 2012 R2服務(wù)器Microsoft 消息隊(duì)列遠(yuǎn)程代碼執(zhí)行漏洞CVE-2023-21554補(bǔ)丁KB5025288的安裝及問(wèn)題解決

    近日,系統(tǒng)安全掃描中發(fā)現(xiàn)Windows Server 2012 R2服務(wù)器存在Microsoft 消息隊(duì)列遠(yuǎn)程代碼執(zhí)行漏洞。本文記錄補(bǔ)丁安裝中遇到的“此更新不適用于你的計(jì)算機(jī)”問(wèn)題及解決辦法。 一、問(wèn)題描述: 1、系統(tǒng)安全掃描中發(fā)現(xiàn)Windows Server 2012 R2服務(wù)器存在Microsoft 消息隊(duì)列遠(yuǎn)程代碼執(zhí)行漏洞,

    2024年02月10日
    瀏覽(25)
  • 漏洞復(fù)現(xiàn) || SolarView Compact 存在任意命令執(zhí)行漏洞(CVE-2023-23333)

    漏洞復(fù)現(xiàn) || SolarView Compact 存在任意命令執(zhí)行漏洞(CVE-2023-23333)

    技術(shù)文章僅供參考,任何個(gè)人和組織使用網(wǎng)絡(luò)應(yīng)當(dāng)遵守憲法法律,遵守公共秩序,尊重社會(huì)公德,不得利用網(wǎng)絡(luò)從事危害國(guó)家安全、榮譽(yù)和利益,未經(jīng)授權(quán)請(qǐng)勿利用文章中的技術(shù)資料對(duì)任何計(jì)算機(jī)系統(tǒng)進(jìn)行入侵操作。利用此文所提供的信息而造成的直接或間接后果和損失,均

    2024年02月15日
    瀏覽(17)
  • 漏洞深度分析|CVE-2022-1471 SnakeYaml 命令執(zhí)行漏洞

    漏洞深度分析|CVE-2022-1471 SnakeYaml 命令執(zhí)行漏洞

    YAML是一種數(shù)據(jù)序列化格式,設(shè)計(jì)用于人類(lèi)的可讀性和與腳本語(yǔ)言的交互。 SnakeYaml是一個(gè)完整的YAML1.1規(guī)范Processor,支持UTF-8/UTF-16,支持Java對(duì)象的序列化/反序列化,支持所有YAML定義的類(lèi)型。 https://github.com/snakeyaml/snakeyaml SnakeYaml通常使用方法如下: new Yaml(new Constructor(TestDataC

    2023年04月27日
    瀏覽(30)
  • 漏洞復(fù)現(xiàn)-Drupal遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2018-7602)

    漏洞復(fù)現(xiàn)-Drupal遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2018-7602)

    Drupal 7.x 和 8.x 的多個(gè)子系統(tǒng)中存在一個(gè)遠(yuǎn)程執(zhí)行代碼漏洞。這可能允許攻擊者利用 Drupal 站點(diǎn)上的多個(gè)攻擊媒介,從而導(dǎo)致該站點(diǎn)受到威脅。此漏洞與 Drupal 核心 - 高度關(guān)鍵 - 遠(yuǎn)程代碼執(zhí)行 - SA-CORE-2018-002 有關(guān)。SA-CORE-2018-002 和此漏洞都在野外被利用。 -c 后面接命令,緊隨賬號(hào)

    2024年02月16日
    瀏覽(23)
  • Office遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2017-11882)漏洞復(fù)現(xiàn)

    Office遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2017-11882)漏洞復(fù)現(xiàn)

    CVE-2017-11882允許攻擊者在當(dāng)前用戶(hù)的上下文中運(yùn)行任意代碼,導(dǎo)致無(wú)法正確處理內(nèi)存中的對(duì)象,即為“ Microsoft Office Memory Corruption Vulnerability “,棧溢出的遠(yuǎn)程執(zhí)行漏洞 該漏洞是在 EQNEDT32.EXE 組件的緩沖區(qū)溢出導(dǎo)致。當(dāng)受害用戶(hù)打開(kāi)Office文檔時(shí)就有可能被漏洞利用,危害極大。

    2024年02月12日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包