
pfSense CE 2.9.0-DEVELOPMENT - उच्च - रिमोट - विशेषाधिकार शेष - LDAP एडमिन नाम
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-ldap-name-collision
वर्ग: विशेषाधिकार अवशेष पहुँच: रिमोट
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
getUserEntry($name) नाम मेल होने पर स्थानीय पंक्ति लौटाता है। फिर isAdminUID() uid 0 देखता है और isAllowedPage हर पृष्ठ की अनुमति देता है। passwordmg सत्र को स्थानीय मानता है और उस उपयोगकर्ता का हैश लिखता है। uid == 0 एक ढीली तुलना है।
| ID | अभी तक कोई CVE नहीं |
| वर्ग | विशेषाधिकार अवशेष |
| पहुँच | रिमोट (प्रमाणित WebGUI जब तक अन्यथा न कहा गया हो) |
| CWE | CWE-269 |
| CVSS | उच्च: 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| उत्पाद | pfSense CE |
| प्रभावित | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| प्रमाणीकरण | WebGUI सत्र जिसमें remote WebGUI login when authmode != Local; passwordmg is not warn-root |
| लाइसेंस | GNU Affero GPL v3.0 |
| लैब | केवल 127.0.0.1 |
मैंने सार्वजनिक मास्टर 9363ac5 को पिन किया। लैब पिन किए गए सिंक का एक PHP गैजेट है, 127.0.0.1:19010 पर लूपबैक HTTP।
श्रृंखला लेख: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| विधि | सिंक | विशेषाधिकार |
|---|---|---|
| स्थानीय एडमिन नाम के रूप में LDAP/RADIUS बाइंड, फिर POST passwordmg | getUserEntry / isAdminUID / local_user_set_password | अखंडता: लैब-प्रमाणित: रिमोट एडमिन isAdminUID है; diag_command सहित सभी पृष्ठ; passwordmg ने uid 0 हैश सेट किया। केवल-स्टब रिमोट नाम विफल-बंद होते हैं। |
| वही अवशेष | वही सिंक | पुनरावलोकन: लैब-प्रमाणित: हर पृष्ठ के लिए अनुमति ध्वज। |
| वही अवशेष | वही सिंक | उपलब्धता: कोई नहीं दिखाया गया। |
आवश्यक: remote WebGUI login when authmode != Local; passwordmg is not warn-root। जब तक अन्यथा न कहा गया हो POST पर CSRF-magic। WebGUI PHP-FPM रूट है।
आवश्यक: remote WebGUI login when authmode != Local; passwordmg is not warn-root। जब तक अन्यथा न कहा गया हो POST पर CSRF-magic। WebGUI PHP-FPM रूट है। जब तक अन्यथा न कहा गया हो POST पर CSRF-magic। WebGUI PHP-FPM रूट है।
केवल-स्टब रिमोट नाम। usermanager स्वयं warn-root है। SA-26_22 xmlrpc uid skip एक अलग बग है।
कोई Diagnostics: Command नहीं जब तक वह पृष्ठ भी अनुदत्त न हो।
cd lab
./run.sh
लूपबैक 127.0.0.1:19010। Compose प्रोजेक्ट pfsense-ldap-name-collision। Witness PFSENSE-LDAP-NAME-COLLISION-WITNESS। केवल लूपबैक: 127.0.0.1:19010। Compose प्रोजेक्ट pfsense-ldap-name-collision। Witness PFSENSE-LDAP-NAME-COLLISION-WITNESS। पिन की गई पंक्तियों का PHP गैजेट। रन के बाद स्टैक टूट जाता है।
अंतिम पंक्ति:
SUCCESS PFSENSE-LDAP-NAME-COLLISION control-isadmin=no control-diag=no control-hash-unchanged=yes trigger-isadmin=yes trigger-all-pages=yes trigger-hash-set=yes uid-loose-eq=yes PFSENSE-LDAP-NAME-COLLISION-WITNESS
किसी रिमोट नाम को स्थानीय uid 0 पंक्ति पर मैप न करें। सख्त uid === '0' के साथ auth स्रोत का उपयोग करें। passwordmg को warn-root बनाएँ।
9363ac5b8651a1c7a333180425ce7719070f95f9