Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Nagios XI mixin and auxiliary scanner module and docs #14697

Merged
merged 18 commits into from
Mar 26, 2021
Merged

Add Nagios XI mixin and auxiliary scanner module and docs #14697

merged 18 commits into from
Mar 26, 2021

Conversation

ErikWynter
Copy link
Contributor

@ErikWynter ErikWynter commented Feb 1, 2021

About

This change adds a new mixin for Nagios XI web applications to lib/msf/core/exploit/remote/http/nagios_xi. It also adds an auxiliary/scanner/http module (and docs) that takes advantage of this mixin. The module detects the version of Nagios XI applications and suggests matching exploit modules based on the version number. It supports the following exploit modules.

Vulnerable system

This depends on the specific exploit module, but probably most if not all Nagios XI versions between 5.4.0 and 5.8.0 are vulnerable to at least one exploit, and perhaps this goes for older versions as well.

Verification Steps

  • Start msfconsole
  • Do: use auxiliary/scanner/http/nagios_xi_scanner
  • Do: set RHOSTS [IP]
  • Do: set USERNAME [username for a valid Nagios XI account]
  • Do: set PASSWORD [password for a valid Nagios XI account]
  • Do: run

Options

PASSWORD

The password for the Nagios XI account to authenticate with.

TARGETURI

The base path to Nagios XI. The default value is /nagiosxi/.

USERNAME

The username for the Nagios XI account to authenticate with. The default value is nagiosadmin.

VERSION

The Nagios XI version to check against existing exploit modules. If this option is selected, the module will not probe the target, so it is not necessary to provide credentials.

Scenarios

Nagios XI 5.7.3 running on CentOS 7

msf6 auxiliary(scanner/http/nagios_xi_scanner) > show options 

Module options (auxiliary/scanner/http/nagios_xi_scanner):

   Name       Current Setting  Required  Description
   ----       ---------------  --------  -----------
   PASSWORD   nagiosadmin      no        Password to authenticate with
   Proxies                     no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS     192.168.1.14     yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   RPORT      80               yes       The target port (TCP)
   SSL        false            no        Negotiate SSL/TLS for outgoing connections
   TARGETURI  /nagiosxi/       yes       The base path to the NagiosXi application
   THREADS    1                yes       The number of concurrent threads (max one per host)
   USERNAME   nagiosadmin      no        Username to authenticate with
   VERSION                     no        Nagios XI version to check against existing exploit modules
   VHOST                       no        HTTP server virtual host

msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 5.7.3
[+] The target appears to be vulnerable to the following 3 exploit(s):
[*] 
[*]     CVE-2020-35578  exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*]     CVE-2020-5791   exploit/linux/http/nagios_xi_mibs_authenticated_rce
[*]     CVE-2020-5792   exploit/linux/http/nagios_xi_snmptrap_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

Nagios XI 5.7.9 version provided via VERSION

msf6 auxiliary(scanner/http/nagios_xi_scanner) > show options 

Module options (auxiliary/scanner/http/nagios_xi_scanner):

   Name       Current Setting  Required  Description
   ----       ---------------  --------  -----------
   PASSWORD                    no        Password to authenticate with
   Proxies                     no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS     192.168.91.140   yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   RPORT      80               yes       The target port (TCP)
   SSL        false            no        Negotiate SSL/TLS for outgoing connections
   TARGETURI  /nagiosxi/       yes       The base path to the NagiosXi application
   THREADS    1                yes       The number of concurrent threads (max one per host)
   USERNAME   nagiosadmin      no        Username to authenticate with
   VERSION    5.7.9            no        Nagios XI version to check against existing exploit modules
   VHOST                       no        HTTP server virtual host

msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[+] Version 5.7.9 matches the following 1 exploit(s):
[*] 
[*]     CVE-2020-35578  exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

@ErikWynter
Copy link
Contributor Author

Notes:

  • I just saw the sanity test execution failed, not sure why. I tested this on the latest Metasploit version and it should work fine if all files are in their proper location.
  • At the suggestion of @gwillcox-r7 , I put the mixin and auxiliary module together in this PR, and opened separate PRs for the exploit modules that take advantage of the mixin. Obviously it makes sense that all these PRs would be handled by the same dev.
  • If the VERSION option is used with the scanner, it just compares that version to a hash of versions stored in lib/msf/core/exploit/remote/http/nagios_xi/rce_check.rb, and so it wouldn't actually be necessary to provide RHOSTS. However, I didn't want to try overwriting the default requirement of RHOSTS without some feedback from the good folks here about the best approach to take, so please let me know.
  • The scanner currently assumes that nagios_xi_mibs_authenticated_rce and nagios_xi_snmptrap_authenticated_rce only work against Nagios XI 5.7.3 because the disclosure didn't mention any other versions. However, these should still be tested against older versions to make sure.
  • This is my first mixin, so I can't rule out that I made some odd choices. I look forward to your feedback and will be happy to make changes where necessary.
  • I am tired. I am going to sleep now. 5 PRs is enough for one day.

@jmartin-tech
Copy link
Contributor

Sanity test failures usually indicate that payloads are not generating in msfvenom. I will do some investigation of the errors on this branch to expose the error messages.

@jmartin-tech
Copy link
Contributor

This looks to be related to the msgpack gems that were yanked today. Rebasing the branch on the latest upstream or updating Gemfile.lock in the branch should address the test failure.

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Feb 2, 2021

Thanks for looking into this @jmartin-r7! I guess I can leave this for now since it shouldn't affect manual testing? Then I or the dev who'll take this on can fix this before landing.

@bcoles
Copy link
Contributor

bcoles commented Feb 6, 2021

There's an edge case when scanning a remote host (with username and password set, not version), but Nagios is not installed.

I'm not sure if this is something you want to deal with. There may be value if:

  • a yet-to-be-installed Nagios install can still be exploited using the existing modules
  • a yet-to-be-installed Nagios install can be used to install Nagios and gain code execution.

In the case of the latter, there may be value (maybe?) in writing a module which can do this.

Example (Nagios XI 5.4.4) :

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set username admin
username => admin
msf6 auxiliary(scanner/http/nagios_xi_scanner) > set password admin
password => admin
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[-] The target is not exploitable. Target is not a Nagios XI application
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > set httptrace true
httptrace => true
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

####################
# Request:
####################
GET /nagiosxi/login.php HTTP/1.1
Host: 10.1.1.153
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)


####################
# Response:
####################
HTTP/1.1 302 Found
Date: Thu, 26 Apr 2018 23:09:52 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Set-Cookie: nagiosxi=rc9kh4fjbd55255ussro8joda4; expires=Thu, 26-Apr-2018 23:39:52 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Location: http://10.1.1.153/nagiosxi/install.php
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8

        <!DOCTYPE html>
        <!-- <!DOCTYPE html> -->
        <html>
[...removed...]
                        <input type="hidden" name="product" value="nagiosxi">
                        <input type="hidden" name="version" value="5.4.4">
                        <input type="hidden" name="build" value="1493129822">
[...removed...]

@bcoles
Copy link
Contributor

bcoles commented Feb 6, 2021

There might be another edge case here where Nagios XI is installed, but the license agreement has not been accepted.

Here's the output. I messed up the cookie parsing (which didn't help) before accepting the license. So I'm not sure if this poses a problem, and I can't be bothered to rebuild this test system at the moment.

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set rhosts 10.1.1.110
rhosts => 10.1.1.110
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

####################
# Request:
####################
GET /nagiosxi/login.php HTTP/1.1
Host: 10.1.1.110
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)


####################
# Response:
####################
HTTP/1.0 200 OK
Date: Sat, 06 Feb 2021 03:06:53 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Set-Cookie: nagiosxi=rp3adncb5rr28k1b7t345fsq77; expires=Sat, 06-Feb-2021 03:36:53 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Connection: close
Content-Type: text/html; charset=UTF-8

        <!DOCTYPE html>
        <!-- <!DOCTYPE html> -->
        <html>

    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                <!-- Produced by Nagios XI. Copyright (c) 2008-2021 Nagios Enterprises, LLC (www.nagios.com). All Rights Reserved. -->
        <!-- Powered by the Nagios Synthesis Framework -->
                <title>Login &middot; Nagios XI</title>
        <meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

        
    <link rel="icon" type="image/png" href="https://10.1.1.110/nagiosxi/images/favicon-32x32.png" sizes="32x32">
    <link rel="shortcut icon" href="https://10.1.1.110/nagiosxi/images/favicon.ico" type="image/ico">

    <!-- Adding Font-Awesome for all themes -->
    <link rel="stylesheet" type="text/css" href="https://10.1.1.110/nagiosxi/includes/css/font-awesome.min.css?1493129822" />

    <!-- Global variables & Javascript translation text -->
    <script type="text/javascript">
    var base_url = "https://10.1.1.110/nagiosxi/";
    var backend_url = "https%3A%2F%2F10.1.1.110%2Fnagiosxi%2Flogin.php";
    var ajax_helper_url = "https://10.1.1.110/nagiosxi/ajaxhelper.php";
    var ajax_proxy_url = "https://10.1.1.110/nagiosxi/ajaxproxy.php";
    var suggest_url = "https://10.1.1.110/nagiosxi/suggest.php";
    var request_uri = "%2Fnagiosxi%2Flogin.php";
    var demo_mode = 0;
    var nsp_str = "83d201718cded8461877f5b65a795efea6c87688e647d3e95119d2693dcf1a65";

    // Language string for translations
    var lang = {
        'Add to Dashboard': "Add to Dashboard",
        'Add Dashboard': "Add Dashboard",
        'Edit Dashboard': "Edit Dashboard",
        'Dashlet Title': "Dashlet Title",
        'Dashboard Added': "Dashboard Added",
        'Add It': "Add It",
        'Add this powerful little dashlet to one of your dashboards for visual goodness.': "Add this powerful little dashlet to one of your dashboards for visual goodness.",
        'Select a Dashboard to Add To': "Select a Dashboard to Add To",
        'Add this graph to a dashboard.': "Add this graph to a dashboard.",
        'Dashlet is now loaded on your dashboard.': "Dashlet is now loaded on your dashboard.",
        'Dashlet Added': "Dashlet Added",
        'Please Wait': "Please Wait",
        'Submitting command': "Submitting command",
        'Show Details': "Show Details",
        'Hide Details': "Hide Details",
        'Permalink': "Permalink",
        'Copy the URL below to retain a direct link to your current view.': "Copy the URL below to retain a direct link to your current view.",
        'URL': "URL",
        'Thank You!': "Thank You!",
        'Thanks for helping to make this product better! We will review your comments as soon as we get a chance. Until then, kudos to you for being awesome and helping drive innovation!<br><br> - The Dedicated Team @ Nagios Enterprises': "Thanks for helping to make this product better! We will review your comments as soon as we get a chance. Until then, kudos to you for being awesome and helping drive innovation!&lt;br&gt;&lt;br&gt; - The Dedicated Team @ Nagios Enterprises",
        'Error': "Error",
        'An error occurred. Please try again later.': "An error occurred. Please try again later.",
        'Sending Feedback': "Sending Feedback",
        'Use this to add a new dashboard to your Dashboards page.': "Use this to add a new dashboard to your Dashboards page.",
        'Dashboard Title': "Dashboard Title",
        'Background Color': "Background Color",
        'Submit': "Submit",
        'Processing': "Processing",
        'Success! Your new dashboard has been added.': "Success! Your new dashboard has been added.",
        'An error occurred processing your request.': "An error occurred processing your request.",
        'Dashboard Changes Saved': "Dashboard Changes Saved",
        'Success! Your dashboard was updated successfully.': "Success! Your dashboard was updated successfully.",
        'You cannot delete your home page dashboard.': "You cannot delete your home page dashboard.",
        'Confirm Dashboard Deletion': "Confirm Dashboard Deletion",
        'Are you sure you want to delete this dashboard and all dashlets it contains?': "Are you sure you want to delete this dashboard and all dashlets it contains?",
        'Delete': "Delete",
        'Cancel': "Cancel",
        'The requested dashboard has been deleted.': "The requested dashboard has been deleted.",
        'Dashboard Deleted': "Dashboard Deleted",
        'Clone Dashboard': "Clone Dashboard",
        'Use this to make an exact clone of the current dashboard and all its wonderful dashlets.': "Use this to make an exact clone of the current dashboard and all its wonderful dashlets.",
        'Clone': "Clone",
        'New Title': "New Title",
        'Dashboard Cloned': "Dashboard Cloned",
        'Dashboard successfully cloned.': "Dashboard successfully cloned.",
        'Deleting dashlets from the home page dashboard is disabled while in demo mode.': "Deleting dashlets from the home page dashboard is disabled while in demo mode.",
        'Dashlet Deleted': "Dashlet Deleted",
        'Dashlet removed from dashboard.': "Dashlet removed from dashboard.",
        'The dashlet has been added and will now show up on your dashboard.': "The dashlet has been added and will now show up on your dashboard.",
        'Masquerade Notice': "Masquerade Notice",
        'You are about to masquerade as another user. If you choose to continue you will be logged out of your current account and logged in as the selected user. In the process of doing so, you may lose your admin privileges.': "You are about to masquerade as another user. If you choose to continue you will be logged out of your current account and logged in as the selected user. In the process of doing so, you may lose your admin privileges.",
        'Continue': "Continue",
        'Add View': "Add View",
        'Use this to add what you see on the screen to your views page.': "Use this to add what you see on the screen to your views page.",
        'View Title': "View Title",
        'View Added': "View Added",
        'Success! Your view was added to your views page.': "Success! Your view was added to your views page.",
        'View Deleted': "View Deleted",
        'View has been removed.': "View has been removed.",
        'Edit View': "Edit View",
        'View Changes Saved': "View Changes Saved",
        'Success! Your view was updated successfully.': "Success! Your view was updated successfully.",
        'Start Rotation': "Start Rotation",
        'Stop Rotation': "Stop Rotation",
        'Pause rotation': "Pause rotation",
        'Resume rotation': "Resume rotation",
        'You are about to delete the view': "You are about to delete the view",
        'Cannot schedule outside pages.': "Cannot schedule outside pages.",
        'Any page not under nagiosxi cannot be scheduled.': "Any page not under nagiosxi cannot be scheduled.",
        'Loading': "Loading",
        'Update': "Update",
        'Close': "Close",
        'Time Range': "Time Range",
        'Last 4 Hours': "Last 4 Hours",
        'Last 24 Hours': "Last 24 Hours",
        'Last Week': "Last Week",
        'Last Month': "Last Month",
        'Last Year': "Last Year",
        'Last 7 Days': "Last 7 Days",
        'Last 30 Days': "Last 30 Days",
        'Last 365 Days': "Last 365 Days",
        'My Graph': "My Graph",
        'You must fill out the entire form.': "You must fill out the entire form.",
        'Copy to Clipboard': "Copy to Clipboard",
        'Copied': "Copied",
        'Press Ctrl+C to copy': "Press Ctrl+C to copy"
    };

    // Translation helper function
    function _(str) {
        var trans = lang[str];
        if (trans) { return trans; }
        return str;
    }
    </script>

    <!-- main jquery libraries -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-1.12.4.min.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-migrate-1.4.1.min.js?1493129822'></script>
    <link type="text/css" href="https://10.1.1.110/nagiosxi/includes/js/jquery/css/smoothness/jquery-ui.custom.min.css?1493129822" rel="stylesheet"/>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.colorBlend.js'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.timers-1.1.3.js'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-ui-1.12.1.custom.min.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-ui-timepicker-addon.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.searchabledropdown.custom.js?1493129822'></script>

    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/css/bootstrap.3.min.css?1493129822" type="text/css" />
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/bootstrap.3.min.js?1493129822'></script>

    <!-- spin kit -->
    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/css/spinkit.css?1493129822" type="text/css" />

    <!-- jquery autocomplete -->
    <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/jquery.autocomplete.css'/>

    <!-- colorpicker -->
    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/js/jquery/colorpicker/css/colorpicker.css" type="text/css" />
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/jquery/colorpicker/js/colorpicker.js"></script>

    <!-- clipboard plugin -->
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/clipboard.min.js"></script>

    
    <!-- XI JS Scripts -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/core.js?1493129822'></script>
        <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/themes/modern.js?1493129822'></script>
        
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/commands.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/views.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/dashboards.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/dashlets.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/tables.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/users.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/perfdata.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/wizards.js?1493129822'></script>

    <!-- XI CSS -->
    <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/base.css?1493129822' />
        <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/themes/modern.css?1493129822' />
    
    <!-- Highcharts Graphing Library -->
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/highcharts.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/highcharts-more.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/modules/exporting.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/modules/no-data-to-display.js?1493129822"></script>
    <!-- D3 Graphing Library -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/d3/d3.v3.min.js?1493129822'></script>

    
        <!-- jScrollPane -->
        <link type="text/css" href="https://10.1.1.110/nagiosxi/includes/js/jquery/css/jquery.jscrollpane.css" rel="stylesheet" media="all" />
        <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.jscrollpane.min.js"></script>

    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/dashlets/gauges/js/gauge.js'></script>
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/internettrafficreport/internettrafficreport.css' />
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/rss_dashlet/rss_dashlet.css' />
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/worldtimeserver/worldtimeserver.css' />
<script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/components/graphexplorer/includes/graphexplorerinclude.js"></script><link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/components/helpsystem/css/helpsystem.css?1.1.1' /><link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/components/helpsystem/css/bootstrap-tour.min.css?1.1.1' /><script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/components/helpsystem/js/helpsysteminclude.js?1.1.1'></script><script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/components/helpsystem/js/bootstrap-tour.min.js?1.1.1'></script>    </head>

    <body  class=' parent scroll' >

    
    
    <div  class="parentpage">

    <div id="whiteout"></div>
    <div id="blackout"></div>

    <div id="header" class="parenthead" >
        
<!--- HEADER START -->


    <div id="toplogo">
        <a href="https://10.1.1.110/nagiosxi/" target="_top">
            <img src="https://10.1.1.110/nagiosxi/images/nagios_logo_white_transbg.png" border="0" class="xi-logo" alt="Nagios XI" title="Nagios XI">
            XI
        </a>
    </div>
    
    
    <div id="topmenu">
                <div class="mainmenu">
            <div><a href="https://10.1.1.110/nagiosxi/login.php">Login</a></div>
        </div>
            </div>

    

    <div id="feedback_layer">
        <div id="feedback_content">

            <div id="feedback_close">
                <a id="close_feedback_link" style="display: inline-block;" title="Close"><i class="fa fa-times" style="font-size: 16px;"></i></a>
            </div>

            <div id="feedback_container">

                <div id="feedback_header">
                    <b>Send Us Feedback</b>
                    <p>We love input!  Tell us what you think about this product and you'll directly drive future innovation!</p>
                </div>
                <!-- feedback_header -->

                <div id="feedback_data">

                    <form id="feedback_form" method="get" action="https://10.1.1.110/nagiosxi/ajaxproxy.php">

                        <input type="hidden" name="proxyurl" value="https://api.nagios.com/feedback/">
                        <input type="hidden" name="proxymethod" value="post">

                        <input type="hidden" name="product" value="nagiosxi">
                        <input type="hidden" name="version" value="5.4.4">
                        <input type="hidden" name="build" value="1493129822">

                        <label for="feedbackCommentBox">Comments:</label>
                        <textarea class="textarea form-control" name="comment" style="width: 100%; height: 100px;"></textarea>

                        <label for="feedbackNameBox">Your Name (Optional):</label>
                        <input type="text" size="30" name="name" id="feedbackNameBox" value="" class="textfield form-control">

                        <label for="feedbackEmailAddressBox">Your Email Address (Optional):</label>
                        <input type="text" size="30" name="email" id="feedbackEmailAddressBox" value="" class="textfield form-control">

                        <div>
                            <div class="fl" id="feedbackFormButtons">
                                <input type="submit" class="submitbutton btn btn-sm btn-primary" name="submitButton" value="Submit" id="submitFeedbackButton">
                            </div>
                            <div class="fr feedback-pp">
                                <a href="https://www.nagios.com/legal/privacypolicy/" target="_blank" rel="noreferrer">Privacy Policy</a>
                            </div>
                            <div class="clear"></div>
                        </div>

                    </form>
                </div>
            </div>
        </div>
    </div>
<div id="popup_layer">
    <div id="popup_content">
        <div id="popup_close">
            <a id="close_popup_link" style="display: inline-block;" title="Close"><i class="fa fa-times" style="font-size: 16px;"></i></a>
        </div>
        <div id="popup_container">
        </div>
    </div>
</div>

        <div id="throbber" class="sk-spinner sk-spinner-center sk-spinner-three-bounce">
            <div class="sk-bounce1"></div>
            <div class="sk-bounce2"></div>
            <div class="sk-bounce3"></div>
        </div>
    </div>

            <div id="mainframe">

        
        <script>
// frame buster
if (top.location != self.location) {
    top.location = self.location.href;
}
</script>
<div class="login-table">
    <div class="login-cell left">

        <script>
        $(document).ready(function() {
            if ("" == '') {
                $('input[name="username"]').focus();
            } else {
                $('input[name="password"]').focus();
            }
        });
        </script>

        
        <div class="login-box">
            <div class="well">

                <form id="loginForm" method="post" action="/nagiosxi/login.php"  autocomplete='off'>
                    <input type='hidden' name='nsp' value='83d201718cded8461877f5b65a795efea6c87688e647d3e95119d2693dcf1a65'>
                    <input type="hidden" name="page" value="auth">
                    <input type="hidden" name="debug" value="">
                    <input type="hidden" name="pageopt" value="login">

                    
                    <h1>Login</h1>

                    
                    <div style="margin-bottom: 10px;">
                        <input type="text" class="form-control" placeholder="Username" value="" name="username" id="usernameBox"  autocomplete='off'>
                    </div>
                    <div>
                        <input type="password" class="form-control" placeholder="Password" name="password" id="passwordBox"  autocomplete='off'>
                    </div>
                    <div>
                        <button type="submit" class="submitbutton login btn btn-sm btn-primary" id="loginButton" name="loginButton">Login</button>
                    </div>
                    
                    
                    
                </form>
                <p class="forgot-pw"><a href="?forgotpass">Forgot your password?</a></p>
            </div>
            <div class="select-language">
                <label>Select Language:</label>
                <div id='languageopts'>
                    <a href='?locale=en_US' class='locale-icon en_US tt-bind' title='English'></a>
                    <a href='?locale=de_DE' class='locale-icon de_DE tt-bind' title='German'></a>
                    <a href='?locale=es_ES' class='locale-icon es_ES tt-bind' title='Spanish'></a>
                    <a href='?locale=fr_FR' class='locale-icon fr_FR tt-bind' title='French'></a>
                    <a href='?locale=it_IT' class='locale-icon it_IT tt-bind' title='Italian'></a>
                    <a href='?locale=ko_KR' class='locale-icon ko_KR tt-bind' title='Korean'></a>
                    <a href='?locale=pt_PT' class='locale-icon pt_PT tt-bind' title='Portuguese'></a>
                    <a href='?locale=ru_RU' class='locale-icon ru_RU tt-bind' title='Russian'></a>
                    <a href='?locale=zh_CN' class='locale-icon zh_CN tt-bind' title='Simplified Chinese'></a>
                    <a href='?locale=zh_TW' class='locale-icon zh_TW tt-bind' title='Traditional Chinese'></a>
                    <a href='?locale=ja_JP' class='locale-icon ja_JP tt-bind' title='Japanese'></a>
                    <a href='?locale=pl_PL' class='locale-icon pl_PL tt-bind' title='Polish'></a>
                    <a href='?locale=cs_CZ' class='locale-icon cs_CZ tt-bind' title='Czech'></a>
                </div>
            </div>
        </div>
        <div class="clear"></div>

    </div>

    <div class="login-cell right">

        
        <div class="loginsplash"></div>
        <h3>About Nagios XI</h3>
        <p>
            Nagios XI is an enterprise-class monitoring and alerting solution that provides organizations with extended insight of their IT infrastructure before problems affect critical business processes.  For more information on Nagios XI, visit the <a href="//www.nagios.com/products/nagiosxi/" target="_blank" rel="noreferrer">Nagios XI product page</a>.
        </p>
        <h3>Nagios Learning Opportunities</h3>
        <p>
            Learn about Nagios            <a href="//www.nagios.com/services/training"
               target="_blank" rel="noreferrer"><strong>training</strong></a>
            and <a href="//www.nagios.com/services/certification" target="_blank" rel="noreferrer">
                <strong>certification</strong></a>.
        </p>
        <p>
            Want to learn about how other experts are utilizing Nagios?  Don't miss your chance to attend the next            <a href="//go.nagios.com/nwcna" target="_blank" rel="noreferrer"><strong>Nagios World Conference</strong></a>.
        </p>
        <h3>Contact Us</h3>
        <p>
            Have a question or technical problem? Contact us today:        </p>
        <table class="table table-condensed table-no-border" style="width: auto;">
            <tr>
                <td>Support:</td>
                <td><a href="//support.nagios.com/forum/" target="_blank" rel="noreferrer">Online Support Forum</a></td>
            </tr>
            <tr>
                <td style="vertical-align: top;">Sales:</td>
                <td>
                    Phone: (651) 204-9102
                    <br>Fax: (651) 204-9103
                    <br>Email: sales@nagios.com
                </td>
            </tr>
            <tr>
                <td valign="top">Web:</td>
                <td><a href="//www.nagios.com/" target="_blank" rel="noreferrer">www.nagios.com</a></td>
            </tr>
        </table>

        
    </div>
    <div class="clear"></div>
</div>

    </div><!--mainframe-->

    <!-- FOOTER START -->
<div id="footer">

    
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6 footer-left">
                <a href="http://nagios.com/products/nagiosxi" target="new"><strong>Nagios XI</strong></a>                                             </div>
            <div class="col-sm-6 footer-right">
                
                <a href="https://10.1.1.110/nagiosxi/about/">About</a> &nbsp;&nbsp;|&nbsp;&nbsp;
                <a href="https://10.1.1.110/nagiosxi/about/?legal">Legal</a> &nbsp;&nbsp;|&nbsp;&nbsp;
                Copyright &copy; 2008-2021 <a href="https://www.nagios.com/" target="_blank" rel="noreferrer">Nagios Enterprises, LLC</a>
            </div>
        </div>
    </div>

    
    <script type="text/javascript">

        function get_tray_alert_content() {
            var optsarr = {
                "func": "get_tray_alert_html",
                "args": ""
            }
            var opts = array2json(optsarr);
            get_ajax_data_with_callback("getxicoreajax", opts, "process_tray_alert_content");
        }

        function process_tray_alert_content(edata) {
            data = unescape(edata);
            $("#tray_alerter_popup_content").html(data);

            var status = $("#tray_alerter_status").html();
            $("#tray_alerter").html(status);
        }

        $(document).ready(function () {

            get_tray_alert_content();

            $("#tray_alerter").everyTime(30000, "timer-tray_alerter", function (i) {
                get_tray_alert_content();
            });

            $("#tray_alerter").click(function () {
                var vis = $("#tray_alerter_popup").css("visibility");
                if (vis == "hidden") {
                    $("#tray_alerter_popup").css("visibility", "visible");
                } else {
                    $("#tray_alerter_popup").css("visibility", "hidden");
                }
            });

        });
    </script>

    <div id="keepalive"></div>

</div> <!-- end footer div -->

<!-- FOOTER END -->

    </div><!--page-->

    <noframes>
        <!-- This page requires a web browser which supports frames. -->
        <h2>Nagios XI</h2>
        <p align="center">
            <a href="https://www.nagios.com/">www.nagios.com</a><br>
            Copyright (c) 2009-2021 Nagios Enterprises, LLC<br>
        </p>
        <p>
            <i>Note: These pages require a browser which supports frames</i>
        </p>
    </noframes>

    
    <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-2887186-1', 'auto');
  ga('send', 'pageview');

</script>
    </body>
</html>


####################
# Request:
####################
POST /nagiosxi/login.php HTTP/1.1
Host: 10.1.1.110
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Cookie: nagiosxi=rp3adncb5rr28k1b7t345fsq77;
Content-Type: application/x-www-form-urlencoded
Content-Length: 118

nsp=83d201718cded8461877f5b65a795efea6c87688e647d3e95119d2693dcf1a65&pageopt=login&username=nagiosadmin&password=admin
####################
# Response:
####################
HTTP/1.0 302 Found
Date: Sat, 06 Feb 2021 03:06:53 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: nagiosxi=rp3adncb5rr28k1b7t345fsq77; expires=Sat, 06-Feb-2021 03:36:53 GMT; path=/; secure; httponly, nagiosxi=deleted; expires=Fri, 07-Feb-2020 03:06:52 GMT; path=/; httponly, nagiosxi=rp3adncb5rr28k1b7t345fsq77; expires=Sat, 06-Feb-2021 03:36:53 GMT; path=/; secure; httponly
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Location: index.php
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8


#<Set: {"nagiosxi=rp3adncb5rr28k1b7t345fsq77;", "nagiosxi=deleted;"}>
####################
# Request:
####################
GET /nagiosxi/index.php HTTP/1.1
Host: 10.1.1.110
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Cookie: nagiosxi=rp3adncb5rr28k1b7t345fsq77; nagiosxi=deleted;


####################
# Response:
####################
HTTP/1.0 302 Found
Date: Sat, 06 Feb 2021 03:06:53 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: nagiosxi=rp3adncb5rr28k1b7t345fsq77; expires=Sat, 06-Feb-2021 03:36:53 GMT; path=/; secure; httponly
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: frame-ancestors 'self'
Location: https://10.1.1.110/nagiosxi/login.php?showlicense
Connection: close
Content-Type: text/html; charset=UTF-8

        <!DOCTYPE html>
        <!-- <!DOCTYPE html> -->
        <html>

    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                <!-- Produced by Nagios XI. Copyright (c) 2008-2021 Nagios Enterprises, LLC (www.nagios.com). All Rights Reserved. -->
        <!-- Powered by the Nagios Synthesis Framework -->
                <title>Nagios XI</title>
        <meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

        
    <link rel="icon" type="image/png" href="https://10.1.1.110/nagiosxi/images/favicon-32x32.png" sizes="32x32">
    <link rel="shortcut icon" href="https://10.1.1.110/nagiosxi/images/favicon.ico" type="image/ico">

    <!-- Adding Font-Awesome for all themes -->
    <link rel="stylesheet" type="text/css" href="https://10.1.1.110/nagiosxi/includes/css/font-awesome.min.css?1493129822" />

    <!-- Global variables & Javascript translation text -->
    <script type="text/javascript">
    var base_url = "https://10.1.1.110/nagiosxi/";
    var backend_url = "https%3A%2F%2F10.1.1.110%2Fnagiosxi%2Findex.php";
    var ajax_helper_url = "https://10.1.1.110/nagiosxi/ajaxhelper.php";
    var ajax_proxy_url = "https://10.1.1.110/nagiosxi/ajaxproxy.php";
    var suggest_url = "https://10.1.1.110/nagiosxi/suggest.php";
    var request_uri = "%2Fnagiosxi%2Findex.php";
    var demo_mode = 0;
    var nsp_str = "83d201718cded8461877f5b65a795efea6c87688e647d3e95119d2693dcf1a65";

    // Language string for translations
    var lang = {
        'Add to Dashboard': "Add to Dashboard",
        'Add Dashboard': "Add Dashboard",
        'Edit Dashboard': "Edit Dashboard",
        'Dashlet Title': "Dashlet Title",
        'Dashboard Added': "Dashboard Added",
        'Add It': "Add It",
        'Add this powerful little dashlet to one of your dashboards for visual goodness.': "Add this powerful little dashlet to one of your dashboards for visual goodness.",
        'Select a Dashboard to Add To': "Select a Dashboard to Add To",
        'Add this graph to a dashboard.': "Add this graph to a dashboard.",
        'Dashlet is now loaded on your dashboard.': "Dashlet is now loaded on your dashboard.",
        'Dashlet Added': "Dashlet Added",
        'Please Wait': "Please Wait",
        'Submitting command': "Submitting command",
        'Show Details': "Show Details",
        'Hide Details': "Hide Details",
        'Permalink': "Permalink",
        'Copy the URL below to retain a direct link to your current view.': "Copy the URL below to retain a direct link to your current view.",
        'URL': "URL",
        'Thank You!': "Thank You!",
        'Thanks for helping to make this product better! We will review your comments as soon as we get a chance. Until then, kudos to you for being awesome and helping drive innovation!<br><br> - The Dedicated Team @ Nagios Enterprises': "Thanks for helping to make this product better! We will review your comments as soon as we get a chance. Until then, kudos to you for being awesome and helping drive innovation!&lt;br&gt;&lt;br&gt; - The Dedicated Team @ Nagios Enterprises",
        'Error': "Error",
        'An error occurred. Please try again later.': "An error occurred. Please try again later.",
        'Sending Feedback': "Sending Feedback",
        'Use this to add a new dashboard to your Dashboards page.': "Use this to add a new dashboard to your Dashboards page.",
        'Dashboard Title': "Dashboard Title",
        'Background Color': "Background Color",
        'Submit': "Submit",
        'Processing': "Processing",
        'Success! Your new dashboard has been added.': "Success! Your new dashboard has been added.",
        'An error occurred processing your request.': "An error occurred processing your request.",
        'Dashboard Changes Saved': "Dashboard Changes Saved",
        'Success! Your dashboard was updated successfully.': "Success! Your dashboard was updated successfully.",
        'You cannot delete your home page dashboard.': "You cannot delete your home page dashboard.",
        'Confirm Dashboard Deletion': "Confirm Dashboard Deletion",
        'Are you sure you want to delete this dashboard and all dashlets it contains?': "Are you sure you want to delete this dashboard and all dashlets it contains?",
        'Delete': "Delete",
        'Cancel': "Cancel",
        'The requested dashboard has been deleted.': "The requested dashboard has been deleted.",
        'Dashboard Deleted': "Dashboard Deleted",
        'Clone Dashboard': "Clone Dashboard",
        'Use this to make an exact clone of the current dashboard and all its wonderful dashlets.': "Use this to make an exact clone of the current dashboard and all its wonderful dashlets.",
        'Clone': "Clone",
        'New Title': "New Title",
        'Dashboard Cloned': "Dashboard Cloned",
        'Dashboard successfully cloned.': "Dashboard successfully cloned.",
        'Deleting dashlets from the home page dashboard is disabled while in demo mode.': "Deleting dashlets from the home page dashboard is disabled while in demo mode.",
        'Dashlet Deleted': "Dashlet Deleted",
        'Dashlet removed from dashboard.': "Dashlet removed from dashboard.",
        'The dashlet has been added and will now show up on your dashboard.': "The dashlet has been added and will now show up on your dashboard.",
        'Masquerade Notice': "Masquerade Notice",
        'You are about to masquerade as another user. If you choose to continue you will be logged out of your current account and logged in as the selected user. In the process of doing so, you may lose your admin privileges.': "You are about to masquerade as another user. If you choose to continue you will be logged out of your current account and logged in as the selected user. In the process of doing so, you may lose your admin privileges.",
        'Continue': "Continue",
        'Add View': "Add View",
        'Use this to add what you see on the screen to your views page.': "Use this to add what you see on the screen to your views page.",
        'View Title': "View Title",
        'View Added': "View Added",
        'Success! Your view was added to your views page.': "Success! Your view was added to your views page.",
        'View Deleted': "View Deleted",
        'View has been removed.': "View has been removed.",
        'Edit View': "Edit View",
        'View Changes Saved': "View Changes Saved",
        'Success! Your view was updated successfully.': "Success! Your view was updated successfully.",
        'Start Rotation': "Start Rotation",
        'Stop Rotation': "Stop Rotation",
        'Pause rotation': "Pause rotation",
        'Resume rotation': "Resume rotation",
        'You are about to delete the view': "You are about to delete the view",
        'Cannot schedule outside pages.': "Cannot schedule outside pages.",
        'Any page not under nagiosxi cannot be scheduled.': "Any page not under nagiosxi cannot be scheduled.",
        'Loading': "Loading",
        'Update': "Update",
        'Close': "Close",
        'Time Range': "Time Range",
        'Last 4 Hours': "Last 4 Hours",
        'Last 24 Hours': "Last 24 Hours",
        'Last Week': "Last Week",
        'Last Month': "Last Month",
        'Last Year': "Last Year",
        'Last 7 Days': "Last 7 Days",
        'Last 30 Days': "Last 30 Days",
        'Last 365 Days': "Last 365 Days",
        'My Graph': "My Graph",
        'You must fill out the entire form.': "You must fill out the entire form.",
        'Copy to Clipboard': "Copy to Clipboard",
        'Copied': "Copied",
        'Press Ctrl+C to copy': "Press Ctrl+C to copy"
    };

    // Translation helper function
    function _(str) {
        var trans = lang[str];
        if (trans) { return trans; }
        return str;
    }
    </script>

    <!-- main jquery libraries -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-1.12.4.min.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-migrate-1.4.1.min.js?1493129822'></script>
    <link type="text/css" href="https://10.1.1.110/nagiosxi/includes/js/jquery/css/smoothness/jquery-ui.custom.min.css?1493129822" rel="stylesheet"/>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.colorBlend.js'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.timers-1.1.3.js'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-ui-1.12.1.custom.min.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery-ui-timepicker-addon.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.searchabledropdown.custom.js?1493129822'></script>

    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/css/bootstrap.3.min.css?1493129822" type="text/css" />
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/bootstrap.3.min.js?1493129822'></script>

    <!-- spin kit -->
    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/css/spinkit.css?1493129822" type="text/css" />

    <!-- jquery autocomplete -->
    <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/jquery.autocomplete.css'/>

    <!-- colorpicker -->
    <link rel="stylesheet" href="https://10.1.1.110/nagiosxi/includes/js/jquery/colorpicker/css/colorpicker.css" type="text/css" />
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/jquery/colorpicker/js/colorpicker.js"></script>

    <!-- clipboard plugin -->
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/clipboard.min.js"></script>

    
    <!-- XI JS Scripts -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/core.js?1493129822'></script>
        <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/themes/modern.js?1493129822'></script>
        
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/commands.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/views.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/dashboards.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/dashlets.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/tables.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/users.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/perfdata.js?1493129822'></script>
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/wizards.js?1493129822'></script>

    <!-- XI CSS -->
    <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/base.css?1493129822' />
        <link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/css/themes/modern.css?1493129822' />
    
    <!-- Highcharts Graphing Library -->
    <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/highcharts.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/highcharts-more.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/modules/exporting.js?1493129822"></script>
            <script type="text/javascript" src="https://10.1.1.110/nagiosxi//includes/js/highcharts/modules/no-data-to-display.js?1493129822"></script>
    <!-- D3 Graphing Library -->
    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/js/d3/d3.v3.min.js?1493129822'></script>

    
        <!-- jScrollPane -->
        <link type="text/css" href="https://10.1.1.110/nagiosxi/includes/js/jquery/css/jquery.jscrollpane.css" rel="stylesheet" media="all" />
        <script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/js/jquery/jquery.jscrollpane.min.js"></script>

    <script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/dashlets/gauges/js/gauge.js'></script>
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/internettrafficreport/internettrafficreport.css' />
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/rss_dashlet/rss_dashlet.css' />
<link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/dashlets/worldtimeserver/worldtimeserver.css' />
<script type="text/javascript" src="https://10.1.1.110/nagiosxi/includes/components/graphexplorer/includes/graphexplorerinclude.js"></script><link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/components/helpsystem/css/helpsystem.css?1.1.1' /><link rel='stylesheet' type='text/css' href='https://10.1.1.110/nagiosxi/includes/components/helpsystem/css/bootstrap-tour.min.css?1.1.1' /><script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/components/helpsystem/js/helpsysteminclude.js?1.1.1'></script><script type='text/javascript' src='https://10.1.1.110/nagiosxi/includes/components/helpsystem/js/bootstrap-tour.min.js?1.1.1'></script>    </head>

    <body  class=' parent' >

      <script>$(document).ready(function () {
                var t = true;
                var tour = new Tour({
                    name: "new_user",
                    onEnd: function (tour) { 
                        var optsarr = {
                            "keyname": "tours",
                            "tourid": "new_user",
                            "keyvalue": 1,
                            "autoload": false
                            };
                        var opts = array2json(optsarr);
                        get_ajax_data("setusermeta", opts);
                    },
                    backdropPadding: 3,
				  steps: [
				  {
backdrop: "1",
orphan: "1",
title: "Welcome to Nagios XI",
content: "We are going to take you on a tour around the Nagios XI interface. To proceed through the tour you can either click the Prev/Next buttons or use the <i class=\"fa fa-long-arrow-left\"></i> <i class=\"fa fa-long-arrow-right\"></i> keys on your keyboard. You can end the tour at any time by clicking \"End Tour\".",
},
{
backdrop: "1",
element: "#header",
placement: "bottom",
title: "Primary Menu",
content: "This is the primary navigation menu allowing users to move from section to section within the Nagios XI interface.",
},
{
backdrop: "1",
element: "#leftnav",
placement: "right",
title: "Secondary Navigation",
content: "Each selection within the primary navigation will launch new set of secondary navigation menus pertaining to available options in that section.",
},
{
backdrop: "1",
element: "div.ext",
placement: "left",
title: "Extended Navigation",
content: "Clicking the extended navigation allows access to additional functionality available throughout the user interface.",
},
{
backdrop: "1",
element: "#schedulepagereport",
placement: "left",
title: "Extended Navigation",
content: "With the Enterprise version of Nagios XI you can use the Schedule Page to create an instant report out of any page in the Nagios XI interface including custom dashboards.",
onShow: function (tour) { $(".ext-menu ul").css("padding", "0").toggle(); },
onHide: function (tour) { $(".ext-menu ul").css("padding", "0 0 0 200px").toggle(); },
},
{
backdrop: "1",
element: "div.header-right.search",
placement: "bottom",
title: "Quick Search",
content: "You can perform a quick search for Hosts, Hostgroups, and Servicegroups by clicking the Quick Search icon.",
},
{
backdrop: "1",
orphan: "1",
title: "Welcome",
content: "At any time you would like additional help, look for the <img src=\"https://10.1.1.110/nagiosxi/includes/components/helpsystem/images/help_and_support.png\" width=\"24\"></a> help icon on the top right of each page.",
},

				],
                template: "<div class='popover tour'>                               <div class='arrow'></div>                                <h3 class='popover-title'></h3>                                <div class='popover-content'></div>                                <div class='popover-navigation'>                                 <div class='btn-group'>                                  <button class='btn btn-default' data-role='prev'>&laquo; Prev</button>                                  <button class='btn btn-default' data-role='next'>Next &raquo;</button>                                </div>                                <button class='btn btn-default' data-role='end'>End tour</button>                               </div>                              </div>",
});
                    //window.localStorage.clear(); // tps#9060

                    // Initialize the tour
                    tour.init();
                    // Start the tour
                    tour.start();
            });
            </script>
    
    <div  id='home-page' class="parentpage">

    <div id="whiteout"></div>
    <div id="blackout"></div>

    <div id="header" class="parenthead" >
        
<!--- HEADER START -->


    <div id="toplogo">
        <a href="https://10.1.1.110/nagiosxi/" target="_top">
            <img src="https://10.1.1.110/nagiosxi/images/nagios_logo_white_transbg.png" border="0" class="xi-logo" alt="Nagios XI" title="Nagios XI">
            XI
        </a>
    </div>
    
    
    <div id="topmenu">
                    <div class="mainmenu">
                <div><a href="https://10.1.1.110/nagiosxi/">Home</a></div>
                <div><a href="https://10.1.1.110/nagiosxi/views/">Views</a></div>
                <div><a href="https://10.1.1.110/nagiosxi/dashboards/">Dashboards</a></div>
                <div><a href="https://10.1.1.110/nagiosxi/reports/">Reports</a></div>
                                    <div id="config-menulink">
                        <span>
                            <a href="https://10.1.1.110/nagiosxi/config/">Configure</a>
                            <ul class="config-dropdown">
                                <li><a href="https://10.1.1.110/nagiosxi/config/?xiwindow=monitoringwizard.php"><i class="fa fa-magic l"></i> Configuration Wizards</a></li>
                                                                <li><a href="https://10.1.1.110/nagiosxi/includes/components/ccm/xi-index.php"><i class="fa fa-cog l"></i> Core Config Manager</a></li>
                                                            </ul>
                        </span>
                    </div>
                                <div><a href="https://10.1.1.110/nagiosxi/tools/">Tools</a></div>
                <div><a href="https://10.1.1.110/nagiosxi/help/">Help</a></div>
                                    <div><a href="https://10.1.1.110/nagiosxi/admin/">Admin</a></div>
                            </div>
            <div class="hiddenmenu">
                <div id="mdropdown">
                    <span>
                        <span class="nav-head"><i class="fa fa-chevron-down l"></i> Navigation</span>
                        <ul class="dropdown-items">
                            <li><a href="https://10.1.1.110/nagiosxi/">Home</a></li>
                            <li><a href="https://10.1.1.110/nagiosxi/views/">Views</a></li>
                            <li><a href="https://10.1.1.110/nagiosxi/dashboards/">Dashboards</a></li>
                            <li><a href="https://10.1.1.110/nagiosxi/reports/">Reports</a></li>
                                                            <li><a href="https://10.1.1.110/nagiosxi/config/">Configure</a></li>
                                                        <li><a href="https://10.1.1.110/nagiosxi/tools/">Tools</a></li>
                            <li><a href="https://10.1.1.110/nagiosxi/help/">Help</a></li>
                                                            <li><a href="https://10.1.1.110/nagiosxi/admin/">Admin</a></li>
                                                    </ul>
                    </span>
                </div>
            </div>
            </div>

        <div class="header-right ext">
        <span class="ext-menu">
            <i class="fa fa-bars"></i>
            <ul>
                <li id="schedulepagereport" class="tt-bind" data-placement="left" title="Schedule page"><a href="#"><i class="fa fa-clock-o"></i></a></li>
                <li id="popout" class="tt-bind" data-placement="left" title="Popout"><a href="#"><i class="fa fa-share-square-o"></i></a></li>
                <li id="addtomyviews" class="tt-bind" data-placement="left" title="Add to my views"><a href="#"><i class="fa fa-plus-circle"></i></a></li>
                <li id="permalink" class="tt-bind" data-placement="left" title="Get permalink"><a href="#"><i class="fa fa-chain"></i></a></li>
                <li id="feedback" class="tt-bind" data-placement="left" title="Send us feedback"><a href="#"><i class="fa fa-comment-o"></i></a></li>
            </ul>
        </span>
    </div>
    <div class="header-right profile">
        <a href="https://10.1.1.110/nagiosxi/account/" style="margin-right: 1.5rem;"><i class="fa fa-user"></i> <span>nagiosadmin</span></a>
                    <a href="https://10.1.1.110/nagiosxi/login.php?logout&amp;nsp=83d201718cded8461877f5b65a795efea6c87688e647d3e95119d2693dcf1a65"><i class="fa fa-power-off"></i> <span>Logout</span></a>
            </div>
    <div class="header-right system-alerts">
         <div id="pagetopalertcontent"></div>

                <script type="text/javascript">

                function create_popover() {
                    $("#topalert-popover").tooltip({ placement: "left" });
                    $("#topalert-popover").popover({ html: true });
                }

                $(document).ready(function() {

                    get_pagetopalertcontent_content();
                        
                    $("#pagetopalertcontent").everyTime(30000, "timer-pagetopalertcontent", function(i) {
                        get_pagetopalertcontent_content();
                    });
                    
                    function get_pagetopalertcontent_content() {
                        $("#pagetopalertcontent").each(function() {
                            var optsarr = {
                                "func": "get_pagetop_alert_content_html",
                                "args": ""
                            }
                            var opts = array2json(optsarr);
                            get_ajax_data_innerHTML_with_callback("getxicoreajax", opts, true, this, "create_popover");
                        });
                    }
                });
                </script>    </div>
    <div class="header-right search">
        <div class="search-field hide">
            <form method="post" target="maincontentframe" action="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=services">
                <input type="hidden" name="navbarsearch" value="1"/>
                <input type="text" class="search-query form-control" name="search" id="navbarSearchBox" value="" placeholder="Search..."/>
            </form>
        </div>
        <a href="#" id="open-search" title="Search"><i class="fa fa-search"></i></a>
    </div>
    

    <div id="feedback_layer">
        <div id="feedback_content">

            <div id="feedback_close">
                <a id="close_feedback_link" style="display: inline-block;" title="Close"><i class="fa fa-times" style="font-size: 16px;"></i></a>
            </div>

            <div id="feedback_container">

                <div id="feedback_header">
                    <b>Send Us Feedback</b>
                    <p>We love input!  Tell us what you think about this product and you'll directly drive future innovation!</p>
                </div>
                <!-- feedback_header -->

                <div id="feedback_data">

                    <form id="feedback_form" method="get" action="https://10.1.1.110/nagiosxi/ajaxproxy.php">

                        <input type="hidden" name="proxyurl" value="https://api.nagios.com/feedback/">
                        <input type="hidden" name="proxymethod" value="post">

                        <input type="hidden" name="product" value="nagiosxi">
                        <input type="hidden" name="version" value="5.4.4">
                        <input type="hidden" name="build" value="1493129822">

                        <label for="feedbackCommentBox">Comments:</label>
                        <textarea class="textarea form-control" name="comment" style="width: 100%; height: 100px;"></textarea>

                        <label for="feedbackNameBox">Your Name (Optional):</label>
                        <input type="text" size="30" name="name" id="feedbackNameBox" value="Nagios Administrator" class="textfield form-control">

                        <label for="feedbackEmailAddressBox">Your Email Address (Optional):</label>
                        <input type="text" size="30" name="email" id="feedbackEmailAddressBox" value="root@localhost" class="textfield form-control">

                        <div>
                            <div class="fl" id="feedbackFormButtons">
                                <input type="submit" class="submitbutton btn btn-sm btn-primary" name="submitButton" value="Submit" id="submitFeedbackButton">
                            </div>
                            <div class="fr feedback-pp">
                                <a href="https://www.nagios.com/legal/privacypolicy/" target="_blank" rel="noreferrer">Privacy Policy</a>
                            </div>
                            <div class="clear"></div>
                        </div>

                    </form>
                </div>
            </div>
        </div>
    </div>
<div id="popup_layer">
    <div id="popup_content">
        <div id="popup_close">
            <a id="close_popup_link" style="display: inline-block;" title="Close"><i class="fa fa-times" style="font-size: 16px;"></i></a>
        </div>
        <div id="popup_container">
        </div>
    </div>
</div>

        <div id="throbber" class="sk-spinner sk-spinner-center sk-spinner-three-bounce">
            <div class="sk-bounce1"></div>
            <div class="sk-bounce2"></div>
            <div class="sk-bounce3"></div>
        </div>
    </div>

            <div id="mainframe">

        <div class='contentheadernotice'><div class='fr'><a href='#' id='closetrialnotice' title='Close'><i class='fa fa-close'></i></a></div>Notice: This trial copy of Nagios XI will expire in 60 days.  <a href='https://www.nagios.com/products/nagiosxi/pricing/' target='_blank'>Purchase a License Now</a> or <a href='/nagiosxi/?xiwindow=admin/license.php'>Enter your license key</a>.</div>
                        <div id="fullscreen" class="fs-open"></div>
            <!-- SCREEN DASHBOARD START -->    <div id="dashboarddashlets">
            </div><!--dashboarddashlets-->
<!-- SCREEN DASHBOARD END -->
    <div id="login_alert_popup" style="visibility: hidden;">

        <div id="close_login_alert_popup" style="float: right;">
            <a id="close_login_alert_popup_link" href="#">
                <i class="fa fa-times" title="Close"></i>
            </a>
        </div>

        <script type="text/javascript">
            $(document).ready(function () {
                $(window).resize(function() {
                    $('#login_alert_popup').center();
                });
                $("#login_alert_popup").each(function () {
                    $(this).draggable();
                });
                $("#close_login_alert_popup_link").click(function () {
                    $("#login_alert_popup").css("display", "none");
                    clear_whiteout();
                });
            });
        </script>


        <h1><img src='https://10.1.1.110/nagiosxi/images/message_bubble.png'> Notices</h1>

        <p>Some important information you should be aware of is listed below.</p>

        <div id="login_alert_popup_content">
        </div>

        <div id="no_login_alert_popup" style="float: right; clear: right;">
            <div class="checkbox">
                <label>
                    <input type="checkbox" id="no_login_alert_popup_cb" name="no_login_alert_popup_cb" checked="checked"/>
                    Show these alerts when I login                </label>
            </div>
        </div>

        <script type="text/javascript">
            $(document).ready(function() {

                get_login_alert_popup_content();

                $("#no_login_alert_popup_cb").click(function () {
                    checked = 0;
                    if ($(this).is(":checked")) {
                        checked = 1;
                    }
                    var optsarr = {
                        "keyname": "show_login_alert_screen",
                        "keyvalue": checked,
                        "autoload": false
                    };
                    var opts = array2json(optsarr);
                    var result = get_ajax_data("setusermeta", opts);

                });
            });

            // Show the login alert popup only if we have some alerts!
            function display_login_alert_popup_content(edata) {
                data = unescape(edata);
                if (data == "") {
                    $("#login_alert_popup").css("visibility", "hidden");
                } else {
                    whiteout();
                    $("#login_alert_popup").css("visibility", "visible");
                    center_login_alert_popup();
                }
            }

            function get_login_alert_popup_content() {
                $("#login_alert_popup_content").each(function () {
                    var optsarr = {
                        "func": "get_login_alert_popup_html",
                        "args": ""
                    }
                    var opts = array2json(optsarr);
                    get_ajax_data_innerHTML_with_callback("getxicoreajax", opts, true, this, "display_login_alert_popup_content");
                });
            }
        </script>

    </div>

    <div id="leftnav">
        <div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-quickview'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Quick View</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi//includes/page-home-main.php" target="maincontentframe">Home Dashboard</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/tac.php" target="maincontentframe">Tactical Overview</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/birdseye/birdseye.php" target="maincontentframe">Birdseye</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/nocscreen/noc.php" target="maincontentframe">Operations Center</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/opscreen/opscreen.php" target="maincontentframe">Operations Screen</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=services&amp;hostattr=10&amp;hoststatustypes=2&amp;servicestatustypes=28&amp;serviceattr=10" target="maincontentframe">Open Service Problems</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hosts&amp;hoststatustypes=12&amp;hostattr=10" target="maincontentframe">Open Host Problems</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=services&amp;servicestatustypes=28" target="maincontentframe">All Service Problems</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hosts&amp;hoststatustypes=12" target="maincontentframe">All Host Problems</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=outages" icon="fa-flag" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-flag"></i> </span>Network Outages</a></li></ul></div><div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-details'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Details</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=services" target="maincontentframe">Service Detail</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hosts" target="maincontentframe">Host Detail</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hostgroups&amp;hostgroup=all&amp;style=summary" target="maincontentframe">Hostgroup Summary</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hostgroups&amp;hostgroup=all&amp;style=overview" target="maincontentframe">Hostgroup Overview</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=hostgroups&amp;hostgroup=all&amp;style=grid" target="maincontentframe">Hostgroup Grid</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=servicegroups&amp;servicegroup=all&amp;style=summary" target="maincontentframe">Servicegroup Summary</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=servicegroups&amp;servicegroup=all&amp;style=overview" target="maincontentframe">Servicegroup Overview</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=servicegroups&amp;servicegroup=all&amp;style=grid" target="maincontentframe">Servicegroup Grid</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/nagiosbpi/index.php" icon="fa-briefcase" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-briefcase"></i> </span>BPI</a></li><li class='menulinkspacer'></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/metrics/" icon="fa-tachometer" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-tachometer"></i> </span>Metrics</a></li></ul></div><div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-graphs'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Graphs</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/perfgraphs/" icon="fa-line-chart" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-line-chart"></i> </span>Performance Graphs</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/graphexplorer/" icon="fa-map-o" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-map-o"></i> </span>Graph Explorer</a></li></ul></div><div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-maps'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Maps</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/bbmap/" target="maincontentframe">BBmap</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/hypermap/" target="maincontentframe">Hypermap</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/minemap/" target="maincontentframe">Minemap</a></li><li class='menulink'><a  href="/nagvis/" target="maincontentframe">Nagvis</a></li><li class='menulink'><a  icon="fa-share-alt" href="https://10.1.1.110/nagiosxi/includes/components/statusmap/index.php" target="maincontentframe"><span class="menu-icon"><i class="fa fa-fw fa-share-alt"></i> </span>Network Status Map</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=map&amp;layout=6" target="maincontentframe">Legacy Network Status Map</a></li></ul></div><div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-incident-management'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Incident Management</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/latestalerts/" target="maincontentframe">Latest Alerts</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=comments" target="maincontentframe">Acknowledgements</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/downtime.php" target="maincontentframe">Scheduled Downtime</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/massacknowledge/index.php" target="maincontentframe">Mass Acknowledge</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/recurringdowntime.php" target="maincontentframe">Recurring Downtime</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/reports/notifications.php" target="maincontentframe">Notifications</a></li></ul></div><div class='menusection '><div class='menusectiontitle' data-id='menu-home-section-monitoringprocess'><i class='fa fa-chevron-down' title='Collapse menu section'></i> Monitoring Process</div><ul class='menusection' ><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=process" target="maincontentframe">Process Info</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/includes/components/xicore/status.php?show=performance" target="maincontentframe">Performance</a></li><li class='menulink'><a  href="https://10.1.1.110/nagiosxi/reports/eventlog.php" target="maincontentframe">Event Log</a></li></ul></div>    </div>
    <div id="maincontent">
        <iframe src="https://10.1.1.110/nagiosxi//includes/page-home-main.php?&=" width="100%" frameborder="0" id="maincontentframe" name="maincontentframe" allowfullscreen>
            [Your user agent does not support frames or is currently configured not to display frames.]
        </iframe>
    </div>

    </div><!--mainframe-->

    <!-- FOOTER START -->
<div id="footer">

    
    <div class="container-fluid">
        <div class="row">
            <div class="col-sm-6 footer-left">
                <a href="http://nagios.com/products/nagiosxi" target="new"><strong>Nagios XI</strong></a> 5.4.4                                                    &nbsp;&nbsp;&bull;&nbsp;&nbsp;
                    <a href="https://www.nagios.com/checkforupdates/?product=nagiosxi&version=5.4.4&build=1493129822" target="_blank" rel="noreferrer">Check for Updates</a>
                            </div>
            <div class="col-sm-6 footer-right">
                                    <div id="tray_alerter">
                        <i class="fa fa-spinner fa-pulse"></i>
                    </div>
                    <div id="tray_alerter_popup">
                        <strong>Information and Alerts:</strong>

                        <div id="tray_alerter_popup_content"
                             style="overflow: auto; border: 1px solid white; margin: 10px 0 0 0; height: 100px;">
                            <img src="https://10.1.1.110/nagiosxi/images/throbber.gif"> Loading data...
                        </div>
                    </div>
                
                <a href="https://10.1.1.110/nagiosxi/about/">About</a> &nbsp;&nbsp;|&nbsp;&nbsp;
                <a href="https://10.1.1.110/nagiosxi/about/?legal">Legal</a> &nbsp;&nbsp;|&nbsp;&nbsp;
                Copyright &copy; 2008-2021 <a href="https://www.nagios.com/" target="_blank" rel="noreferrer">Nagios Enterprises, LLC</a>
            </div>
        </div>
    </div>

    
    <script type="text/javascript">

        function get_tray_alert_content() {
            var optsarr = {
                "func": "get_tray_alert_html",
                "args": ""
            }
            var opts = array2json(optsarr);
            get_ajax_data_with_callback("getxicoreajax", opts, "process_tray_alert_content");
        }

        function process_tray_alert_content(edata) {
            data = unescape(edata);
            $("#tray_alerter_popup_content").html(data);

            var status = $("#tray_alerter_status").html();
            $("#tray_alerter").html(status);
        }

        $(document).ready(function () {

            get_tray_alert_content();

            $("#tray_alerter").everyTime(30000, "timer-tray_alerter", function (i) {
                get_tray_alert_content();
            });

            $("#tray_alerter").click(function () {
                var vis = $("#tray_alerter_popup").css("visibility");
                if (vis == "hidden") {
                    $("#tray_alerter_popup").css("visibility", "visible");
                } else {
                    $("#tray_alerter_popup").css("visibility", "hidden");
                }
            });

        });
    </script>

    <div id="keepalive"></div>

</div> <!-- end footer div -->

<!-- FOOTER END -->

    </div><!--page-->

    <noframes>
        <!-- This page requires a web browser which supports frames. -->
        <h2>Nagios XI</h2>
        <p align="center">
            <a href="https://www.nagios.com/">www.nagios.com</a><br>
            Copyright (c) 2009-2021 Nagios Enterprises, LLC<br>
        </p>
        <p>
            <i>Note: These pages require a browser which supports frames</i>
        </p>
    </noframes>

    
    <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-2887186-1', 'auto');
  ga('send', 'pageview');

</script>
    </body>
</html>


[-] The service is running, but could not be validated. Received unexpected reply while trying to acess the NagiosXI home dashboard after authenticating.
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

Edit: Confirmed. The module bails if the license has not yet been accepted, as the appplication redirects to the license acceptance page as the first page after login.

Comment on lines 30 to 41
if nsp.blank?
return Msf::Exploit::CheckCode::Unknown('Unable to obtain the value of the `nsp_str` token required for authentication')
end
Copy link
Contributor

@bcoles bcoles Feb 6, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This check failed on a (very) old version of Nagios XI (version 2012R2.9). I haven't bothered to look into why.

Here's the HTML.

msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

####################
# Request:
####################
GET /nagiosxi/login.php HTTP/1.1
Host: 10.1.1.111
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)


####################
# Response:
####################
HTTP/1.1 200 OK
Date: Sat, 06 Feb 2021 03:29:29 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Set-Cookie: nagiosxi=uk2g58fkahi5q65h0ki2n7b497; expires=Sat, 06-Feb-2021 03:59:29 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8

<!DOCTYPE html>
<!-- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> -->
<html>
	
	<head>	
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
	<!-- Produced by Nagios XI.  Copyyright (c) 2008-2011 Nagios Enterprises, LLC (www.nagios.com). All Rights Reserved. -->
	<!-- Powered by the Nagios Synthesis Framework -->
	<title>Nagios XI - Login</title>
	<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

	
		<link rel="shortcut icon" href="http://10.1.1.111/nagiosxi/images/favicon.ico" type="image/ico" />
	<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/css/jquery.autocomplete.css' />
	
	<script type='text/javascript'>
	//javascript:alert(document.documentMode);
	
		var base_url="http://10.1.1.111/nagiosxi/";
		var backend_url="http%3A%2F%2F10.1.1.111%2Fnagiosxi%2Flogin.php";
		var ajax_helper_url="http://10.1.1.111/nagiosxi/ajaxhelper.php";
		var ajax_proxy_url="http://10.1.1.111/nagiosxi/ajaxproxy.php";
		var suggest_url="http://10.1.1.111/nagiosxi/suggest.php";
		var request_uri="%2Fnagiosxi%2Flogin.php";
		var permalink_base="http://10.1.1.111/nagiosxi/login.php?";
		var demo_mode=0;
		var nsp_str="fb3798156288cc818e648fbf2725464a";
	</script>

<!-- FIREBUG LITE! -->	
<!--
<script type='text/javascript' 
        src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script>
//-->	


	
	<!-- main jquery libraries --> 
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery-1.8.2.min.js?2012R2.9'></script>
	<link type="text/css" href="http://10.1.1.111/nagiosxi/includes/js/jquery/css/smoothness/jquery-ui-1.9.0.custom.min.css?2012R2.9" rel="stylesheet" />	
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.colorBlend.js'></script>	
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.timers-1.1.3.js'></script>	
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery-ui-1.9.0.custom.min.js?2012R2.9'></script>

	<!-- DEPRECATED JQUERY PLUGINS
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.autocomplete.js'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.checkboxes.js'></script> 
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.bgiframe.pack.js'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.tooltip.pack.js'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.sparkline.js'></script>	
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.inview.min.js'></script>	
	-->
		
	<!-- colorpicker -->
	<link rel="stylesheet" href="http://10.1.1.111/nagiosxi/includes/js/jquery/colorpicker/css/colorpicker.css" type="text/css" />
	<script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/js/jquery/colorpicker/js/colorpicker.js"></script>
	
	<!-- clipboard plugin -->
	<script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.zclip.min.js"></script>

	<!-- XI JS Scripts -->
		<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/core.js?2012R2.9'></script>
		<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/commands.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/views.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/dashboards.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/dashlets.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/tables.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/users.js?2012R2.9'></script>
	<script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/perfdata.js?2012R2.9'></script>
    <script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/wizards.js?2012R2.9'></script>
	
	<!-- XI CSS --> 
		<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/css/nagiosxi.css?2012R2.9' />
    
    <!-- Highcharts Graphing Library -->
    <script type="text/javascript" src="http://10.1.1.111/nagiosxi//includes/js/highcharts/highcharts.js?320"></script>
          <script type="text/javascript" src="http://10.1.1.111/nagiosxi//includes/js/highcharts/modules/exporting.js?320"></script><script type="text/javascript" src="http://10.1.1.111/nagiosxi//includes/js/highcharts/themes/gray.js?320"></script>
    <!-- D3 Graphing Library -->
    <script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/js/d3/d3.v3.min.js?2012R2.9'></script>
	
<!-- styles needed by jScrollPane -->
<link type="text/css" href="http://10.1.1.111/nagiosxi/includes/js/jquery/css/jquery.jscrollpane.css" rel="stylesheet" media="all" />

<!-- the jScrollPane script -->
<script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.jscrollpane.min.js"></script>

<!-- the mousewheel plugin - optional to provide mousewheel support -->
<script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/js/jquery/jquery.mousewheel.js"></script>

	
<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/dashlets/internethealthreport/internethealthreport.css' />
<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/dashlets/internettrafficreport/internettrafficreport.css' />
<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/dashlets/rss_dashlet/rss_dashlet.css' />
<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/dashlets/sansrisingports/sansrisingports.css' />
<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/dashlets/worldtimeserver/worldtimeserver.css' />
		<link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/components/ccm/css/style.css?2.1' /><script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/components/ccm/javascript/main_js.js?2.1"></script><style type="text/css">
#contentWrapper { margin: 0px auto; width: 95%; } 
</style>
<script type="text/javascript">
var NAGIOSXI=true
</script><script type="text/javascript" src="http://10.1.1.111/nagiosxi/includes/components/graphexplorer/includes/graphexplorerinclude.js"></script><script type='text/javascript' src='http://10.1.1.111/nagiosxi/includes/components/helpsystem/helpsysteminclude.js?0.3'></script><link rel='stylesheet' type='text/css' href='http://10.1.1.111/nagiosxi/includes/components/helpsystem/helpsystem.css?0.3' /></head>


<body  class=' parent' >

		
	<div  class="parentpage"><!-- page-->

		<div id="header" class="parenthead" >

<!--- HEADER START -->


<div id="toplogo">
   <a href="http://www.nagios.com/products/nagiosxi/" target="_blank"><img src="http://10.1.1.111/nagiosxi/images/nagiosxi-logo-small.png" border="0" alt="Nagios XI" title="Nagios XI"></a>
</div>
<div id="pagetopalertcontainer">
</div>
<div id="authinfo">
</div>


<div id="topmenucontainer">
	<ul class="menu">
	<li><a href="http://10.1.1.111/nagiosxi/login.php">Login</a></li>
	</ul>
</div>
	<div id="feedback_layer">
	<div id="feedback_content">
	
	<div id="feedback_close">
	<a id="close_feedback_link" href="#"><img src="http://10.1.1.111/nagiosxi/images/b_close.png" border="0" alt="Close" title="Close"> Close</a>
	</div>
	
	<div id="feedback_container">
	
	<div id="feedback_header">
	<b>Send Us Feedback</b>
	<p>We love input!  Tell us what you think about this product and you'll directly drive future innovation!</p>
	</div><!-- feedback_header -->
	
	<div id="feedback_data">

	<form id="feedback_form" method="get" action="http://10.1.1.111/nagiosxi/ajaxproxy.php">

	<input type="hidden" name="proxyurl" value="http://api.nagios.com/feedback/">
	<input type="hidden" name="proxymethod" value="post">

	<input type="hidden" name="product" value="nagiosxi">
	<input type="hidden" name="version" value="2012R2.9">
	<input type="hidden" name="build" value="20140211">

	<label for="feedbackCommentBox">Comments:</label><br class="nobr" />
	<textarea class="textarea" name="comment" cols="40" rows="3"></textarea><br class="nobr" />

	<label for="feedbackNameBox">Your Name (Optional):</label><br class="nobr" />
	<input type="text" size="30" name="name" id="feedbackNameBox" value="" class="textfield" /><br class="nobr" />

	<label for="feedbackEmailAddressBox">Your Email Address (Optional):</label><br class="nobr" />
	<input type="text" size="30" name="email" id="feedbackEmailAddressBox" value="" class="textfield" /><br class="nobr" />

	<div id="feedbackFormButtons">
	<input type="submit" class="submitbutton" name="submitButton" value="Submit" id="submitFeedbackButton">
	</div>
	
	<br clear="all">
	<p>
	<a href="http://www.nagios.com/legal/privacypolicy/" target="_blank">Privacy Policy</a>
	</p>

	</form>
	
	</div><!-- feedback_data -->
	
	</div><!-- feedback_container-->
	
	
	</div><!--feedback_content-->
	</div><!--feedback_layer-->
<div id="popup_layer">
	<div id="popup_content">
	<div id="popup_close">
	<a id="close_popup_link" href="#"><img src="http://10.1.1.111/nagiosxi/images/b_close.png" border="0" alt="Close" title="Close"> Close</a>
	</div>
	<div id="popup_container">
	</div>
	</div>
</div>

<!-- HEADER END -->

		<div id="throbber"></div>
		</div><!--header -->


	<div id="mainframe">
	<div id="parentcontentthrobber"><img src='http://10.1.1.111/nagiosxi/images/throbber1.gif' /></div>
	<h1>Login</h1>

	<div style="float: left; margin-right: 25px; width: 50%;">



	<form id="loginForm" method="post" action="/nagiosxi/login.php">
	<input type='hidden' name='nsp' value='fb3798156288cc818e648fbf2725464a'>	
	<fieldset>
	<legend>Login</legend>
	
	<input type="hidden" name="page" value="auth">
	<input type="hidden" name="debug" value="">
	<input type="hidden" name="pageopt" value="login">

	<label for="usernameBox">Username:</label><br class="nobr" />
	<input type="text" size="10" name="username" id="usernameBox" class="textfield" /><br class="nobr" />
	
	<label for="passwordBox">Password:</label><br class="nobr" />
	<input type="password" size="10" name="password" id="passwordBox" class="textfield" /><br class="nobr" />
	
	<div id="formButtons">
	<input type="submit" class="submitbutton" value="Login" id="loginButton" name="loginButton"><br class="nobr" />
	
	
	</div>
	
	</fieldset>
	</form>
	
	<script type="text/javascript" language="JavaScript">
	document.forms['loginForm'].elements['usernameBox'].focus();
	</script>
	
	<br class="nobr" />

	<p>
	<a href="?forgotpass">Forgot your password?</a>
	</p>
	
	<label>Select Language:</label>
	<br class="nobr" />
	<div id='languageopts'>
		<a href='?locale=en_US' class='locale-icon en_US' title='English'></a>
		<a href='?locale=de_DE' class='locale-icon de_DE' title='German'></a>
		<a href='?locale=es_ES' class='locale-icon es_ES' title='Spanish'></a>
		<a href='?locale=fr_FR' class='locale-icon fr_FR' title='French'></a>
		<a href='?locale=it_IT' class='locale-icon it_IT' title='Italian'></a>
		<a href='?locale=ko_KR' class='locale-icon ko_KR' title='Korean'></a>
		<a href='?locale=pt_PT' class='locale-icon pt_PT' title='Portuguese'></a>
		<a href='?locale=ru_RU' class='locale-icon ru_RU' title='Russian'></a>
		<a href='?locale=zh_CN' class='locale-icon zh_CN' title='Simplified Chinese'></a>
		<a href='?locale=zh_TW' class='locale-icon zh_TW' title='Traditional Chinese'></a>
        <a href='?locale=ja_JP' class='locale-icon ja_JP' title='Japanese'></a>
	</div>
	
	</div>

	<div style="float: left; width: 40%;">

	
	
	<img src="http://10.1.1.111/nagiosxi/images/loginsplash.png"><br clear="all">
	<h3>About Nagios XI</h3>
	<p>
	Nagios XI is an enterprise-class monitoring and alerting solution that provides organizations with extended insight of their IT infrastructure before problems affect critical business processes.  For more information on Nagios XI, visit 
	<a href="http://www.nagios.com/products/nagiosxi/" target="_blank">www.nagios.com/products/nagiosxi/</a>
	</p>
	<h3>Nagios Learning Opportunities</h3>
	<p>
	Learn about Nagios 
	<a href="http://www.nagios.com/services/training" target="_blank"><strong>training</strong></a>
	and <a href="http://www.nagios.com/services/certification" target="_blank">
	<strong>certification</strong></a>.
	</p>
	<p>
	Want to learn about how other experts are utilizing Nagios?  Don't miss your chance to attend the next	<a href="http://go.nagios.com/nwcna" target="_blank">&nbsp;<strong> Nagios World Conference</strong></a>.
	</p>
	<h3>Contact Us</h3>
	<p>
	Have a question or technical problem? Contact us today:	</p>
	<table border="0">
	<tr><td valign="top">Support:</td>
		<td><a href="http://support.nagios.com/forum/" target="_blank">Online Support Forum</a></td></tr>
	<tr><td valign="top">Sales:</td><td>Phone: (651) 204-9102
	<br />Fax: (651) 204-9103
	<br />Email: sales@nagios.com</td></tr>
	<tr><td valign="top">Web:</td>
	<td><a href="http://www.nagios.com/" target="_blank">www.nagios.com</a></td></tr>
	</table>
	

</div>

	
		</div><!--mainframe-->
	
	<!--	<div id="footer">  //there should only be one div with id of footer on any given page, moved to footer.inc.php  --> 
		<!-- FOOTER START -->
<div id="footer">


    <div id="footermenucontainer">
        <div id="footernotice">Nagios XI 2012R2.9  Copyright &copy; 2008-2021 <a href="http://www.nagios.com/" target="_blank">Nagios Enterprises, LLC</a>.</div>

        
        <ul class="footermenu">
            <li><a href="http://10.1.1.111/nagiosxi/about/">About</a></li>
            <li><a href="http://10.1.1.111/nagiosxi/about/?legal">Legal</a></li>
        </ul>
    </div>

    

<script type="text/javascript">
    
function get_tray_alert_content() {     
    var optsarr = {
        "func": "get_tray_alert_html",
        "args": ""
    }
    var opts = array2json(optsarr);
    get_ajax_data_with_callback("getxicoreajax", opts, "process_tray_alert_content");
}
        
function process_tray_alert_content(edata) {
    data = unescape(edata);
    $("#tray_alerter_popup_content").html(data);
    
    var status = $("#tray_alerter_status").html();
    $("#tray_alerter").html(status);
}

$(document).ready(function() {

    get_tray_alert_content();
        
    $("#tray_alerter").everyTime(30000, "timer-tray_alerter", function(i) {
        get_tray_alert_content();
    });

    $("#tray_alerter").click(function() {
        var vis = $("#tray_alerter_popup").css("visibility");
        if (vis == "hidden") {
            $("#tray_alerter_popup").css("visibility", "visible");
        } else {
            $("#tray_alerter_popup").css("visibility", "hidden");
        }
    });
        
});
</script>

    <div id="keepalive"></div>

</div> <!-- end footer div -->

<!-- FOOTER END -->	<!-- 	</div>  -->
	
	</div><!--page-->

<noframes>
<!-- This page requires a web browser which supports frames. --> 
<h2>Nagios XI</h2>
<p align="center">
<a href="http://www.nagios.com/">www.nagios.com</a><br>
Copyright (c) 2009-2012 Nagios Enterprises, LLC<br>
</p>
<p>
<i>Note: These pages require a browser which supports frames</i>
</p>
</noframes>

		
<script type='text/javascript'>

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-2887186-1']);
  _gaq.push(['_setAllowLinker', true]);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();	

</script>	

</body>

</html>

[-] Cannot reliably check exploitability. Unable to obtain the value of the `nsp_str` token required for authentication
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

This also fails when using VERSION as 2012R2.9 is not in the expected format.

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set version 2012R2.9
version => 2012R2.9
rmsf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[-] Invalid version format: `2012R2.9`. Please provide an existing Nagios XI version or use `unset VERSION` to cancel
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

As per the version history, the versioning scheme changed from <YYYY>r<version> in 2015 with the release of the 5.x branch.

@bcoles
Copy link
Contributor

bcoles commented Feb 6, 2021

After resolving the comments above (locally), the scanner works on several of my Nagios XI test systems (but not on 2012R2.9, released 2014-02-11):

[*] Target is Nagios XI with version 5.2.3
[+] The target appears to be vulnerable to the following 2 exploit(s):
[*] 
[*] 	CVE-2019-15949	exploit/linux/http/nagios_xi_plugins_check_ping_authenticated_rce
[*] 	CVE-2020-35578	exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] Target is Nagios XI with version 5.4.4
[+] The target appears to be vulnerable to the following 2 exploit(s):
[*] 
[*] 	CVE-2019-15949	exploit/linux/http/nagios_xi_plugins_check_ping_authenticated_rce
[*] 	CVE-2020-35578	exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] Target is Nagios XI with version 5.4.10
[+] The target appears to be vulnerable to the following 2 exploit(s):
[*] 
[*] 	CVE-2019-15949	exploit/linux/http/nagios_xi_plugins_check_ping_authenticated_rce
[*] 	CVE-2020-35578	exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] Target is Nagios XI with version 5.6.7
[+] The target appears to be vulnerable to the following 1 exploit(s):
[*] 
[*] 	CVE-2020-35578	exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] Target is Nagios XI with version 5.7.5
[+] The target appears to be vulnerable to the following 1 exploit(s):
[*] 
[*] 	CVE-2020-35578	exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
[*] Target is Nagios XI with version 5.8.1
[-] The target is not exploitable. Nagios XI version 5.8.1 doesn't match any exploit modules.
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

@ErikWynter
Copy link
Contributor Author

Thanks a ton for testing all of this and for the great suggestions @bcoles!! I will dig into this next week :)

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Feb 12, 2021

The latest commit fixes the most straightforward issues found by @bcoles . I still need to set up an older Nagios XI version so I can test it though. I also want to look into some of the edge cases that were mentioned, though I personally don't think it's necessary to try and make this compatible with very old versions like 2012R2.9.

Regarding the issues with the cookie jar, I think I found a fix for this by simply using get_cookies instead, which makes it relatively straightforward to remove the pre-authentication cookies from the cookies obtained after the login request, and to do so only in cases where those differ from the post-authentication cookies. This works against newer versions that send multiple cookies, but still needs to be tested against versions where the same cookie is sent before and after authentication. Was this on version 5.4.4 @bcoles ? I plan to set up at least one older NagiosXI version, so would be good to know which one. :)

@bcoles
Copy link
Contributor

bcoles commented Feb 13, 2021

I personally don't think it's necessary to try and make this compatible with very old versions like 2012R2.9.

I used 2012R2.9 as a sample of a very old version. The versioning scheme changing in 2015 which is "only" 6 years ago. It's probably not necessary to support these old versions, but it would be a "nice to have" feature, especially as Metasploit contains at least two modules which target these versions:

  • modules/exploits/unix/webapp/nagios3_history_cgi.rb
  • modules/exploits/unix/webapp/nagios3_statuswml_ping.rb

Edit: To clarify: it's a "nice to have", but totally ok not to include it. This module is specifically a NagiosXI scanner, not a Nagios3 scanner.

This works against newer versions that send multiple cookies, but still needs to be tested against versions where the same cookie is sent before and after authentication. Was this on version 5.4.4 @bcoles ? I plan to set up at least one older NagiosXI version, so would be good to know which one. :)

I think it changed somewhere around 5.4, but I'm not sure that it was consistent. I changed .first to .last a bunch of times while testing, as sometimes the first cookie was valid and sometimes the last cookie was valid. I suggest setting up a few older versions to test. You'll need to set up fresh systems to the edge cases - may as well test on a few versions rather than rebuild the same version over and over.

@gwillcox-r7
Copy link
Contributor

gwillcox-r7 commented Feb 23, 2021

Rebasing this to pull in recent changes and since there are other modules in the queue that depend on this PR being landed so it would be good to get this into the framework so we can start looking at those in more detail. Edit: Also so I can check if the failure on the sanity checks is due to something in the code here or just due to a lack of rebasing.

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Feb 23, 2021

Thanks for rebasing @gwillcox-r7 ! I have made a few more changes that I am hoping to push this week. I have successfully tested my new approach for dealing with cookies on a 5.3.0 system and I also added functionality to finish the Nagios XI installation and / or sign the license agreement if this hasn't been done yet. I still need to do a little more testing before I can push this though.

@gwillcox-r7
Copy link
Contributor

@kalba-security Can I go ahead and mark your PRs as draft for now then until they are ready to be merged in?

@ErikWynter
Copy link
Contributor Author

@gwillcox-r7 I assume that doesn't affect this PR other than that it's being labeled differently here? In that case, go ahead!

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Mar 26, 2021

Sounds good! Let me know if you want me to do a final test run at that point. I've got 4-5 different versions set up and can also use snapshots to test from before the full installation for at least 2 of them.

@gwillcox-r7
Copy link
Contributor

 NO CVE AVAILABLE                exploit/linux/http/nagios_xi_chained_rce

[] CVE-2018-15708,15710 exploit/linux/http/nagios_xi_magpie_debug
[
] CVE-2019-15949 exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] CVE-2018-8733,8734,8735,8736

Only concern with this is the way the CVE numbers are represented, however I can understand that this might make sense for reducing output length so I'm 50/50 on this as whilst it does reduce output length it may not be obvious to some people which CVE is being referenced here. Going to update this as part of my fixes since some people mentioned this reduces the copy paste ability.

@gwillcox-r7
Copy link
Contributor

Okay pushing up a fix for several issues now, still remains the outstanding issue of several functions returning nil but you act as though they will never return nil and never check their return values.

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Mar 26, 2021

 NO CVE AVAILABLE                exploit/linux/http/nagios_xi_chained_rce

[] CVE-2018-15708,15710 exploit/linux/http/nagios_xi_magpie_debug
[
] CVE-2019-15949 exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] CVE-2018-8733,8734,8735,8736

Only concern with this is the way the CVE numbers are represented, however I can understand that this might make sense for reducing output length so I'm 50/50 on this as whilst it does reduce output length it may not be obvious to some people which CVE is being referenced here. Going to update this as part of my fixes since some people mentioned this reduces the copy paste ability.

Yeah @gwillcox-r7 honestly I wasn't sure about this myself either. As you mentioned, my goal was to strike a balance between output length and readability. A solution for this might be to make the hash key into an Array that we can then populate with multiple CVEs if necessary. Then while printing we could print the CVEs on one line and the module on the next so you'd get something like this:

[*]    CVE(s): CVE-2018-15708 , CVE-2018-15710:
[*]          Module: exploit/linux/http/nagios_xi_magpie_debug
[*]    CVE(s): CVE-2019-15949:
[*]          Module: exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce

But this may also be confusing.
Or we could print the module first and then the CVEs below it like:

[*]    Module: exploit/linux/http/nagios_xi_magpie_debug2018-15710:
[*]          CVE(s): CVE-2018-15708,  CVE-2018-15710
[*]    Module: exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*]          CVE(s): CVE-2019-15949

I'm not sure what the best way to go is here, so feel free to pick whatever you think works.

@gwillcox-r7
Copy link
Contributor

 NO CVE AVAILABLE                exploit/linux/http/nagios_xi_chained_rce

[] CVE-2018-15708,15710 exploit/linux/http/nagios_xi_magpie_debug
[
] CVE-2019-15949 exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] CVE-2018-8733,8734,8735,8736

Only concern with this is the way the CVE numbers are represented, however I can understand that this might make sense for reducing output length so I'm 50/50 on this as whilst it does reduce output length it may not be obvious to some people which CVE is being referenced here. Going to update this as part of my fixes since some people mentioned this reduces the copy paste ability.

Hey honestly I wasn't sure about this myself either. As you mentioned, my goal was to strike a balance between output length and readability. A solution for this might be to make the hash key into an Array that we can then populate with multiple CVEs if necessary. Then while printing we could print the CVEs on one line and the module on the next so you'd get something like this:

[*]    CVE(s): CVE-2018-15708 , CVE-2018-15710:
[*]          Module: exploit/linux/http/nagios_xi_magpie_debug
[*]    CVE(s): CVE-2019-15949:
[*]          Module: exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce

But this may also be confusing.
Or we could print the module first and then the CVEs below it like:

[*]    Module: exploit/linux/http/nagios_xi_magpie_debug2018-15710:
[*]          CVE(s): CVE-2018-15708,  CVE-2018-15710
[*]    Module: exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*]          CVE(s): CVE-2019-15949

1dbf165 should contain some fixes to address this output issue.

@ErikWynter
Copy link
Contributor Author

Okay pushing up a fix for several issues now, still remains the outstanding issue of several functions returning nil but you act as though they will never return nil and never check their return values.

Are you working on this or would you like me to have a look?

@gwillcox-r7
Copy link
Contributor

Okay pushing up a fix for several issues now, still remains the outstanding issue of several functions returning nil but you act as though they will never return nil and never check their return values.

Are you working on this or would you like me to have a look?

Happy for you to have a look, you might have a slightly better idea how you want the program to perform r.e nil checks than me and there were a few places I wasn't sure what the best intention would be. Happy to review after you apply the fixes and once thats done should just be a matter of retesting and landing.

@ErikWynter
Copy link
Contributor Author

Okay will do! I saw your messages on slack btw. We can continue the conversation there :)

@ErikWynter
Copy link
Contributor Author

ErikWynter commented Mar 26, 2021

Okay pushing up a fix for several issues now, still remains the outstanding issue of several functions returning nil but you act as though they will never return nil and never check their return values.

Are you working on this or would you like me to have a look?

Happy for you to have a look, you might have a slightly better idea how you want the program to perform r.e nil checks than me and there were a few places I wasn't sure what the best intention would be. Happy to review after you apply the fixes and once thats done should just be a matter of retesting and landing.

Hey @gwillcox-r7 I just went through all the code and I didn't find any unchecked potential nil instances. Below is a list of methods that can return nil plus indications where we are checking for that:

login.rb:

  • clean_cookies can return nil if the parameters are nil. this method is only called from login.rb , and it is ensured that it is not called with nil or empty parameters on line 45 and 73
  • get_nsp can return nil. in login.rb, this is checked on line 40 and line 148 (I'm pushing a change to make this 147)

version.rb

  • nagios_xi_version can return nil. this method is only called from nagios_xi_scanner.rb, which checks for it on line 210

install.rb

  • install_nagios_xi can return nil. this method is only called from nagios_xi_scanner.rb, which checks for it on line 168
  • sign_license_agreement can return nil. this method is only called from nagios_xi_scanner.rb, which checks for it on line 189

Please let me know in case I missed something.

@ErikWynter
Copy link
Contributor Author

btw, 83e31ae simply adds a minor change to use safe navigation instead of rescue in get_nsp, like we are already doing elsewhere

@ErikWynter
Copy link
Contributor Author

Added a small change because I noticed that your change in 9039b56 broke the regex in nagios_xi_version . It seems that you wanted to use + instead of * in the capture group, but you changed it from (.*?) to (.*+) and that didn't work. I changed it to (.+?) now, which does work.

@gwillcox-r7
Copy link
Contributor

Added a small change because I noticed that your change in 9039b56 broke the regex in nagios_xi_version . It seems that you wanted to use + instead of * in the capture group, but you changed it from (.*?) to (.*+) and that didn't work. I changed it to (.+?) now, which does work.

Woops thanks I typoed that it seems 😓

@gwillcox-r7
Copy link
Contributor

Nagios 5.6.5
msf6 auxiliary(scanner/http/nagios_xi_scanner) > set RHOSTS 172.30.211.91
RHOSTS => 172.30.211.91
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[!] No credentials provided. Attempting to obtain the Nagios XI version from the login page. This will not work for newer versions.
[-] 172.30.211.91:80 - Unable to obtain Nagios XI version from the login page.
[!] Please provide a valid Nagios XI USERNAME and PASSWORD, or a specific VERSION to check
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > show options

Module options (auxiliary/scanner/http/nagios_xi_scanner):

   Name            Current Setting  Required  Description
   ----            ---------------  --------  -----------
   FINISH_INSTALL  false            no        If the Nagios XI installation has not been completed, try to do so. This includes s
                                              igning the license agreement.
   PASSWORD                         no        Password to authenticate with
   Proxies                          no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS          172.30.211.91    yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   RPORT           80               yes       The target port (TCP)
   SSL             false            no        Negotiate SSL/TLS for outgoing connections
   TARGETURI       /nagiosxi/       yes       The base path to the Nagios XI application
   THREADS         1                yes       The number of concurrent threads (max one per host)
   USERNAME        nagiosadmin      no        Username to authenticate with
   VERSION                          no        Nagios XI version to check against existing exploit modules
   VHOST                            no        HTTP server virtual host

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set PASSWORD nagiosadmin
PASSWORD => nagiosadmin
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[*] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 5.6.5
[+] The target appears to be vulnerable to the following 4 exploit(s):
[*] 
[*] 	CVE-2019-15949    exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] 	CVE-2020-35578    exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 	CVE-2020-5792     exploit/linux/http/nagios_xi_snmptrap_authenticated_rce
[*] 	CVE-2020-5791     exploit/linux/http/nagios_xi_mibs_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

@gwillcox-r7
Copy link
Contributor

gwillcox-r7 commented Mar 26, 2021

Hmm seems there is a slight issue with the auto install setup on Nagios 5.8.2, wouldn't install until after I had proceeded past the first few steps and it was on to trying to sign the license. See below. Otherwise works fine:

Nagios 5.8.2 ``` msf6 auxiliary(scanner/http/nagios_xi_scanner) > set RHOSTS 172.30.211.121 RHOSTS => 172.30.211.121 msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[-] 172.30.211.121:80 - You can let the module complete the installation by setting FINISH_INSTALL to true.
[
] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > set FINISH_INSTALL true
FINISH_INSTALL => true
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[
] Attempting to finish the Nagios XI installation on the target using the provided password. The username will be nagiosadmin.
[-] 172.30.211.121:80 - Received unexpected reply while trying to install Nagios XI on the target.
[] Scanned 1 of 1 hosts (100% complete)
[
] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[
] Attempting to finish the Nagios XI installation on the target using the provided password. The username will be nagiosadmin.
[-] 172.30.211.121:80 - Received unexpected reply while trying to install Nagios XI on the target.
[] Scanned 1 of 1 hosts (100% complete)
[
] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[] Attempting to authenticate to Nagios XI...
[!] The Nagios XI license agreement has not yet been signed on the target.
[
] Attempting to sign the Nagios XI license agreement...
[] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[
] Target is Nagios XI with version 5.8.2
[-] Nagios XI version 5.8.2 doesn't match any exploit modules.
[] Scanned 1 of 1 hosts (100% complete)
[
] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) >

</details>

@gwillcox-r7
Copy link
Contributor

Nagios 5.5.6 is working well as well:

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set RHOSTS 172.30.212.61
RHOSTS => 172.30.212.61
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[*] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 5.5.6
[+] The target appears to be vulnerable to the following 4 exploit(s):
[*] 
[*] 	CVE-2018-15708, CVE-2018-15710    exploit/linux/http/nagios_xi_magpie_debug
[*] 	CVE-2019-15949                    exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] 	CVE-2020-35578                    exploit/linux/http/nagios_xi_plugins_filename_authenticated_rce
[*] 	CVE-2020-5792                     exploit/linux/http/nagios_xi_snmptrap_authenticated_rce
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

@ErikWynter
Copy link
Contributor Author

Hmm seems there is a slight issue with the auto install setup on Nagios 5.8.2, wouldn't install until after I had proceeded past the first few steps and it was on to trying to sign the license. See below. Otherwise works fine:

I haven't tested this module on any of the 3.8.x versions, so I suppose they changed something in the installation, probably starting at 3.8.0. With older versions completing the installation was as simple as grabbing cookies and tokens from one page and then sending a single POST request. You could check if there's an easy way to get it working for 3.8.x targets as well, but I don't think it's very important atm since we don't have any modules to exploit 3.8.x targets yet anyway. When a module for later versions is added at some point, this functionality can always be added along with that PR.

@gwillcox-r7
Copy link
Contributor

Hmm seems there is a slight issue with the auto install setup on Nagios 5.8.2, wouldn't install until after I had proceeded past the first few steps and it was on to trying to sign the license. See below. Otherwise works fine:

I haven't tested this module on any of the 3.8.x versions, so I suppose they changed something in the installation, probably starting at 3.8.0. With older versions completing the installation was as simple as grabbing cookies and tokens from one page and then sending a single POST request. You could check if there's an easy way to get it working for 3.8.x targets as well, but I don't think it's very important atm since we don't have any modules to exploit 3.8.x targets yet anyway. When a module for later versions is added at some point, this functionality can always be added along with that PR.

Yep that was my thought, just wanted to make you aware of it but agree its not a blocker for this PR.

@gwillcox-r7
Copy link
Contributor

Testing 5.2.8 now as this was a special case, had to use https://webcache.googleusercontent.com/search?q=cache:nR-QXLUIq3cJ:https://support.nagios.com/forum/viewtopic.php%3Ff%3D6%26t%3D41204+&cd=1&hl=en&ct=clnk&gl=us to fix up a typo in the ./D-chkconfigalldaemons script where -e was used instead of -x after /bin/bash.

@gwillcox-r7
Copy link
Contributor

gwillcox-r7 commented Mar 26, 2021

Oof I'm an idiot it was version prior to 5.2.8, but at least here is the output from 5.2.8 showing it works and that testing the edge case doesn't result in a false positive.

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set RHOSTS 172.30.211.220
RHOSTS => 172.30.211.220
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[*] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[*] Attempting to finish the Nagios XI installation on the target using the provided password. The username will be `nagiosadmin`.
[*] Attempting to authenticate to Nagios XI...
[!] The Nagios XI license agreement has not yet been signed on the target.
[*] Attempting to sign the Nagios XI license agreement...
[*] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 5.2.8
[+] The target appears to be vulnerable to the following 3 exploit(s):
[*] 
[*] 	CVE-2018-15708, CVE-2018-15710                                exploit/linux/http/nagios_xi_magpie_debug
[*] 	CVE-2019-15949                                                exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] 	CVE-2018-8733, CVE-2018-8734, CVE-2018-8735, CVE-2018-8736    exploit/linux/http/nagios_xi_chained_rce_2_electric_boogaloo
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

@gwillcox-r7
Copy link
Contributor

Nagios 5.2.7 showing that the newly added check is working correctly. Only one more version check to do (random really old version prior to Nagios XI 5.x to make sure we return the right info).

msf6 auxiliary(scanner/http/nagios_xi_scanner) > set RHOSTS 172.30.211.220
RHOSTS => 172.30.211.220
msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[*] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[*] Attempting to finish the Nagios XI installation on the target using the provided password. The username will be `nagiosadmin`.
[*] Attempting to authenticate to Nagios XI...
[!] The Nagios XI license agreement has not yet been signed on the target.
[*] Attempting to sign the Nagios XI license agreement...
[*] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 5.2.7
[+] The target appears to be vulnerable to the following 4 exploit(s):
[*] 
[*] 	NO CVE AVAILABLE                                              exploit/linux/http/nagios_xi_chained_rce
[*] 	CVE-2018-15708, CVE-2018-15710                                exploit/linux/http/nagios_xi_magpie_debug
[*] 	CVE-2019-15949                                                exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
[*] 	CVE-2018-8733, CVE-2018-8734, CVE-2018-8735, CVE-2018-8736    exploit/linux/http/nagios_xi_chained_rce_2_electric_boogaloo
[*] 
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

@gwillcox-r7
Copy link
Contributor

Okay awesome this also correctly detects that older versions prior to version 5 can't be tested, but it still works with finishing the setup:

msf6 auxiliary(scanner/http/nagios_xi_scanner) > show options

Module options (auxiliary/scanner/http/nagios_xi_scanner):

   Name            Current Setting  Required  Description
   ----            ---------------  --------  -----------
   FINISH_INSTALL  true             no        If the Nagios XI installation has not been completed, try to do so. This includes s
                                              igning the license agreement.
   PASSWORD        nagiosadmin      no        Password to authenticate with
   Proxies                          no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS          172.30.211.220   yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   RPORT           80               yes       The target port (TCP)
   SSL             false            no        Negotiate SSL/TLS for outgoing connections
   TARGETURI       /nagiosxi/       yes       The base path to the Nagios XI application
   THREADS         1                yes       The number of concurrent threads (max one per host)
   USERNAME        nagiosadmin      no        Username to authenticate with
   VERSION                          no        Nagios XI version to check against existing exploit modules
   VHOST                            no        HTTP server virtual host

msf6 auxiliary(scanner/http/nagios_xi_scanner) > run

[*] Attempting to authenticate to Nagios XI...
[!] The target seems to be a Nagios XI application that has not been fully installed yet.
[*] Attempting to finish the Nagios XI installation on the target using the provided password. The username will be `nagiosadmin`.
[*] Attempting to authenticate to Nagios XI...
[!] The Nagios XI license agreement has not yet been signed on the target.
[*] Attempting to sign the Nagios XI license agreement...
[*] Attempting to authenticate to Nagios XI...
[+] Successfully authenticated to Nagios XI
[*] Target is Nagios XI with version 2014R2.7
[-] This module does not support the legacy Nagios XI version 2014R2.7
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
msf6 auxiliary(scanner/http/nagios_xi_scanner) > 

@gwillcox-r7
Copy link
Contributor

Everything looks, going to merge this in so long. Thanks for your patience @kalba-security!

@gwillcox-r7 gwillcox-r7 merged commit 80ae750 into rapid7:master Mar 26, 2021
@gwillcox-r7 gwillcox-r7 added the rn-modules release notes for new or majorly enhanced modules label Mar 26, 2021
@gwillcox-r7
Copy link
Contributor

gwillcox-r7 commented Mar 26, 2021

Release Notes

New module auxiliary/scanner/http/nagios_xi_scanner will scan for Nagios XI installations and try to detect their version, then suggest applicable exploit modules in Metasploit based on discovered Nagios XI versions. Additionally, a new set of libraries have been added to support developers wishing to target Nagios XI machines, which should help to supply developers with several commonly used pieces of functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs library module rn-modules release notes for new or majorly enhanced modules
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants