Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/optiopay/klar
भेद्यता स्कैनरकंटेनर सुरक्षाकॉन्फ़िगरेशन ऑडिटिंगDevSecOps
GitHuboptiopay/klar

klar

Clair और Docker Registry का एकीकरण

रिपॉजिटरी देखें
50313422 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Klar

Clair और Docker Registry का एकीकरण (Clair API v1 और v3 दोनों का समर्थन करता है)

Klar एक सरल उपकरण है जो Clair (https://github.com/coreos/clair) का उपयोग करके एक निजी या सार्वजनिक Docker रजिस्ट्री में संग्रहीत छवियों की सुरक्षा कमजोरियों का विश्लेषण करता है। Klar को एक एकीकरण उपकरण के रूप में उपयोग करने के लिए डिज़ाइन किया गया है, इसलिए यह पर्यावरण चर पर निर्भर करता है। यह एक एकल बाइनरी है जिसे किसी निर्भरता की आवश्यकता नहीं है।

Klar एक क्लाइंट के रूप में कार्य करता है जो Docker रजिस्ट्री और Clair के बीच छवि जाँचों का समन्वय करता है।

बाइनरी इंस्टॉलेशन

सबसे सरल तरीका https://github.com/optiopay/klar/releases/ से नवीनतम रिलीज़ (OSX और Linux के लिए) डाउनलोड करना है और बाइनरी को अपने PATH में एक फ़ोल्डर में रखना है (सुनिश्चित करें कि इसमें निष्पादन अनुमति है)।

स्रोत कोड से इंस्टॉलेशन

सुनिश्चित करें कि आपके पास Go भाषा कंपाइलर स्थापित और कॉन्फ़िगर है https://golang.org/doc/install

फिर चलाएँ

root@kitploit:~
go get github.com/optiopay/klar

सुनिश्चित करें कि आपका Go बाइनरी फ़ोल्डर आपके PATH में है (जैसे export PATH=$PATH:/usr/local/go/bin)

उपयोग

Klar प्रक्रिया 0 लौटाती है यदि एक छवि में पाई गई उच्च गंभीरता वाली कमजोरियों की संख्या एक सीमा से कम या उसके बराबर है (नीचे देखें) और 1 यदि अधिक थीं। यदि कोई त्रुटि छवि के विश्लेषण को रोकती है तो यह 2 लौटाएगा।

Klar को निम्नलिखित पर्यावरण चर के माध्यम से कॉन्फ़िगर किया जा सकता है:

  • CLAIR_ADDR - Clair सर्वर का पता। इसका रूप protocol://host:port है - protocol और port क्रमशः http और 6060 पर डिफ़ॉल्ट होते हैं और इन्हें छोड़ा जा सकता है। आप URL में बुनियादी प्रमाणीकरण भी निर्दिष्ट कर सकते हैं: protocol://login:password@host:port।

  • CLAIR_OUTPUT - गंभीरता स्तर की सीमा, इस सीमा से अधिक या बराबर गंभीरता स्तर वाली कमजोरियाँ आउटपुट होंगी। समर्थित स्तर हैं Unknown, Negligible, Low, Medium, High, Critical, Defcon1। डिफ़ॉल्ट Unknown है।

  • CLAIR_THRESHOLD - 1 लौटाने से पहले Klar कितनी आउटपुट कमजोरियाँ सहन कर सकता है। डिफ़ॉल्ट 0 है।

  • CLAIR_TIMEOUT - मिनटों में टाइमआउट जिसके बाद Klar छवि स्कैनिंग रद्द कर देता है। डिफ़ॉल्ट 1 है।

  • DOCKER_USER - Docker रजिस्ट्री खाता नाम।

  • DOCKER_PASSWORD - Docker रजिस्ट्री खाता पासवर्ड।

  • DOCKER_TOKEN - Docker रजिस्ट्री खाता टोकन। (DOCKER_USER और DOCKER_PASSWORD के स्थान पर उपयोग किया जा सकता है)

  • DOCKER_INSECURE - Klar को खराब SSL प्रमाणपत्रों वाली रजिस्ट्रियों तक पहुँचने की अनुमति दें। डिफ़ॉल्ट false है। इसके काम करने के लिए Clair को -insecure-tls के साथ बूट करना होगा।

  • DOCKER_TIMEOUT - Docker रजिस्ट्री से लेयर्स प्राप्त करने का प्रयास करते समय मिनटों में टाइमआउट

  • DOCKER_PLATFORM_OS - Docker छवि का ऑपरेटिंग सिस्टम। डिफ़ॉल्ट linux है। यह केवल तभी सेट करने की आवश्यकता है जब निर्दिष्ट छवि सामान्य मेनिफेस्ट के बजाय Docker ManifestList को संदर्भित करती है।

  • DOCKER_PLATFORM_ARCH - आर्किटेक्चर जिसके लिए Docker छवि अनुकूलित है। डिफ़ॉल्ट amd64 है। यह केवल तभी सेट करने की आवश्यकता है जब निर्दिष्ट छवि सामान्य मेनिफेस्ट के बजाय Docker ManifestList को संदर्भित करती है।

  • REGISTRY_INSECURE - Klar को असुरक्षित रजिस्ट्रियों (केवल HTTP) तक पहुँचने की अनुमति दें। डिफ़ॉल्ट false है।

  • JSON_OUTPUT - JSON आउटपुट करें, सादा पाठ नहीं। डिफ़ॉल्ट false है।

  • FORMAT_OUTPUT - कमजोरियों का आउटपुट प्रारूप। समर्थित प्रारूप हैं standard, json, table। डिफ़ॉल्ट standard है। यदि JSON_OUTPUT सत्य पर सेट है, तो यह विकल्प अनदेखा किया जाता है।

  • WHITELIST_FILE - CVE श्वेतसूची के साथ YAML फ़ाइल का पथ। फ़ाइल प्रारूप के लिए whitelist-example.yaml देखें।

  • IGNORE_UNFIXED - बिना फिक्स वाली कमजोरियों को सीमा की ओर न गिनें

उपयोग:

root@kitploit:~
CLAIR_ADDR=localhost CLAIR_OUTPUT=High CLAIR_THRESHOLD=10 DOCKER_USER=docker DOCKER_PASSWORD=secret klar postgres:9.5.1

डीबग आउटपुट

आप KLAR_TRACE को true पर सेट करके अधिक विस्तृत आउटपुट सक्षम कर सकते हैं।

  • रन के बीच बने रहने के लिए export KLAR_TRACE=true चलाएँ।

डॉकरीकृत संस्करण

Klar को डॉकरीकृत किया जा सकता है। $GOPATH/src/github.com/optiopay/klar पर जाएँ और प्रोजेक्ट रूट में Klar बनाएँ। यदि आप Linux पर हैं:

root@kitploit:~
CGO_ENABLED=0 go build -a -installsuffix cgo .

यदि आप Mac पर हैं तो इसे Linux के लिए बनाना न भूलें:

root@kitploit:~
GOOS=linux go build .

Docker छवि बनाने के लिए प्रोजेक्ट रूट में चलाएँ (यदि चाहें तो klar को पूरी तरह से योग्य नाम से बदलें):

root@kitploit:~
docker build -t klar .

फिर पर्यावरण चर को अलग-अलग --env तर्कों के रूप में पास करें, या एक env फ़ाइल बनाएँ और इसे --env-file तर्क के रूप में पास करें। उदाहरण के लिए env चर को my-klar.env के रूप में सहेजें:

root@kitploit:~
CLAIR_ADDR=localhost
CLAIR_OUTPUT=High
CLAIR_THRESHOLD=10
DOCKER_USER=docker
DOCKER_PASSWORD=secret

फिर चलाएँ

root@kitploit:~
docker run --env-file=my-klar.env klar postgres:9.5.1

Amazon ECR समर्थन

Amazon ECR के लिए कोई स्थायी उपयोगकर्ता नाम/पासवर्ड नहीं है, क्रेडेंशियल aws ecr get-login का उपयोग करके प्राप्त करने होंगे और वे 12 घंटे के लिए वैध होते हैं। यहाँ एक नमूना स्क्रिप्ट है जिसका उपयोग Klar को ECR क्रेडेंशियल प्रदान करने के लिए किया जा सकता है:

root@kitploit:~
DOCKER_LOGIN=`aws ecr get-login --no-include-email`
PASSWORD=`echo $DOCKER_LOGIN | cut -d' ' -f6`
REGISTRY=`echo $DOCKER_LOGIN | cut -d' ' -f7 | sed "s/https:\/\///"`
DOCKER_USER=AWS DOCKER_PASSWORD=${PASSWORD} ./klar ${REGISTRY}/my-image

Google GCR समर्थन

GCR (Google Cloud Registry) के विरुद्ध प्रमाणीकरण के लिए, सबसे आसान तरीका एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का उपयोग करना है। ये केवल GCP से Klar चलाने पर काम करते हैं। एकमात्र आवश्यकता Google Cloud SDK है।

root@kitploit:~
DOCKER_USER=oauth2accesstoken
DOCKER_PASSWORD="$(gcloud auth application-default print-access-token)"

Docker के साथ:

root@kitploit:~
DOCKER_USER=oauth2accesstoken
DOCKER_PASSWORD="$(docker run --rm google/cloud-sdk:alpine gcloud auth application-default print-access-token)"
टूल डाउनलोड करें