
pfSense CE 2.9.0-DEVELOPMENT - मध्यम - रिमोट - फ़ाइल लेखन - DynDNS कैश पथ
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-dyndns-cache-path
वर्ग: फ़ाइल लेखन पहुँच: रिमोट
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
कस्टम होस्ट is_domain() को छोड़ देता है। updatedns कैश पथ को /conf/dyndns_{if}{type} के साथ escapeshellarg($FQDN) और {id}.cache जोड़कर बनाता है। उद्धरण फ़ाइलनाम बाइट्स हैं; / अभी भी पथ को विभाजित करता है। सामग्री IP|epoch है, शेल नहीं।
| ID | अभी तक कोई CVE नहीं |
| वर्ग | फ़ाइल लेखन |
| पहुँच | रिमोट (प्रमाणित WebGUI जब तक अन्यथा न कहा गया हो) |
| CWE | CWE-22 |
| CVSS | मध्यम: 5.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N |
| उत्पाद | pfSense CE |
| प्रभावित | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| प्रमाणीकरण | page-services-dynamicdnsclient के साथ WebGUI सत्र |
| लाइसेंस | GNU Affero GPL v3.0 |
| लैब | केवल 127.0.0.1 |
मैंने सार्वजनिक मास्टर 9363ac5 को पिन किया। लैब पिन किए गए सिंक का एक PHP गैजेट है, 127.0.0.1:19270 पर लूपबैक HTTP।
श्रृंखला लेख: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| विधि | सिंक | विशेषाधिकार |
|---|---|---|
| POST services_dyndns_edit.php कस्टम होस्टनाम / के साथ | escapeshellarg($FQDN) का उपयोग करते हुए file_put_contents कैश पथ | अखंडता: लैब-प्रमाणित: / वाला होस्टनाम /conf के बाहर IP |
| वही अवशेष | वही सिंक | पुनरावलोकन: कोई नहीं। सामग्री IP |
| वही अवशेष | वही सिंक | उपलब्धता: अनुमानित: उस फ़ाइल को अधिलेखित करें जिसका नाम उद्धृत प्रत्यय से मेल खाता है। |
आवश्यक: page-services-dynamicdnsclient। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM रूट है।
आवश्यक: page-services-dynamicdnsclient। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM रूट है। POST पर CSRF-magic जब तक अन्यथा न कहा गया हो। WebGUI PHP-FPM रूट है।
अप्रमाणित। FQDN का mwexec। *.cache का cron/php exec। गैर-कस्टम dyndns उस होस्ट को अस्वीकार करता है।
कोई Diagnostics: Command नहीं जब तक वह पृष्ठ भी प्रदान न किया जाए।
cd lab
./run.sh
लूपबैक 127.0.0.1:19270। Compose प्रोजेक्ट pfsense-dyndns-cache-path। साक्षी PFSENSE-DYNDNS-CACHE-PATH-WITNESS। केवल लूपबैक: 127.0.0.1:19270। Compose प्रोजेक्ट pfsense-dyndns-cache-path। साक्षी PFSENSE-DYNDNS-CACHE-PATH-WITNESS। पिन की गई पंक्तियों का PHP गैजेट। रन के बाद स्टैक टूट जाता है।
अंतिम पंक्ति:
SUCCESS PFSENSE-DYNDNS-CACHE-PATH control-under-conf=yes trigger-outside-conf=yes PFSENSE-DYNDNS-CACHE-PATH-WITNESS
फ़ाइलनाम के रूप में escapeshellarg का उपयोग न करें। होस्ट का basename / is_domain करें।
9363ac5b8651a1c7a333180425ce7719070f95f9