रेड टीम इन्फ्रास्ट्रक्चर और साइबर रेंज के लिए एक कैनवास। एक टोपोलॉजी बनाएं, चलाने योग्य Terraform और Ansible निर्यात करें, और इसे स्वयं तैनात करें। आपके क्लाउड क्रेडेंशियल्स कभी भी आपकी मशीन से बाहर नहीं जाते।

एक वेब कैनवास जहाँ आप इंफ्रास्ट्रक्चर को एक टोपोलॉजी के रूप में बनाते हैं, फिर Terraform और Ansible की एक पूर्ण, चलाने योग्य वर्किंग डायरेक्टरी एक्सपोर्ट करते हैं। आप इसे अपनी ही मशीन से चलाते हैं। redStackPRO कभी भी आपके क्लाउड क्रेडेंशियल्स नहीं रखता।
[!IMPORTANT] redStackPRO प्रीरिलीज़ (बीटा) में है। स्कीमा और फीचर्स अभी भी बदल रहे हैं। GCP और AWS का एंड-टू-एंड परीक्षण किया गया है; Azure, Proxmox, और ESXi रोडमैप पर हैं। खुरदुरे किनारों की अपेक्षा करें, और यदि आपको स्थिरता चाहिए तो किसी रिलीज़ किए गए वर्शन पर पिन करें।
कोई खुरदुरा किनारा मिला, या फीडबैक है? Issues पर एक इश्यू खोलें। यदि यह कोई डिप्लॉय था, तो रन द्वारा लिखा गया स्क्रब किया हुआ
logs/deploy-*.logसंलग्न करें (यह वर्शन, प्रोवाइडर, और कहाँ रुका, यह रिकॉर्ड करता है, सीक्रेट्स हटाकर) ताकि इसका तेज़ी से विश्लेषण किया जा सके। आपकी रिपोर्टें रिलीज़ को आकार देती हैं।
redStackPRO अटैक इंफ्रास्ट्रक्चर और टारगेट रेंजों को एक ही कैनवास पर रखता है। दो
कैनवास मोड हैं Offense (अटैक इंफ्रास्ट्रक्चर) और Defense (डिफेंसिव AD रेंजें); एक्सपोर्ट अपने
हैंडऑफ़ का नाम OFFENSE-BRIEFING.md या DEFENSE-BRIEFING.md रखता है ताकि मेल खाए।
स्प्लिट होराइज़न C2, अटैक इंफ्रास्ट्रक्चर: दो फ्रंट डोर जो एक ही भाग्य साझा नहीं करते, Apache जो Sliver को फ्रंट करता है और Nginx जो Mythic को फ्रंट करता है, प्रत्येक रीडायरेक्टर अपने ही पीयर्ड नेटवर्क पर, टीमसर्वर, कलेक्टर, और ऑपरेटर एक जंपबॉक्स के पीछे।

कई ऑपरेटर, एक स्टैक। एक अटैक-इंफ्रास्ट्रक्चर जंपबॉक्स operators की एक
सूची (हैंडल प्लस रोल) नामित कर सकता है, और प्रत्येक को साझा लैब पासवर्ड पर एक Guacamole पोर्टल लॉगिन
मिलता है। जंपबॉक्स का access_mode wireguard या
openvpn पर सेट करें (डिफ़ॉल्ट एक सार्वजनिक पोर्टल है) और प्रत्येक ऑपरेटर को एप्लाई के समय जंपबॉक्स पर जनरेट किया गया एक व्यक्तिगत
VPN क्रेडेंशियल भी मिलता है: कुंजियाँ कभी बॉक्स नहीं छोड़तीं
या एक्सपोर्ट में प्रवेश नहीं करतीं, केवल क्लाइंट कॉन्फ़िग फ़ाइल करती है। पोर्टल लॉगिन आज
एक ही लैब पासवर्ड साझा करते हैं, इसलिए प्रति-ऑपरेटर आइसोलेशन प्रत्येक ऑपरेटर के
अपने VPN क्रेडेंशियल से आता है, पोर्टल लॉगिन से नहीं; व्यक्तिगत पोर्टल पासवर्ड
रोडमैप पर हैं। VPN एक्सेस मोड पर पोर्टल इंटरनेट के लिए बंद हो जाता है और टनल के पीछे चला जाता है, जबकि SSH खुला रहता है ताकि एडमिन बॉक्स को डिप्लॉय और मैनेज करता रह सके।
sudo rsp-operator add <handle> के साथ एक चल रहे जंपबॉक्स पर एक टीममेट को जोड़ें या हटाएँ। देखें
विकी Deploying a Range।
Harbor, एक टारगेट रेंज: एक छोटा कॉर्पोरेट फ़ॉरेस्ट, एक रूट डोमेन और एक पैरेंट-चाइल्ड ट्रस्ट पर एक चाइल्ड, एक फ़िशिंग किए गए वर्कस्टेशन से फ़ॉरेस्ट तक के सामान्य पथ के साथ।

GOAD, पूरी लैब: दो फ़ॉरेस्ट में तीन डोमेन, पाँच मशीनें और उनके ट्रस्ट, वह संदर्भ रेंज जिसका लिखित समाधान अनुसरण करता है।

[!IMPORTANT] एक्सपोर्ट ही सीमा है। कैनवास फ़ाइलें जनरेट करता है; आप उन्हें अपने स्वयं के क्रेडेंशियल्स के अंतर्गत चलाते हैं। redStackPRO कभी कुछ डिप्लॉय नहीं करता और कभी कोई सीक्रेट नहीं रखता।
[!CAUTION] केवल अधिकृत उपयोग। redStackPRO आक्रामक इंफ्रास्ट्रक्चर और जानबूझकर कमज़ोर रेंजें बनाता है। इसका उपयोग केवल उन लैब वातावरणों में करें जिनके आप स्वामी हैं या जिनका परीक्षण करने के लिए स्पष्ट रूप से अधिकृत हैं, कभी भी उन सिस्टमों के विरुद्ध नहीं जिनके लिए आपके पास लिखित अनुमति नहीं है।
प्री-रिलीज़, और टोपोलॉजी स्कीमा अभी भी बदल रहा है। पाइपलाइन स्वयं एंड टू एंड काम करती है: एक टोपोलॉजी Terraform और Ansible में कंपाइल होती है, और एक्सपोर्ट डिप्लॉय होता है।
| प्रोवाइडर | स्थिति |
|---|---|
| GCP, AWS | समर्थित और एंड टू एंड परीक्षित, दोनों टारगेट रेंजों और अटैक इंफ्रास्ट्रक्चर के लिए। |
| Azure, Proxmox, ESXi | रोडमैप पर, अभी तक समर्थित नहीं। |
पूरा कैनवास एक कंटेनर में, API और वेब ऐप एक ही पोर्ट पर:
docker compose up # builds from this repo, http://127.0.0.1:8000
या बनाने के बजाय प्रकाशित इमेज पुल करें:
docker run -p 8000:8000 -v redstackpro-data:/data \
ghcr.io/devzero-security/redstackpro:0.9.0
कैनवास कंटेनर के अंदर 8000 पर सुनता है। इसे किसी भिन्न होस्ट
पोर्ट पर सर्व करने के लिए, मैपिंग के बाएँ आधे हिस्से को बदलें (-p 8787:8000), या compose के लिए
REDSTACKPRO_PORT सेट करें (REDSTACKPRO_PORT=8787 docker compose up)।
Compose एक साझा डिप्लॉयमेंट के लिए एक वैकल्पिक Postgres बैकएंड भी ले जाता है:
REDSTACKPRO_DATABASE_URL=postgresql+psycopg://redstackpro:redstackpro@db:5432/redstackpro \
docker compose --profile postgres up
इमेज केवल कंपोज़िशन लेयर है। यह Terraform या Ansible नहीं ले जाती और कभी आपके क्लाउड क्रेडेंशियल्स नहीं रखती: आप इसके द्वारा उत्पादित एक्सपोर्ट को अपनी ही मशीन से चलाते हैं, ठीक वैसे ही जैसे नीचे दिए गए from-source फ़्लो में।
Python 3.11 या नया, और कैनवास के लिए Node 24।
git clone <this repo> && cd redStackPRO
python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
कैनवास दो प्रोसेस है, API और वेब ऐप:
redstackpro serve # http://127.0.0.1:8000
cd frontend && npm install && npm run dev
redstackpro serve --port 8787 API को एक भिन्न पोर्ट पर ले जाता है। कैनवास डेव सर्वर को इसकी ओर इंगित करें
REDSTACKPRO_API=http://127.0.0.1:8787 के साथ।
इसे खोलें, एक शिप किए गए शुरुआती बिंदु को खोलने के लिए Load blueprint (बटन, या मोड पैलेट) का उपयोग करें, टूलबार प्रोवाइडर सेलेक्टर में अपना क्लाउड चुनें (GCP या AWS), Export टैब खोलें (यह चलते-चलते कंपाइल करता है), फिर Download करें। आपको नीचे वर्णित वर्किंग डायरेक्टरी की एक zip मिलती है।
या कैनवास को पूरी तरह छोड़ दें और कमांड लाइन से एक शिप किया गया ब्लूप्रिंट कंपाइल करें, वही कंपाइलर, वही आउटपुट:
redstackpro compile frontend/public/goad/goad-light.json -o export
कमांड लाइन डिफ़ॉल्ट रूप से GCP पर जाती है। AWS के लिए --provider aws पास करें।