1.5 萬 Star!程序員的“網(wǎng)絡(luò)瑞士軍刀”!
簡(jiǎn)介
CyberChef 是一個(gè)用于加密、編碼、壓縮和數(shù)據(jù)分析的網(wǎng)絡(luò)應(yīng)用程序,號(hào)稱“網(wǎng)絡(luò)瑞士軍刀”,可在瀏覽器中執(zhí)行各種“網(wǎng)絡(luò)”操作,包括簡(jiǎn)單的編碼(XOR 或 Base64),更復(fù)雜點(diǎn)的加密(如 AES、DES 和 Blowfish),創(chuàng)建二進(jìn)制文件和十六進(jìn)制轉(zhuǎn)儲(chǔ)(Hex dump)、數(shù)據(jù)壓縮和解壓縮、計(jì)算哈希值和校驗(yàn)和、IPv6 和 X.509 解析、更改字符編碼等等。
使用該工具可以使技術(shù)和非技術(shù)分析師能夠以復(fù)雜的方式操作數(shù)據(jù),而無需處理復(fù)雜的工具或算法。
瀏覽器支持:
- 谷歌瀏覽器 50+
- 火狐瀏覽器 38+
項(xiàng)目地址是:
??https://github.com/gchq/CyberChef
在線使用地址是:
??https://gchq.github.io/CyberChef
簡(jiǎn)單使用
源碼安裝
CyberChef 使用 Grunt 構(gòu)建系統(tǒng),因此非常容易安裝。需要執(zhí)行以下步驟才能開始:
- 安裝 Git
- 安裝 Node.js 的最新 LTS 版本 10 及其包管理器 npm
- 安裝 Grunt:npm install -g grunt-cli
- git clone https://github.com/gchq/CyberChef.git
- cd CyberChef
- npm install
編譯
主要涉及以下幾條命令:
- grunt dev 在開發(fā)新功能時(shí)使用。這個(gè)命令將在 8080 端口上啟動(dòng)一個(gè) Web 服務(wù)器,托管一個(gè)未壓縮的 CyberChef 開發(fā)版本,可通過瀏覽器訪問 localhost:8080。每當(dāng)修改源文件時(shí),將自動(dòng)重建開發(fā)版本。
- grunt prod 創(chuàng)建生產(chǎn)版本時(shí),請(qǐng)運(yùn)行此命令。它將檢查、測(cè)試、編譯和壓縮所有源文件,并在將結(jié)果輸出到 build/prod/ 目錄。
- grunt node 這會(huì)將 CyberChef 打包為 NodeJS 庫。
- npm test 這將運(yùn)行所有預(yù)先配置的測(cè)試并將結(jié)果輸出到標(biāo)準(zhǔn)輸出。
使用方法
CyberChef 頁面有四個(gè)主要的區(qū)域:
- 右上角的輸入框,可以在其中輸入、粘貼、或者拖動(dòng)想要操作的文本或文件
- 右下角的輸出框,將顯示對(duì)應(yīng)的結(jié)果
- 最左側(cè)的操作列表,可以在其中選擇或者搜索到 CyberChef 支持的操作,如 Base64 解碼是 From Base64 操作
- 中間的區(qū)域,當(dāng)選擇某個(gè)操作之后會(huì)出現(xiàn)對(duì)應(yīng)操作的一些可選選項(xiàng)。如進(jìn)行時(shí)間轉(zhuǎn)換時(shí),可自行輸入時(shí)間格式,可選擇轉(zhuǎn)換的時(shí)區(qū)等。