
CVE-2026-25050 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, एक टाइमिंग अटैक जो GraphQL प्रमाणीकरण के माध्यम से उपयोगकर्ता गणना (user enumeration) को सक्षम करता है। मौजूदा खातों की पहचान करने के लिए प्रतिक्रिया समय को मापता है, जिससे लक्षित हमलों की सुविधा मिलती है।
इस रिपॉजिटरी में एक प्रूफ ऑफ कॉन्सेप्ट (PoC) शामिल है जो NativeAuthenticationStrategy.authenticate() विधि को प्रभावित करने वाले टाइमिंग अटैक का प्रदर्शन करता है।
यह PoC ब्लॉग / शोध उद्देश्यों के लिए एक तकनीकी प्रदर्शन के रूप में प्रदान किया गया है।
प्रमाणीकरण लॉजिक तुरंत रिटर्न करता है जब उपयोगकर्ता मौजूद नहीं होता है, जबकि उपयोगकर्ता के मौजूद होने पर महंगा पासवर्ड हैश सत्यापन करता है।
const user = await this.userService.getUserByEmailAddress(ctx, data.username);
if (!user) {
return false;
}
const passwordMatch = await this.verifyUserPassword(ctx, user.id, data.password);
यह मौजूदा और गैर-मौजूद उपयोगकर्ताओं के लिए प्रमाणीकरण प्रयासों के बीच एक मापने योग्य समय अंतर पैदा करता है।
कई अनुरोधों पर प्रतिक्रिया समय मापकर, एक हमलावर विश्वसनीय रूप से यह निर्धारित कर सकता है कि कोई उपयोगकर्ता नाम (ईमेल पता) मौजूद है या नहीं।
यह PoC प्रति उपयोगकर्ता नाम कई प्रमाणीकरण प्रयास करता है और खातों को वर्गीकृत करने के लिए औसत प्रतिक्रिया समय की गणना करता है:
python3 exploit.py -u http://target.tld -w users.txt
टूल स्वचालित रूप से कमजोर एंडपॉइंट जोड़ता है:
/admin-api?languageCode=en
-u, --url लक्ष्य का आधार URL
-w, --wordlist उपयोगकर्ता नाम / ईमेल वर्डलिस्ट
--silent साइलेंट मोड (केवल प्रगति + मान्य उपयोगकर्ता)
--shuffle परीक्षण से पहले वर्डलिस्ट को शफल करें
--delay MIN:MAX अनुरोधों के बीच यादृच्छिक देरी (ms)
--resume state.json पिछला स्कैन फिर से शुरू करें
--json results.json परिणामों को JSON में निर्यात करें
--delay का उपयोग पहचान और रेट-लिमिटिंग से बचने में मदद करता है।यह प्रूफ ऑफ कॉन्सेप्ट केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। लेखक दुरुपयोग के लिए कोई जिम्मेदारी नहीं लेता है।