आपके पास हैश है। यह हेक्स वर्णों की एक लंबी श्रृंखला है, या हो सकता है कि इसमें कोई अजीब उपसर्ग हो $2b$. आपको यह जानना होगा कि इसे किस एल्गोरिदम ने बनाया है - सीटीएफ चुनौती, सुरक्षा ऑडिट, पासवर्ड पुनर्प्राप्ति, या सिर्फ जिज्ञासा के लिए।

यहां किसी भी हैश प्रकार को उसकी लंबाई, वर्ण सेट और प्रारूप के आधार पर पहचानने के लिए निश्चित मार्गदर्शिका दी गई है।

हैश क्या है?

एक हैश एक निश्चित लंबाई वाली स्ट्रिंग है जो एक-तरफ़ा गणितीय फ़ंक्शन द्वारा निर्मित होती है। किसी भी इनपुट - एक पासवर्ड, एक फ़ाइल, एक संदेश - को हैशिंग एल्गोरिदम में फ़ीड करें और आपको एक निश्चित आकार का एक अद्वितीय फिंगरप्रिंट मिलता है। एक ही इनपुट हमेशा एक ही आउटपुट उत्पन्न करता है, लेकिन आप मूल इनपुट को पुनर्प्राप्त करने के लिए प्रक्रिया को उलट नहीं सकते।

हैश फ़ंक्शंस का उपयोग हर जगह किया जाता है: डेटाबेस में पासवर्ड संग्रहीत करना, फ़ाइल अखंडता की पुष्टि करना, डिजिटल हस्ताक्षर और डेटा डिडुप्लीकेशन।

हैश की पहचान कैसे करें: त्वरित विधि

हैश की पहचान करने का सबसे तेज़ तरीका इसके द्वारा है वर्ण गणना और कैरेक्टर सेट. अधिकांश हैश हेक्साडेसिमल वर्णों (0-9, ए-एफ) से बने होते हैं, लेकिन कुछ एल्गोरिदम जैसे बीक्रिप्ट और एसएचए-512 क्रिप्ट व्यापक बेस64 वर्णमाला का उपयोग करते हैं।

चरण 1: अक्षरों की गिनती करें। चरण 2: वर्ण सेट (केवल हेक्स, या अल्फ़ान्यूमेरिक+विशेष) पर ध्यान दें। चरण 3: उपसर्ग की जांच करें (bcrypt से प्रारंभ होता है $2b$, SHA-512 क्रिप्ट से शुरू होता है $6$).

या बस हमारा उपयोग करें हैश आइडेंटिफायर टूल इसे स्वचालित रूप से पहचानने के लिए।

हैश पहचान संदर्भ तालिका

हैश प्रकार लंबाई कैरेक्टर सेट उपसर्ग / नोट्स
MD5 32 हेक्स (0-9, ए-एफ) कोई उपसर्ग नहीं
SHA-1 40 हेक्स कोई उपसर्ग नहीं
SHA-224 56 हेक्स कोई उपसर्ग नहीं
SHA-256 64 हेक्स कोई उपसर्ग नहीं
SHA-384 96 हेक्स कोई उपसर्ग नहीं
SHA-512 128 हेक्स कोई उपसर्ग नहीं
SHA3-256 64 हेक्स लंबाई में SHA-256 से अप्रभेद्य
SHA3-512 128 हेक्स लंबाई के आधार पर SHA-512 से अप्रभेद्य
NTLM 32 हेक्स एमडी5 के समान लंबाई - संदर्भ मायने रखता है
MySQL 4.1+ 40 हेक्स कभी-कभी इसके साथ उपसर्ग लगाया जाता है *
bcrypt 60 बेस64 वर्णमाला से शुरू होता है $2a$, $2b$, या $2y$
SHA-512 क्रिप्ट 106 बेस64 वर्णमाला से शुरू होता है $6$
SHA-256 क्रिप्ट 63 बेस64 वर्णमाला से शुरू होता है $5$
एमडी5 क्रिप्ट 34 बेस64 वर्णमाला से शुरू होता है $1$
आर्गन2 परिवर्तनीय बेस64 + $ से शुरू होता है $argon2id$ या $argon2i$
स्क्रिप्ट परिवर्तनीय बेस64 + $ से शुरू होता है $s0$
PBKDF2 परिवर्तनीय बेस64 या हेक्स अक्सर इसके साथ उपसर्ग लगाया जाता है pbkdf2_sha256$
एलएम हैश 32 हेक्स विंडोज़ विरासत - दो 16-चार हिस्से
CRC32 8 हेक्स बहुत संक्षिप्त - 4 बाइट्स
व्हर्लपूल 128 हेक्स कम आम
RIPEMD-160 40 हेक्स SHA-1 के समान लंबाई
एडलर-32 8 हेक्स चेकसम, क्रिप्टोग्राफ़िक हैश नहीं

सबसे आम हैश की पहचान करना

MD5 (32 हेक्स अक्षर)

कमान
5f4dcc3b5aa765d61d8327deb882cf99

एमडी5 सबसे आम हैश है जिसका आपको सामना करना पड़ेगा। 32 लोअरकेस हेक्स अक्षर, कोई उपसर्ग नहीं। इसका व्यापक रूप से पासवर्ड भंडारण के लिए उपयोग किया जाता था, लेकिन अब इसे क्रिप्टोग्राफ़िक रूप से टूटा हुआ माना जाता है - यह गणना करने में तेज़ है, जो क्रूर-बल के हमलों को तुच्छ बनाता है।

इसमें सामान्य: लीगेसी वेब ऐप्स, फ़ाइल चेकसम, सीटीएफ चुनौतियाँ, डेटाबेस पासवर्ड डंप।

सीमा: MD5 और NTLM दोनों 32 हेक्स वर्ण हैं। यदि आपको विंडोज़ सिस्टम से 32-चार हैश मिलता है, तो यह संभवतः एनटीएलएम है। किसी वेब ऐप से, यह संभवतः MD5 है।

SHA-1 (40 हेक्स अक्षर)

कमान
5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8

40 हेक्स अक्षर। 2017 से अधिकांश सुरक्षा उपयोगों के लिए अप्रचलित लेकिन पुराने सिस्टम, Git कमिट, SSL प्रमाणपत्र (विरासत), और फ़ाइल चेकसम में अभी भी आम है।

इसमें सामान्य: Git ऑब्जेक्ट आईडी, पुराने SSL प्रमाणपत्र, फ़ाइल सत्यापन उपकरण।

SHA-256 (64 हेक्स अक्षर)

कमान
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8

अधिकांश अनुप्रयोगों के लिए वर्तमान मानक। 64 हेक्स अक्षर. बिटकॉइन (डबल SHA-256), JWT हस्ताक्षर, आधुनिक पासवर्ड स्टोरेज रैपर और TLS में उपयोग किया जाता है।

इसमें सामान्य: ब्लॉकचेन, एपीआई हस्ताक्षर, पासवर्ड भंडारण (अक्सर पीबीकेडीएफ2 या एचएमएसी में लपेटा हुआ), फ़ाइल अखंडता सत्यापन।

SHA-512 (128 हेक्स अक्षर)

कमान
b109f3bbbc244eb82441917ed06d618b9008dd09b3befd1b5e07394c706a8bb980b1d7785e5976ec049b46df5f1326af5a2ea6d103fd07c95385ffab0cacbc86

128 हेक्स अक्षर। SHA-256 से अधिक मजबूत लेकिन धीमा। कुछ Linux पासवर्ड हैशिंग में उपयोग किया जाता है (/etc/shadow) और उच्च सुरक्षा अनुप्रयोग।

बीक्रिप्ट (60 अक्षर, बेस64 जैसा)

कमान
$2b$12$EixZaYVK1fsbw1ZfbX3OXePaWxn96p36WQoeG6Lruj3vjPGga31lW

अपने संरचित उपसर्ग के कारण सबसे अधिक पहचाना जाने वाला हैश प्रारूप:

  • $2b$ (या $2a$, $2y$) - एल्गोरिथम संस्करण
  • 12 — लागत कारक (कार्य कारक), कितने राउंड
  • बाद में सब कुछ - 53-अक्षर नमक + हैश संयुक्त

बीक्रिप्ट जानबूझकर धीमा है। आप इसे GPU के साथ तेज़ नहीं कर सकते - यही कारण है कि यह पासवर्ड हैशिंग के लिए सही विकल्प है। यदि आपको 60-वर्ण वाली स्ट्रिंग प्रारंभ होती हुई दिखाई देती है $2, यह bcrypt है।

इसमें सामान्य: PHP ऐप्स (password_hash()), रूबी ऑन रेल्स, सबसे आधुनिक वेब फ्रेमवर्क।

एनटीएलएम (32 हेक्स अक्षर)

कमान
b4b9b02e6f09a9bd760f388b67351e2b

दिखने में MD5 के समान - 32 लोअरकेस हेक्स अक्षर। एनटीएलएम विंडोज़ का लीगेसी प्रमाणीकरण हैश है। यदि आप CTF कर रहे हैं या Windows सिस्टम का परीक्षण कर रहे हैं, तो ये बार-बार दिखाई देंगे।

एनटीएलएम से एमडी5 कैसे बताएं: प्रसंग. एनटीएलएम विंडोज़ एसएएम डेटाबेस, सक्रिय निर्देशिका, या मिमिकात्ज़ जैसे टूल से आता है। MD5 आमतौर पर वेब एप्लिकेशन डेटाबेस से आता है।

आर्गन2 (परिवर्तनीय लंबाई, संरचित उपसर्ग)

कमान
$argon2id$v=19$m=65536,t=3,p=4$c29tZXNhbHQ$RdescudvJCsgt3ub+b+dWRWJTmaaJObG

2015 पासवर्ड हैशिंग प्रतियोगिता विजेता। इसे मेमोरी-हार्ड बनाने के लिए डिज़ाइन किया गया है, जो इसे GPU और ASIC-आधारित हमलों के प्रति प्रतिरोधी बनाता है। आधुनिक ढाँचे (Django 4+, PHP 8.1+ मूल) Argon2id को अपना रहे हैं।

उपसर्ग विखंडन: $argon2id$ = वैरिएंट, v=19 = संस्करण, m=65536 = मेमोरी लागत, t=3 = समय लागत, p=4 = समानता.

जब लंबाई ही पर्याप्त न हो तो हैश की पहचान कैसे करें

कुछ हैश की लंबाई और वर्ण सेट समान होते हैं:

टक्कर भेद कैसे करें
एमडी5 बनाम एनटीएलएम (32 हेक्स) स्रोत संदर्भ - विंडोज़ = एनटीएलएम, वेब डीबी = एमडी5
SHA-1 बनाम RIPEMD-160 (40 हेक्स) RIPEMD-160 बहुत दुर्लभ है; SHA-1 सुरक्षित अनुमान है
SHA-256 बनाम SHA3-256 (64 हेक्स) एल्गोरिदम मेटाडेटा या टूलींग की आवश्यकता है
SHA-512 बनाम SHA3-512 बनाम व्हर्लपूल (128 हेक्स) संदर्भ या हैश-आईडी टूल की आवश्यकता है

जब अकेले लंबाई इसे हल नहीं कर सकती, तो आपको यह करना होगा:

  1. स्रोत प्रणाली (ओएस, ऐप फ्रेमवर्क, डेटाबेस) की जाँच करें
  2. एल्गोरिथम की पुष्टि करने के लिए किसी ज्ञात मान के विरुद्ध क्रैक करने का प्रयास करें
  3. एक हैश पहचानकर्ता उपकरण का उपयोग करें जो एकाधिक एल्गोरिदम का परीक्षण करता है

हैश आइडेंटिफ़ायर टूल का उपयोग करना

अक्षरों को मैन्युअल रूप से गिनने के बजाय, हमारा उपयोग करें हैश पहचानकर्ता - किसी भी हैश में पेस्ट करें और यह होगा:

  • सभी ज्ञात एल्गोरिदम के विरुद्ध निर्धारित लंबाई और वर्ण का मिलान करें
  • सर्वाधिक संभावित उम्मीदवारों को हाइलाइट करें
  • स्वचालित रूप से उपसर्गित प्रारूपों (बीक्रिप्ट, एसएचए-क्रिप्ट, आर्गन2) को ध्वजांकित करें

यह सीटीएफ चुनौतियों के लिए विशेष रूप से उपयोगी है जहां आपको अपरिचित हैश प्रारूपों का सामना करना पड़ता है या कई हैश को तुरंत संसाधित करने की आवश्यकता होती है।

वास्तविक दुनिया के परिदृश्य

परिदृश्य 1: आपके पास एक डेटाबेस डंप है

आपको एक उपयोगकर्ता तालिका मिलती है password कॉलम जिसमें 60-अक्षर की स्ट्रिंग शुरू होती है $2b$. ये bcrypt हैश हैं. आधुनिक और उचित रूप से कार्यान्वित - उन्हें क्रैक करना कम्प्यूटेशनल रूप से महंगा है।

परिदृश्य 2: सीटीएफ चुनौती - आपको एक हैश फ़ाइल मिलती है

कमान
098f6bcd4621d373cade4e832627b4f6

32 हेक्स अक्षर → एमडी5। डोरी test MD5 में इस मान पर हैश। हैशकैट या जॉन के साथ एक त्वरित वर्डलिस्ट हमला आम पासवर्ड को तुरंत क्रैक कर देगा।

कमान
hashcat -m 0 -a 0 hash.txt wordlist.txt

मोड -m 0 MD5 है। यदि यह SHA-1 था, तो उपयोग करें -m 100. SHA-256 है -m 1400.

परिदृश्य 3: लिनक्स /आदि/छाया

कमान
$6$rounds=5000$usesomesalt$IxDD3jerizQ5s/bS3FbSsO6hMGFjfSKNBWENHyJ7FXKC4XiuT3pOlLGEBpRiuJ3QGJlyXfS4uNIaVpqEcF2b.

से शुरू होता है $6$ → SHA-512 क्रिप्ट। प्रारूप है: $id$salt$hash जहां id=6 का अर्थ SHA-512 है।

आईडी एल्गोरिथम
$1$ एमडी5 क्रिप्ट
$5$ SHA-256 क्रिप्ट
$6$ SHA-512 क्रिप्ट
$y$ हाँक्रिप्ट
$2b$ bcrypt

हैशकैट मोड संदर्भ

यदि आप हैश क्रैक कर रहे हैं (उन सिस्टम पर जिन्हें आप परीक्षण करने के लिए अधिकृत हैं), यहां सबसे सामान्य प्रकारों के लिए हैशकैट मोड हैं:

हैश प्रकार हैशकैट मोड
MD5 0
SHA-1 100
SHA-256 1400
SHA-512 1700
NTLM 1000
bcrypt 3200
SHA-512 क्रिप्ट ($6$) 1800
MySQL 4.1+ 300
WPA/WPA2 2500

त्वरित पहचान चीटशीट

  • 8 वर्ण, हेक्स → CRC32 या एडलर-32 (चेकसम, क्रिप्टो नहीं)
  • 32 वर्ण, हेक्स → एमडी5 या एनटीएलएम
  • 40 वर्ण, हेक्स → SHA-1 या RIPEMD-160
  • 56 वर्ण, हेक्स → SHA-224
  • 64 वर्ण, हेक्स → SHA-256 या SHA3-256
  • 96 वर्ण, हेक्स → SHA-384
  • 128 वर्ण, हेक्स → SHA-512, SHA3-512, या व्हर्लपूल
  • 60 वर्ण, से शुरू होता है $2 → बीक्रिप्ट
  • से शुरू होता है $1$ → एमडी5 क्रिप्ट
  • से शुरू होता है $5$ → SHA-256 क्रिप्ट
  • से शुरू होता है $6$ → SHA-512 क्रिप्ट
  • से शुरू होता है $argon2 → आर्गन2
  • से शुरू होता है pbkdf2_ → PBKDF2

अभी अपना हैश पहचानें

हमारा निःशुल्क उपयोग करें हैश आइडेंटिफायर टूल - किसी भी हैश को पेस्ट करें और कॉन्फिडेंस स्कोर और संभावित एल्गोरिदम के साथ तुरंत पहचान प्राप्त करें।

संबंधित उपकरण और मार्गदर्शिकाएँ: