
एक Cobalt Strike Scanner जो पहचाने गए Team Server beacons को JSON ऑब्जेक्ट में पुनर्प्राप्त करता है
Cobalt Strike बीकन्स की खोज/खनन करने और बाद में अनुक्रमण के लिए उनके बीकन कॉन्फ़िगरेशन को "कम" करने का एक उपकरण। खोज या तो विस्तृत और इंटरनेट-व्यापी हो सकती है, जिसमें SecurityTrails, Shodan, या ZoomEye जैसी सेवाओं का उपयोग किया जाता है, या IP की सूची का उपयोग किया जाता है।
cat results.json | jq📺 डेमो
आवश्यकताएँ: virtualenv, और python3.8+
git clone https://github.com/splunk/melting-cobalt && cd melting-cobalt प्रोजेक्ट क्लोन करें और प्रोजेक्ट डायरेक्टरी में जाएँ।pip install virtualenv && virtualenv -p python3 venv && source venv/bin/activate && pip install -r requirements.txt Virtualenv बनाएँ और आवश्यकताएँ इंस्टॉल करें।SecurityTrails, Shodan, या ZoomEye API कुंजी के लिए कॉन्फ़िगरेशन पर जारी रखें।
melting-cobalt.confmelting-cobalt.conf.example को melting-cobalt.conf पर कॉपी करें!
सुनिश्चित करें कि आप उपलब्ध प्रदाताओं में से किसी एक के लिए एक टोकन सेट करें। यदि आपको अपने खाते के लिए एक बनाने की आवश्यकता है, तो [इन](htt://need wiki page) निर्देशों का पालन करें।
कॉन्फ़िगरेशन उदाहरण:
[global]
output = results.json
# stores matches in JSON here
log_path = melting-cobalt.log
# Sets the log_path for the logging file
log_level = INFO
# Sets the log level for the logging
# Possible values: INFO, ERROR, VERBOSE
nse_script = grab_beacon_config.nse
# path to the nse script that rips down cobalt configs. This is specifically using https://github.com/whickey-r7/grab_beacon_config
searches = search.yml
# contains the different searches to run on each internet scanning service provider (eg shodan, zoomeye, security trails) when hunting for team servers.
shodan_token = TOKENHERE
# shodan token for searching
zoomeye_token = TOKENHERE
# zoomeye token for searching
securitytrails_token = TOKENHERE
# security trails token for searching
विभिन्न प्रदाताओं पर किए जाने वाले डिफ़ॉल्ट खनन को संशोधित करने के लिए, search.yml को अनुकूलित करें। डिफ़ॉल्ट melting-cobalt खोज उदाहरण नीचे दिए गए हैं।
चलाएँ:
python melting-cobalt.py
ips.txt को संभावित Cobalt Strike C2 IPs से भरें, प्रत्येक नई पंक्ति में एक IP, उदाहरण:
1.1.1.1
2.2.2.2
3.3.3.3
चलाएँ:
python melting-cobalt.py -i ips.txt
यदि आपको शिकारियों से प्रेरणा चाहिए, तो हम दृढ़ता से अनुशंसा करते हैं:
usage: melting-cobalt.py [-h] [-c CONFIG] [-o OUTPUT] [-v] [-i INPUT]
scans for open cobalt strike team servers and grabs their beacon configs and write this as a json log to be analyzed by any analytic tools
like splunk, elastic, etc..
optional arguments:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
config file path
-o OUTPUT, --output OUTPUT
file to write to the results, defaults to results.json.log
-v, --version shows current melting-cobalt version
-i INPUT, --input INPUT
newline delimeted file of cobalt strike server ips to grab beacon configs from. example ips.txt
निम्नलिखित खोजें तुरंत उपलब्ध हैं और अधिक डेटा के लिए search.yml में और जोड़ी जा सकती हैं।
'ssl.jarm:07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1'
'ssl.jarm:07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1 port:"22, 80, 443, 444, 1234, 2000, 2222, 3000, 3780, 4000, 4443, 6379, 7443, 8443, 8080, 8081, 8082, 8087, 8088, 8099, 8089, 8090, 8181, 8888, 8889, 9443, 50050" HTTP/1.1 404 Not Found Content-Length: 0'
'product:"cobalt strike team server"'
नोट: बहुत सारे शोरगुल वाले परिणाम उत्पन्न होंगे, वास्तव में इसे शेड्यूल न करें जब तक कि आप अपने लाइसेंस क्रेडिट को बर्बाद नहीं करना चाहते।
'ssl.cert.serial:146473198'
'SELECT address, ports.port FROM ips WHERE jarm = "07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1"'
'SELECT address, ports.port, isp.name_normalized, ports.port, address, asn.number, jarm, http.headers.raw FROM ips WHERE jarm = "07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1" OR jarm = "07d14d16d21d21d07c07d14d07d21d9b2f5869a6985368a9dec764186a9175" OR jarm = "2ad2ad16d2ad2ad22c42d42d00042d58c7162162b6a603d3d90a2b76865b53" AND http.headers.content_type = "text/plain" AND http.headers.raw = "content-length:0" AND ports.port IN (22, 80, 443, 444, 1234, 2000, 2222, 3000, 3780, 4000, 4443, 6379, 7443, 8443, 8080, 8081, 8082, 8087, 8088, 8099, 8089, 8090, 8181, 8888, 8889, 9443, 50050)'
कृपया बग सबमिट करने या सुविधाओं का अनुरोध करने के लिए GitHub issue tracker का उपयोग करें।
यदि आपके प्रश्न हैं या सहायता की आवश्यकता है, तो आप यह कर सकते हैं:
Copyright 2020 Splunk 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.