CyberChef 是 GCHQ 創建的自稱「網路瑞士軍刀」。它是在網頁瀏覽器中進行資料轉換、提取和操作的絕佳工具。
完全歸功於@GCHQ 製作該工具。請參閱:https://gchq.github.io/CyberChef/
掌握正規表示式是在 CyberChef(或任何 DFIR 工作)中充分利用資料操作的關鍵。以下是我不斷回顧的一些正規表示式。
擷取 Base64: [a-zA-Z0-9+/=]{30,}
提取十六進位: [a-fA-F0-9]{10,}
提取字元代碼: [d]{2,3}(,|')
(?<=foo)(.*)
^.*(?=bar)
(?<=')(.*?)(?=')
CyberChef 提供了一個 HTTP 請求操作(請參閱第 22 節),它允許對外部資源進行 HTTP 請求。由於同源策略 (SOP) 或缺乏跨來源資源共享配置,許多功能無法正常運作。 SOP 是現代瀏覽器中的安全措施,可防止您透過 CORS 明確允許的伺服器讀取跨站點回應。查看 @GlassSec 在 CyberChef 上的演講,其中包括在沒有網路安全的情況下啟動 Chrome 的提示,以啟用對其他受限制的 API(例如 Virus Total)的 HTTP 請求
CyberChef 食譜的一些範例:
配方一:提取base64,生膨脹&美化
方法 2:呼叫混淆
食譜 3:來自 CharCode
秘訣 4:群組原則首選項密碼解密
秘訣 5:使用循環和標籤
秘訣 6:Google ei 時間戳
方案 7:多階段 COM 腳本到 x86 彙編
方案8:提取十六進制,轉換為hexdump以嵌入PE文件
食譜 9:從 base64 反轉字串、字元替換
配方 10:從 Squid 代理快取中提取對象
食譜 11:將 GPS 座標提取到 Google 地圖 URL
秘訣 12:大數處理
食譜 13:使用暫存器解析 DNS PTR 記錄
食譜 14:解碼 POSHC2 可執行文件
秘訣 15:解析 $MFT $SI 時間戳
食譜 16:解碼 PHP gzinflate 和 base64 webshell
食譜 17:從 Powershell Meterpreter 反向 TCP 腳本中擷取 shellcode
秘訣 18:帶有分段和合併的回收站解析器
秘訣 19:使用正規表示式來反白顯示辨識混淆的 Base64
秘訣 20:將 Yara 規則與反混淆的惡意腳本結合使用
方法 21:附加到惡意 LNK 檔案的十六進位編碼 VBE 腳本的內聯反混淆
食譜 22:使用 HTTP 請求和暫存器進行 JA3 API 搜尋
秘訣 23:使用正規表示式擷取群組擊敗嵌入惡意 DOC 檔案中的 DOSfuscation
食譜 24:從六位元組字串中隨機選取一個字母
食譜 25:建立 Wifi 二維碼
食譜 26:提取和解碼多層 PHP Webshell
食譜 27:解碼自動存取器 PHP 腳本
秘訣 28:使用條件跳躍對 Cobalt Strike Beacon 進行反混淆以獲得 shellcode
秘訣 29:使用分段和暫存器操作日誌檔案時間戳
配方 30:用於 Cobalt Strike 信標的 CharCode 混淆 PowerShell 載入程序
秘訣 31:對 .NET 二進位檔案中的編碼字串進行反混淆
秘訣 32:從混淆的登錄資料中提取惡意 Gootkit DLL
秘訣 33:辨識 Emotet PowerShell 腳本中嵌入的 URL
秘訣 34:分析 OOXML 檔案中的 URL
秘訣 35:解密 REvil PowerShell 勒索軟體範本
食譜 36:建立 CyberChef 密碼產生器
秘訣 37:從 Sandbox 壓縮電子郵件到惡意 URL
食譜 38:飛機、頭骨和信封 - 讓 PowerShell 活起來
食譜 39:解密 GoldMax aka Sunshutte 加密設定檔
食譜 40:摩斯電碼瘋狂
食譜 41:PHP 混合十六進位和八進位編碼
食譜 42:具有分層混淆功能的 PHP Webshell
秘訣 43:Magento skimmer 反混淆
秘訣 44:解密 JobCrypter 勒索軟體
食譜 45:Squid 代理日誌時間戳轉換
秘訣 46:依具體情況自訂正規表示式
食譜 47:Trickbot Visual Basic 腳本
食譜 48:vjw0rm 表情符號瘋狂
秘訣 49:反組譯 EICAR 測試文件
秘訣 50:解析安全描述子定義語言輸出
食譜 51:Base-45 解碼器
秘訣 52:隨機化項目列表
食譜 53:Olevba 輸出到 Powershell
秘訣 54:Windows 事件 ID 1029 雜湊值
配方 55:將 BazarLoader 又稱 TA551 maldoc 進行去模糊處理
秘訣 56:從 PCAP 計算並找出 JA3 或 JA3S 哈希值
食譜 57:用 CyberChef 製作迷因
秘訣 58:從 maldoc 擷取 IcedID 第二階段 URL
食譜 59:解析 Cobalt Strike 信標配置
秘訣 60:解碼受 Microsoft Safelinks 保護的 URL
秘訣 61:從 Qakbot Excel 惡意文件中提取第二階段 URL
食譜 62:將 Maldoc 表情傳送到 PowerShell
秘訣 63:從 Dridex 混淆的 VBS 中擷取 URL
秘訣 64:將字串轉換為 VirusTotal Grep 查詢
配方 65:對 MSF Venom PowerShell 反向 shell 負載進行反混淆
食譜 66:嵌套小節範例
配方 67:將 MSI ProductCode 轉換為登錄安裝程式 ProductID
食譜 68:轉換 Java 有符號位元組數組
食譜 69:從 Bumblebee Powershell 腳本中提取 DLL 負載
食譜 70:從 Android 網路安全配置中提取端點
很常見的場景:擷取Base64、inflate、美化程式碼。然後,您可能需要根據下一階段進行進一步的處理或動態分析。
檔名: ahack.bat
壓縮檔:cc9c6c38840af8573b8175f34e5c54078c1f3fb7c686a6dc49264a0812d56b54_183SnuOIVa.bin.gz
範例:SHA256 cc9c6c38840af8573b8175f34e5c54078c1f3fb7c686a6dc49264a0812d56b54
https://www.hybrid-analysis.com/sample/cc9c6c38840af8573b8175f34e5c54078c1f3fb7c686a6dc49264a0812d56b54?environmentId=120
[{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"Generic Code Beautify","args":[]}]
CyberChef 無法處理所有類型的呼叫混淆,但這是一種可以解碼的類型。
檔案名稱:確認 NUT-95-52619.eml
壓縮檔:1240695523bbfe3ed450b64b80ed018bd890bfa81259118ca2ac534c2895c835.bin.gz
範例:SHA256 1240695523bbfe3ed450b64b80ed018bd890bfa81259118ca2ac534c2895c835
https://www.hybrid-analysis.com/sample/1240695523bbfe3ed450b64b80ed018bd890bfa81259118ca2ac534c2895c835?environmentId=120
[{"op":"Find / Replace","args":[{"option":"Regex","string":"\^|\\|-|_|\/|\s"},"",true,false,true,false]},{"op":"Reverse","args":["Character"]},{"op":"Generic Code Beautify","args":[]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"http:"},"http://",true,false,true,false]},{"op":"Extract URLs","args":[false]},{"op":"Defang URL","args":[true,true,true,"Valid domains and full URLs"]}]
惡意軟體和腳本通常使用 Charcode 來表示字符,以逃避 AV 和 EDR 解決方案。 CyberChef 吃掉了這個。
檔案名稱: 3431818-f71f60d10b1cbe034dc1be242c6efa5b9812f3c6.zip
資料來源:https://gist.github.com/jonmarkgo/3431818
[{"op":"Regular expression","args":["User defined","([0-9]{2,3}(,\s|))+",true,true,false,false,false,false,"List matches"]},{"op":"From Charcode","args":["Comma",10]},{"op":"Regular expression","args":["User defined","([0-9]{2,3}(,\s|))+",true,true,false,false,false,false,"List matches"]},{"op":"From Charcode","args":["Space",10]}]
建立新的 GPP 時,會在 SYSVOL 中建立一個關聯的 XML 檔案以及相關的配置數據,如果提供了密碼,則該檔案是 AES-256 位元加密的。 Microsoft 發布了 AES 金鑰,可用於解密儲存在:\SYSVOL<DOMAIN>Policies 中的密碼
信用:@cyb3rops
來源1:https://twitter.com/cyb3rops/status/1036642978167758848
資料來源 2:https://adsecurity.org/?p=2288
[{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"To Hex","args":["None"]},{"op":"AES Decrypt","args":[{"option":"Hex","string":"4e9906e8fcb66cc9faf49310620ffee8f496e806cc057990209b09a433b66c1b"},{"option":"Hex","string":""},"CBC","Hex","Raw",{"option":"Hex","string":""}]},{"op":"Decode text","args":["UTF16LE (1200)"]}]
CyberChef 可以使用標籤來識別食譜的各個部分,然後循環返回多次執行操作。在這個例子中,有29輪Base64編碼被提取和解碼。
信用:@pmelson
原始檔:hmCPDnHs.txt
來源 1:https://pastebin.com/hmCPDnHs
來源2:https://twitter.com/pmelson/status/1078776229996752896
另請參閱 Base64 循環的更多範例:https://twitter.com/QW5kcmV3/status/1079095274776289280(來源:@QW5kcmV3)
[{"op":"Label","args":["top"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"Jump","args":["top",28]},{"op":"Generic Code Beautify","args":[]}]
Google 使用自己的時間戳,我稱之為 ei 時間,它嵌入在 URL 中。
資料來源:https://bitofhex.com/2018/05/29/cyberchef/
[{"op":"From Base64","args":["A-Za-z0-9-_=",true]},{"op":"To Hex","args":["None"]},{"op":"Take bytes","args":[0,8,false]},{"op":"Swap endianness","args":["Hex",4,true]},{"op":"From Base","args":[16]},{"op":"From UNIX Timestamp","args":["Seconds (s)"]}]
這是一個十一階段解碼的 COM 腳本,使用 Base64、Gunzip、RegEx 和 Disassemble x86 指令。
圖片來源:@JohnLaTwC
檔案名稱:41a6e22ec6e60af43269f4eb1eb758c91cf746e0772cecd4a69bb5f6faac3578.txt
來源1:https://gist.githubusercontent.com/JohnLaTwC/aae3b64006956e8cb7e0127452b5778f/raw/f1b23c84c654b1ea60f0e57a860c743859156 4d8827b25eb9c754d3631be395f06d8cff
來源2:https://twitter.com/JohnLaTwC/status/1062419803304976385
[{"op":"Regular expression","args":["","[A-Za-z0-9=/]{40,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Remove null bytes","args":[]},{"op":"Regular expression","args":["User defined","[A-Za-z0-9+/=]{40,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Gunzip","args":[]},{"op":"Regular expression","args":["User defined","[A-Za-z0-9+/=]{40,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"To Hex","args":["Space"]},{"op":"Remove whitespace","args":[true,true,true,true,true,false]},{"op":"Disassemble x86","args":["32","Full x86 architecture",16,0,true,true]}]
此文件具有嵌入的 PE 檔案(SHA 256:26fac1d4ea12cdceac0d64ab9694d0582104b3c84d7940a4796c1df797d0fdc2,R5Sez8PH.exe,VT:54/70)。使用 CyberChef,我們可以正規表示式十六進位並將其轉換為更容易查看的十六進位轉儲。
來源 1:https://pastebin.com/R5Sez8PH(抱歉:不再可用!)
來源2:https://twitter.com/ScumBots/status/1081949877272276992
[{"op":"Regular expression","args":["User defined","[a-fA-F0-9]{200,}",true,true,false,false,false,false,"List matches"]},{"op":"From Hex","args":["Auto"]},{"op":"To Hexdump","args":[16,false,false]}]
帶有一些要替換的小位元組的 base64 blob。原始解碼由 @pmelson 在 Python 中完成並轉換為 CyberChef。
信用:@pmelson
來源1:https://pastebin.com/RtjrweYF/RtjrweYF.txt
來源2:https://twitter.com/pmelson/status/1076893022758100998
[{"op":"Reverse","args":["Character"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"%"},"A",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"×"},"T",true,false,false,false]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"÷"},"V",true,false,false,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"To Hexdump","args":[16,false,false]}]
不要手動建立 Squid 快取物件。只需將文件上傳到 CyberChef 即可。這個配方將搜尋魔術位元組 0x0D0A0D0A,提取之後的所有內容。然後 gzip 解壓縮該物件以供下載。
來源:00000915(輸出應為 TrueCrypt_Setup_7.1a.exe,具有 SHA256 e95eca399dfe95500c4de569efc4cc77b75e2b66a864d467df377733ec06a0ffff33ec06a0ffff33
[{"op":"To Hex","args":["None"]},{"op":"Regular expression","args":["User defined","(?<=0D0A0D0A).*$",true,false,false,false,false,false,"List matches"]},{"op":"From Hex","args":["Auto"]},{"op":"Gunzip","args":[]}]
如果您需要快速分類照片的拍攝地點,並且您很幸運擁有嵌入式 GPS 緯度和經度,那麼可以使用此方法快速建立可用的 Google 地圖 URL 來識別位置。
[{"op":"Extract EXIF","args":[]},{"op":"Regular expression","args":["User defined","((?<=GPSLatitude:).*$)|((?<=GPSLongitude: ).*$)",true,true,false,false,false,false,"List matches"]},{"op":"Find / Replace","args":[{"option":"Extended (\n, \t, \x...)","string":"\n"},",",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Simple string","string":" "},"https://maps.google.com/?q=",true,false,true,false]}]
CyberChef 可以處理大量資料。這裡我們可以使用一個簡單的方法將 38 位元 X509SerialNumber 更改為其十六進位等效 X.509 憑證序號。然後我們可以正規表示式十六進位並插入冒號將其轉換為正確的格式。
信用:@QW5kcmV3
來源:https://twitter.com/QW5kcmV3/status/949437437473968128
[{"op":"To Base","args":[16]},{"op":"Regular expression","args":["User defined","[a-f0-9]{2,2}",true,true,false,false,false,false,"List matches"]},{"op":"Find / Replace","args":[{"option":"Extended (\n, \t, \x...)","string":"\n"},":",true,false,true,false]}]
DNS PTR 記錄中的 IP 位址首先儲存為最低有效八位元組。例如:167.139.44.10.in-addr.arpa 將與 IP 位址 10.44.139.167 相關。使用 CyberChef 的暫存器,我們可以將每個八位元組分配給記憶體暫存器(或者變量,如果這樣更容易想到的話)。然後可以顛倒這些以重新排序 IP 位址。尋找/取代可以整理記錄的其餘部分。如果您想要轉換「常規」IP 位址以在 DNS PTR 記錄中進行搜索,則可以顛倒。
[{"op":"Fork","args":["\n","\n",false]},{"op":"Register","args":["(\d{1,3}).(\d{1,3}).(\d{1,3}).(\d{1,3})",true,false,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"$R0.$R1.$R2.$R3"},"$R3.$R2.$R1.$R0",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":".in-addr.arpa"},"",true,false,true,false]}]
PoshC2 是一個代理感知 C2 框架,它利用 Powershell 來幫助滲透測試人員進行紅隊、後利用和橫向移動。此釋放器基於 PowerShell,由經過雙重 Base64 編碼和壓縮的 PowerShell 腳本組成。可以使用 CyberChef 來提取字串,如下所述。根據可執行檔的設定和自訂,您可能需要調整您的配方。
信用:@a_tweeter_user
來源:https://twitter.com/a_tweeter_user/status/1100751236687642624
資料來源: posh.zip
[{"op":"Strings","args":["All",4,"Alphanumeric + punctuation (A)",false]},{"op":"Remove null bytes","args":[]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+=]{200,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Remove null bytes","args":[]},{"op":"Regular expression","args":["User defined","[a-z0-9/\\+=]{100,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]}]
CyberChef 幾乎可以用數據做任何事情。以下是來自 $MFT 條目的原始十六進位位元組。透過選擇某些位元組並使用 CyberChef 的各種功能,我可以根據需要解析資料的任何部分。本節將提取並解析 $SI 時間戳記。別再包起來了!
[{"op":"Take bytes","args":[160,64,false]},{"op":"Regular expression","args":["User defined",".{16}",true,true,true,false,false,false,"List matches with capture groups"]},{"op":"Fork","args":["\n","\n",false]},{"op":"Swap endianness","args":["Hex",10,true]},{"op":"Remove whitespace","args":[true,true,true,true,true,false]},{"op":"Windows Filetime to UNIX Timestamp","args":["Nanoseconds (ns)","Hex"]},{"op":"From UNIX Timestamp","args":["Nanoseconds (ns)"]},{"op":"Merge","args":[]},{"op":"Register","args":["(.*)\n(.*)\n(.*)\n(.*)",true,false,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"$R0"},"$SI Creation Time: $R0",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"$R1"},"$SI Modified Time: $R1",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"$R2"},"$SI MFT Change Time: $R2",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"$R3"},"$SI Access Time: $R3",false,false,true,false]}]
Webshell 有各種形狀和大小。對於 PHP webshell,gzinflate 和 base64 的組合可用於混淆 eval 資料。在這個範例中,有21輪壓縮和base64,我們可以使用標籤和迴圈快速解析出來。
資料來源:https://github.com/LordWolfer/webshells/blob/b7eefaff64049e3ff61e90c850686135c0ba74c4/from_the_wild1.php
[{"op":"Label","args":["start"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9=/+]{10,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Block",false,false]},{"op":"Jump","args":["start",21]}]
常見於 @pmelson 的 Pastbin 機器人 @scumbots,它剝離了編碼的 Powershell 腳本的多層以顯示 shellcode。從這裡您可以提取 PUSH 語句來嘗試識別 IP 位址和端口,但您會得到太多誤報。所以你最好使用像 scdbg 這樣的工具(請參閱:http://sandsprite.com/blogs/index.php?uid=7&pid=152)
資料來源:https://twitter.com/ScumBots/status/1121854255898472453
資料來源:https://pastebin.com/9DnD6t6W / 9DnD6t6W.txt
[{"op":"Regular expression","args":["User defined","[a-zA-Z0-9=/+]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Remove null bytes","args":[]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9=/+]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Gunzip","args":[]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9=/+]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"To Hex","args":["None"]},{"op":"Disassemble x86","args":["32","Full x86 architecture",16,0,true,true]}]
分段和合併是 CyberChef 中強大的工具,允許將成分套用到選定的資料而不是整個輸入檔。然後可以將該部分合併在一起以繼續處理整個輸入。在一項出色的工作中,@GlassSec 使用 CyberChef 創建了一個 Windows 回收站解析器,表明這些功能的可能性是無限的。
資料來源:https://gist.github.com/glassdfir/f30957b314ec39a8aa319420a29ffc76
信用:https://twitter.com/GlassSec
[{"op":"Conditional Jump","args":["^(\x01|\x02)",true,"Error",10]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^(\x02.{23})(....)"},"$1",false,false,false,false]},{"op":"Subsection","args":["^.{24}(.*)",true,true,false]},{"op":"Decode text","args":["UTF16LE (1200)"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^(.*)."},"\nDeleted File Path: $1",false,false,false,false]},{"op":"Merge","args":[]},{"op":"Subsection","args":["^.{16}(.{8})",false,true,false]},{"op":"Swap endianness","args":["Raw",8,true]},{"op":"To Hex","args":["None"]},{"op":"Windows Filetime to UNIX Timestamp","args":["Seconds (s)","Hex"]},{"op":"From UNIX Timestamp","args":["Seconds (s)"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^(.* UTC)"},"\nFile Deletion Time: $1",true,false,true,false]},{"op":"Merge","args":[]},{"op":"Subsection","args":["^.{8}(.{8})",true,true,false]},{"op":"To Hex","args":["None"]},{"op":"Swap endianness","args":["Hex",8,true]},{"op":"From Base","args":[16]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^(.*)"},"\nDeleted File Size: $1 bytes",true,false,true,true]},{"op":"Merge","args":[]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^.{8}"},"******** WINDOWS RECYCLE BIN METADATA ********",true,false,false,false]},{"op":"Jump","args":["Do Nothing",10]},{"op":"Label","args":["Error"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"^.*$"},"This doesn't look like a Recycle Bin file to me ",true,false,true,false]},{"op":"Label","args":["Do Nothing"]}]
與其說是食譜,不如說是一種技術。使用正規表示式成分的「突出顯示」功能可以清楚顯示 Base64 資料在何處被非傳統 Base64 字元集分解。這裡是序列“@<!”用於混淆和破壞自動編碼轉換。進一步查看腳本,該序列被替換為“A”,然後可以在提取之前使用“查找/替換”插入該序列。這會持續多輪,直到揭示感興趣的域(以及先前的可執行檔)。
來源:https://pastebin.com/TmJsB0Nv 和 https://twitter.com/pmelson/status/1167065236907659264
[{"op":"Find / Replace","args":[{"option":"Simple string","string":"@<!"},"A",true,false,true,false]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{20,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{50,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"@<!"},"A",true,false,true,false]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{50,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]}]
儘管不是最方便的方法,CyberChef 確實提供了對食譜輸出運行 yara 規則的功能。您可以透過使用多個輸入功能來掃描大量文件來組合此功能。
資料來源:https://twitter.com/ScumBots/status/1168528510681538560 & https://pastebin.com/r40SXe7V
[{"op":"Regular expression","args":["User defined","\(.*\);",true,false,false,false,false,false,"List matches"]},{"op":"Find / Replace","args":[{"option":"Regex","string":",|\(|\);"}," ",true,false,true,false]},{"op":"From Charcode","args":["Space",10]},{"op":"YARA Rules","args":["rule SuspiciousPowerShell {n meta:n description = "Testing Yara on Cyberchef for Powershell"n strings:n $a1 = "[System.Reflection.Assembly]" asciin $a2 = "IEX" ascii nocasen $a3 = "powershell.exe -w hidden -ep bypass -enc" asciin condition:n 2 of themn}",true,true,true,true]}]
此配方從 Microsoft 快捷方式檔案 (LNK) 中提取 VBE 有效負載,然後使用分段內嵌解碼十六進位字串。
來源:malicious.lnk.bin
[{"op":"Microsoft Script Decoder","args":[]},{"op":"Subsection","args":["(?<=\(\")(.*?)(?=\"\))",true,true,false]},{"op":"Fork","args":["\n","\n",false]},{"op":"From Hex","args":["Auto"]}]
使用 HTTP 請求函數和暫存器,我們可以利用來自 API 或外部資源的資料來豐富資料。在這裡,我們正在三個 JA3 哈希值中搜尋任何已知的錯誤。
來源:輸入雜湊值:1aa7bf8b97e540ca5edd75f7b8384bfa、1be3ecebe5aa9d3654e6e703d81f6928 和 b386946a5a44d1ddcc843bc75336dfce
[{"op":"Comment","args":["https://ja3er.com/search/hash"]},{"op":"Fork","args":["\n","\n",false]},{"op":"Register","args":["(.*)",true,false,false]},{"op":"HTTP request","args":["GET","https://ja3er.com/search/$R0","","Cross-Origin Resource Sharing",false]},{"op":"JSON Beautify","args":[" ",false]}]
該惡意 DOC 檔案是直接從 Hybrid-Analysis 下載的。我們將其壓縮出來,用正規表示式選擇混合,然後選擇與「set」函數一起使用的關鍵部分。此部分透過步驟三的反向 for 迴圈進行反混淆。因此,一旦選擇,我們就會反轉字串並使用正規表示式捕獲組來選擇每三個字元。這是 YouTube 上 Hack eXPlorer 的出色作品。去那裡觀看吧!
資料來源:Untitled-11232018-659370.doc.bin.gz
圖片來源:改編自 Hack eXPlorer 的影片使用 Windows CMD 隱藏惡意程式碼 - Dosfuscation
[{"op":"Gunzip","args":[]},{"op":"Regular expression","args":["User defined","c:\\.*"",true,true,false,false,false,false,"List matches"]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"^"},"",true,false,true,false]},{"op":"Regular expression","args":["User defined","(?<=9ojB\=)(.*?)(?=\) )",true,true,false,false,false,false,"List matches"]},{"op":"Reverse","args":["Character"]},{"op":"Regular expression","args":["User defined","(.)..",true,true,false,false,false,false,"List capture groups"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"\n"},"",true,false,true,false]},{"op":"Extract URLs","args":[false]},{"op":"Extract domains","args":[true]}]
一個幫助請求導致了這個秘籍,它使用暫存器、HTTP 請求和一些正規表示式從六位元組字串中選擇一個隨機字元。
圖片來源:改編自史蒂夫湯普森
[{"op":"Register","args":["(.*)",true,false,false]},{"op":"HTTP request","args":["GET","https://www.random.org/integers/?num=1&min=1&max=6&col=1&base=10&format=plain&rnd=new","","Cross-Origin Resource Sharing",false]},{"op":"Register","args":["(.)",true,false,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"(.)"},"$R0",true,false,true,false]},{"op":"Regular expression","args":["User defined","(.){$R1}",true,true,false,false,false,false,"List capture groups"]},{"op":"Head","args":["Line feed",1]}]
無論是為了方便您的朋友訪問您的訪客 WiFi,還是為了任何需要為惡意接入點添加誘人便利的紅隊!使用創建二維碼功能允許Android或iOS設備登入您的Wifi。
信用:https://twitter.com/mattnotmax/status/1242031548884369408
背景:https://github.com/zxing/zxing/wiki/Barcode-Contents#wi-fi-network-config-android-ios-11
Generate_QR_Code('PNG',5,2,'Medium')
使用正規表示式、ROT13、HTTP 請求、暫存器等完全在 Cyberchef 中解碼 SANS 記錄的 Webshell!
信用:https://twitter.com/thebluetoob
[{"op":"Regular expression","args":["User defined","(?<=')(.*?)(?=')",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"ROT13","args":[true,true,13]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"ROT13","args":[true,true,13]},{"op":"Extract URLs","args":[false]},{"op":"Register","args":["(.*)",true,false,false]},{"op":"HTTP request","args":["GET","$R0","","Cross-Origin Resource Sharing",false]},{"op":"Strings","args":["Single byte",4,"Alphanumeric + punctuation (A)",false]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+=/]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Regular expression","args":["User defined","(?<=')(.*?)(?=')",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"ROT13","args":[true,true,13]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+=/]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]}]
使用正規表示式、ROT13、多種解壓縮演算法和小節在 Cyberchef 中解碼用 PHP 編寫的自動訪客腳本!要考慮的關鍵點是有兩個變數使用不同輪次的混淆。您有多種選擇:在多個CyberChef 視窗中工作以獲得最終結果,或如下所示,對每個變數使用小節和greg 來獨立操作每個變量,並在一個腳本中獲得兩個反混淆輸出。您可以透過使用循環來跳過多輪原始膨脹來進一步縮短配方。
信用:原始腳本由 @NtSetDefault 提供,原始 Cyberchef 配方由 @thebluetoob 創建,並由 @mattnotmax 細化為配方。
[{"op":"Regular expression","args":["User defined","(?<=')(.*?)(?=')",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"ROT13","args":[true,true,13]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"ROT13","args":[true,true,13]},{"op":"Subsection","args":["(?<=\$Fadly.*?")(.*?)(?=\")",true,true,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"URL Decode","args":[]},{"op":"From HTML Entity","args":[]},{"op":"Merge","args":[]},{"op":"Subsection","args":["(?<=\$Gans.*?")(.*?)(?=\")",true,true,false]},{"op":"Reverse","args":["Character"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Label","args":["jump"]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]},{"op":"Jump","args":["jump",2]},{"op":"Zlib Inflate","args":[0,0,"Adaptive",false,false]},{"op":"Zlib Inflate","args":[0,0,"Adaptive",false,false]}]
使用來自 @0xtornado 的這個巧妙的腳本選擇您的毒藥,該腳本透過 CyberChef 條件跳躍來解析 shellcode,確定您的信標腳本具有哪種類型的混淆。首先,程式碼尋找一個簡單的正規表示式“bxor”,然後跳到配方的相應部分。否則它解析出第二種類型。使用 CyberChef“選項卡”,您可以載入兩個不同的腳本並取得資料。給您的同事和友好的紅隊或當地 APT 工作人員留下深刻印象!
信用:https://twitter.com/0xtornado/status/1255866333545316352
[{"op":"Conditional Jump","args":["bxor",false,"Decode_Shellcode",10]},{"op":"Label","args":["Decode_beacon"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Gunzip","args":[]},{"op":"Label","args":["Decode_Shellcode"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"XOR","args":[{"option":"Decimal","string":"35"},"Standard",false]}]
並非所有人都認為 CyberChef 是日誌檔案分析工具。但如果您必須轉置、重新格式化或操作日誌檔案以滿足您的目的,那麼它會很方便。在這裡,我們有一個帶有時間戳記的Apache 日誌文件,該時間戳不會導致與其他日誌文件進行有用的時間分析:日期格式不可排序,它括在方括號中,並且採用UTC +1,而不是標準UTC。使用小節、暫存器以及轉置日期和時間,我們可以更改時間戳記的格式並移動列以便能夠將其與其他資料組合。驚人的!
圖片來源:@gazambelli 和 @mattnotmax
[{"op":"Fork","args":["\n","\n",false]},{"op":"Subsection","args":["\[.*\+0100\]",true,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"\[|\]"},"",true,false,true,false]},{"op":"Translate DateTime Format","args":["Standard date and time","DD/MMM/YYYY:HH:mm:ss ZZ","Etc/GMT-1","YYYY-MM-DDTHH:mm:ss ZZ","UTC"]},{"op":"Merge","args":[]},{"op":"Fork","args":["\n","\n",false]},{"op":"Register","args":["(.*)(\d{4}-.*\+0000)(.*)",true,false,false]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"$R0$R1$R2"},"$R1 $R0 $R2",true,false,true,false]}]
Cobalt Strike 標準 PowerShell 載入器的變體。這裡,第一層混淆是一個 GZipped blob 分成兩個 CharCode 陣列。最終結果取決於您:反彙編、字串、提取 IP 或解析 UserAgent。選擇你自己的冒險。
來源:@scumbots & https://pastebin.com/raw/mUFM4fcQ
[{"op":"Regular expression","args":["User defined","\d{1,3}",true,true,false,false,false,false,"List matches"]},{"op":"From Charcode","args":["Line feed",10]},{"op":"Gunzip","args":[]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"XOR","args":[{"option":"Decimal","string":"35"},"Standard",false]},{"op":"Strings","args":["Single byte",5,"All printable chars (A)",false]}]
SolarWinds 惡意 .dll 包含使用壓縮和 Base64 進行混淆的字串。我們可以透過選擇帶有 Subsection 的字串然後進行轉換來快速進行內嵌反混淆,而不是丟失分析中的上下文。結果是一個可以根據上下文進行讀取的函數,並避免可能容易出錯的剪切和貼上。
信用:@cybercdh 和@Shadow0pz
來源:https://twitter.com/cybercdh/status/1338885244246765569 和 https://twitter.com/Shadow0pz/status/1338911469480661000
[{"op":"Subsection","args":["(?<=\(\")(.*)(?=\"\))",true,true,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]}]
Gootkit 將 DLL 儲存為編碼的 PowerShell 儲存在登錄中。 CyberChef 將這種所謂的「無檔案」惡意軟體切碎。 @StefanKelm 提供的一個方便的食譜將“文件”放回“無文件”狀態(是的,我自己也想到了這個,我們正在做食譜 32 我的朋友們......)。
來源:https://github.com/StefanKelm/cyberchef-recipes
[{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Raw Inflate","args":[0,0,"Adaptive",false,false]}]
使用暫存器的強大操作,@Cryptolaemus1 的一個方便的配方從 Emotet 惡意文件中的 PowerShell 中提取混淆的 URL。這裡捕獲組用於抓取查找/替換字串,從而對 URL 進行反混淆。很棒的東西。
信用:@Cryptolaemus 和 @NtRaiseException()
來源:https://twitter.com/Cryptolaemus1/status/1319357369902649344
[{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Find / Replace","args":[{"option":"Regex","string":"'\)?\+\(?'"},"",true,false,true,false]},{"op":"Register","args":["\(+'(=[\w\d]*)'\)+,'/'\)",true,false,false]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"$R0"},"/",true,false,true,false]},{"op":"Register","args":["\/(.)http",true,false,false]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"$R1"},"\n",true,false,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"'"},"\n",true,false,true,false]},{"op":"Extract URLs","args":[false]}]
Didier Stevens 透過從 OOXML 文件(例如 .docx 檔案)中提取 URL 來展示 CyberChef 的驚人簡單性和實用性。透過解壓縮檔案並過濾掉「已知的好」內容,可以檢查剩餘的 URL。不要忘記刪除以避免任何不必要的點擊或操作安全錯誤。結合 CyberChef 的「選項卡」功能,您可以分析一批檔案。
信用:@DidierStevens
資料來源:https://isc.sans.edu/diary/27020
[{"op":"Unzip","args":["",false]},{"op":"Extract URLs","args":[false]},{"op":"Filter","args":["Line feed","http://schemas\.openxmlformats\.org/",true]},{"op":"Filter","args":["Line feed","http://schemas\.microsoft\.com/",true]},{"op":"Filter","args":["Line feed","http://purl\.org/",true]},{"op":"Filter","args":["Line feed","http://www\.w3\.org/",true]},{"op":"Defang URL","args":[true,true,true,"Valid domains and full URLs"]}]
AES 加密的 PowerShell 勒索軟體腳本與 CyberChef 無法匹敵。這裡可以將 Base64 轉換為十六進位,將 IV 和 Key 提取到暫存器中並使用它們來解密 blob。解密後,我們可以檢查資料並在解密的 blob 中識別 1925 位元組的 PE 檔案。提取此資訊後,我們可以使用其他工具來識別其行為,包括爆炸或靜態分析。
來源:@mattnotmax
更多資訊:Powershell 刪除 REvil 勒索軟體
[{"op":"Subsection","args":["(?<=\")([a-zA-Z0-9+/=]{20,})(?=\")",true,true,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"To Hex","args":["None",0]},{"op":"Merge","args":[]},{"op":"Register","args":["(?<=\")([a-fA-F0-9]{32})(?=\")",true,false,false]},{"op":"Register","args":["(?<=\")([a-fA-F0-9]{64})(?=\")",true,false,false]},{"op":"Regular expression","args":["User defined","[a-f0-9]{100,}",true,true,false,false,false,false,"List matches"]},{"op":"AES Decrypt","args":[{"option":"Hex","string":"$R1"},{"option":"Hex","string":"$R0"},"CBC","Hex","Raw",{"option":"Hex","string":""},""]},{"op":"Regular expression","args":["User defined","[a-f0-9]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Hex","args":["Auto"]},{"op":"Drop bytes","args":[0,1925,false]},{"op":"SHA2","args":["256",64,160]}]
好吧,我在這裡有點作弊,因為大部分工作是由 API 完成的。但這是一個很好的例子,提醒您 HTTP 請求操作可以是增強 CyberChef 的超級強大方式。在這裡,我在 CyberChef 輸入窗格中製作了一個小“輸入表單”,並使用正規表示式將 API 呼叫的關鍵參數捕獲到暫存器中。只需一點文字按摩,您就可以根據需要擁有一個快速且簡單的生成器。儲存為當您需要向新用戶提供快速新密碼時的秘訣。
來源:@mattnotmax
[{"op":"Register","args":["(?<=number:\s)(.*)",true,false,false]},{"op":"Register","args":["(?<=words:\s)(.*)",true,false,false]},{"op":"Register","args":["(?<=length:\s)(.*)",true,false,false]},{"op":"HTTP request","args":["GET","https://makemeapassword.ligos.net/api/v1/passphrase/plain?pc=$R0&wc=$R1&sp=y&maxCh=$R2","","Cross-Origin Resource Sharing",false]},{"op":"Find / Replace","args":[{"option":"Regex","string":" "},"-",true,false,true,false]}]
大多數沙箱都會提供帶有通用密碼“infected”的壓縮檔案。當您可以在 CyberChef 中提取內容時,為什麼還要冒險提取到桌面?這裡我們有一個電子郵件.eml
文件,其中包含 OLE2 文件附件。 Strings
識別 Base64,然後提取並解碼以拉出第二階段。
來源:Any.run
[{"op":"Unzip","args":["infected",false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"\n"},"",true,false,true,false]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{400,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Strings","args":["16-bit littleendian",400,"Null-terminated strings (U)",false]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{2000,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Extract URLs","args":[false]},{"op":"Defang URL","args":[true,true,true,"Valid domains and full URLs"]}]
換人就是換人。它可以是字母對字母、字母對數字、還是字母對……頭骨?這裡的混淆最初看起來可能更令人困惑,但實際上與其他類型沒有什麼不同。尋找/替換、小節、來自 Base64...對於 CyberChef 來說都是標準的一天。我已經反轉了第一部分以啟用 URL 提取,然後繼續進行反混淆。
來源:any.run
信用:https://twitter.com/neonprimetime/status/1365351048525791232
[{"op":"Find / Replace","args":[{"option":"Regex","string":"☠"},"B",true,false,true,false]},{"op":"Subsection","args":["[a-zA-Z0-9+/=]{300,}",true,true,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Decode text","args":["UTF-16LE (1200)"]},{"op":"Reverse","args":["Character"]},{"op":"Merge","args":[]},{"op":"Find / Replace","args":[{"option":"Simple string","string":"_✉✈_"},"A",true,false,true,false]},{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{300,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]}]
GoldMax 又稱為 Sunshuttle 在執行時會丟棄一個加密的設定檔。在 Microsoft 和 Fireeye 的 RE 分析中,演算法和金鑰已被識別並發布,使得使用 CyberChef 解密變得輕而易舉。
來源1:https://www.microsoft.com/security/blog/2021/03/04/goldmax-goldfinder-sibot-analyzing-nobelium-malware/
資料來源2:https://www.fireeye.com/blog/threat-research/2021/03/sunshuttle-second-stage-backdoor-targeting-us-based-entity.html
[{"op":"From Base64","args":["A-Za-z0-9-_",true]},{"op":"AES Decrypt","args":[{"option":"UTF8","string":"hz8l2fnpvp71ujfy8rht6b0smouvp9k8"},{"option":"Hex","string":"00000000000000000000000000000000"},"CFB","Raw","Raw",{"option":"Hex","string":""}]},{"op":"Subsection","args":["[a-zA-Z0-9+/=]{50,}",true,true,false]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Merge","args":[]},{"op":"Drop bytes","args":[0,16,false]},{"op":"Take bytes","args":[0,120,false]},{"op":"Register","args":["(^.*?)\|(.*?)\|(.*?)\|(.*)\|(.*)",true,false,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":".*"},"MD5 of Execution Time:\t\t\t$R0\nLower/Upper Limit for Sleep Time:\t$R1\nUtilize “blend-in” traffic requests:\t$R2\nEnd execution timestamp:\t\t$R2\nUser-agent for HTTPS requests:\t\t$R4",false,false,false,false]}]
是的,CyberChef 中有摩斯電碼操作。是的,有一天您可能需要使用它。遺憾的是,這不是惡意軟體,但 CyberChef 仍然可以完成這項工作。感謝 @pmelson 和 @cyber__sloth 的這篇文章。
來源:https://pastebin.com/raw/PvLuparz
食譜:https://twitter.com/cyber__sloth/status/1367904890157211654
[{"op":"From Binary","args":["Space",8]},{"op":"From Morse Code","args":["Space","Forward slash"]},{"op":"Reverse","args":["Character"]},{"op":"ROT13","args":[true,true,false,13]}]
我們想要什麼?一組十六進制和八進制的混合編碼!我們什麼時候想要它?現在!
來源:https://twitter.com/JCyberSec_/status/1368963598475739137
[{"op":"Fork","args":["\n","\n",false]},{"op":"Subsection","args":["\\x[a-fA-F0-9]{2}",true,true,false]},{"op":"From Hex","args":["\x"]},{"op":"Merge","args":[]},{"op":"Subsection","args":["\\\d{3}",true,true,false]},{"op":"Find / Replace","args":[{"option":"Regex","string":"\\"},"",true,false,true,false]},{"op":"From Octal","args":["Space"]}]
這個多層 webshell 是分段和跳躍的一個很好的例子。您可以將其分解為多個部分或在單個 CyberChef 食譜中完成它(如下所示)。
來源:https://twitter.com/mattnotmax/status/1377829935780274176
[{"op":"Regular expression","args":["User defined","[a-zA-Z0-9+/=]{30,}",true,true,false,false,false,false,"List matches"]},{"op":"From Base64","args":["A-Za-z0-9+/=",true]},{"op":"Subsection","args":["(?<=\\x)([a-fA-F0-9]{2})",true,true,false]},{"op":"From Hex","args":["\x"]},{"op":"Merge","args":[]},{"op":"Find / Replace","args":[{"option":"Regex","string":"\\x"},"",true,false,true,false]},{"op":"Subsection","args":["[a-zA-Z0-9+/=]{30,}=",true,true,false]},{"op":"From