文章目錄
簡介
是什麼
一個簡單,直觀的Web應用程序,用於分析和解碼數據,而無需處理複雜的工具或編程語言。CyberChef鼓勵技術人員和非技術人員探索數據格式,加密和壓縮。
爲什麼
在現代世界中,數字數據具有各種形式,大小和格式,CyberChef有助於在一個易於使用的平臺上充分利用這些數據。
怎麼樣
該界面的設計本質是簡單。現在,複雜的技術就像拖放一樣簡單。可以組合簡單的功能來構建“配方”,從而可能導致複雜的分析,可以與其他用戶共享並與他們的輸入一起使用。
對於那些習慣編寫代碼的人,CyberChef是一種快速有效的解決方案原型解決方案的方法,一旦證明可以工作,就可以編寫腳本。
爲誰
預計CyberChef將對網絡安全和防病毒公司有用。它還應該吸引學術界以及參與數字數據分析的任何個人或公司,無論是軟件開發人員,分析師,數學家還是臨時難題解決者。
目的
希望通過在GitHub上發佈CyberChef 可以添加貢獻,這些貢獻可以推廣到該工具的未來版本中。
CyberChef中大約有200種有用的操作,適用於任何與網絡相關的工作,無論您是要將時間戳轉換爲其他格式,解壓縮壓縮的數據,創建SHA3哈希還是解析X.509證書以查找信息誰發行的。
這就是網絡瑞士軍刀。
工具在線使用地址
https://gchq.github.io/CyberChef/
基本操作
Add tabs(添加標籤)
要添加新的輸入選項卡,請單擊Add a new input tab輸入標題欄中的按鈕。
這將創建一個新的空白輸入選項卡,您可以在其中輸入數據並將其粘貼到其中。
無需在加載文件之前創建新標籤,因爲新標籤會自動創建
加載文件
拖放
與早期版本的CyberChef一樣,可以通過將文件拖放到輸入區域中來加載文件。您可以通過相同的方式拖放多個文件來加載多個文件作爲輸入。
打開文件按鈕
Open file as input按鈕現在支持選擇多個文件。單擊按鈕,在打開的對話框中選擇多個文件,每個選定的文件將作爲單獨的輸入打開。
打開文件夾按鈕
Open folder as input按鈕的功能與“打開文件”按鈕非常相似,不同之處在於,需要選擇要打開的文件夾而不是單個文件。文件夾中的所有文件都將被加載,包括子文件夾。
這還將選擇隱藏文件或元數據文件,例如.DS_Store在Mac OS上。
Chrome和Firefox都會在將文件句柄傳遞給CyberChef之前在後臺加載文件句柄,因此在單擊Upload和屏幕上發生的一切之間可能會有延遲。
加載狀態
總體加載狀態顯示在輸入標題欄中。顯示正在加載的輸入總數,以及待加載的輸入數和已加載的輸入數。
通過使用選項卡標題作爲進度條來顯示每個選項卡的加載進度。
輸入選項卡的標題是輸入的前幾個字符,或者如果是文件,則是文件名。
Baking(處理)
觸發自動處理時(例如,更改配方或輸入內容時),僅運行當前顯示的輸入選項卡。要處理所有輸入,請單擊==Bake!==按鈕以啓動完全運行。
如果單擊“烘焙”時尚未完全加載輸入,則該輸入將被忽略。
處理狀態
處理狀態顯示在輸出標題欄中。顯示的統計信息包括:正在運行的輸入總數,待處理的輸入數量以及已完成處理的輸入數量。
通過將bake按鈕變成進度條,還可以顯示輸入的進度!
每個選項卡的背景都用作進度條,以顯示配方中的單個進度。
取消處理
進行處理時,您可以再次單擊“bake”按鈕(現在標記爲Cancel)以取消處理,當前正在處理或待處理的所有輸入都將被取消。任何完成處理的輸入將保留其新輸出。
輸出標籤
搜索標籤
要搜索輸入或輸出選項卡,請單擊選項卡欄(···)右側的菜單按鈕,然後單擊Find tab。使用狀態複選框過濾加載或烘焙狀態,並使用過濾框將每個選項卡的內容(或輸入文件名)與正則表達式進行匹配。單擊搜索結果以打開該選項卡。
如果知道所需標籤的編號,則可以使用Go to tab標籤菜單中的按鈕直接跳轉到該標籤
下載輸出
要下載單個輸出,請單擊Save output to file輸出標題欄中的按鈕。
要將所有輸出下載到一個zip文件中,請單擊Save all outputs to a zip file輸出標題欄中的按鈕。單擊此選項後,系統將要求您提供zip文件的文件名以及壓縮文件的文件擴展名。
如果文件擴展名留爲空白,CyberChef將嘗試自動檢測每個輸入的文件擴展名(.dat如果無法檢測到,將使用該文件擴展名)。
鍵盤快捷鍵
- 添加標籤
Windows和Linux: Ctrl + Alt + T
Mac: Ctrl + Option + T - 移除標籤
Windows和Linux: Ctrl + Alt + W
Mac: Ctrl + Option + W - 轉到下一個標籤
Windows和Linux: Ctrl + Alt +右箭頭
Mac: Ctrl + Option +右箭頭 - 轉到上一個標籤
Windows和Linux: Ctrl + Alt +左箭頭
Mac: Ctrl + Option +左箭頭
筆記
使用多個輸入時,需要注意一些限制:
- CyberChef在加載和運行輸入時可能會佔用大量CPU,因此瀏覽器或整個計算機可能會因此而變慢。爲了充分利用具有多個處理核心的系統,CyberChef將嘗試增加多個線程來處理不同的輸入(此數字是根據可用核心數減去1來計算的,以確保UI不會無響應)。
- 在內存不足的系統上,Firefox可能經常用盡內存以使用並關閉選項卡。
- 在Windows系統上,Chrome不允許瀏覽器標籤使用超過2-3GB的RAM。如果您嘗試將過多的數據加載到CyberChef中,Chrome將關閉該標籤。
- 兩種瀏覽器都可以使用打開的文件夾對話框最多加載500,000個文件。
在Chrome瀏覽器中,加載過多的內容將立即導致整個瀏覽器崩潰。
如果文件數超過限制,Firefox將自動取消加載文件。
使用實例
建議自己試一下,很多玩法
解碼Base64編碼的字符串
https://gchq.github.io/CyberChef/#recipe=From_Base64(‘A-Za-z0-9%2B/%3D’,true)&input=VTI4Z2JHOXVaeUJoYm1RZ2RHaGhibXR6SUdadmNpQmhiR3dnZEdobElHWnBjMmd1
將日期和時間轉換爲其他時區
https://gchq.github.io/CyberChef/#recipe=Translate_DateTime_Format(‘Standard%20date%20and%20time’,‘DD/MM/YYYY%20HH:mm:ss’,‘UTC’,‘dddd%20Do%20MMMM%20YYYY%20HH:mm:ss%20Z%20z’,‘Australia/Queensland’)&input=MTUvMDYvMjAxNSAyMDo0NTowMA
解析Teredo IPv6地址
https://gchq.github.io/CyberChef/#recipe=Parse_IPv6_address()&input=MjAwMTowMDAwOjQxMzY6ZTM3ODo4MDAwOjYzYmY6M2ZmZjpmZGQy
從hexdump轉換數據,然後解壓縮
https://gchq.github.io/CyberChef/#recipe=From_Hexdump()Gunzip()&input=MDAwMDAwMDAgIDFmIDhiIDA4IDAwIDEyIGJjIGYzIDU3IDAwIGZmIDBkIGM3IGMxIDA5IDAwIDIwICB8Li4uLi6881cu/y7HwS4uIHwKMDAwMDAwMTAgIDA4IDA1IGQwIDU1IGZlIDA0IDJkIGQzIDA0IDFmIGNhIDhjIDQ0IDIxIDViIGZmICB8Li7QVf4uLdMuLsouRCFb/3wKMDAwMDAwMjAgIDYwIGM3IGQ3IDAzIDE2IGJlIDQwIDFmIDc4IDRhIDNmIDA5IDg5IDBiIDlhIDdkICB8YMfXLi6%2BQC54Sj8uLi4ufXwKMDAwMDAwMzAgIDRlIGM4IDRlIDZkIDA1IDFlIDAxIDhiIDRjIDI0IDAwIDAwIDAwICAgICAgICAgICB8TshObS4uLi5MJC4uLnw
解密和反彙編shellcode
https://gchq.github.io/CyberChef/#recipe=RC4(%7B’option’:‘UTF8’,‘string’:‘secret’%7D,‘Hex’,‘Hex’)Disassemble_x86(‘64’,‘Full%20x86%20architecture’,16,0,true,true)&input=MjFkZGQyNTQwMTYwZWU2NWZlMDc3NzEwM2YyYTM5ZmJlNWJjYjZhYTBhYWJkNDE0ZjkwYzZjYWY1MzEyNzU0YWY3NzRiNzZiM2JiY2QxOTNjYjNkZGZkYmM1YTI2NTMzYTY4NmI1OWI4ZmVkNGQzODBkNDc0NDIwMWFlYzIwNDA1MDcxMzhlMmZlMmIzOTUwNDQ2ZGIzMWQyYmM2MjliZTRkM2YyZWIwMDQzYzI5M2Q3YTVkMjk2MmMwMGZlNmRhMzAwNzJkOGM1YTZiNGZlN2Q4NTlhMDQwZWVhZjI5OTczMzYzMDJmNWEwZWMxOQ
將多個時間戳顯示爲完整日期
https://gchq.github.io/CyberChef/#recipe=Fork(’%5C%5Cn’,’%5C%5Cn’,false)From_UNIX_Timestamp(‘Seconds%20(s)’)&input=OTc4MzQ2ODAwCjEwMTI2NTEyMDAKMTA0NjY5NjQwMAoxMDgxMDg3MjAwCjExMTUzMDUyMDAKMTE0OTYwOTYwMA
對不同類型的數據執行不同的操作
https://gchq.github.io/CyberChef/#recipe=Fork(’%5C%5Cn’,’%5C%5Cn’,false)Conditional_Jump(‘1’,false,‘base64’,10)To_Hex(‘Space’)Return()Label(‘base64’)To_Base64(‘A-Za-z0-9%2B/%3D’)&input=U29tZSBkYXRhIHdpdGggYSAxIGluIGl0ClNvbWUgZGF0YSB3aXRoIGEgMiBpbiBpdA
使用輸入的一部分作爲操作的參數
https://gchq.github.io/CyberChef/#recipe=Register(‘key%3D(%5B%5C%5Cda-f%5D*)’,true,false)Find_/_Replace(%7B’option’:‘Regex’,‘string’:’.data%3D(.)’%7D,‘R0’%7D,‘Hex’,‘Latin1’)&input=aHR0cDovL21hbHdhcmV6LmJpei9iZWFjb24ucGhwP2tleT0wZTkzMmE1YyZkYXRhPThkYjdkNWViZTM4NjYzYTU0ZWNiYjMzNGUzZGIxMQ