
NGINX सर्वरों पर CVE-2026-42945 के लिए केंद्रीकृत Wazuh SCA मूल्यांकन
यह रिपॉजिटरी CVE-2026-42945 के लिए एक रक्षात्मक प्रयोगशाला का दस्तावेज़ीकरण करती है, जो NGINX ngx_http_rewrite_module को प्रभावित करती है।
इस परियोजना का लक्ष्य Wazuh Security Configuration Assessment (SCA) का उपयोग करके NGINX एक्सपोज़र का केंद्रीय रूप से आकलन करते हुए CVE को ब्लू-टीम परिप्रेक्ष्य से देखना था।
प्रयोगशाला दो एक्सपोज़र स्थितियों की जाँच करती है:
अंतिम परिणाम एक केंद्रीकृत Wazuh SCA पॉलिसी है जिसे Wazuh केंद्रीकृत एजेंट कॉन्फ़िगरेशन के माध्यम से निगरानी किए जा रहे NGINX सर्वरों पर तैनात किया जा सकता है।
प्रयोगशाला एक विभाजित नेटवर्क आर्किटेक्चर का उपयोग करके बनाई गई थी।
Internet / WAN
|
|
pfSense Firewall
|
|-----------------------------
| |
LAN DMZ
| |
Wazuh Manager Ubuntu NGINX Server
Wazuh Dashboard Wazuh Agent
NGINX
| घटक | भूमिका |
|---|---|
| pfSense | फ़ायरवॉल और LAN/DMZ विभाजन |
| Ubuntu DMZ Server | Wazuh द्वारा निगरानी किया जाने वाला NGINX सर्वर |
| NGINX | CVE एक्सपोज़र के लिए आकलित लक्ष्य सेवा |
| Wazuh Agent | Ubuntu DMZ सर्वर पर स्थापित |
| Wazuh Manager | Docker में चलने वाला केंद्रीय निगरानी सर्वर |
| Wazuh Dashboard | SCA परिणामों की समीक्षा के लिए उपयोग किया जाता है |
उद्देश्य एक सुरक्षित और दोहराने योग्य रक्षात्मक कार्यप्रवाह बनाना था:
Wazuh Manager
|
| Centralized SCA policy
v
Wazuh Agent on DMZ NGINX Server
|
| Checks package version and NGINX configuration
v
Wazuh Dashboard
|
| Shows passed / failed checks
v
Remediation validation
यह दृष्टिकोण exploit कोड चलाए बिना CVE एक्सपोज़र आकलन की अनुमति देता है।
कस्टम Wazuh SCA पॉलिसी दो जाँचें करती है।
पॉलिसी जाँचती है कि क्या स्थापित Ubuntu NGINX पैकेज प्रयोगशाला में देखे गए अनपैच्ड संस्करण से मेल खाता है।
प्रारंभिक असुरक्षित पैकेज संस्करण:
nginx 1.28.3-2ubuntu1
nginx-common 1.28.3-2ubuntu1
समाधान के बाद सुधारा गया पैकेज संस्करण:
nginx 1.28.3-2ubuntu1.1
nginx-common 1.28.3-2ubuntu1.1
पॉलिसी फ़ाइल:
sca-policy/nginx-cve-2026-42945.yml
पॉलिसी CVE-2026-42945 से संबंधित एक जोखिमपूर्ण rewrite पैटर्न की भी जाँच करती है।
जोखिमपूर्ण परीक्षण कॉन्फ़िगरेशन यहाँ संग्रहीत है:
nginx-config/vulnerable-example.conf
समाधान किया गया कॉन्फ़िगरेशन यहाँ संग्रहीत है:
nginx-config/remediated-example.conf
प्रयोगशाला में परीक्षित जोखिमपूर्ण स्थिति में शामिल है:
rewrite directive
unnamed capture such as $1
replacement containing ?
follow-up directive such as set
wazuh-nginx-cve-2026-42945-sca-lab/
├── README.md
├── sca-policy/
│ └── nginx-cve-2026-42945.yml
├── wazuh-config/
│ └── agent.conf
├── nginx-config/
│ ├── vulnerable-example.conf
│ └── remediated-example.conf
├── commands/
│ ├── 01-agent-validation.md
│ ├── 02-nginx-version-check.md
│ ├── 03-sca-policy-deployment.md
│ └── 04-remediation.md
├── screenshots/
│ ├── 01-lab-architecture.png
│ ├── 02-agent-active.png
│ ├── 03-sca-policy-failed.png
│ ├── 04-nginx-package-before.png
│ ├── 05-risky-rewrite-config.png
│ ├── 06-sca-partial-remediation.png
│ ├── 07-nginx-package-after.png
│ └── 08-sca-policy-passed.png
└── docs/
└── lab-notes.md
प्रयोगशाला ने वातावरण को अलग करने के लिए pfSense का उपयोग किया:
LAN:
- Wazuh Manager
- Wazuh Dashboard
DMZ:
- Ubuntu NGINX server
- Wazuh Agent
Ubuntu NGINX सर्वर को DMZ में रखा गया था।
Wazuh Manager को LAN में रखा गया था।
DMZ सर्वर से Wazuh Manager तक केवल आवश्यक Wazuh संचार की अनुमति दी गई थी।
Ubuntu DMZ सर्वर को Wazuh एजेंट के रूप में पंजीकृत किया गया था।
एजेंट को Wazuh Manager से सत्यापित किया गया और सक्रिय के रूप में पुष्टि की गई।
सत्यापन कमांड इस प्रकार दस्तावेज़ित हैं:
commands/01-agent-validation.md
अपेक्षित स्थिति:
Agent: ubuntu-dmz-nginx2
Status: Active
स्थापित NGINX पैकेज संस्करण की जाँच Ubuntu DMZ सर्वर पर की गई।
संस्करण-जाँच कमांड इस प्रकार दस्तावेज़ित हैं:
commands/02-nginx-version-check.md
प्रारंभिक स्थिति:
nginx 1.28.3-2ubuntu1
nginx-common 1.28.3-2ubuntu1
पैकेज इंडेक्स अपडेट के बाद, सुधारा गया उम्मीदवार संस्करण उपलब्ध हो गया:
1.28.3-2ubuntu1.1
जोखिमपूर्ण rewrite पैटर्न का अनुकरण करने के लिए एक परीक्षण NGINX कॉन्फ़िगरेशन बनाया गया था।
असुरक्षित उदाहरण इसमें संग्रहीत है:
nginx-config/vulnerable-example.conf
समाधान किया गया संस्करण इसमें संग्रहीत है:
nginx-config/remediated-example.conf
उद्देश्य सेवा का शोषण करना नहीं था, बल्कि यह सत्यापित करना था कि क्या Wazuh SCA जोखिमपूर्ण स्थानीय कॉन्फ़िगरेशन एक्सपोज़र की पहचान कर सकता है।
Wazuh Manager पर एक कस्टम SCA पॉलिसी बनाई गई थी।
पॉलिसी फ़ाइल:
sca-policy/nginx-cve-2026-42945.yml
प्रयोगशाला में, यह पॉलिसी Wazuh Manager साझा निर्देशिका से तैनात की गई थी:
/var/ossec/etc/shared/default/nginx-cve-2026-42945.yml
पॉलिसी में दो जाँचें हैं:
| Check ID | उद्देश्य |
|---|---|
| 100449 | असुरक्षित/अनपैच्ड NGINX Ubuntu पैकेज संस्करण का पता लगाएं |
| 100450 | जोखिमपूर्ण NGINX rewrite कॉन्फ़िगरेशन पैटर्न का पता लगाएं |
कस्टम SCA पॉलिसी को Wazuh केंद्रीकृत एजेंट कॉन्फ़िगरेशन का उपयोग करके तैनात किया गया था।
केंद्रीकृत कॉन्फ़िगरेशन फ़ाइल इस रिपॉजिटरी में इस रूप में संग्रहीत है:
wazuh-config/agent.conf
प्रयोगशाला में, इसे इसके अंतर्गत तैनात किया गया था:
/var/ossec/etc/shared/default/agent.conf
Wazuh Manager Docker में चल रहा था:
single-node-wazuh.manager-1
तैनाती कमांड इस प्रकार दस्तावेज़ित हैं:
commands/03-sca-policy-deployment.md
Wazuh एजेंट को पुनः आरंभ करने के बाद, कस्टम SCA पॉलिसी Ubuntu DMZ सर्वर द्वारा प्राप्त की गई।
प्राप्त पॉलिसी इसके अंतर्गत दिखाई दी:
/var/ossec/etc/shared/nginx-cve-2026-42945.yml
Wazuh एजेंट लॉग ने पुष्टि की कि पॉलिसी लोड और मूल्यांकित की गई थी।
अपेक्षित लॉग संकेतक:
Loaded policy
Starting evaluation of policy
Evaluation finished for policy
दोनों एक्सपोज़र स्थितियों के मौजूद होने पर, Wazuh Dashboard ने दिखाया:
Passed: 0
Failed: 2
Score: 0%
इसका अर्थ है कि दोनों जाँचें विफल रहीं:
| जाँच | परिणाम |
|---|---|
| NGINX पैकेज संस्करण | विफल |
| जोखिमपूर्ण rewrite कॉन्फ़िगरेशन | विफल |
स्क्रीनशॉट:
screenshots/03-sca-policy-failed.png
जोखिमपूर्ण NGINX rewrite कॉन्फ़िगरेशन को एक सुरक्षित कॉन्फ़िगरेशन से बदल दिया गया।
संदर्भ फ़ाइल:
nginx-config/remediated-example.conf
कॉन्फ़िगरेशन ठीक किए जाने और Wazuh SCA स्कैन दोबारा चलाने के बाद, अपेक्षित परिणाम था:
Passed: 1
Failed: 1
Score: 50%
इस चरण में:
| जाँच | परिणाम |
|---|---|
| जोखिमपूर्ण rewrite कॉन्फ़िगरेशन | उत्तीर्ण |
| NGINX पैकेज संस्करण | विफल |
स्क्रीनशॉट:
screenshots/06-sca-partial-remediation.png
NGINX पैकेजों को एक लक्षित पैकेज अपग्रेड का उपयोग करके अपग्रेड किया गया।
समाधान कमांड इस प्रकार दस्तावेज़ित हैं:
commands/04-remediation.md
अपग्रेड से पहले:
Installed: 1.28.3-2ubuntu1
Candidate: 1.28.3-2ubuntu1.1
अपग्रेड के बाद:
nginx 1.28.3-2ubuntu1.1
nginx-common 1.28.3-2ubuntu1.1