
CitrixBleed-2 (CVE-2025-5777) – NetScaler ADC/Gateway के 'मेमोरी ब्लीड' के लिए प्रूफ-ऑफ-कॉन्सेप्ट शोषण
CitrixBleed-2 (CVE-2025-5777) – NetScaler ADC/Gateway के “मेमोरी ब्लीड” के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट
CVE-2025-5777 Citrix NetScaler ADC/Gateway (Gateway या AAA vServer मोड) में एक महत्वपूर्ण अनप्रमाणित आउट-ऑफ-बाउंड्स रीड है। एक एकल क्राफ्टेड अनुरोध सत्र टोकन वाली मेमोरी को डंप कर सकता है, जिससे पूर्ण प्रमाणीकरण बायपास संभव हो जाता है—जिससे इसे “CitrixBleed 2” उपनाम मिला है।
पैच बिल्ड 17 जून 2025 को प्रकाशित किए गए:
अनपैच सिस्टम के लिए कोई आधिकारिक शमन मौजूद नहीं है।
इस Github रिपॉजिटरी पर दी गई जानकारी केवल शैक्षिक उद्देश्यों के लिए है। इस Github पर सभी जानकारी सद्भावना से प्रदान की गई है, हालांकि मैं किसी भी प्रकार का कोई प्रतिनिधित्व या वारंटी नहीं करता, व्यक्त या निहित, किसी भी जानकारी की सटीकता, पर्याप्तता, वैधता, विश्वसनीयता, उपलब्धता या पूर्णता के संबंध में। यह कोड केवल शैक्षिक और रक्षात्मक उद्देश्यों के लिए जारी किया गया है। परीक्षण से पहले, पुष्टि करें कि आप लक्ष्य के मालिक हैं या आपके पास स्पष्ट अनुमति है। PoC लाइव मेमोरी लीक करता है; जब भी संभव हो, इसे परीक्षण उपकरणों पर चलाएं।
इस स्क्रिप्ट के लिए Python3 और urllib लाइब्रेरी की आवश्यकता है यदि आप भेद्यता का परीक्षण करना चाहते हैं, तो इसे केवल अपने (गैर-उत्पादन) सिस्टम पर करें
python CVE-2025-5777.py <target.host>
स्क्रिप्ट ns_log_scanner.py का उपयोग HEX-रेंज 0x20 से 0x7F (ASCII) या 0x09, 0x0A और 0x0D (क्षैतिज-टैब, LF और CR) से बाहर के किसी भी वर्ण का पता लगाने के लिए किया जा सकता है - जो बाइनरी हो सकता है:
python ns_log_scanner.py /var/log/ns.log # (नमूना पथ)
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (
msg:"doAuthentication bare-login exploit";
flow:established,to_server;
http_method; content:"POST"; nocase;
http_uri; pcre:"/\/p\/u\/doAuthentication\.do(?:[\/\?]|$)/Ui";
http_header; pcre:"/Content-Length\s*:\s*[1-9]\d{0,2}/Hi";
# ‼ Bare “login” – next char must NOT be '='
http_client_body; pcre:"/\blogin(?!\s*=)/i";
classtype:web-application-activity;
sid:1001003; rev:1; metadata:service http;
)
config ips custom-signature
edit "DoAuthentication_BareLogin"
set severity medium
set default-application signature
set service "HTTP"
set direction clienttoServer
set pattern "GETPOST \/p\/u\/doAuthentication\.do[\/\?]?.*Content-Length:\s*[1-9][0-9]{0,2}.*\blogin(?!\s*=)"
next
end
लेखक : Mischa Rick van Geelen (@rickgeex)
कंपनी : Anovum B.V.
संपर्क : [email protected]