前言
在網上看到了幾篇有意思的文章,感覺能和自己之前在打CTF比賽時的知識相結合,遂自己動手復現一下。
01
準備
打開該URL:https://portal.myzyxel.com/my/firmwares,發現需要登錄:
使用臨時郵箱注冊就可以解決問題,畢竟你也不想讓自己常用的郵箱變為垃圾郵件回收站吧?注冊后繼續訪問該網站,選擇如下圖所示的版本號:
點擊后面的Download下載文件,下載后對zip壓縮包解壓unzip -d ./firmware firmware.zip,可以得到:
現在我們的目標是解壓出該設備的文件系統(file-system),所以當前的目標為470AALA0C0.bin,使用binwalk查看信息:
基本為1,這表明該固件處于加密或壓縮狀態;使用binwalk 470AALA0C0.bin查看其狀態:
該bin文件實際上是處于加密狀態的zip壓縮包,可以使用file命令驗證一下:
同樣需要注意的是解壓出來的不僅只有bin文件,還有一些其他文件,這些文件可能對我們之后的解密470AALA0C0.bin帶來一些幫助:
分別計算這些文件的CRC32校驗值:
將470AALA0C0.bin拖拽到Windows中,使用7-zip打開,逐級目錄翻找,最終發現./db/etc/zyxel/ftp/conf目錄下的system-default.conf與前面的470AALA0C0.conf校驗值相同:
這說明這兩個文件完全相同,所以我采用明文攻擊的手段來解包該加密的bin文件
02
解包方式1 — 明文攻擊
雖說明文攻擊時現在CTF中一種常見的雜項題目類型,但是在這里我還是要強調幾個問題,這里就以上面加密的system-default.conf為例吧:
明文攻擊成功需要同時滿足三個條件,缺一不可:
用戶擁有壓縮包中已知的明文文件(部分或全部)。
明文文件在攻擊前需要與對應的加密文件使用相同的壓縮算法壓縮成壓縮包(可以簡單的認為是使用相同的壓縮工具),就比如說密文system-default.conf使用的壓縮算法為ZipCrypto Deflate:Maximum
密文文件的壓縮算法需要是ZipCrypto Store/ZipCrypto Deflate
密文文件的加密方式不能是AES,即不能是AES256-Deflate / AES256-Store,只能是ZipCrypto Deflate / ZipCrypto Store.
下面我們來說一下具體的破解過程,我一開始嘗試的是之前一直在使用的ARCHPR 4.54 Professional Edition:
但是該工具無法識別,就算文件擴展名改為.zip也不行,可能因為ARCHPR是很老的緣故了,不支持現在使用最新算法的加密包。仔細想想我們為什么一定非要用Windows下的ARCHPR進行破解呢?從加密包可以知道**system-default.conf**在Unix系統上被壓縮(極有可能為Linux系統上的壓縮軟件),因此我們轉而使用另外一款工具pkcrack。
-
Linux
+關注
關注
87文章
11232瀏覽量
208948 -
加密
+關注
關注
0文章
302瀏覽量
23902 -
壓縮包
+關注
關注
0文章
9瀏覽量
1875
原文標題:花式解密Zyxel加密固件包
文章出處:【微信號:IOTsec Zone,微信公眾號:IOTsec Zone】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論