
SSH क्लाइंट और सर्वर की फ़िंगरप्रिंटिंग करें।
नोट: यह Corelight रिपॉजिटरी इसलिए बनाई गई थी ताकि इसे सक्रिय रूप से अनुरक्षित किया जा सके, Salesforce के अनुरोध के अनुसार, जिसका मूल रिपॉजिटरी अनुरक्षित नहीं है।
"HASSH" एक नेटवर्क फ़िंगरप्रिंटिंग मानक है जिसका उपयोग विशिष्ट क्लाइंट और सर्वर SSH इम्प्लीमेंटेशन की पहचान करने के लिए किया जा सकता है। फ़िंगरप्रिंट्स को MD5 फ़िंगरप्रिंट के रूप में आसानी से संग्रहीत, खोजा और साझा किया जा सकता है।
"hassh" और "hasshServer" MD5 हैश हैं जो विभिन्न SSH क्लाइंट और सर्वर अनुप्रयोगों द्वारा समर्थित एल्गोरिदम के एक विशिष्ट सेट से निर्मित होते हैं। ये एल्गोरिदम प्रारंभिक TCP थ्री-वे हैंडशेक के बाद "SSH_MSG_KEXINIT" संदेशों के रूप में ज्ञात क्लियर-टेक्स्ट पैकेटों के रूप में आदान-प्रदान किए जाते हैं, और अंतिम एन्क्रिप्टेड SSH चैनल की स्थापना का एक अभिन्न अंग हैं। इन एल्गोरिदम का अस्तित्व और क्रम इतना अद्वितीय हो सकता है कि इसका उपयोग अंतर्निहित क्लाइंट और सर्वर अनुप्रयोग या अद्वितीय इम्प्लीमेंटेशन की पहचान करने में मदद करने के लिए एक फ़िंगरप्रिंट के रूप में किया जा सकता है, चाहे "Client" या "Server" स्ट्रिंग्स जैसे उच्च-स्तरीय स्पष्ट पहचानकर्ता कुछ भी हों।
"Cyberduck" SFTP क्लाइंट SSH-2.0-Cyberduck/6.7.1.28683 (Mac OS X/10.13.6) (x86_64) के लिए, समर्थित एल्गोरिदम का सेट निम्नानुसार है :
इन एल्गोरिदमों को ";" के सीमांकक के साथ जोड़ने पर hasshAlgorithms प्राप्त होता है, जो विस्तृत विश्लेषण के लिए उपयोगी है।
[email protected],diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group14-sha256,diffie-hellman-group15-sha512,diffie-hellman-group16-sha512,diffie-hellman-group17-sha512,diffie-hellman-group18-sha512,[email protected],diffie-hellman-group15-sha256,[email protected],[email protected],diffie-hellman-group16-sha256,[email protected],[email protected],[email protected];aes128-cbc,aes128-ctr,aes192-cbc,aes192-ctr,aes256-cbc,aes256-ctr,blowfish-cbc,blowfish-ctr,cast128-cbc,cast128-ctr,idea-cbc,idea-ctr,serpent128-cbc,serpent128-ctr,serpent192-cbc,serpent192-ctr,serpent256-cbc,serpent256-ctr,3des-cbc,3des-ctr,twofish128-cbc,twofish128-ctr,twofish192-cbc,twofish192-ctr,twofish256-cbc,twofish256-ctr,twofish-cbc,arcfour,arcfour128,arcfour256;hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96,hmac-sha2-256,hmac-sha2-512;[email protected],zlib,none
अंततः hassh केवल hasshAlgorithms का MD5 है, और इसका उपयोग भंडारण, खोज और साझाकरण के लिए किया जाता है। कुछ उदाहरण निम्नलिखित हैं:
de30354b88bae4c2810426614e1b6976 Powershell Renci.SshNet.SshClient.0.0.1 (used by Empire exploit modules)
fafc45381bfde997b6305c4e1600f1bf Ruby/Net::SSH_5.0.2 x86_64-linux (used by Metasploit exploit modules)
b5752e36ba6c5979a575e43178908adf Python Paramiko_2.4.1 (used by Metasploit exploit modules)
16f898dd8ed8279e1055350b4e20666c Dropbear_2012.55 (used in IOT embedded systems)
8a8ae540028bf433cd68356c1b9e8d5b CyberDuck Version 6.7.1 (28683)
06046964c022c6407d15a27b12a6a4fb OpenSSH_7.7p1 Ubuntu-4
एक मानक SSH-2.0-OpenSSH_5.3 SSH सर्वर के लिए, समर्थित एल्गोरिदम का सेट निम्नानुसार है :
| कार्य |
|---|
इन एल्गोरिदमों को ";" के सीमांकक के साथ जोड़ने पर hasshServerAlgorithms प्राप्त होता है, जो विस्तृत विश्लेषण के लिए उपयोगी है।
diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1;aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected];hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96;none,[email protected]
अंततः hasshServer केवल hasshServerAlgorithms का MD5 है, कुछ उदाहरण निम्नलिखित हैं:
c1c596caaeb93c566b8ecf3cae9b5a9e SSH-2.0-dropbear_2016.74
d93f46d063c4382b6232a4d77db532b2 SSH-2.0-dropbear_2016.72
2dd9a9b3dbebfaeec8b8aabd689e75d2 SSH-2.0-AWSCodeCommit
696e7f84ac571fdf8fa5073e64ee2dc8 SSH-2.0-FTP
डिफ़ॉल्ट रूप से, कच्चा एल्गोरिदम स्ट्रिंग और कुंजी एल्गोरिदम लॉग किए जाते हैं, और स्क्रिप्ट में इन बूलियन चरों को सेट करके नियंत्रित किया जा सकता है।
option log_raw_hasshAlgorithms = T;
option log_key_algorithm = T;
hassh और hasshServer की अवधारणा और विकास Salesforce में Detection Cloud Team के भीतर Ben Reardon द्वारा किया गया, Adel Karimi (@0x4d31) और JA3 टीम से प्रेरणा और योगदान के साथ।
| कार्य | SSH_MSG_KEXINIT पैकेटों में देखे गए एल्गोरिदम |
|---|
| की एक्सचेंज विधियाँ | [email protected],diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group14-sha256,diffie-hellman-group15-sha512,diffie-hellman-group16-sha512,diffie-hellman-group17-sha512,diffie-hellman-group18-sha512,[email protected],diffie-hellman-group15-sha256,[email protected],[email protected],diffie-hellman-group16-sha256,[email protected],[email protected],[email protected] |
| एन्क्रिप्शन | aes128-cbc,aes128-ctr,aes192-cbc,aes192-ctr,aes256-cbc,aes256-ctr,blowfish-cbc,blowfish-ctr,cast128-cbc,cast128-ctr,idea-cbc,idea-ctr,serpent128-cbc,serpent128-ctr,serpent192-cbc,serpent192-ctr,serpent256-cbc,serpent256-ctr,3des-cbc,3des-ctr,twofish128-cbc,twofish128-ctr,twofish192-cbc,twofish192-ctr,twofish256-cbc,twofish256-ctr,twofish-cbc,arcfour,arcfour128,arcfour256 |
| संदेश प्रमाणीकरण | hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96,hmac-sha2-256,hmac-sha2-512 |
| संपीड़न | [email protected],zlib,none |
| SSH_MSG_KEXINIT पैकेटों में देखे गए एल्गोरिदम |
|---|
| की एक्सचेंज विधियाँ | diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 |
| एन्क्रिप्शन | aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected] |
| संदेश प्रमाणीकरण | hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96 |
| संपीड़न | none,[email protected] |