0x01漏洞背景
2019 年 2 月 20 日 @Nadav Grossman 發表了一篇關于他如何發現一個在 WinRAR 中存在 19 年的邏輯問題以至成功實作代碼執行的文章。
WinRAR 代碼執行相關的 CVE 編号如下:
CVE-2018-20250, CVE-2018-20251, CVE-2018-20252, CVE-2018-20253
該漏洞是由于 WinRAR 所使用的一個陳舊的動态連結庫UNACEV2.dll所造成的,該動态連結庫在 2006 年被編譯,沒有任何的基礎保護機制(ASLR, DEP 等)。該動态連結庫的作用是處理 ACE 格式檔案。而在解壓處理過程中存在一處目錄穿越漏洞,允許解壓過程寫入檔案至開機啟動項,導緻代碼執行。
0x02準備工作
下載下傳安裝winace,一路預設安裝即可

建立一個demo檔案夾,建立名為test的文本文檔,内容如下
點選右上角file->create
陰影部分下拉框選擇store full path
點選add即可
此時在demo檔案夾下生成了test.ace