Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
batea — AI-आधारित, संदर्भ-संचालित नेटवर्क डिवाइस रैंकिंग | Kitploit
उपकरण/GitHubGitHub/delvelabs/batea
भेद्यता विश्लेषणजानकारी एकत्र करनानेटवर्क सुरक्षामशीन लर्निंगविसंगति का पता लगाना
GitHubdelvelabs/batea

batea

AI-आधारित, संदर्भ-संचालित नेटवर्क डिवाइस रैंकिंग

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

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

सभी देखें →

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

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

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

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

Python package

logo

Batea

बाटिया एक बड़ा उथला बर्तन होता है, जो लकड़ी या लोहे का बना होता है और पारंपरिक रूप से सोने की खोज करने वालों द्वारा रेत और बजरी धोने के लिए उपयोग किया जाता है ताकि सोने के डले निकाले जा सकें।

Batea एक संदर्भ-चालित नेटवर्क उपकरण रैंकिंग ढाँचा है जो मशीन लर्निंग एल्गोरिदम के असामान्यता पहचान (anomaly detection) परिवार पर आधारित है। Batea का उद्देश्य सुरक्षा टीमों को nmap स्कैन रिपोर्ट का उपयोग करके बड़े नेटवर्क में स्वचालित रूप से दिलचस्प नेटवर्क संपत्तियों को फ़िल्टर करने की अनुमति देना है। हम इन्हें Gold Nuggets कहते हैं।

गोल्ड नगेटिंग और Batea के पीछे के विज्ञान के बारे में अधिक जानकारी के लिए, हमारी श्वेतपत्रिका यहाँ देखें।

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

Batea आपके nmap रिपोर्ट (XML) से सभी उपकरणों का एक संख्यात्मक निरूपण (numpy) बनाकर और फिर गोल्ड नगेट्स को उजागर करने के लिए असामान्यता पहचान विधियों को लागू करके काम करता है। यह नेटवर्क तत्वों के संख्यात्मक निरूपण में विशिष्ट सुविधाओं या दिलचस्प विशेषताओं को जोड़कर आसानी से विस्तार योग्य है।

नेटवर्क का संख्यात्मक निरूपण सुविधाओं का उपयोग करके बनाया गया है, जो सुरक्षा समुदाय की विशेषज्ञता से प्रेरित हैं। ये सुविधाएँ अंतर्ज्ञान के तत्वों के रूप में कार्य करती हैं, और अप्रशिक्षित असामान्यता पहचान विधियाँ नेटवर्क संपत्ति के संदर्भ, या नेटवर्क के पूर्ण विवरण को रैंकिंग एल्गोरिदम के केंद्रीय निर्माण खंड के रूप में उपयोग करने की अनुमति देती हैं। उपयोग किया गया सटीक एल्गोरिदम Isolation Forest (https://en.wikipedia.org/wiki/Isolation_forest) है।

मशीन लर्निंग मॉडल Batea का हृदय हैं। मॉडल ऐसे एल्गोरिदम हैं जो पूरे डेटासेट पर प्रशिक्षित होते हैं और उसी (और अन्य) डेटा बिंदुओं (नेटवर्क उपकरणों) पर स्कोर की भविष्यवाणी करने के लिए उपयोग किए जाते हैं। Batea मॉडल की स्थायित्व (persistence) की भी अनुमति देता है। अर्थात, आप पूर्व-प्रशिक्षित मॉडल का पुन: उपयोग कर सकते हैं और बड़े डेटासेट पर प्रशिक्षित मॉडल को आगे के उपयोग के लिए निर्यात कर सकते हैं।

उपयोग

# Complete info
$ sudo nmap -A 192.168.0.0/16 -oX output.xml

# Partial info
$ sudo nmap -O -sV 192.168.0.0/16 -oX output.xml


$ batea -v output.xml

स्थापना

$ git clone [email protected]:delvelabs/batea.git
$ cd batea
$ python3 setup.py sdist
$ pip3 install -r requirements.txt
$ pip3 install -e .

डेवलपर्स के लिए स्थापना

$ git clone [email protected]:delvelabs/batea.git
$ cd batea
$ python3 -m venv batea/
$ source batea/bin/activate
$ python3 setup.py sdist
$ pip3 install -r requirements-dev.txt
$ pip3 install -e .
$ pytest

उदाहरण उपयोग

# simple use (output top 5 gold nuggets with default format)
$ batea nmap_report.xml

# Output top 3
$ batea -n 3 nmap_report.xml

# Output all assets
$ batea -A nmap_report.xml

# Using multiple input files
$ batea -A nmap_report1.xml nmap_report2.xml

# Using wildcards (default xsl)
$ batea ./nmap*.xml
$ batea -f csv ./assets*.csv

# You can use batea on pretrained models and export trained models.

# Training, output and dumping model for persistence
$ batea -D mymodel.batea nmap_report.xml

# Using pretrained model
$ batea -L mymodel.batea nmap_report.xml

# Using preformatted csv along with xml files
$ batea -x nmap_report.xml -c portscan_data.csv

# Adjust verbosity
$ batea -vv nmap_report.xml

फ़ीचर कैसे जोड़ें

Batea रिपोर्ट (या रिपोर्टों की श्रृंखला) में प्रत्येक होस्ट को संख्यात्मक सुविधाएँ निर्दिष्ट करके काम करता है। होस्ट nmap रिपोर्ट से प्राप्त पायथन ऑब्जेक्ट हैं। इनमें निम्नलिखित विशेषताओं की सूची होती है: [ipv4, hostname, os_info, ports] जहाँ ports पोर्ट ऑब्जेक्ट्स की सूची है। प्रत्येक पोर्ट में निम्नलिखित विशेषताएँ होती हैं: [port, protocol, state, service, software, version, cpe, scripts], सभी डिफ़ॉल्ट None पर सेट होते हैं।

सुविधाएँ FeatureBase वर्ग से विरासत में प्राप्त ऑब्जेक्ट हैं जो एक विशिष्ट _transform विधि को तुरंत लागू करते हैं। यह विधि हमेशा सभी होस्टों की सूची को इनपुट के रूप में लेती है और एक लैम्ब्डा फ़ंक्शन लौटाती है जो प्रत्येक होस्ट को संख्यात्मक मानों के numpy कॉलम में मैप करता है (होस्ट क्रम संरक्षित है)। कॉलम को फिर रिपोर्ट के मैट्रिक्स प्रतिनिधित्व में जोड़ा जाता है। सुविधाओं को सही संख्यात्मक मान (फ़्लोट या पूर्णांक) और कुछ और नहीं आउटपुट करना चाहिए।

अधिकांश सुविधा परिवर्तन एक सरल लैम्ब्डा फ़ंक्शन का उपयोग करके कार्यान्वित किए जाते हैं। बस यह सुनिश्चित करें कि मॉडल संगतता के लिए प्रत्येक होस्ट में एक संख्यात्मक मान डिफ़ॉल्ट हो।

उदा:


class CustomInterestingPorts(FeatureBase):
    def __init__(self):
        super().__init__(name="some_custom_interesting_ports")

    def _transform(self, hosts):
      """This method takes a list of hosts and returns a function that counts the number
      of host ports member from a predefined list of "interesting" ports, defaulting to 0.

      Parameters
      ----------
      hosts : list
          The list of all hosts

      Returns
      -------
      f : lambda function
          Counts the number of ports in the defined list.
      """
        member_ports = [21, 22, 25, 8080, 8081, 1234]
        f = lambda host: len([port for port in host.ports if port.port in member_ports])
        return f

फिर आप batea/__init__.py में NmapReport.add_feature विधि का उपयोग करके सुविधा को रिपोर्ट में जोड़ सकते हैं।

from .features.basic_features import CustomInterestingPorts

def build_report():
    report = NmapReport()
    #[...]
    report.add_feature(CustomInterestingPorts())

    return report

पूर्व-गणना सारणीबद्ध डेटा (CSV) का उपयोग करना

मॉडल को प्रशिक्षित करने या भविष्यवाणी के लिए पूर्व-संसाधित डेटा का उपयोग करना संभव है। डेटा को (ipv4, port) द्वारा अनुक्रमित किया जाना चाहिए, जिसमें प्रति पंक्ति एक अद्वितीय संयोजन हो। डेटा का प्रकार nmap रिपोर्ट के XML संस्करण से अपेक्षा के करीब होना चाहिए। एक कॉलम को निम्नलिखित नामों में से एक का उपयोग करना होगा, लेकिन आपको उन सभी का उपयोग करने की आवश्यकता नहीं है। यदि कोई कॉलम अनुपस्थित है तो पार्सर डिफ़ॉल्ट रूप से शून्य मान सेट करता है।

  'ipv4',
  'hostname',
  'os_name',
  'port',
  'state',
  'protocol',
  'service',
  'software_banner',
  'version',
  'cpe',
  'other_info'

उदाहरण:

ipv4,hostname,os_name,port,state,protocol,service,software_banner
10.251.53.100,internal.delvesecurity.com,Linux,110,open,tcp,rpcbind,"program version   port/proto  service100000  2,3,4        111/tcp  rpcbind100000  2,3,4    "
10.251.53.100,internal.delvesecurity.com,Linux,111,open,tcp,rpcbind,
10.251.53.188,serious.delvesecurity.com,Linux,6000,open,tcp,X11,"X11Probe: CentOS"

संख्यात्मक निरूपण आउटपुट करना

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

$ batea -oM network_matrix nmap_report.xml
टूल डाउनलोड करें