
DifuseHQ Kalmia CMS संस्करण 0.2.0, /kal-api/auth/jwt/create प्रमाणीकरण एंडपॉइंट पर अलग-अलग त्रुटि प्रतिक्रियाओं के माध्यम से उपयोगकर्ता एन्यूमरेशन की भेद्यता से ग्रस्त है।
CVE ID: CVE-2025-65899
उत्पाद: DifuseHQ Kalmia CMS
प्रभावित संस्करण: 0.2.0
भेद्यता प्रकार: अवलोकनीय प्रतिक्रिया विसंगति (Observable Response Discrepancy)
आवश्यक विशेषाधिकार: कोई नहीं
यह अनधिकृत (unauthenticated) हमलावरों को वैध उपयोगकर्तानामों की गणना (enumerate) करने में सक्षम बनाता है, जिससे लक्षित पासवर्ड स्प्रेइंग (password spraying), क्रेडेंशियल-स्टफिंग (credential-stuffing) और खाता खोज (account discovery) हमले संभव हो पाते हैं।
रखरखावकर्ता की स्वीकृति लंबित है - https://github.com/DifuseHQ/Kalmia/pull/34
Kalmia CMS संस्करण 0.2.0 में प्रमाणीकरण तंत्र के भीतर उपयोगकर्ता गणना (user enumeration) भेद्यता मौजूद है। एप्लिकेशन अमान्य उपयोगकर्ताओं (user_not_found) और गलत पासवर्ड वाले वैध उपयोगकर्ताओं (invalid_password) के लिए अलग-अलग त्रुटि संदेश लौटाता है। यह अवलोकनीय प्रतिक्रिया विसंगति अनधिकृत हमलावरों को सिस्टम पर मौजूद वैध उपयोगकर्तानामों की गणना करने में सक्षम बनाती है, जिसका उपयोग बाद में पासवर्ड स्प्रेइंग या सोशल इंजीनियरिंग जैसे लक्षित हमलों के लिए किया जा सकता है।
/kal-api/auth/jwt/createप्रमाणीकरण प्रणाली सुसंगत त्रुटि प्रतिक्रियाएँ लागू करने में विफल रहती है, जिससे विभिन्न त्रुटि संदेशों के माध्यम से उपयोगकर्ता खातों के अस्तित्व के बारे में जानकारी उजागर होती है:
{"message": "user_not_found"} लौटाता है{"message": "invalid_password"} लौटाता हैप्रतिक्रियाओं में यह अंतर हमलावरों को गैर-मौजूद और वैध उपयोगकर्ता खातों के बीच अंतर करने में सक्षम बनाता है।
हमलावर एक गैर-मौजूद उपयोगकर्तानाम के साथ प्रमाणीकरण का प्रयास करता है और सर्वर की ओर से User not found प्रतिक्रिया आते हुए देखता है।
Burp Suite का उपयोग करके प्रमाणीकरण अनुरोध को इंटरसेप्ट और विश्लेषित करते हुए, हमलावर पुष्टि करता है कि सर्वर अमान्य उपयोगकर्तानामों के लिए user_not_found लौटाता है, जो दर्शाता है कि उपयोगकर्ता सिस्टम में मौजूद नहीं है।
वैध उपयोगकर्तानाम लेकिन गलत पासवर्ड के साथ परीक्षण करने पर, Burp Suite सर्वर प्रतिक्रिया को कैप्चर करता है जो invalid_password दिखाती है, जो पुष्टि करता है कि उपयोगकर्तानाम सिस्टम में मौजूद है।
बैकएंड प्रमाणीकरण तर्क के विश्लेषण से दोषपूर्ण कार्यान्वयन का पता चलता है जो अलग-अलग त्रुटि संदेश लौटाता है:
user_not_found लौटाता हैinvalid_password लौटाता हैयह अनुक्रमिक सत्यापन प्रक्रिया अवलोकनीय विसंगति उत्पन्न करती है जो उपयोगकर्ता गणना को सक्षम बनाती है।
cve-2025-65899.py स्क्रिप्ट उपयोगकर्ता गणना प्रक्रिया को स्वचालित करती है:
python cve-2025-65899.py <TARGET_URL> [OPTIONS]
url: लक्षित Kalmia CMS आधार URL (आवश्यक)-u, --user: परीक्षण के लिए एकल उपयोगकर्तानाम-p, --password: परीक्षण के लिए उपयोग किया जाने वाला पासवर्ड (आवश्यक)-w, --wordlist: बल्क उपयोगकर्ता गणना के लिए वर्डलिस्ट फ़ाइल# Test if specific user exists
python cve-2025-65899.py http://target.com:2727 -u admin -p wrongpass
# Results:
# [+] Valid user: admin (if user exists)
# OR
# (no output if user doesn't exist)
# Enumerate users from wordlist
python cve-2025-65899.py http://target.com:2727 -w users.txt -p wrongpass
# Create a simple wordlist
echo -e "admin\nuser\nadministrator\ntest\nguest" > users.txt
अस्वीकरण: यह जानकारी केवल शैक्षिक और रक्षात्मक उद्देश्यों के लिए प्रदान की गई है। उपयोगकर्ता किसी भी सिस्टम का परीक्षण करने से पहले उचित प्राधिकरण सुनिश्चित करने के लिए स्वयं जिम्मेदार हैं।