
pfSense CE 2.9.0-DEVELOPMENT - मध्यम - रिमोट - XSS - head.inc में LDAP उपयोगकर्ता नाम
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-auth-username-xss
वर्ग: XSS पहुँच: रिमोट
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
head.inc लॉगआउट शीर्षक $_SESSION['Username'] को कच्चा इंटरपोलेट करता है। passwordmg Form_StaticText भी कच्चा है। स्थानीय charset ट्रिगर को अस्वीकार करता है; LDAP नाम इसे छोड़ देते हैं।
| ID | अभी तक कोई CVE नहीं |
| वर्ग | XSS |
| पहुँच | रिमोट (प्रमाणित WebGUI जब तक अन्यथा न कहा गया हो) |
| CWE | CWE-79 |
| CVSS | मध्यम: 5.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
| उत्पाद | pfSense CE |
| प्रभावित | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| प्रमाणीकरण | LDAP/RADIUS WebGUI session के साथ WebGUI सत्र |
| लाइसेंस | GNU Affero GPL v3.0 |
| लैब | केवल 127.0.0.1 |
मैंने सार्वजनिक master 9363ac5 को पिन किया। लैब पिन किए गए sink का एक PHP गैजेट है, 127.0.0.1:19170 पर लूपबैक HTTP।
श्रृंखला राइट-अप: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| विधि | Sink | विशेषाधिकार |
|---|---|---|
| कोट-ब्रेकिंग उपयोगकर्ता नाम के साथ LDAP लॉगिन | head.inc लॉगआउट title="Logout ({$_SESSION['Username']}@$system_url)" | अखंडता: लैब-प्रमाणित: लॉगआउट HTML और StaticText में कोट-ब्रेक कच्चा। |
| वही अवशेष | वही sink | पुनरावलोकन: लैब-प्रमाणित: सत्र उपयोगकर्ता नाम हर प्रमाणित पृष्ठ पर प्रतिबिंबित होता है जिसमें head.inc शामिल है। |
| वही अवशेष | वही sink | उपलब्धता: कोई नहीं दिखाया गया। |
आवश्यक: LDAP/RADIUS WebGUI session। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM root है।
आवश्यक: LDAP/RADIUS WebGUI session। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM root है। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM root है।
स्थानीय [^a-zA-Z0-9.-_] charset। htmlspecialchars($system_url)। अनधिकृत लागू नहीं।
कोई Diagnostics: Command नहीं जब तक वह पृष्ठ भी प्रदान न किया जाए।
cd lab
./run.sh
लूपबैक 127.0.0.1:19170। Compose प्रोजेक्ट pfsense-auth-username-xss। साक्षी PFSENSE-AUTH-USERNAME-XSS-WITNESS। केवल लूपबैक: 127.0.0.1:19170। Compose प्रोजेक्ट pfsense-auth-username-xss। साक्षी PFSENSE-AUTH-USERNAME-XSS-WITNESS। पिन की गई पंक्तियों का PHP गैजेट। रन के बाद स्टैक टूट जाता है।
अंतिम पंक्ति:
SUCCESS PFSENSE-AUTH-USERNAME-XSS control-admin-encoded=yes trigger-quote-break=yes witness-unescaped=yes local-charset-blocks-trigger=yes PFSENSE-AUTH-USERNAME-XSS-WITNESS
head.inc और passwordmg में सत्र उपयोगकर्ता नाम को htmlspecialchars करें।
9363ac5b8651a1c7a333180425ce7719070f95f9