
Zabbix भेद्यता आकलन प्लगइन
अपने पहले से चल रहे Zabbix को vulnerability-management कंसोल में बदलें।
ztc स्टॉक zabbix-agent2 के माध्यम से प्रत्येक होस्ट की सॉफ़्टवेयर इन्वेंट्री पढ़ता है (कोई अतिरिक्त एजेंट deploy करने की आवश्यकता नहीं), उसे Vulners के विरुद्ध ऑडिट करता है, और स्कोर किए गए, प्रति-होस्ट findings — problems, dashboards और CVSS graphs — को Zabbix में वापस भेजता है। एक स्टैटिक बाइनरी, एक ही कमांड से इंस्टॉल होती है।

UserParameters के माध्यम से इन्वेंट्री रिपोर्ट करते हैं। Remediation एक whitelisted key और संकीर्ण sudoers से होकर जाता है — कभी भी मनमाना नहीं।system.runaudit/linux के माध्यम से; Windows रजिस्ट्री सॉफ़्टवेयर Smart Audit के माध्यम से और इंस्टॉल किए गए KBs audit/kb के माध्यम से (प्रति-CVE CVSS के साथ)। Smart Audit Zabbix संस्करण से स्वतंत्र है।अपने Zabbix सर्वर (या कोई भी Linux होस्ट जो Zabbix + Vulners तक पहुँच सकता है) पर:
curl -fsSL https://raw.githubusercontent.com/vulnersCom/zabbix-threat-control/master/deploy/install.sh | sudo sh
इंस्टॉलर आपकी Vulners API key और Zabbix कनेक्शन के बारे में पूछता है, एक systemd service इंस्टॉल करता है, और Zabbix entities (ztc provision --all) बनाने का विकल्प देता है। फिर collection template को उन होस्ट्स से लिंक करें जिन्हें आप स्कैन करवाना चाहते हैं — docs/guide.md देखें।
अन्य विकल्प (Docker, manual, air-gapped, bootstrap-via-Zabbix): deploy/README.md।
hosts: zabbix-agent2 UserParameter
Linux → vulners.os / version / arch / packages
Windows → vulners.os / version / win.software / win.kb
│ (polled into Zabbix items)
▼
ztc scan ─► collect (Zabbix API) ─► audit (Vulners) ─► aggregate ─► sender ─► Zabbix
│
problems (CVSS severity) · dashboard · graphs · vulners.host tags ◄┘
ztc scan --daemon लूप को एक शेड्यूल पर चलाता है; ztc provision Zabbix template, report hosts, triggers और dashboard बनाता है।
Vulners - Hosts, - Bulletins, - Packages, - Statistics।vulners.host टैग होता है। Monitoring → Problems में Tags: vulners.host Equals <host> फ़िल्टर करें ताकि एक होस्ट की vulnerabilities देखी जा सकें। (एक finding = एक (vulnerability, host) जोड़ी।)पूरे fleet में Median CVSS trend और score distribution:

Severity breakdown — वास्तविक Disaster / High / Average / Warning गिनती, न कि कोई grey "Not classified" बार:

एक होस्ट की vulnerabilities vulners.host टैग फ़िल्टर के माध्यम से:

एक single finding — CVSS द्वारा स्कोर की गई, अपने होस्ट के साथ टैग की गई, vulners.com से लिंक:

हर चीज़ का एक डिफ़ॉल्ट होता है; secrets को environment variables के माध्यम से दें (वे YAML फ़ाइल को override करते हैं)। पूरा उदाहरण: config.example.yaml।
| Env | उद्देश्य |
|---|---|
VULNERS_API_KEY | Vulners API key (आवश्यक) |
VULNERS_BASE_URL | self-hosted / proxy Vulners endpoint (वैकल्पिक) |
ZABBIX_URL | Zabbix frontend URL (JSON-RPC API) |
ZABBIX_TOKEN | API token (पसंदीदा) … |
ZABBIX_USER / ZABBIX_PASSWORD | … या उपयोगकर्ता + पासवर्ड |
ZABBIX_SERVER_FQDN / ZABBIX_SERVER_PORT | zabbix-sender लक्ष्य |
ZTC_SCHEDULE | daemon स्कैन अंतराल (जैसे 1h) |
ZTC_MIN_CVSS | objects बनाने से पहले इस CVSS से नीचे के findings हटाएँ |
ztc --help पूरी सूची दिखाता है।
ztc scan --daemon # run the scan loop on a schedule
ztc scan --once # a single cycle
ztc provision --all # create/reconcile templates, report hosts, dashboard
ztc fix --host H --package P # remediate a package (whitelisted, opt-in)
ztc upgrade # self-update, then re-run `provision --all`
ztc version --check # print version and check for updates
ztc fix एक whitelisted vulners.fix[<pkg>] agent key के माध्यम से एक vulnerable package को अपग्रेड करता है, जिसे host-side worker द्वारा drain किया जाता है — कोई मनमाना कमांड निष्पादन नहीं। इसे मैन्युअल रूप से चलाया जा सकता है या, scan --daemon --auto-fix के साथ, Zabbix में problem को acknowledge करने वाले किसी विश्वसनीय उपयोगकर्ता द्वारा संचालित किया जा सकता है। तर्क: docs/adr/0001-remediation-mechanism.md।
| Zabbix | 6.0 & 7.0 LTS, 7.4, 8.0 (auto-detected) |
| ऑडिट किए गए OS | Linux (deb/rpm/apk/…), Windows (software + KB) |
| ztc चलता है | Linux amd64 / arm64 |
मूल Python implementation इस रिपॉज़िटरी की git history (Go rewrite से पहले के commits) और pre-Go release tags में बनी हुई है। यह समान Zabbix-side नाम (group, report hosts, dashboard) साझा करती है, लेकिन ship किए गए report.py के बजाय स्टॉक agent keys के माध्यम से collect करती है, template को दो भागों में विभाजित करती है, और fix Action को हटा देती है। चरण-दर-चरण (config mapping, object cleanup, host re-instrumentation, remediation switch): docs/MIGRATION.md।
go build ./... # compile
go test ./... # unit tests (no network)
go vet ./... && gofmt -l .
make build # -> bin/ztc
एक Docker test stand (Zabbix + agent + ztc) deploy/docker/README.md में है। CI (build/test/lint) हर push पर चलता है; v* commit को tag करने पर binaries और एक GHCR image प्रकाशित होते हैं।
LICENSE देखें।