winrar目錄穿越漏洞


地址:
參考: https://research.checkpoint.com/extracting-code-execution-from-winrar/
POC: https://github.com/Ridter/acefile
EXP: https://github.com/WyAtu/CVE-2018-20250

漏洞成因:
使用unacev2.dll動態共享庫
漏洞編號:
CVE-2018-20250: ACE文件驗證邏輯繞過漏洞
CVE-2018-20251: ACE文件名邏輯驗證繞過漏洞
CVE-2018-20252: ACE/RAR文件越界寫入漏洞
CVE-2018-20253: LHA/LZH文件越界寫入漏洞
修復方式:
1. 刪除安裝文件夾內的unacev2.dll文件
2. 升級成winrar5.70 Beata 1以上版本(https://www.win-rar.com/download.html)

漏洞復現:

  1. 新建cmd.exe

  2. 將cmd.exe 壓縮為 test.ace

  3. 獲取壓縮包的 crc (https://github.com/Ridter/acefile)
    注意這三個值(hdr_crc,hdr_size,filename)

38的十六進制為:

  1. 通過十六進制編輯器修改test.ace文件


注意以上 信息

獲取開機啟動菜單(win+r 輸入 shell:startup)

復制地址,進行修改

保存,重新使用acefile檢測crc

由圖知,正確的CRC值為9c4f,當前為0x2aca,進行修改,還有之前hdr_size的值同時修改

該字段長度為110,十六進制為6E

查找2a(2a ca 是連續字段,這里的順序是相反的)

修改為4f9c

使用acefile腳本檢測文件是否正確(通過檢測,我發現值變了,重新修改crc,就正確了)

5.保存退出

將test.ace重命名為test.rar格式文件

右鍵解壓

打開啟動菜單發現新建cmd.exe成功

6.查看開機啟動項 msconfig


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM