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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ALFA — Google Workspace ऑडिट लॉग के लिए स्वचालित फोरेंसिक विश्लेषण उपकरण। सभी लॉग प्रकार प्राप्त करता है, घटनाओं को MITRE ATT&CK क्लाउड फ्रेमवर्क से मैप करता है, और सांख्यिकीय स्कोरिंग के माध्यम से किल चेन की पहचान करता है। | Kitploit
उपकरण/GitHubGitHub/invictus-ir/alfa
फोरेंसिकडिजिटल फोरेंसिकक्लाउड सुरक्षाखतरा खुफियाघटना प्रतिक्रियालॉग विश्लेषण
GitHubinvictus-ir/alfa

ALFA

Google Workspace ऑडिट लॉग के लिए स्वचालित फोरेंसिक विश्लेषण उपकरण। सभी लॉग प्रकार प्राप्त करता है, घटनाओं को MITRE ATT&CK क्लाउड फ्रेमवर्क से मैप करता है, और सांख्यिकीय स्कोरिंग के माध्यम से किल चेन की पहचान करता है।

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

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

सभी देखें →

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

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

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

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

ALFA

Google Workspace के लिए स्वचालित ऑडिट लॉग फोरेंसिक विश्लेषण

कॉपीराइट (c) 2026 Invictus Incident Response
मूल लेखक Greg Charitonos और BertJanCyber को Invictus Incident Response द्वारा अनुरक्षित किया गया है

शुरू करने से पहले

समर्थित ऑपरेटिंग सिस्टम पर एक नोट, ALFA का परीक्षण कई लिनक्स वितरणों (Debian और Ubuntu) पर किया गया है।
हालाँकि इसे Windows या macOS पर उपयोग करना संभव हो सकता है, परिणाम भिन्न हो सकते हैं, इसलिए अपने स्वयं के जोखिम पर आगे बढ़ें।

स्थापना

  1. इस प्रोजेक्ट को डाउनलोड करें
  2. अपने टर्मिनल में फ़ोल्डर पर जाएँ और sudo pip install -e . या sudo pip3 install -e . चलाएँ

macOS पर स्थापना

  1. pyenv का उपयोग करके Python 3.9 स्थापित करें ALFA Python 3.9 के साथ सबसे अच्छा काम करता है। आप इस संस्करण को प्रबंधित और स्थापित करने के लिए pyenv का उपयोग कर सकते हैं।

    • यदि आपने अभी तक pyenv स्थापित नहीं किया है, तो आप Homebrew का उपयोग करके ऐसा कर सकते हैं:
      root@kitploit:~
      brew install pyenv
      
    • अपने शेल कॉन्फ़िगरेशन फ़ाइल (जैसे, ~/.zshrc या ~/.bashrc) में निम्नलिखित जोड़कर अपने शेल में pyenv सेट अप करें:
      root@kitploit:~
      export PYENV_ROOT="$HOME/.pyenv"
      export PATH="$PYENV_ROOT/bin:$PATH"
      eval "$(pyenv init --path)"
      
      फ़ाइल को अपडेट करने के बाद, अपने शेल को पुनः लोड करें:
      root@kitploit:~
      source ~/.zshrc  # or source ~/.bashrc
      
    • pyenv का उपयोग करके Python 3.9 स्थापित करें:
      root@kitploit:~
      pyenv install 3.9
      
    • Python 3.9 को वर्तमान संस्करण के रूप में सेट करें:
      root@kitploit:~
      pyenv global 3.9
      
      या केवल वर्तमान सत्र के लिए:
    root@kitploit:~
     pyenv shell 3.9
    
  2. (वैकल्पिक) एक वर्चुअल वातावरण बनाएँ निर्भरताओं को अलग रखने के लिए प्रोजेक्ट को वर्चुअल वातावरण में चलाना एक अच्छा अभ्यास है। आपके द्वारा सेट किए गए Python के 3.9 संस्करण का उपयोग करके, एक वर्चुअल वातावरण बनाएँ:

    root@kitploit:~
    python -m venv alfa
    
    • वर्चुअल वातावरण सक्रिय करें:
      root@kitploit:~
      source alfa/bin/activate
      
  3. ALFA स्थापित करें जिस फ़ोल्डर में ALFA प्रोजेक्ट स्थित है, उसके अंदर pip का उपयोग करके इसे स्थापित करें:

    root@kitploit:~
    pip install -e .
    

    यदि आप वर्चुअल वातावरण का उपयोग नहीं कर रहे हैं, तो आपको sudo की आवश्यकता हो सकती है:

    root@kitploit:~
    sudo pip install -e .
    
  4. स्थापना सत्यापित करें स्थापना के बाद, आप यह सत्यापित कर सकते हैं कि ALFA स्थापित है, इसके कमांड-लाइन टूल alfa को चलाने का प्रयास करके।

ALFA का उपयोग करना

नोट: credentials.json प्राप्त करने के लिए, कृपया CREDENTIALS.md देखें

सेटअप

  1. पहला कदम ALFA को आरंभ करना है, इसे alfa init projectname चलाकर करें, यह कमांड आपके कॉन्फ़िगरेशन और डेटा को संग्रहीत करने के लिए एक नई निर्देशिका बनाएगा। उदाहरण के लिए alfa init project_x
  2. अब 'project_x' नाम का एक नया प्रोजेक्ट उत्पन्न हुआ है। उस फ़ोल्डर के अंदर अपने credentials.json को config/ फ़ोल्डर में कॉपी करें। निर्देशों के लिए (CREDENTIALS.md देखें)।
  3. credentials.json फ़ाइल को कॉपी करने के बाद आप ALFA का उपयोग करने के लिए तैयार हैं।

ALFA के 3 विकल्प हैं जैसा कि नीचे बताया गया है:

1. ALFA Acquire

सभी Google Workspace ऑडिट लॉग एकत्र करें

  1. "project_x" (या आपने पहले जो भी नाम चुना था) के अंदर से alfa acquire चलाएँ
  2. ALFA अब सभी उपयोगकर्ताओं के लिए सभी logtypes प्राप्त करेगा और उन्हें 'data' फ़ोल्डर में एक उपनिर्देशिका में सहेजेगा, प्रति logtype एक .json फ़ाइल उत्पन्न होगी
  3. आपके पास और कौन से विकल्प हैं यह देखने के लिए alfa acquire -h टाइप करें

ALFA के साथ उन्नत संग्रहण

आप अपने द्वारा एकत्र किए जा रहे डेटा को सीमित करने के लिए सभी प्रकार की फ़िल्टरिंग कर सकते हैं, नीचे कुछ उदाहरण दिए गए हैं:

  • केवल 'admin' logtype प्राप्त करें alfa acquire --logtype=admin
  • आउटपुट को एक विशिष्ट फ़ोल्डर में सहेजें alfa acquire -d /tmp/project_secret
  • केवल एक विशिष्ट उपयोगकर्ता के लॉग प्राप्त करें alfa acquire --user=insert_username
  • एक निर्धारित समयावधि के भीतर लॉग प्राप्त करें alfa acquire --start-time=2022-07-10T10:00:00Z --end-time=2022-07-11T14:26:01Z समय प्रारूप (RFC3339) है

अब आप जानते हैं कि ALFA की शक्ति को उजागर करने के लिए कुछ शानदार चीज़ों के लिए डेटा समय कैसे प्राप्त करें।

2. ALFA Analyze

विश्लेषण फ़ंक्शन संदिग्ध गतिविधि की पहचान करने के लिए किसी दिए गए Google Workspace के सभी ऑडिट लॉग डेटा का स्वचालित रूप से विश्लेषण करता है।

यह कैसे काम करता है

  1. वर्गीकरण प्रत्येक व्यक्तिगत घटना को alfa/config/event_to_mitre.yml में बनाई गई मैपिंग के आधार पर वर्गीकृत किया जाता है। यदि कोई घटना उस सूची से मेल खाती है, तो इसे MITRE ATT&CK क्लाउड फ्रेमवर्क (https://attack.mitre.org/matrices/enterprise/cloud/) का हिस्सा एक तकनीक पर मैप किया जाता है।

  2. स्कोरिंग इसके बाद ALFA किल चेन या तार्किक हमले के पथों की पहचान करने का प्रयास करने के लिए सभी मैप किए गए घटनाओं का कालानुक्रमिक क्रम में विश्लेषण करेगा। उदाहरण के लिए, एक घटना जो Persistence चरण पर मैप की गई है, उसके बाद एक घटना जो Credential Access चरण पर मैप की गई है, उच्च स्कोर का परिणाम देगी।

  3. परिणाम अंततः ALFA विश्लेषक को पहचानी गई 'उप-श्रृंखलाओं' की एक सूची देगा जिनका आगे विश्लेषण किया जा सकता है।

ALFA विश्लेषण का उपयोग कैसे करें?

  1. पहले alfa analyze चलाएँ जो स्वचालित रूप से पहचान करेगा (या यदि कोई नहीं मिला तो नहीं करेगा)। यह आपको एक शेल में भी डाल देगा जहाँ आप अनुवर्ती गतिविधियाँ कर सकते हैं।
  2. किसी दी गई उप-श्रृंखला के बारे में अधिक जानकारी प्राप्त करने के लिए आप बस A.subchains() चला सकते हैं जो आपको श्रृंखला को निम्नलिखित प्रारूप (number_of_first_event_in_chain,number_of_last_event_in_chain,killchain_score) में दिखाएगा। जहाँ स्कोर 1 का अर्थ है कि एक पूर्ण श्रृंखला की पहचान की गई है और यह जितना 0 के करीब होता है, श्रृंखला उतनी ही कमजोर होती है।
  3. इस श्रृंखला का कारण बनने वाली संदिग्ध घटनाओं तक पहुँचने के लिए A.aoi(export='activities.json') का उपयोग करके सभी पहचानी गई उप-श्रृंखलाओं को एक फ़ाइल में निर्यात करें, जिसका उपयोग आप आगे के विश्लेषण के लिए कर सकते हैं।

3. ALFA Load

स्थानीय भंडारण से डेटा लोड करें

स्थानीय भंडारण से

स्थानीय भंडारण से लॉग लोड और विश्लेषण करने के लिए A = Alfa.load([logname]) का उपयोग करें। सभी लॉग लोड करने के लिए A = Alfa.load('all') का उपयोग करें। Alfa डिफ़ॉल्ट रूप से हानिरहित गतिविधियों को फ़िल्टर करता है। सभी गतिविधियों और घटनाओं को बिना फ़िल्टर किए लोड करने के लिए Alfa.load([logname], filter=False) का उपयोग करें।

परिवर्तन करना

नई घटना मैपिंग जोड़ना।

config/event_to_mitre.yml फ़ाइल को सीधे संपादित करना संभव है, लेकिन अनुशंसित नहीं है। इस फ़ाइल का लेआउट अंतर्ज्ञानी नहीं है। इसके बजाय, utils/mappings.yml में संशोधन करने पर विचार करें। फिर utils/event_mitre_remap.py चलाकर config/event_to_mitre.yml को पुनः आबाद करें।

किल चेन डिस्कवरी विधियों में संशोधन

किल चेन डिस्कवरी फ़ंक्शन हार्ड-कोडेड स्थिरांक का उपयोग करता है। ये config/config.yml में पाए जा सकते हैं। फोरेंसिक विश्लेषकों को सलाह दी जाती है कि वे मानों की समीक्षा करें और आवश्यकतानुसार अपने वर्कस्पेस के लिए संशोधन करें। ये स्थिरांक किल चेन सांख्यिकी (kcs) और किल चेन डिस्कवरी (उप-श्रृंखलाओं) दोनों के लिए जिम्मेदार हैं।

सामान्य प्रश्न

ALFA के लिए उपयोग किए जाने वाले आँकड़ों और एल्गोरिदम के बारे में और अधिक जानना चाहते हैं, हमने इसके बारे में एक ब्लॉग पोस्ट लिखा है यहाँ (https://medium.com/@invictus-ir/automated-forensic-analysis-of-google-workspace-859ed50c5c92)

ज्ञात त्रुटियाँ

ValueError: config/credentials.json गुम है

आपको प्रोजेक्ट फ़ोल्डर में 'config' उपनिर्देशिका में एक credentials.json फ़ाइल जोड़नी होगी। निर्देश 'CREDENTIALS.md' फ़ाइल में हैं।

OSError: [Errno 98] पता पहले से उपयोग में है

इसका मतलब है कि पोर्ट 8089 पहले से ही किसी अन्य एप्लिकेशन द्वारा उपयोग में है, ऐसा हो सकता है यदि आप इस पोर्ट पर एक वेबसर्वर चला रहे हैं और Splunk भी डिफ़ॉल्ट रूप से पोर्ट 8089 का उपयोग करता है। समाधान यह है कि उस पोर्ट का उपयोग (अस्थायी रूप से) बंद कर दिया जाए क्योंकि प्रमाणीकरण प्रवाह के लिए आवश्यक है कि पोर्ट उपलब्ध हो।

ValueError: अधिकृत उपयोगकर्ता जानकारी अपेक्षित प्रारूप में नहीं थी, फ़ील्ड्स refresh_token गायब हैं।

कभी-कभी प्राधिकरण जानकारी को अद्यतन करने की आवश्यकता होती है, ऐसा करने का सबसे आसान तरीका project_name/config फ़ोल्डर से 'token.json' को हटाना है। और फिर कमांड को पुनः चलाना है। यदि यह अभी भी समस्या देता है तो token.json और credentials.json को हटा दें और OAuth एप्लिकेशन को पुनः पंजीकृत करें जैसा कि वर्णित है CREDENTIALS.MD

पहुँच अवरुद्ध है: इस ऐप का अनुरोध अमान्य है // त्रुटि 400: redirect_uri_mismatch

सुनिश्चित करें कि आपके एप्लिकेशन के OAuth 2.0 क्लाइंट आईडी के अधिकृत रीडायरेक्ट URI URI http://localhost:8089 में पिछला स्लैश (/) है। image

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