
क्लाउड में स्वचालित हमला सिमुलेशन, पहचान उपयोग मामलों सहित।
यह लियोनिदास वाला रिपॉजिटरी है, जो क्लाउड में हमलावर कार्यों को निष्पादित करने के लिए एक ढांचा है। यह क्लाउड हमलावर रणनीति, तकनीक और प्रक्रियाओं (TTPs) और उनसे संबंधित पहचान गुणों को परिभाषित करने के लिए YAML-आधारित प्रारूप प्रदान करता है। इन परिभाषाओं को फिर निम्न में संकलित किया जा सकता है:
यह परियोजना मूल रूप से AWS वातावरण में उपयोग के लिए डिज़ाइन की गई थी, निम्नलिखित आर्किटेक्चर के साथ:
2024 में, लियोनिदास को Kubernetes वातावरण का समर्थन करने के लिए विस्तारित किया गया। इसके संसाधनों को लक्ष्य क्लस्टर के भीतर तैनात किया जा सकता है, निम्नलिखित आर्किटेक्चर के अनुसार:

एपीआई को एक AWS-नेटिव CI/CD पाइपलाइन के माध्यम से AWS खाते में, और ऑटो-जनरेटेड YAML मैनिफेस्ट का उपयोग करके Kubernetes क्लस्टर में तैनात किया जाता है। दोनों वातावरणों के निर्देश लियोनिदास को तैनात करना पर पाए जा सकते हैं।
एपीआई को एक API कुंजी द्वारा सुरक्षित वेब अनुरोधों के माध्यम से लागू किया जाता है। एपीआई का उपयोग करने के विवरण पर पाए जा सकते हैं।
दस्तावेज़ीकरण या Sigma नियम बनाने के लिए, आपको जनरेटर को स्थानीय रूप से स्थापित करना होगा। आप ऐसा इस प्रकार कर सकते हैं:
cd generatorpoetry installSigma नियम निम्नानुसार उत्पन्न किए जा सकते हैं:
poetry run ./generator.py sigmaनियम तब ./output/sigma में दिखाई देंगे।
दस्तावेज़ीकरण निम्नानुसार उत्पन्न होता है:
poetry run ./generator.py docsइससे output/docs पर उपलब्ध दस्तावेज़ीकरण के मार्कडाउन संस्करण तैयार होंगे। इसे किसी मौजूदा मार्कडाउन-आधारित दस्तावेज़ीकरण प्रणाली पर अपलोड किया जा सकता है, या दस्तावेज़ों का एक सुंदर HTML संस्करण बनाने के लिए निम्नलिखित का उपयोग किया जा सकता है:
cd ../outputmkdocs buildइससे output/site फ़ोल्डर बनेगा जिसमें HTML साइट होगी। उसी फ़ोल्डर में mkdocs serve चलाकर इसे स्थानीय रूप से देखना भी संभव है।
परिभाषाएँ YAML-आधारित प्रारूप में लिखी जाती हैं, जिसका एक उदाहरण नीचे दिया गया है। इन्हें लिखने का तरीका परिभाषाएँ लिखना में पाया जा सकता है।
---
name: Enumerate Cloudtrails for a Given Region
author: Nick Jones
description: |
An adversary may attempt to enumerate the configured trails, to identify what actions will be logged and where they will be logged to. In AWS, this may start with a single call to enumerate the trails applicable to the default region.
category: Discovery
mitre_ids:
- T1526
platform: aws
permissions:
- cloudtrail:DescribeTrails
input_arguments:
executors:
sh:
code: |
aws cloudtrail describe-trails
leonidas_aws:
implemented: True
clients:
- cloudtrail
code: |
result = clients["cloudtrail"].describe_trails()
detection:
sigma_id: 48653a63-085a-4a3b-88be-9680e9adb449
status: experimental
level: low
sources:
- name: "cloudtrail"
attributes:
eventName: "DescribeTrails"
eventSource: "*.cloudtrail.amazonaws.com"
परियोजना निक जोन्स ( NJonesUK / @nojonesuk ) द्वारा निर्मित और अनुरक्षित है।
Kubernetes का समर्थन लियो त्साओसिस ( @laripping ) द्वारा जोड़ा गया।
मोहित गुप्ता ( @Skybound1 ) को उनके अमूल्य योगदान के लिए विशेष धन्यवाद।
इस परियोजना ने कई स्रोतों से विचार और प्रेरणा ली, जिनमें शामिल हैं: