Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
purpleteam-s2-containers — स्टेज दो कंटेनर | Kitploit
उपकरण/GitLabGitLab/purpleteam-labs/purpleteam-s2-containers
भेद्यता स्कैनरकंटेनर सुरक्षागतिशील विश्लेषण (सैंडबॉक्सिंग)वेब सुरक्षापेनिट्रेशन टेस्टिंगक्लाउड सुरक्षाDevSecOpsलर्निंग और शिक्षाArchived
GitLabpurpleteam-labs/purpleteam-s2-containers

purpleteam-s2-containers

स्टेज दो कंटेनर

रिपॉजिटरी देखें
1335 साल पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

पर्पलटीम लोगो

पर्पलटीम चरण दो कंटेनर


पर्पलटीम के चरण दो कंटेनर




ये कंटेनर बिल्ड यूज़र कॉन्फ़िग (जॉब) इनपुट के आधार पर गतिशील रूप से शुरू होते हैं, जो पर्पलटीम CLI को दिया जाता है, विशेष रूप से आपके द्वारा परिभाषित testSessions की संख्या।

निम्नलिखित कॉन्फ़िगरेशन प्रासंगिक हैं यदि आप पर्पलटीम बैक-एंड को local वातावरण में चलाने का इरादा रखते हैं। cloud में यह सब आपके लिए किया जाता है।

इस रिपॉजिटरी को क्लोन करें।

पर्यावरण चर परिभाषित करें

app-slave (Zap)

हम परीक्षण के लिए सीधे app-slave निर्देशिका में एक .env फ़ाइल का उपयोग करते हैं।

ZAP_API_KEY

सुनिश्चित करें कि आपने ZAP_API_KEY पर्यावरण चर को एक मान निर्दिष्ट किया है।

ZAP_API_KEY जो कुछ भी आप चुनें, हो सकता है, बस यह सुनिश्चित करें कि इसे app-slave के लिए परिभाषित करने के अलावा, आप इसे app-scanner प्रोजेक्ट कॉन्फ़िगरेशन में भी जोड़ें। app-scanner प्रोजेक्ट को चरण दो कंटेनर में चल रहे Zap से प्रमाणित करने के लिए Zap API Key कॉन्फ़िगर करने की आवश्यकता होती है। app-scanner प्रोजेक्ट के लिए, इसे निम्नलिखित में सेट करने की आवश्यकता है:
{ "slave": { "apiKey": <zap-api-key-here> } }

HOST_ZAP_LOG4J_PROPERTIES_PATH और ZAP_LOG4J_PROPERTIES_PATH_MOUNT_TARGET

यदि/जब आपको Zap डीबग लॉग की आवश्यकता होती है, तो आपको LOG4J डीबग कॉन्फ़िगरेशन के लिए पर्यावरण चर भी जोड़ने होंगे।

.env फ़ाइल

यदि आप .env फ़ाइल का उपयोग करना चुनते हैं, तो इन सभी पर्यावरण चरों को जोड़ना निम्नलिखित जैसा दिखेगा:

ZAP_API_KEY=<zap-api-key-here>
HOST_ZAP_LOG4J_PROPERTIES_PATH=<absolute-path-to/purpleteam-s2-containers/app-slave/log4j.properties>
ZAP_LOG4J_PROPERTIES_PATH_MOUNT_TARGET=/home/zap/.ZAP/log4j.properties

डीबगिंग

app-slave (Zap)

डीबग लॉगिंग

बशर्ते आपने ऊपर चर्चा किए गए पर्यावरण चर स्थापित कर लिए हों:

local वातावरण में चलने वाले app-slave (Zap) कंटेनरों के लिए डीबग लॉगिंग चालू करने के लिए, volumes सरणी और source कुंजी वाले तत्व को अन-कमेंट करें जिसमें पर्यावरण चर HOST_ZAP_LOG4J_PROPERTIES_PATH है।

लॉग को वास्तव में देखने के लिए विवरण नीचे दिए गए हैं।

Zap के साथ इंटरैक्ट करना

आप अपने परीक्षण चलने के दौरान Zap के साथ बातचीत कर सकते हैं (Zap UI से क्वेरी कर सकते हैं)। हमने अतीत में app-scanner को डीबग करते समय Zap की स्थिति की जाँच करने के लिए इसे उपयोगी पाया है।

  1. पुष्टि करें कि appslave_zap_[n] कंटेनर चल रहा है:
    docker stats
    
  2. जांचें कि appslave_zap_[n] कंटेनर किस होस्ट पोर्ट से बंधा है:
    docker container ls
    
    यह docker-compose.yml में परिभाषित अनुसार 8080-8091 के बीच कोई भी पोर्ट हो सकता है।
    कंटेनर के अंदर Zap जिस पोर्ट पर सुन रहा है, वह हमेशा 8080 होगा।
  3. अपने ब्राउज़र में FoxyProxy का उपयोग करके localhost:[zap-host-port] पर एक प्रॉक्सी सेट करें।
    FoxyProxyDetails_Zap-min
    वैकल्पिक: FoxyProxy में निम्नलिखित URL पैटर्न सेट करें: zap:8080/*
    FoxyProxyURLPattern_Zap-min
    यदि आप URL पैटर्न का उपयोग करते हैं, तो यह आपको FoxyProxy को चालू रखने और "Use proxies based on their predefined patterns and priorities" का चयन करने की अनुमति देगा। ऐसा न करने पर आप बस अपने द्वारा बनाए गए विशिष्ट प्रॉक्सी का चयन कर सकते हैं।
  4. http://zap:8080/ पर ब्राउज़ करें।
    आपके अनुरोध आपके होस्ट पोर्ट के माध्यम से प्रॉक्सी किए जाएंगे और आपके FoxyProxy कॉन्फ़िगरेशन में होस्ट पोर्ट द्वारा निर्दिष्ट कंटेनर में zap प्रक्रिया के माध्यम से उत्तर दिए जाएंगे।

selenium-standalone

डीबग लॉगिंग

local वातावरण में चलने वाले Selenium कंटेनरों के लिए डीबग लॉगिंग चालू करने के लिए, environment सरणी और chrome और/या firefox के लिए SE_OPTS=-debug तत्व को अन-कमेंट करें।

लॉग को वास्तव में देखने के लिए विवरण नीचे दिए गए हैं।

Selenium कंटेनर में ब्राउज़र देखना

निम्नलिखित बताता है कि इस प्रोजेक्ट से चलने वाले किसी भी Selenium कंटेनर के अंदर ब्राउज़र देखने के लिए आपको क्या करने की आवश्यकता होगी।

docker-compose.yml सेट-अप:

  • कंटेनर इमेज को -debug इमेज से बदलें। -debug इमेज पर टिप्पणी की जा सकती है, इसलिए सामान्य इमेज को कमेंट आउट करें और अंत में -debug जोड़कर इमेज को अन-कमेंट करें।
  • सुनिश्चित करें कि आप 5900 पोर्ट रेंज को अन-कमेंट करके कंटेनर के अंदर VNC सर्वर तक पहुँच सकते हैं। बाहरी पोर्ट के रूप में एक रेंज निर्दिष्ट करके (उदा.: 5900-5901) आप एक साथ एक से अधिक कंटेनर में VNC कर सकेंगे, उदाहरण में हमने एक साथ दो सत्र खोलने की अनुमति दी है। यदि आपको दो से अधिक में VNC करने की आवश्यकता है, तो बस बाहरी पोर्ट रेंज को चौड़ा करें।

VNC क्लाइंट सेट-अप:

  1. आपको कंटेनर के अंदर VNC सर्वर से कनेक्शन खोलने के लिए एक VNC क्लाइंट की आवश्यकता होगी। Linux Mint पर Remmina Remote Desktop Client का उपयोग करने में हमें सफलता मिली है। सॉफ़्टवेयर मैनेजर के माध्यम से Remmina-plugin-vnc इंस्टॉल करें।

  2. अपना Remmina Remote Desktop Client चलाएँ।

  3. नई प्रविष्टियाँ बनाएँ। यदि आप एक साथ कुछ Selenium कंटेनरों में VNC करने का इरादा रखते हैं, तो आप प्रत्येक को निम्नलिखित की तरह सेट कर सकते हैं:

    कुंजीमान
    नामseleniumstandalone_chrome_1
    प्रोटोकॉलVNC - वर्चुअल नेटवर्क कंप्यूटिंग
    बेसिक टैब में
    सर्वर127.0.0.1:5900
    पासवर्डगुप्त
    रंग गहराईट्रू कलर (24 बिट) # हमारे लिए केवल यही काम करता है
    गुणवत्तानिम्न (सबसे तेज़)
    कुंजीमान
    नामseleniumstandalone_chrome_2
    प्रोटोकॉलVNC - वर्चुअल नेटवर्क कंप्यूटिंग
    बेसिक टैब में
    सर्वर127.0.0.1:5901
    पासवर्डगुप्त
    रंग गहराईट्रू कलर (24 बिट) # हमारे लिए केवल यही काम करता है
    गुणवत्तानिम्न (सबसे तेज़)

SeleniumHQ github पर अधिक विवरण।

Selenium कंटेनर के अंदर ब्राउज़र देखना

एक बार Selenium कंटेनर चलने के बाद (एक टर्मिनल में docker stats चलाना इसे देखने के लिए सुविधाजनक है), आप docker container ls से पुष्टि कर सकते हैं कि कौन सा Selenium कंटेनर किस बाहरी पोर्ट का उपयोग कर रहा है, क्योंकि Docker को पता नहीं है कि आपने अपने VNC क्लाइंट प्रविष्टियों में से किसके लिए कौन से पोर्ट निर्दिष्ट किए हैं, इसलिए किसी दिए गए VNC क्लाइंट प्रविष्टि का नाम आवश्यक रूप से समान नाम वाले Selenium कंटेनर से मेल नहीं खा सकता है। इस कारण से, docker container ls के साथ पोर्ट मैपिंग की पुष्टि करना एक अच्छा विचार है।

जब आपके पास कई Test Session हों, तो यह सहसंबंधित करने के लिए कि कौन सा Selenium कंटेनर किस Test Session के लिए उपयोग किया जा रहा है, आपको चल रहे app-scanner लॉग की समीक्षा करने की आवश्यकता हो सकती है। आपको यह भी सुनिश्चित करने की आवश्यकता हो सकती है कि app-scanner को निम्नलिखित लॉग संदेशों में से कुछ या अधिक देखने के लिए लॉग स्तर debug पर कॉन्फ़िगर किया गया है:

[app.parallel] cucCli process with PID "28" has been spawned for test session with Id "lowPrivUser"

[app.parallel] cucCli process with PID "34" has been spawned for test session with Id "adminUser"

[pid-28,world] seleniumContainerName is: seleniumstandalone_chrome_1

[pid-34,world] seleniumContainerName is: seleniumstandalone_chrome_2

टूल डाउनलोड करें