
CyberChef v11.4.0
The Cyber Swiss Army Knife - एक वेब ऐप जो एन्क्रिप्शन, एन्कोडिंग, कंप्रेशन और डेटा विश्लेषण के लिए है।
CyberChef
द साइबर स्विस आर्मी नाइफ
CyberChef एक सरल, सहज ज्ञान युक्त वेब ऐप है जो वेब ब्राउज़र के भीतर सभी प्रकार के "साइबर" ऑपरेशन करने के लिए है। इन ऑपरेशनों में XOR और Base64 जैसी सरल एन्कोडिंग, AES, DES और Blowfish जैसी अधिक जटिल एन्क्रिप्शन, बाइनरी और हेक्सडंप बनाना, डेटा का संपीड़न और विघटन, हैश और चेकसम की गणना, IPv6 और X.509 पार्सिंग, कैरेक्टर एन्कोडिंग बदलना, और बहुत कुछ शामिल है।
यह टूल तकनीकी और गैर-तकनीकी दोनों प्रकार के विश्लेषकों को जटिल टूल या एल्गोरिदम से निपटने की आवश्यकता के बिना, डेटा को जटिल तरीकों से हेरफेर करने में सक्षम बनाने के लिए डिज़ाइन किया गया है। इसे एक विश्लेषक ने अपने 10% इनोवेशन समय में कई वर्षों में बनाया, डिज़ाइन किया, निर्मित किया और उत्तरोत्तर सुधारा।
सामग्री
- आधिकारिक वेबसाइट
- स्थानीय रूप से चलाना
- यह कैसे काम करता है
- विशेषताएँ
- डीप लिंकिंग
- ब्राउज़र समर्थन
- Node.js समर्थन
- सुरक्षा
- योगदान
- लाइसेंस
आधिकारिक वेबसाइट
CyberChef की आधिकारिक वेबसाइट यहाँ पाई जा सकती है - मज़े करें!
स्थानीय रूप से चलाना
आप CyberChef को Docker के साथ चला सकते हैं (कोई टूलचेन आवश्यक नहीं है) या इसे Node.js के साथ स्रोत से बना सकते हैं।
Docker के साथ
पूर्वापेक्षाएँ
- Docker
- Docker Desktop आपके मशीन पर खुला और चालू होना चाहिए
विकल्प 1: स्वयं Docker इमेज बनाएं
- डॉकर इमेज बनाएं
docker build --tag cyberchef --ulimit nofile=10000 .
- डॉकर कंटेनर चलाएं
docker run -it -p 8080:8080 cyberchef
- अपने ब्राउज़र में
http://localhost:8080पर जाएं
विकल्प 2: पूर्व-निर्मित Docker इमेज का उपयोग करें
यदि आप बिल्ड प्रक्रिया को छोड़ना पसंद करते हैं, तो आप पूर्व-निर्मित इमेज का उपयोग कर सकते हैं
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
पहले की तरह, अपने ब्राउज़र में http://localhost:8080 पर जाएं।
यह इमेज हमारे GitHub Workflows के माध्यम से बनाई और प्रकाशित की जाती है।
स्रोत से
यदि आप CyberChef को विकसित करना चाहते हैं या इसे Docker के बिना चलाना चाहते हैं, तो आप इसे सीधे Node.js के साथ बना सकते हैं।
पूर्वापेक्षाएँ
- Node.js
v24(देखें Node.js समर्थन)
[!NOTE]
आप Node.js संस्करणों को प्रबंधित करने के लिए nvm का उपयोग कर सकते हैं और अपनी मशीन पर अन्य परियोजनाओं के साथ टकराव से बचने के लिए इस प्रोजेक्ट में वर्तमान विकास संस्करण का उपयोग कर सकते हैं।
सेटअप
git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install
सामान्य कार्य
| कमांड | विवरण |
|---|---|
npm start | विकास सर्वर को http://localhost:8080 पर लाइव रीलोड के साथ चलाएं। |
npm run build | build/prod निर्देशिका में एक प्रोडक्शन बिल्ड तैयार करें। |
npm test | Node.js और ऑपरेशन परीक्षण सुइट चलाएं। |
npm run testui | ब्राउज़र (UI) परीक्षण चलाएं। |
npm run lint | लिंटिंग नियमों के विरुद्ध कोड की जाँच करें। |
npm run newop | इंटरैक्टिव क्विकस्टार्ट स्क्रिप्ट के माध्यम से एक नया ऑपरेशन स्कैफोल्ड करें। |
यदि बड़ी रेसिपी बनाते समय आउट-ऑफ-मेमोरी त्रुटि आती है, तो npm run setheapsize के साथ Node की हीप साइज़ बढ़ाएं।
यह कैसे काम करता है
CyberChef में चार मुख्य क्षेत्र हैं:
- ऊपर दाईं ओर इनपुट बॉक्स, जहाँ आप उस टेक्स्ट या फ़ाइल को पेस्ट, टाइप या ड्रैग कर सकते हैं जिस पर आप कार्य करना चाहते हैं।
- नीचे दाईं ओर आउटपुट बॉक्स, जहाँ आपकी प्रोसेसिंग का परिणाम प्रदर्शित होगा।
- सबसे बाईं ओर ऑपरेशन सूची, जहाँ आप वर्गीकृत सूचियों में या खोज करके वे सभी ऑपरेशन पा सकते हैं जिन्हें CyberChef करने में सक्षम है।
- बीच में रेसिपी क्षेत्र, जहाँ आप उन ऑपरेशनों को खींच सकते हैं जिन्हें आप उपयोग करना चाहते हैं और तर्क तथा विकल्प निर्दिष्ट कर सकते हैं।
आप सरल या जटिल तरीकों से जितने चाहें उतने ऑपरेशनों का उपयोग कर सकते हैं। कुछ उदाहरण निम्नलिखित हैं:
- Base64-एन्कोडेड स्ट्रिंग को डिकोड करें
- दिनांक और समय को एक अलग समय क्षेत्र में बदलें
- Teredo IPv6 पता पार्स करें
- हेक्सडंप से डेटा बदलें, फिर डीकंप्रेस करें
- शेलकोड को डिक्रिप्ट और डिस्सेम्बल करें
- एकाधिक टाइमस्टैम्प को पूर्ण दिनांक के रूप में प्रदर्शित करें
- विभिन्न प्रकार के डेटा पर विभिन्न ऑपरेशन करें
- इनपुट के भागों को ऑपरेशन के तर्क के रूप में उपयोग करें
- सिफर स्ट्रीम की शुरुआत से IV निकालते हुए AES डिक्रिप्शन करें
- उसी AES डिक्रिप्शन को करने का एक सरल तरीका
- नेस्टेड एन्कोडिंग की कई परतों का स्वचालित रूप से पता लगाएं
विशेषताएँ
- ड्रैग और ड्रॉप
- ऑपरेशनों को रेसिपी सूची में और बाहर खींचा जा सकता है, या पुनर्व्यवस्थित किया जा सकता है।
- 2GB तक की फ़ाइलों को इनपुट बॉक्स पर खींचकर सीधे ब्राउज़र में लोड किया जा सकता है।
- ऑटो बेक
- जब भी आप इनपुट या रेसिपी में बदलाव करते हैं, CyberChef स्वचालित रूप से आपके लिए "बेक" करेगा और तुरंत आउटपुट तैयार करेगा।
- यदि यह प्रदर्शन को प्रभावित कर रहा है (उदाहरण के लिए, यदि इनपुट बहुत बड़ा है) तो इसे बंद किया जा सकता है और मैन्युअल रूप से संचालित किया जा सकता है।
- स्वचालित एन्कोडिंग पहचान
- CyberChef यह पता लगाने के प्रयास के लिए कई तकनीकों का उपयोग करता है कि आपके डेटा के अंतर्गत कौन सी एन्कोडिंग है।
- यदि इसे आपके डेटा को समझने वाला कोई उपयुक्त ऑपरेशन मिलता है, तो यह आउटपुट फ़ील्ड में 'magic' आइकन प्रदर्शित करता है, जिसे आप अपने डेटा को डिकोड करने के लिए क्लिक कर सकते हैं।
- ब्रेकपॉइंट
- आप अपनी रेसिपी में किसी भी ऑपरेशन पर ब्रेकपॉइंट सेट कर सकते हैं ताकि उसे चलाने से पहले निष्पादन रोका जा सके।
- आप रेसिपी में एक समय में एक ऑपरेशन करते हुए आगे बढ़ सकते हैं ताकि देख सकें कि प्रत्येक चरण में डेटा कैसा दिखता है।
- रेसिपी सहेजें और लोड करें
- यदि आप एक शानदार रेसिपी बनाते हैं जिसे आप जानते हैं कि आप फिर से उपयोग करना चाहेंगे, तो बस "Save recipe" पर क्लिक करें और इसे अपने लोकल स्टोरेज में जोड़ें।
- अगली बार जब आप CyberChef पर जाएंगे तो यह आपके लिए मौजूद होगी।
- आप URL को भी कॉपी कर सकते हैं, जिसमें आपकी रेसिपी और इनपुट शामिल होते हैं, ताकि इसे आसानी से दूसरों के साथ साझा किया जा सके।
- खोज
- यदि आप अपने इच्छित ऑपरेशन का नाम या उससे जुड़ा कोई शब्द जानते हैं, तो उसे खोज फ़ील्ड में टाइप करना शुरू करें और कोई भी मेल खाता ऑपरेशन तुरंत दिखाया जाएगा।
- हाइलाइटिंग
- जब आप इनपुट या आउटपुट में टेक्स्ट हाइलाइट करते हैं, तो ऑफसेट और लंबाई मान प्रदर्शित होंगे और, यदि संभव हो, तो संबंधित डेटा क्रमशः आउटपुट या इनपुट में हाइलाइट किया जाएगा (उदाहरण: आउटपुट में यह कहाँ दिखाई देता है यह देखने के लिए इनपुट में 'question' शब्द को हाइलाइट करें)।
- फ़ाइल में सहेजें और फ़ाइल से लोड करें
- आप किसी भी समय आउटपुट को फ़ाइल में सहेज सकते हैं या किसी फ़ाइल को इनपुट फ़ील्ड में खींचकर छोड़कर लोड कर सकते हैं।
- लगभग 2GB तक की फ़ाइलें समर्थित हैं (आपके ब्राउज़र के आधार पर), हालाँकि, इतने अधिक डेटा पर कुछ ऑपरेशनों को चलने में बहुत लंबा समय लग सकता है।
- CyberChef पूरी तरह से क्लाइंट-साइड है
- यह ध्यान दिया जाना चाहिए कि आपकी रेसिपी कॉन्फ़िगरेशन या इनपुट (चाहे टेक्स्ट या फ़ाइलें) में से कोई भी चीज़ कभी भी CyberChef वेब सर्वर को नहीं भेजी जाती है - सभी प्रोसेसिंग आपके ब्राउज़र में, आपके अपने कंप्यूटर पर की जाती है।
- इस विशेषता के कारण, CyberChef को डाउनलोड करके स्थानीय रूप से चलाया जा सकता है।
- आप ऐप के ऊपरी बाएं कोने में दिए गए लिंक का उपयोग करके CyberChef की पूरी प्रति डाउनलोड कर सकते हैं और इसे वर्चुअल मशीन में डाल सकते हैं, अन्य लोगों के साथ साझा कर सकते हैं, या इसे किसी बंद नेटवर्क में होस्ट कर सकते हैं।
डीप लिंकिंग
CyberChef के URL हैश में हेरफेर करके, आप उन प्रारंभिक सेटिंग्स को बदल सकते हैं जिनके साथ पृष्ठ खुलता है।
प्रारूप है https://gchq.github.io/CyberChef/#recipe=Operation()&input=...
समर्थित तर्क recipe, input (Base64 में एन्कोडेड) और theme हैं।
ब्राउज़र समर्थन
CyberChef को समर्थन देने के लिए बनाया गया है
- Google Chrome 50+
- Mozilla Firefox 38+
Node.js समर्थन
CyberChef को Node.js v24 का पूर्ण समर्थन करने के लिए बनाया गया है और Node.js v26 के सक्रिय LTS रिलीज़ बनने से पहले इसके विरुद्ध भी परीक्षण किया जाता है। अधिक जानकारी के लिए, "Node API" विकी पृष्ठ देखें
सुरक्षा
कृपया CyberChef सुरक्षा नीति देखें।
योगदान
CyberChef में एक नया ऑपरेशन योगदान करना बहुत आसान है! क्विकस्टार्ट स्क्रिप्ट आपको पूरी प्रक्रिया में मार्गदर्शन देगी। यदि आप बुनियादी JavaScript लिख सकते हैं, तो आप एक CyberChef ऑपरेशन लिख सकते हैं।
इंस्टॉलेशन वॉकथ्रू, नए ऑपरेशन और थीम जोड़ने के लिए हाउ-टू गाइड, रिपॉजिटरी संरचना का विवरण, उपलब्ध डेटा प्रकार और कोडिंग परंपराएं सभी "Contributing" विकी पृष्ठ पर पाई जा सकती हैं।
- अपने परिवर्तनों को अपने फोर्क में पुश करें।
- पुल रिक्वेस्ट सबमिट करें। यदि आप पहली बार ऐसा कर रहे हैं, तो आपको पुल रिक्वेस्ट पर CLA असिस्टेंट के माध्यम से GCHQ योगदानकर्ता लाइसेंस समझौते पर हस्ताक्षर करने के लिए कहा जाएगा। यह यह भी पूछेगा कि क्या आप GCHQ को अपने योगदान के लिए धन्यवाद के प्रतीक के बारे में, या GCHQ में नौकरी के अवसरों के बारे में आपसे संपर्क करने की अनुमति देते हैं।
लाइसेंस
CyberChef Apache 2.0 लाइसेंस के तहत जारी किया गया है और क्राउन कॉपीराइट द्वारा कवर किया गया है।