淺談CyberChef 多功能分析工具

資訊安全新知分享

NEITHNET 資安實驗室

CyberChef 是一個 web 開源工具

引用官方的介紹,這款工具可以直接在web上用來做一些簡單的編碼像是XOR、Base64,以及較為複雜的編碼(AES、DES 和 Blowfish 等),建立binary and hexdumps,data的壓縮及解壓縮等等…

  那現在就來介紹一些簡單的應用部分。更多詳細內容可以參考:GitHub: https://github.com/gchq/CyberChef

Case1:Base64 decode

  以下面這個case來說(Sample來源:POC:https://github.com/chvancooten/follina.py
  假設有一個word檔案,點擊之後會馬上當掉或是閃一下就消失等,才驚覺它可能是惡意文件。
  進而來想來分析這個檔案,發現解壓縮之後可以看link: mhtml:http://[IP]:80/exploit.html

  嘗試去讀取的這個exploit.html可以發現看到一串base64 log

  這時候可以把它丟到CyberChef,去decode base64,decode之後可以發現,它其實是在C:\users\public\產生了一個owned.txt檔案,這時候可以去調查這個檔案,再去進一步做其他分析。

Case2:decode base64 + GZIP

  sample來源:CS(Cobalt Strike)powershell command

  把拿到的cs powershell command拿到CyberChef去分析,在使用上可以直接把那段base64 code複製取出,如果不想自己複製取出也可以利用regular exepression 來取出整段command中base64 code的部份。

  使用方式為直接點那個資料夾圖示:Regular_expression(‘User defined’,'[a-zA-Z0-9+/=]{30,}’,true,true,false,false,false,false,’List matches’)

或是從左手邊的Search 搜尋“Regular_expression” 打上要正規化的條件

  取出要decode的base64部分後,我們可以照case1的步驟取得以下Output內容。

  這裡可以看得出來是一個gzip壓縮的base46編碼。

  接著繼續利用CyberChef來做decode,步驟一樣先取出base64的字串,接著decode之後做解壓縮。

  好了現在已經變成人類可讀的明文了。

Case3: decode Base64+XOR

  從Case2解出來的code中可以發現,中間還有一段shellcode是base64加密以及可以發現下面還有一個for迴圈去對這段shellcode做了xor。

  一樣放進CyberChef,decode base64之後,依照code寫的一樣再做一次xor ,然後我們就可以發現它的c2了!:)

  如果想了解解析出來的CS powershell Execution相關說明可以參考:https://mez0.cc/posts/cobaltstrike-powershell-exec/

  由上面幾個簡單的範例來看,可以發現CyberChef其實是一個很方便且強大的工具,如果覺得線上解code會有疑慮的話,也可以載下來使用。

  本文參考:https://github.com/mattnotmax/cyberchef-recipes

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。