- Qualys ने OpenSSH के forwarded SSH agent में एक ऐसी भेद्यता खोजी है जिससे remote code execution संभव है.
- SSH agent forwarding का उपयोग मुख्य रूप से CI/CD जैसी स्थितियों में किया जाता है, जहाँ credentials को सीधे स्टोर किए बिना remote पर मौजूद authentication जानकारी का उपयोग करके login की कोशिश की जाती है.
- यह भेद्यता SSH agent के PKCS11 support की अनुमति देने वाले हिस्से में उत्पन्न होती है.
- PKCS11 support के लिए remote user को trusted location की shared libraries को load और close करने की अनुमति दी जाती है.
- Ubuntu Desktop में मौजूद सभी default installed shared libraries का परीक्षण करने पर पाया गया कि default libraries आमतौर पर close किए जाने के लिए डिज़ाइन नहीं की गई थीं, इसलिए SSH agent में उन्हें close करते समय errors उत्पन्न हुए.
- ये errors कुछ system signals उत्पन्न करते हैं, और इन्हें संयोजित करके remote से arbitrary code execute करने में सफलता मिली.
- OpenSSH ने remote PKCS11 support को बस disable कर दिया है और shared libraries को whitelist के माध्यम से प्रबंधित करने के लिए संशोधन किया है.
- पहले
lib फ़ोल्डर के नीचे मौजूद सभी shared libraries को load किया जा सकता था.
- यदि आप SSH agent forwarding फीचर का उपयोग करते हैं, तो आवश्यकता न होने पर PKCS11 support को disable कर देना चाहिए.
3 टिप्पणियां
क्या यह सेटिंग अपने निजी PC पर बंद करनी है? या यह server setting है…
अगर आपने कभी ssh-agent forwarding का इस्तेमाल नहीं किया है, तो लगता है कि आप पर इसका कोई असर नहीं पड़ेगा।
मैंने vulnerability की detailed explanation थोड़ी देर देखी, लेकिन समझ नहीं पाया...
SIGBUS,SIGSEGVhandler का कुछ ऐसा मामला है किSIGTRAPहोता है, और stack buffer में कुछ सेव करके उधर jump करवाने की कोशिश की जाती है...कह रहे हैं कि ये सब library load/unload से control किया जाता है, लेकिन सच कहूँ तो मुझे ठीक से समझ नहीं आया।
बस ऐसा लगा, अच्छा ठीक है... कुछ वैसा ही।
जिन लोगों की इसमें दिलचस्पी है, उनके लिए examples के साथ एक बहुत ही detailed दस्तावेज़ है,
उसे एक बार पढ़ने की सिफारिश करूँगा।