भेद्यता स्कैनिंग और पैच
संक्षिप्त सारांश
भेद्यता प्रबंधन एक निरंतर चक्र है: पता लगाना → जोखिम मूल्यांकन → उन्मूलन (पैच/माइग्रेशन/कॉन्फिग) → सत्यापन → रिपोर्टिंग। स्कैनिंग प्रौद्योगिकियां (SCA/SAST/DAST/IAST/क्लाउड/कंटेनर) संकेत देती हैं, और संदर्भ (जोखिम, विशेषाधिकार, डेटा, ईपीएसएस, शोषण) प्राथमिकता निर्धारित करता है। लक्ष्य स्वचालन, कैनरी गणना और स्पष्ट एसएलओ का उपयोग करके व्यापार डाउनटाइम के बिना वास्तविक जोखिम को कम करना है।
स्कैनिंग टैक्सोनॉमी
एससीए (सॉफ्टवेयर रचना विश्लेषण): निर्भरता/लाइसेंस विश्लेषण; पुस्तकालयों में CVE खोज, SBOM।
विधानसभा से पहले देशी कोड का SAST-स्टैटिक विश्लेषण।
DAST: गतिशील ब्लैक बॉक्स बनाम रनिंग सेवा।
IAST: इन-ऐप सेंसर (परीक्षण के दौरान) - कम FP, गहरा संदर्भ।
कंटेनर/ओएस स्कैन: छवियां (आधार छवि, पैकेज), होस्ट (कर्नेल/पैकेज/कॉन्फ़िग्स), सीआईएस बेंचमार्क.
क्लाउड/इंफ्रा (CSPM/KSPM): cloud/K8s मिसकॉनफिग्स (IAM, नेटवर्क, एन्क्रिप्शन, सार्वजनिक बाल्टी)।
स्कैन: रिपॉजिटरी और छवियों में कुंजी/टोकन लीक।
बाइनरी/आर्टिफैक्ट स्कैन: एकत्रित कलाकृतियों का सत्यापन (हस्ताक्षर, कमजोरियां)।
जोखिम मॉडल और प्राथमिकता
स्कोर = CVSS v3। x (आधार) × EPSS (शोषण की संभावना) × संदर्भ (जोखिम, डेटा, विशेषाधिकार, प्रतिपूरक उपाय)।
संदर्भ कारक:- इंटरनेट/अंदर, WAF/mTLS/अलगाव की उपस्थिति।
- डेटा: PII/वित्त/रहस्य।
- प्रक्रिया/नोड विशेषाधिकार, पार्श्व आंदोलन क्षमता
- सार्वजनिक शोषण/जन हमलों, अनुपालन आवश्यकताओं की उपलब्धता।
उदाहरण CVSS वेक्टर: 'CVSS: 3। : एन/एसी: एल/पीआर: एन/यूआई: एन/एस: यू/सी: एच/आई: एच/ए: एच 'की आलोचना की गई; यदि सेवा सार्वजनिक है और प्रतिपूरक उपायों के बिना है - P1।
एसएलओ थ्रेसहोल्ड (उदाहरण):- P1 (महत्वपूर्ण, संचालित): ≤ 48 h को ठीक करें।
- P2 (उच्च): ≤ 7 दिनों को ठीक करें।
- P3 (मतलब): ≤ 30 दिनों को ठीक करें।
- P4 (कम/सूचना): नियोजित/बैकलॉग द्वारा।
भेद्यता प्रबंधन जीवनचक्र
1. एसेट इन्वेंट्री: सेवाएं, चित्र, समूह, ओएस, पैकेज, निर्भरता, संस्करण।
2. अनुसूचित और घटना स्कैनिंग: कमिट, बिल्ड, डंप, दैनिक/साप्ताहिक विंडो।
3. ट्राइएज: डीडुप्लिकेशन, सामान्यीकरण (CVE→Ticket), मालिक को मैपिंग।
4. संदर्भ द्वारा प्राथमिकता: CVSS/EPSS + जोखिम/डेटा।
5. रीमेडिएशन: पैच/डिपेंडेंसी अपडेट/कॉन्फिग हार्डनिंग/वर्चुअल पैच (WAF)।
6. सत्यापन: पुनर्वितरण, परीक्षण, कैनरी।
7. रिपोर्टिंग: बंद मैट्रिक्स, कमजोरियों की उम्र, एसएलओ अनुपालन।
8. सबक: भविष्य के लिए टेम्पलेट (बेस इमेज, हेल्म चार्ट), नीति में ठीक करें।
सीआई/सीडी में एकीकरण
चरण पीआर में: SAST + SCA + गुप्त स्कैन; "ब्रेक बिल्ड" P1/P2 या एप्लिकेशन की आवश्यकता से।
बिल्ड स्टेज पर: इमेज स्कैन, SBOM जनरेशन (CycloneDX/SPDX), आर्टिफिशियल सिग्नेचर (cosign)।
तैनाती पर: प्रवेश नीति चरण - 'क्रिटिकल/हाई' कमजोरियों और अहस्ताक्षरित/एसबीओएम के साथ छवियों को प्रतिबंधित करें।
पोस्ट-स्टेज: मंचन और आंशिक रूप से उत्पादन (सुरक्षित प्रोफाइल) के खिलाफ DAST/IAST।
उदाहरण: नवीकरण/Dependabot (टुकड़ा)
json
{
"extends": ["config:recommended"],
"vulnerabilityAlerts": { "enabled": true },
"packageRules": [
{ "matchUpdateTypes": ["minor","patch"], "automerge": true },
{ "matchManagers": ["dockerfile"], "enabled": true }
]
}
प्रवेश नीति (Kubernetes, OPA/गेटकीपर - सरलीकृत)
rego package policy.vuln
deny[msg] {
input.image.vuln.critical > 0 msg:= sprintf("Image %s has critical vulns", [input.image.name])
}
deny[msg] {
input.image.sbom == false msg:= sprintf("Image %s without SBOM", [input.image.name])
}
पैच प्रबंधन (निश्चित संपत्ति, कंटेनरों, K8s)
ОС (लिनक्स/विंडोज)
पैच विंडो: P1 के लिए नियमित विंडो + आपातकालीन असाधारण विंडो।
रणनीति: कैनरी 5-10% नोड्स पहले, फिर तरंगें।
ऑटो-परिनियोजन: Ansible/WSUS/Intune/SSM; बाधा जाँच और रोलबैक।
डाउनटाइम को कम करने के लिए कर्नेल लाइव पैचिंग (जहां संभव हो)।
पुनः प्रारंभ सेवाएं: K8s नोड्स के लिए प्रबंधित नाली/घेरा, सुंदर बंद।
कंटेनर
अपरिवर्तनीय दृष्टिकोण: रनटाइम में "उपयुक्त अपग्रेड" नहीं; अद्यतन आधार के साथ छवि का पुनर्निर्माण करें।
आधार चित्र: नियमित रूप से गोल्डन इमेज (अल्पाइन/डेबियन/डिस्ट्रोलेस), फिक्स संस्करण (डाइजेस्ट)।
मल्टी-स्टेज असेंबली: सतह को कम करें (बिल्ड-टूल्स को हटाएं)।
पूर्व तैनाती स्कैन - महत्वपूर्ण सीवीई के साथ छवियों का ब्लॉक।
कुबेरनेट्स/सेवा मेष
नियंत्रण विमान: समय पर मामूली रिलीज, CVE k8s/etcd/containerd को बंद करना।
नोड OS/कंटेनर रनटाइम: अनुसूचित अपडेट, संस्करण संगतता।
मेश/इंग्रेस: दूत/इस्तियो/NGINX संस्करण महत्वपूर्ण हैं (अक्सर पार्सर्स/NTTR3 में CVE)।
प्रवेश नीतियां: प्रतिबंध ': नवीनतम', हस्ताक्षर की आवश्यकता, भेद्यता सीमा।
आभासी पैच और प्रतिपूरक उपाय
जब एक पैच जल्दी से संभव नहीं है:- WAF/WAAP: एक विशिष्ट समापन बिंदु के लिए हस्ताक्षर/सकारात्मक मॉडल।
- फ्लैग्स: कमजोर कार्यक्षमता अक्षम करें।
- नेटवर्क एसीएल/एमटीएलएस/आईपी अनुमति-सूची: कमजोर सेवा तक पहुंच को प्रतिबंधित करें।
- कॉन्फिग हार्डनिंग: कम अधिकार, सैंडबॉक्स, रीड-ओनली एफएस, खतरनाक मॉड्यूल को अक्षम करना।
- TTL टोकन/कुंजियों की कमी, रहस्यों का घूर्णन।
जोखिम स्वीकृति
टिकट के साथ एक अपवाद जारी किया जाता है: औचित्य, प्रतिपूरक उपाय, उन्मूलन के लिए एसएलए, संशोधन तिथि।
"अस्थायी जोखिम स्वीकृति" के रूप में रिपोर्ट करें और मासिक समीक्षा में शामिल क
अवलोकन और मैट्रिक्स
तकनीकी:- पैच करने का मतलब समय (MTTP) по P1/P2/P3।
- स्कैनिंग (%) द्वारा कवर की गई परिसंपत्तियों का हिस्सा।
- खुली कमजोरियों की उम्र (p50/p90), बैकलॉग बर्न-डाउन।
- SBOM और हस्ताक्षर के साथ छवियों का प्रतिशत।
- तारीखों को बंद करके SLO का पूरा होना (उदा। 95% P1 48 घंटे)
- अपटाइम पर प्रभाव (पैच घटनाओं की संख्या)।
- एक ही CVE का बार-बार पता लगाना (टेम्पलेट में गुणवत्ता तय करें)।
प्लेबुक (संक्षिप्त)
P1: सार्वजनिक सेवा में महत्वपूर्ण RCE
1. WAF नियम/wirth पैच सक्रिय करें।
2. अनधिकृत स्रोतों तक पहुंच अवरुद्ध करें (यदि लागू हो)।
3. तत्काल छवि पुनर्निर्माण/ओएस पैच, → वेव कैनरी।
4. दोहराया DAST/टेलीमेट्री जांच, त्रुटि निगरानी।
5. पोस्ट-घटना: बेस इमेज/हेल्म चार्ट में फिक्स को ठीक करें, सीआई में परीक्षण जोड़ें।
गुप्त रिसाव (प्राधिकरण):1. रहस्य/कुंजियों का तत्काल घूर्णन, टोकन का निरसन।
2. उपयोग के निशान ढूंढना, समापन बिंदुओं को सीमित करना।
3. रहस्यों के लिए रेपो/छवियों के स्कैन, एक पूर्व-प्रतिबद्ध स्कैनर का कार्यान्वयन।
कलाकृतियों के उदाहरण
1) गर्म कमजोरियों पर SQL की रिपोर्ट
sql
SELECT service, cve, cvss, epss, exposed, has_exploit, created_at,
PRIORITY(exposed, has_exploit, cvss, epss) AS prio
FROM vuln_findings
WHERE status = 'open' AND (cvss >= 8.0 OR has_exploit = true)
ORDER BY prio DESC, created_at ASC;
2) प्रवेश नीति (Kyverno, महत्वपूर्ण भेद्यता ब्लॉक)
yaml apiVersion: kyverno.io/v1 kind: ClusterPolicy metadata:
name: block-critical-vulns spec:
validationFailureAction: Enforce rules:
- name: image-must-have-no-critical match: { resources: { kinds: ["Pod"] } }
validate:
message: "Image contains critical vulnerabilities"
pattern:
metadata:
annotations:
vuln.scanner/critical: "0"
3) एसबीओएम पीढ़ी और हस्ताक्षर (मेकफाइल टुकड़ा)
make sbom:
cyclonedx create --output sbom.json sign:
cosign sign --key cosign.key $(IMAGE_DIGEST)
IGaming/fintech के लिए विशिष्टता
उच्च जोखिम वाले क्षेत्र: भुगतान द्वार, भुगतान बैकफिक्स, विरोधी धोखाधड़ी, पीआईआई/पैन प्रसंस्करण - प्राथमिकता पैच।
सेवा खिड़कियां: टूर्नामेंट/प्रचार, पूर्व-गर्म कैश, कम लोड वाले क्षेत्रों में कैनरी के साथ समन्वय।
नियामक (पीसीआई डीएसएस/जीडीपीआर): कमजोरियों, साक्ष्य (स्क्रीनशॉट/रिपोर्ट), सीएचडी ज़ोन विभाजन, एन्क्रिप्शन को ठीक करने के लिए समयरेखा।
साझेदार एकीकरण: वेबहूक पर अनिवार्य SDK/क्लाइंट, अनिवार्य SCA और HMAC/mTLS की आवश्यकता होती है।
सामान्य गलतियाँ
"सब कुछ स्कैन करें - कुछ भी ठीक करें": कोई मालिक और एसएलओ नहीं।
केवल संदर्भ के बिना सीवीएसएस पर ध्यान केंद्रित करें (एक्सपोज़र, ईपीएसएस, डेटा)।
छवि के पुनर्निर्माण के बजाय कंटेनर रनटाइम में पैच करें।
कैनरी/रोलबैक योजनाओं की कमी।
cloud/K8s मिसकॉनफिग्स की अनदेखी (अक्सर सीवीई से अधिक महत्वपूर्ण)।
कोई SBOM/हस्ताक्षर - आपूर्ति श्रृंखला नहीं।
कार्यान्वयन रोडमैप
1. परिसंपत्तियों और मालिकों की सूची; सेवाओं/छवियों का एकीकृत रजिस्टर।
2. स्कैनर स्टैक: SCA/SAST/DAST/कंटेनर/क्लाउड + सीक्रेट-स्कैन; सीआई/सीडी में एकीकरण।
3. एसएलओ और प्राथमिकता नीतियां: सीवीएसएस + ईपीएसएस + संदर्भ; टिकट टेम्पलेट।
4. प्रवेश/नीति-जैसे-कोड: महत्वपूर्ण कमजोरियों, SBOM/हस्ताक्षर आवश्यकता का निषेध।
5. पैच प्रक्रियाएं: खिड़कियां, कैनरी, रोलबैक; मामूली/पैच संस्करणों के लिए ऑटोपायलट।
6. रिपोर्टिंग और मैट्रिक्स: एमटीटीपी, कवरेज, आयु; साप्ताहिक जोखिम समीक्षा।
7. नियमित अभ्यास: महत्वपूर्ण सीवीई का अनुकरण, प्लेबुक और रोलबैक का सत्यापन।
परिणाम
परिपक्व भेद्यता प्रबंधन एक प्रक्रिया है, एक बार की "सफाई" नहीं: स्वचालित पहचान, संदर्भ प्राथमिकता, कैनरी/रोलबैक के माध्यम से चिकनी पैच, प्रोड के प्रवेश द्वार पर नीति-जैसा-कोड, और पारसाफ निष्यूज। आधार छवियों और पैटर्न में ताले को सुरक्षित करके, आप पुनरावृत्ति के जोखिम को कम करते हैं और हमले की सतह को स्थिर नियंत्रण में रखते हैं।