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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
async-pico-hub — Async PICO Hub is a work-in-progress framework to extend Cobalt Strike with custom event monitoring and in-process Asynchronous BOFs | Kitploit
उपकरण/GitHubGitHub/nccgroup/async-pico-hub
Penetration Testing FrameworksPost-ExploitationCommand and ControlRed TeamingPayload Development
GitHubnccgroup/async-pico-hub

async-pico-hub

Async PICO Hub is a work-in-progress framework to extend Cobalt Strike with custom event monitoring and in-process Asynchronous BOFs

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

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

सभी देखें →

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

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

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

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

Async PICO HUB

Async PICOs एक फ्रेमवर्क है जो Cobalt Strike Beacon प्रक्रिया के अंदर लंबे समय तक चलने वाले, इवेंट-संचालित Beacon Object Files को चलाने के लिए है। यह Crystal Palace PICOs को Beacon-पक्ष निष्पादन मॉडल के साथ जोड़कर asynchronous निष्पादन, कार्य ट्रैकिंग, सुचारू शटडाउन, और सुरक्षित asynchronous आउटपुट प्रदान करता है।

Cobalt Strike के native asynchronous BOFs के विपरीत, Async PICOs Beacon की प्रक्रिया में निष्पादित होते हैं और इवेंट होने पर आउटपुट सतह पर लाने के लिए Beacon को जगा सकते हैं।

Async PICOs क्यों?

Cobalt Strike के native asynchronous BOFs एक अलग समस्या हल करते हैं। Async PICOs लंबे समय तक चलने वाले, इवेंट-संचालित कार्यों के लिए हैं जो Beacon के अंदर निष्पादित होते हैं और परिणामों को तुरंत ऑपरेटर तक सुरक्षित रूप से वापस संचार कर सकते हैं।

कार्यान्वयन विवरण और डिज़ाइन तर्क के लिए, साथ वाली ब्लॉग पोस्ट देखें:

https://www.nccgroup.com/research/async-picos-and-custom-beacon-wakeups-in-cobalt-strike/

बिल्डिंग

आवश्यकताएँ

बिल्डिंग से पहले, निम्नलिखित घटक आवश्यक हैं:

  • इस रिपॉजिटरी की एक स्थानीय चेकआउट

  • Crystal Palace का एक निर्मित (built) संस्करण

  • MSVC और CMake समर्थन के साथ Visual Studio

  • Tradecraft Garden

  • रिपॉजिटरी क्लोन करें

रिपॉजिटरी को स्थानीय रूप से क्लोन या कॉपी करें:

root@kitploit:~
git clone <repo-url>
cd async-pico-hub

Crystal Palace इंस्टॉल करें

Async PICOs PICO निर्माण के लिए Crystal Palace पर निर्भर हैं।

Crystal Palace का नवीनतम संपीड़ित रिलीज़ डाउनलोड करें और उसके निर्देशों के अनुसार इसे बिल्ड करें। बिल्ड होने के बाद, Crystal Palace बाइनरी को इसके अंदर रखें:

root@kitploit:~
pico-tools/crystal-palace/

अपेक्षित लेआउट कुछ इस प्रकार दिखना चाहिए:

root@kitploit:~
pico-tools/
└── crystal-palace/
    ├── src/
    ├── lib/
    └── ...

Tradecraft Garden का नवीनतम रिलीज़ डाउनलोड करें और इसे इसमें रखें:

root@kitploit:~
pico-tools/tradecraftgarden

अपेक्षित लेआउट कुछ इस प्रकार दिखना चाहिए:

root@kitploit:~
pico-tools/
└── tradecraftgarden/
    ├── libtcg/
    ├── simple_pic/
    └── ...

Async PICOs को बिल्ड करने में सक्षम होने के लिए libtcg और simple_pic उदाहरण को बिल्ड करना सुनिश्चित करें।

प्रोजेक्ट को Visual Studio में खोलें

प्रोजेक्ट MSVC के साथ बिल्डिंग को सरल बनाने के लिए CMake का उपयोग करता है।

रिपॉजिटरी रूट से, फ़ोल्डर पर राइट क्लिक करें और चुनें:

root@kitploit:~
Open with Visual Studio

यह CMake प्रोजेक्ट को लोड करता है और उपलब्ध बिल्ड कॉन्फ़िगरेशन को उजागर करता है।

बिल्ड कॉन्फ़िगरेशन

निम्नलिखित बिल्ड कॉन्फ़िगरेशन उपलब्ध हैं:

x64 Debug

डिबगिंग के लिए PICOs और BOFs के स्थानीय निष्पादन योग्य संस्करण बनाता है।

इस कॉन्फ़िगरेशन का उपयोग करें जब व्यवहार को स्थानीय रूप से डिबग कर रहे हों या Visual Studio में कोड के माध्यम से कदम बढ़ा रहे हों।

x64 Release

PICOs और BOFs के अनुकूलित स्थानीय निष्पादन योग्य संस्करण बनाता है।

Beacon के बाहर रिलीज़ व्यवहार का परीक्षण करने के लिए इस कॉन्फ़िगरेशन का उपयोग करें।

x64 Release Objects

डिप्लॉयमेंट आर्टिफैक्ट बनाता है:

  • Crystal Palace का उपयोग करके position-independent PICOs
  • मानक BOFs जैसे AsyncPICOMgr

यह कॉन्फ़िगरेशन Cobalt Strike के लिए ऑब्जेक्ट तैयार करने हेतु उपयोग किया जाता है।

बिल्ड आउटपुट

बिल्ड पूरा होने पर, उत्पन्न आर्टिफैक्ट यहाँ मिल सकते हैं:

build/x64-ReleaseObject/obj/

इस निर्देशिका में उपयोग के लिए तैयार संकलित PICOs और BOFs शामिल हैं।

त्वरित प्रारंभ

कस्टम sleepmask कॉन्फ़िगर करें

Async PICOs के लिए आवश्यक है कि Beacon एक कस्टम sleepmask का उपयोग करे।

Async PICOs का उपयोग करने का प्रयास करने से पहले अपने malleable प्रोफ़ाइल में कस्टम sleepmask के लिए समर्थन सक्षम करें।

picos-cna/sleepmask.cna स्क्रिप्ट async-sleepmask लोड करती है, जो asynchronous आउटपुट और Beacon वेक समन्वय का समर्थन करने के लिए एक न्यूनतम संदर्भ कार्यान्वयन है।

यह sleepmask जानबूझकर सरल है और इसमें सीमाएँ अनुभाग में वर्णित सीमाएँ शामिल हैं। इसे फ्रेमवर्क प्रदर्शित करने और परीक्षण को सरल बनाने के लिए प्रदान किया गया है, न कि एक पूर्ण उत्पादन-तैयार घटक के रूप में।

यदि आपके पास पहले से OPSEC तकनीकों, जैसे स्टैक हेरफेर या अन्य, के साथ एक कस्टम sleepmask है, तो अपने मौजूदा कार्यान्वयन में Async PICO समर्थन को एकीकृत करने के लिए अपने मौजूदा sleepmask को Async sleepmask बनाना देखें।

Aggressor स्क्रिप्ट लोड करें

x64 Release Objects कॉन्फ़िगरेशन के साथ प्रोजेक्ट बिल्ड करने के बाद, picos.cna और sleepmask.cna Aggressor स्क्रिप्ट को Cobalt Strike में लोड करें:

root@kitploit:~
Script Manager → Load → picos-cna/picos.cna
Script Manager → Load → picos-cna/sleepmask.cna

लोड होने के बाद, Async PICOs को picos कमांड के माध्यम से प्रबंधित किया जा सकता है।

एक Async PICO प्रारंभ करें

PICO प्रारंभ करने के लिए:

root@kitploit:~
picos start [path to pico] [arguments]

उदाहरण के लिए:

root@kitploit:~
picos start C:\temp\MonitorTGT.pico

या तर्कों के साथ:

root@kitploit:~
picos start C:\temp\MonitorTGT.pico DOMAIN\serviceaccount

चल रहे PICOs की सूची दिखाएँ

चल रहे Async PICOs देखने के लिए:

root@kitploit:~
picos

यह वर्तमान में चल रहे कार्यों और उनके पहचानकर्ताओं को प्रदर्शित करता है।

चल रहे PICO को रोकें

Async PICO रोकने के लिए:

root@kitploit:~
picos stop [pico id]

उदाहरण के लिए:

root@kitploit:~
picos stop 3

PICO को एक रोकने का संकेत मिलता है और सफाई करने के बाद सुचारू रूप से बाहर निकलता है।

सहायता

अतिरिक्त उपयोग जानकारी Cobalt Strike के अंदर ही picos कमांड के लिए अंतर्निहित सहायता मेनू के माध्यम से उपलब्ध है।

कस्टम Async PICO लिखना

विवरण के लिए docs/writing_custom_async_pico.md देखें।

अपने मौजूदा sleepmask को Async Sleepmask बनाना

विवरण के लिए docs/modifying_existing_sleepmask.md देखें।

शामिल उदाहरण

  • tgt-monitor-pico: async pico जो लॉगिन को सुनता है और kerberos टिकट प्रिंट करता है। https://github.com/jakobfriedl/tgt-monitor-bof पर आधारित
  • example-pico: एक बहुत सरल PICO जो async क्षमताओं को दर्शाता है, जैसे Beacon के मुख्य थ्रेड को बिना रोके एक विंडो खोलना और आउटपुट भेजना।

OPSEC विचार

सार्वजनिक कार्यान्वयन को जानबूझकर सरल रखा गया है, बिना उन्नत evasive तकनीकों के। इसे बिना बदलाव के तैनात करने के बजाय अनुकूलित करने के लिए एक आधार के रूप में अभिप्रेत है।

थ्रेड निर्माण

Async PICOs को CreateThread का उपयोग करके लॉन्च किया जाता है। यह निष्पादन मॉडल को सरल और तर्क करने में आसान रखता है, लेकिन यह एक डिटेक्शन सतह भी पेश करता है। सार्वजनिक कार्यान्वयन में, थ्रेड उस मेमोरी से निष्पादन शुरू करता है जो मॉड्यूल इमेज द्वारा समर्थित नहीं है, जो थ्रेड प्रारंभ पते का निरीक्षण करने वाले उत्पादों या ह्यूरिस्टिक्स द्वारा पता लगाने योग्य हो सकता है।

उपयोगकर्ताओं को मूल्यांकन करना चाहिए कि क्या वैकल्पिक थ्रेड निर्माण या निष्पादन रणनीतियाँ उनके वातावरण के लिए अधिक उपयुक्त हैं।

Sleepmask एकीकरण

फ्रेमवर्क asynchronous आउटपुट को Beacon तक वापस पहुँचाने और वेक इवेंट्स का समन्वय करने के लिए एक संशोधित sleepmask पर निर्भर करता है। यहाँ शामिल कार्यान्वयन जानबूझकर न्यूनतम है और परिचालन उपयोग से पहले इसकी समीक्षा की जानी चाहिए।

Sleepmask निष्पादन मॉडल का हिस्सा है, न कि केवल एक सुविधा परत। आउटपुट को कतारबद्ध, निकालने, या संकेत देने के तरीके में किसी भी बदलाव का सावधानीपूर्वक मूल्यांकन किया जाना चाहिए ताकि concurrency समस्याएँ या Beacon आंतरिक के साथ असमर्थित इंटरैक्शन पेश न हों।

सीमाएँ

सार्वजनिक कार्यान्वयन के साथ कई व्यावहारिक सीमाएँ आती हैं जिन्हें इसके उपयोग से पहले समझा जाना चाहिए।

साझा वैश्विक चर भंडारण

Crystal Palace PICOs के लिए global variables का उपयोग करना संभव बनाता है, लेकिन सार्वजनिक कार्यान्वयन global state संग्रहीत करने के लिए एक सरल साझा भंडारण मॉडल का उपयोग करता है। परिणामस्वरूप, global variables प्रति थ्रेड पृथक नहीं हैं।

व्यवहार में, इसका मतलब है कि कई Async PICOs को एक साथ चलाने पर अतिरिक्त सावधानी की आवश्यकता हो सकती है जब वे globals पर निर्भर हों।

Sleepmask निर्भरता

Async PICOs asynchronous आउटपुट और Beacon वेक समन्वय के लिए एक संशोधित sleepmask पर निर्भर हैं। इसलिए फ्रेमवर्क पूरी तरह से स्व-निहित नहीं है और इसे drop-in BOF के रूप में नहीं माना जा सकता।

पूरी तरह से तैयार डिप्लॉयमेंट आर्टिफैक्ट के रूप में अभिप्रेत नहीं

रिपॉजिटरी एक तैयार उत्पादन-तैयार घटक प्रदान करने के बजाय एक फ्रेमवर्क और कार्यान्वयन दृष्टिकोण प्रदर्शित करने के लिए डिज़ाइन की गई है। शामिल उदाहरणों को विस्तारित, संशोधित और व्यक्तिगत उपयोग मामलों के अनुसार अनुकूलित करने का अभिप्रेत है।

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