Returning 10 result(s) out of 65,024 in 0.105 second(s)

  • 210.193.12.197:81 (tcp/http) - last seen on 2024-11-07 at 05:25:24 UTC

    • IP
      210.193.12.197
      Network
      210.193.0.0/18
      Domain(s)
      m1net.com.sg
      Device

      <enterprise field>: device.class

      Operating System
      Microsoft Windows
      URL

      http://210.193.12.197:81/ 200

      HTTP Title
      Welcome to SmarTime Login
      Reverse DNS
      197.210-193-12.ngn.m1net.com.sg
      ASN
      AS17547
      Organization
      M1 NET LTD
      Protocol
      http
      Source
      datascan
    • Operating System
      Microsoft Windows
      Product
      Microsoft IIS 7.5
      HTTP Component(s)
      Microsoft ASP.NET 4.0.30319
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      51f50a085d2e7b062f6ddf44a08d1791
      HTTP Header MD5
      68129d8bb0a7bbc83137e14ab85fdd03
      HTTP Body MD5
      2862e2785e183eb5a5a8b516bd1bee54
    • HTTP/1.1 200 OK
      Cache-Control: private
      Content-Type: text/html; charset=utf-8
      Server: Microsoft-IIS/7.5
      X-AspNet-Version: 4.0.30319
      X-Powered-By: ASP.NET
      Date: Thu, 07 Nov 2024 05:25:25 GMT
      Connection: close
      Content-Length: 11204
      
      
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html><head><title>Welcome to SmarTime Login</title>
          <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
          <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
          <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" />
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      
      <style type=text/css>
          body {
              height: 100%;
              background-color: #F9F8F8;
              margin: 0px;
              padding:0px;
              font-family: Verdana, Arial, Helvetica, sans-serif;
              font-size: 11px;
              font-weight: normal;
              color: #000000;}
          A:link {
      	    COLOR: #FF0000; 
          TEXT-DECORATION: none
              }
          A:visited {
      	    COLOR: #00238a; TEXT-DECORATION: none
          }
          A:hover {
      	    TEXT-DECORATION: underline
          }
          A:active {
      	    TEXT-DECORATION: underline
          }
          A#forgot {
      	    COLOR: #444444; TEXT-DECORATION: underline
          }
          A#forgot:hover {
      	    BORDER-LEFT-COLOR: #666666; BORDER-BOTTOM-COLOR: #666666; COLOR: #0f0f0f; BORDER-TOP-COLOR: #666666; TEXT-DECORATION: underline; BORDER-RIGHT-COLOR: #666666
          }
          INPUT#txtPassword {
      	    border: 1px solid #999999;
                  FONT-SIZE: small;     
          WIDTH: 250px;     color: #0000FF;
              }
          INPUT#txtUserID {
      	    border: 1px solid #999999;
                  FONT-SIZE: small;     
          WIDTH: 250px;     color: #0000FF;
              }
          SELECT#ddlCompany {
      	    border: 1px solid #999999;
                  FONT-SIZE: small;     
          WIDTH: 255px;     color: #0000FF;
              }
          TABLE {
      	    FONT-SIZE: 11px; COLOR: #444444
          }
          H2 {
      	    FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 5px; MARGIN: 0px 0px 5px; COLOR: #5e77b2; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;
                  text-align: center;
              }
          H3 {
      	    FONT-SIZE: 12px; MARGIN: 5px 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
          }
          #header {
      	    BACKGROUND: url(img/head_tile.jpg) #ffffff no-repeat right top; WIDTH: 100%; BORDER-BOTTOM: #7083e1 2px solid; POSITION: relative; HEIGHT: 50px! important
          }
          #header H1 {
      	    padding: 0px;
                  BACKGROUND: url(images/logo_hsphere.gif) no-repeat;     MARGIN: 0px;     WIDTH: 214px;     TEXT-INDENT: -2000em;     HEIGHT: 60px
              }
          #header #logo {
      	    RIGHT: 0px; BACKGROUND: url(images/parallels.logo.gif); WIDTH: 169px; POSITION: absolute; TOP: 0px; HEIGHT: 60px
          }
          DIV#centered {
      	    border: 2px solid #b1c5de;
                  padding: 10px;
                  BACKGROUND: url(images/box.jpg) #ffffff no-repeat;     MARGIN: 40px auto;     OVERFLOW: hidden; WIDTH: 400px; 
                  COLOR: black;     TEXT-ALIGN: right
              }
          .aligncenter {
      	    TEXT-ALIGN: center
          }
          #content {
      	    FLOAT: right; WIDTH: 320px; TEXT-ALIGN: left
          }
          SMALL {
      	    DISPLAY: block; FONT-SIZE: x-small; TEXT-ALIGN: right
          }
          #copyright {
      	    FONT-WEIGHT: normal; FONT-SIZE: 11px; RIGHT: 190px; WIDTH: auto; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 15px; TEXT-ALIGN: right
          }
          #copyright A {
      	    COLOR: #ffffff
          }
          #copyright A:hover {
      	    TEXT-DECORATION: none
          }
          .but_log {
      	    border-style: none;
              border-color: inherit;
              border-width: medium;
              FONT-SIZE: 11px;     BACKGROUND: url(images/button.gif);     WIDTH: 91px;     FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;     HEIGHT: 21px;
              text-align: center;
              }
          .but_log2 {
      	    BORDER-RIGHT: medium none; BORDER-TOP: medium none; FONT-SIZE: 11px; BACKGROUND: url(images/button2.gif); BORDER-LEFT: medium none; WIDTH: 144px; BORDER-BOTTOM: medium none; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 21px
          }
          #bottom {
      	    BACKGROUND: #8ea5ec; WIDTH: 100%; BOTTOM: 0px; POSITION: absolute; HEIGHT: 38px! important
          }
          #bottom_text {
      	    FONT-WEIGHT: normal; FONT-SIZE: 11px; LEFT: 10px; COLOR: #00238a; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 13px; TEXT-ALIGN: left
          }
          #bottom_but {
      	    FONT-WEIGHT: normal; FONT-SIZE: 11px; RIGHT: 10px; COLOR: #00238a; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 5px; TEXT-ALIGN: right
          }
          .btnColor
          {
      	     FONT-WEIGHT: bold;
      	     background:  url(../img/menu.jpg) no-repeat top; 
      	     color:White; 
      	     FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;
          }
          .style1
          {
              color: #0000FF;
          }
          .style2
          {
              color: #000000;
              width: 725px;
          }
          .style3
          {
              width: 725px;
          }
          .style4
          {
              width: 197px;
          }
          .style5
          {
              width: 166px;
          }
          .style6
          {
              width: 703px;
              color: #FFFFFF;
          }
          .style7
          {
              color: #FFFFFF;
          }
      </style>
      
      <meta content="MSHTML 6.00.5730.13" name="GENERATOR" /></head>
      <body onload = "javascript:document.form1.txtUserID.focus();">
      <form name="form1" method="post" action="./" onsubmit="javascript:return WebForm_OnSubmit();" id="form1">
      <div>
      <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
      <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
      <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTc5NTA1Nzc2Mw9kFgICAQ9kFgQCAQ8PFgIeBFRleHRlZGQCCw8QDxYGHg1EYXRhVGV4dEZpZWxkBQhDb21fRGVzYx4ORGF0YVZhbHVlRmllbGQFCENvbV9Db2RlHgtfIURhdGFCb3VuZGdkEBUBEkJPSUxFUk1BU1RFUiBHUk9VUBUBAkJNFCsDAWdkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUNY2hrU3RhZmZMb2dpbv5F25tACauLGRtC9PNbf1Zk2e1TyzHfLhgiBBWFyNHL" />
      </div>
      
      <script type="text/javascript">
      //<![CDATA[
      var theForm = document.forms['form1'];
      if (!theForm) {
          theForm = document.form1;
      }
      function __doPostBack(eventTarget, eventArgument) {
          if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
              theForm.__EVENTTARGET.value = eventTarget;
              theForm.__EVENTARGUMENT.value = eventArgument;
              theForm.submit();
          }
      }
      //]]>
      </script>
      
      
      
      <script src="/WebResource.axd?d=jqTp9dE7LxVKnDzzlxO7Uc0gptu4XYMvnJhzIFT_xcdZIs5ehXDCXKkH8dxIpIpEoQJBkdW0m1Xr8uuOmJWV1tjRzlS8mjz2vH8O1zBMmjU1&amp;t=636576782940000000" type="text/javascript"></script>
      <script type="text/javascript">
      //<![CDATA[
      function WebForm_OnSubmit() {
      if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false;
      return true;
      }
      //]]>
      </script>
      
      <div>
      
      	<input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="CA0B0334" />
      	<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEdAAd9/+aKyDIpIgl83fe6cboT9Tt6KoVd96dN6zOjIKoOlHY2+Mc6SrnAqio3oCKbxYYWVCDmwKE2Ztwdvpq5D+OZmyz+krmEM5s7vRqUsNRBh6KeKEbp39eHc9mbdvkCgxDZSBEyYVEUHTBPdIEnjDeEJkROpRD2H3TYepL6d90LWR8xnq0zdp+P+LKmo188zHY=" />
      </div>
      <div id=header>
      <div id=logo1>
      </div>    
      </div>
      <div class=aligncenter>
      <div id=centered>
        <table width="400" border="0">
        <tbody>
        <tr>
          <td colSpan=5>
              <h2 class="style1">Welcome to V1SOHO 9.0 Login</h2>
          </td>
          <td>
              &nbsp;</td></tr>
        <tr>
          <td colSpan=6 class="style7">v2.1.11.26</td>
          <td>
              &nbsp;</td></tr>
        <tr>
          <td colSpan=5>
              <span id="lblFailureText" style="color:Red;"></span>
          </td>
          <td>
              </td></tr>
        <tr>
          <td class="style2" colspan="2">User ID:</td>
          <td align=right colspan="3">
              <input name="txtUserID" type="text" id="txtUserID" style="color:Blue;font-size:Medium;width:250px;" />
          </td>
          <td align=right>
              <span id="RFtxtUserID" style="color:Red;visibility:hidden;">*</span>
          </td></tr>
        <tr>
          <td class="style2" colspan="2">Password:</td>
          <td align=right colspan="3">
              <input name="txtPassword" type="password" id="txtPassword" style="color:Blue;font-size:Medium;width:250px;" /></td>
          <td align=right>
              <span id="RFtxtPassword" style="color:Red;visibility:hidden;">*</span>
            </td></tr>
        <tr>
          <td class="style2" colspan="2">Company:</td>
          <td align=right colspan="3">
              <select name="ddlCompany" id="ddlCompany" style="color:Blue;font-size:Medium;width:254px;">
      	<option value="BM">BOILERMASTER GROUP</option>
      
      </select>
          </td>
          <td align=right>
          </td></tr>
        <tr>
          <td align="center" style="text-align: right" class="style6">padding .....</td>
          <td align="center" style="text-align: right" class="style3">&nbsp;</td>
          <td align="center" style="text-align: left" class="style5">
              <span style="text-align: left; color: #000000;"><input id="chkStaffLogin" type="checkbox" name="chkStaffLogin" /><label for="chkStaffLogin">Login as Staff</label></span>
          </td>
          <td align="center" style="text-align: left" class="style4">
              &nbsp;</td>
          <td style="text-align: center">
              <input type="submit" name="btnLogin" value="Login" id="btnLogin" class="but_log" style="color:White;background-color:Blue;font-weight:bold;height:21px;width:52px;" />
          </td>
          <td align=right >&nbsp;</td></tr>  
        <tr>
          <td align="center" style="text-align: right" class="style6">&nbsp;</td>
          <td align="center" style="text-align: right" class="style3">&nbsp;</td>
          <td align="center" style="text-align: left" class="style5">
              <a id="lnkForgotPassword" href="javascript:__doPostBack(&#39;lnkForgotPassword&#39;,&#39;&#39;)">Forgot Password?</a>
          </td>
          <td align="center" style="text-align: left" class="style4">
              &nbsp;</td>
          <td style="text-align: center">
              &nbsp;</td>
          <td align=right >&nbsp;</td></tr>  
                             </tbody>
          </table>
          </div></div>
      <div id=bottom>
      </div>
      <script type="text/javascript">
      //<![CDATA[
      var Page_Validators =  new Array(document.getElementById("RFtxtUserID"), document.getElementById("RFtxtPassword"));
      //]]>
      </script>
      
      <script type="text/javascript">
      //<![CDATA[
      var RFtxtUserID = document.all ? document.all["RFtxtUserID"] : document.getElementById("RFtxtUserID");
      RFtxtUserID.controltovalidate = "txtUserID";
      RFtxtUserID.errormessage = "*";
      RFtxtUserID.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
      RFtxtUserID.initialvalue = "";
      var RFtxtPassword = document.all ? document.all["RFtxtPassword"] : document.getElementById("RFtxtPassword");
      RFtxtPassword.controltovalidate = "txtPassword";
      RFtxtPassword.errormessage = "*";
      RFtxtPassword.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
      RFtxtPassword.initialvalue = "";
      //]]>
      </script>
      
      
      <script type="text/javascript">
      //<![CDATA[
      
      var Page_ValidationActive = false;
      if (typeof(ValidatorOnLoad) == "function") {
          ValidatorOnLoad();
      }
      
      function ValidatorOnSubmit() {
          if (Page_ValidationActive) {
              return ValidatorCommonOnSubmit();
          }
          else {
              return true;
          }
      }
              //]]>
      </script>
      </form></body></html>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:25:24.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "w3.org"
               ],
               "hostname" : [
                  "www.w3.org"
               ],
               "ip" : [
                  "2.1.11.26"
               ],
               "url" : [
                  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
               ]
            },
            "http" : {
               "bodymd5" : "2862e2785e183eb5a5a8b516bd1bee54",
               "bodymmh3" : 1870236848,
               "component" : [
                  {
                     "product" : "ASP.NET",
                     "productvendor" : "Microsoft",
                     "productversion" : "4.0.30319"
                  }
               ],
               "headermd5" : "68129d8bb0a7bbc83137e14ab85fdd03",
               "headermmh3" : 555268234,
               "title" : "Welcome to SmarTime Login"
            },
            "length" : 11445
         },
         "asn" : "AS17547",
         "city" : "Singapore",
         "country" : "SG",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.1 200 OK\r\nCache-Control: private\r\nContent-Type: text/html; charset=utf-8\r\nServer: Microsoft-IIS/7.5\r\nX-AspNet-Version: 4.0.30319\r\nX-Powered-By: ASP.NET\r\nDate: Thu, 07 Nov 2024 05:25:25 GMT\r\nConnection: close\r\nContent-Length: 11204\r\n\r\n\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html><head><title>Welcome to SmarTime Login</title>\r\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=EmulateIE7\" />\r\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=EmulateIE8\" />\r\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=EmulateIE9\" />\r\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />\r\n\r\n<style type=text/css>\r\n    body {\r\n        height: 100%;\r\n        background-color: #F9F8F8;\r\n        margin: 0px;\r\n        padding:0px;\r\n        font-family: Verdana, Arial, Helvetica, sans-serif;\r\n        font-size: 11px;\r\n        font-weight: normal;\r\n        color: #000000;}\r\n    A:link {\r\n\t    COLOR: #FF0000; \r\n    TEXT-DECORATION: none\r\n        }\r\n    A:visited {\r\n\t    COLOR: #00238a; TEXT-DECORATION: none\r\n    }\r\n    A:hover {\r\n\t    TEXT-DECORATION: underline\r\n    }\r\n    A:active {\r\n\t    TEXT-DECORATION: underline\r\n    }\r\n    A#forgot {\r\n\t    COLOR: #444444; TEXT-DECORATION: underline\r\n    }\r\n    A#forgot:hover {\r\n\t    BORDER-LEFT-COLOR: #666666; BORDER-BOTTOM-COLOR: #666666; COLOR: #0f0f0f; BORDER-TOP-COLOR: #666666; TEXT-DECORATION: underline; BORDER-RIGHT-COLOR: #666666\r\n    }\r\n    INPUT#txtPassword {\r\n\t    border: 1px solid #999999;\r\n            FONT-SIZE: small;     \r\n    WIDTH: 250px;     color: #0000FF;\r\n        }\r\n    INPUT#txtUserID {\r\n\t    border: 1px solid #999999;\r\n            FONT-SIZE: small;     \r\n    WIDTH: 250px;     color: #0000FF;\r\n        }\r\n    SELECT#ddlCompany {\r\n\t    border: 1px solid #999999;\r\n            FONT-SIZE: small;     \r\n    WIDTH: 255px;     color: #0000FF;\r\n        }\r\n    TABLE {\r\n\t    FONT-SIZE: 11px; COLOR: #444444\r\n    }\r\n    H2 {\r\n\t    FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 5px; MARGIN: 0px 0px 5px; COLOR: #5e77b2; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;\r\n            text-align: center;\r\n        }\r\n    H3 {\r\n\t    FONT-SIZE: 12px; MARGIN: 5px 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif\r\n    }\r\n    #header {\r\n\t    BACKGROUND: url(img/head_tile.jpg) #ffffff no-repeat right top; WIDTH: 100%; BORDER-BOTTOM: #7083e1 2px solid; POSITION: relative; HEIGHT: 50px! important\r\n    }\r\n    #header H1 {\r\n\t    padding: 0px;\r\n            BACKGROUND: url(images/logo_hsphere.gif) no-repeat;     MARGIN: 0px;     WIDTH: 214px;     TEXT-INDENT: -2000em;     HEIGHT: 60px\r\n        }\r\n    #header #logo {\r\n\t    RIGHT: 0px; BACKGROUND: url(images/parallels.logo.gif); WIDTH: 169px; POSITION: absolute; TOP: 0px; HEIGHT: 60px\r\n    }\r\n    DIV#centered {\r\n\t    border: 2px solid #b1c5de;\r\n            padding: 10px;\r\n            BACKGROUND: url(images/box.jpg) #ffffff no-repeat;     MARGIN: 40px auto;     OVERFLOW: hidden; WIDTH: 400px; \r\n            COLOR: black;     TEXT-ALIGN: right\r\n        }\r\n    .aligncenter {\r\n\t    TEXT-ALIGN: center\r\n    }\r\n    #content {\r\n\t    FLOAT: right; WIDTH: 320px; TEXT-ALIGN: left\r\n    }\r\n    SMALL {\r\n\t    DISPLAY: block; FONT-SIZE: x-small; TEXT-ALIGN: right\r\n    }\r\n    #copyright {\r\n\t    FONT-WEIGHT: normal; FONT-SIZE: 11px; RIGHT: 190px; WIDTH: auto; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 15px; TEXT-ALIGN: right\r\n    }\r\n    #copyright A {\r\n\t    COLOR: #ffffff\r\n    }\r\n    #copyright A:hover {\r\n\t    TEXT-DECORATION: none\r\n    }\r\n    .but_log {\r\n\t    border-style: none;\r\n        border-color: inherit;\r\n        border-width: medium;\r\n        FONT-SIZE: 11px;     BACKGROUND: url(images/button.gif);     WIDTH: 91px;     FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;     HEIGHT: 21px;\r\n        text-align: center;\r\n        }\r\n    .but_log2 {\r\n\t    BORDER-RIGHT: medium none; BORDER-TOP: medium none; FONT-SIZE: 11px; BACKGROUND: url(images/button2.gif); BORDER-LEFT: medium none; WIDTH: 144px; BORDER-BOTTOM: medium none; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 21px\r\n    }\r\n    #bottom {\r\n\t    BACKGROUND: #8ea5ec; WIDTH: 100%; BOTTOM: 0px; POSITION: absolute; HEIGHT: 38px! important\r\n    }\r\n    #bottom_text {\r\n\t    FONT-WEIGHT: normal; FONT-SIZE: 11px; LEFT: 10px; COLOR: #00238a; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 13px; TEXT-ALIGN: left\r\n    }\r\n    #bottom_but {\r\n\t    FONT-WEIGHT: normal; FONT-SIZE: 11px; RIGHT: 10px; COLOR: #00238a; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: absolute; TOP: 5px; TEXT-ALIGN: right\r\n    }\r\n    .btnColor\r\n    {\r\n\t     FONT-WEIGHT: bold;\r\n\t     background:  url(../img/menu.jpg) no-repeat top; \r\n\t     color:White; \r\n\t     FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;\r\n    }\r\n    .style1\r\n    {\r\n        color: #0000FF;\r\n    }\r\n    .style2\r\n    {\r\n        color: #000000;\r\n        width: 725px;\r\n    }\r\n    .style3\r\n    {\r\n        width: 725px;\r\n    }\r\n    .style4\r\n    {\r\n        width: 197px;\r\n    }\r\n    .style5\r\n    {\r\n        width: 166px;\r\n    }\r\n    .style6\r\n    {\r\n        width: 703px;\r\n        color: #FFFFFF;\r\n    }\r\n    .style7\r\n    {\r\n        color: #FFFFFF;\r\n    }\r\n</style>\r\n\r\n<meta content=\"MSHTML 6.00.5730.13\" name=\"GENERATOR\" /></head>\r\n<body onload = \"javascript:document.form1.txtUserID.focus();\">\r\n<form name=\"form1\" method=\"post\" action=\"./\" onsubmit=\"javascript:return WebForm_OnSubmit();\" id=\"form1\">\r\n<div>\r\n<input type=\"hidden\" name=\"__EVENTTARGET\" id=\"__EVENTTARGET\" value=\"\" />\r\n<input type=\"hidden\" name=\"__EVENTARGUMENT\" id=\"__EVENTARGUMENT\" value=\"\" />\r\n<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\"/wEPDwUKMTc5NTA1Nzc2Mw9kFgICAQ9kFgQCAQ8PFgIeBFRleHRlZGQCCw8QDxYGHg1EYXRhVGV4dEZpZWxkBQhDb21fRGVzYx4ORGF0YVZhbHVlRmllbGQFCENvbV9Db2RlHgtfIURhdGFCb3VuZGdkEBUBEkJPSUxFUk1BU1RFUiBHUk9VUBUBAkJNFCsDAWdkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUNY2hrU3RhZmZMb2dpbv5F25tACauLGRtC9PNbf1Zk2e1TyzHfLhgiBBWFyNHL\" />\r\n</div>\r\n\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nvar theForm = document.forms['form1'];\r\nif (!theForm) {\r\n    theForm = document.form1;\r\n}\r\nfunction __doPostBack(eventTarget, eventArgument) {\r\n    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {\r\n        theForm.__EVENTTARGET.value = eventTarget;\r\n        theForm.__EVENTARGUMENT.value = eventArgument;\r\n        theForm.submit();\r\n    }\r\n}\r\n//]]>\r\n</script>\r\n\r\n\r\n\r\n<script src=\"/WebResource.axd?d=jqTp9dE7LxVKnDzzlxO7Uc0gptu4XYMvnJhzIFT_xcdZIs5ehXDCXKkH8dxIpIpEoQJBkdW0m1Xr8uuOmJWV1tjRzlS8mjz2vH8O1zBMmjU1&amp;t=636576782940000000\" type=\"text/javascript\"></script>\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nfunction WebForm_OnSubmit() {\r\nif (typeof(ValidatorOnSubmit) == \"function\" && ValidatorOnSubmit() == false) return false;\r\nreturn true;\r\n}\r\n//]]>\r\n</script>\r\n\r\n<div>\r\n\r\n\t<input type=\"hidden\" name=\"__VIEWSTATEGENERATOR\" id=\"__VIEWSTATEGENERATOR\" value=\"CA0B0334\" />\r\n\t<input type=\"hidden\" name=\"__EVENTVALIDATION\" id=\"__EVENTVALIDATION\" value=\"/wEdAAd9/+aKyDIpIgl83fe6cboT9Tt6KoVd96dN6zOjIKoOlHY2+Mc6SrnAqio3oCKbxYYWVCDmwKE2Ztwdvpq5D+OZmyz+krmEM5s7vRqUsNRBh6KeKEbp39eHc9mbdvkCgxDZSBEyYVEUHTBPdIEnjDeEJkROpRD2H3TYepL6d90LWR8xnq0zdp+P+LKmo188zHY=\" />\r\n</div>\r\n<div id=header>\r\n<div id=logo1>\r\n</div>    \r\n</div>\r\n<div class=aligncenter>\r\n<div id=centered>\r\n  <table width=\"400\" border=\"0\">\r\n  <tbody>\r\n  <tr>\r\n    <td colSpan=5>\r\n        <h2 class=\"style1\">Welcome to V1SOHO 9.0 Login</h2>\r\n    </td>\r\n    <td>\r\n        &nbsp;</td></tr>\r\n  <tr>\r\n    <td colSpan=6 class=\"style7\">v2.1.11.26</td>\r\n    <td>\r\n        &nbsp;</td></tr>\r\n  <tr>\r\n    <td colSpan=5>\r\n        <span id=\"lblFailureText\" style=\"color:Red;\"></span>\r\n    </td>\r\n    <td>\r\n        </td></tr>\r\n  <tr>\r\n    <td class=\"style2\" colspan=\"2\">User ID:</td>\r\n    <td align=right colspan=\"3\">\r\n        <input name=\"txtUserID\" type=\"text\" id=\"txtUserID\" style=\"color:Blue;font-size:Medium;width:250px;\" />\r\n    </td>\r\n    <td align=right>\r\n        <span id=\"RFtxtUserID\" style=\"color:Red;visibility:hidden;\">*</span>\r\n    </td></tr>\r\n  <tr>\r\n    <td class=\"style2\" colspan=\"2\">Password:</td>\r\n    <td align=right colspan=\"3\">\r\n        <input name=\"txtPassword\" type=\"password\" id=\"txtPassword\" style=\"color:Blue;font-size:Medium;width:250px;\" /></td>\r\n    <td align=right>\r\n        <span id=\"RFtxtPassword\" style=\"color:Red;visibility:hidden;\">*</span>\r\n      </td></tr>\r\n  <tr>\r\n    <td class=\"style2\" colspan=\"2\">Company:</td>\r\n    <td align=right colspan=\"3\">\r\n        <select name=\"ddlCompany\" id=\"ddlCompany\" style=\"color:Blue;font-size:Medium;width:254px;\">\r\n\t<option value=\"BM\">BOILERMASTER GROUP</option>\r\n\r\n</select>\r\n    </td>\r\n    <td align=right>\r\n    </td></tr>\r\n  <tr>\r\n    <td align=\"center\" style=\"text-align: right\" class=\"style6\">padding .....</td>\r\n    <td align=\"center\" style=\"text-align: right\" class=\"style3\">&nbsp;</td>\r\n    <td align=\"center\" style=\"text-align: left\" class=\"style5\">\r\n        <span style=\"text-align: left; color: #000000;\"><input id=\"chkStaffLogin\" type=\"checkbox\" name=\"chkStaffLogin\" /><label for=\"chkStaffLogin\">Login as Staff</label></span>\r\n    </td>\r\n    <td align=\"center\" style=\"text-align: left\" class=\"style4\">\r\n        &nbsp;</td>\r\n    <td style=\"text-align: center\">\r\n        <input type=\"submit\" name=\"btnLogin\" value=\"Login\" id=\"btnLogin\" class=\"but_log\" style=\"color:White;background-color:Blue;font-weight:bold;height:21px;width:52px;\" />\r\n    </td>\r\n    <td align=right >&nbsp;</td></tr>  \r\n  <tr>\r\n    <td align=\"center\" style=\"text-align: right\" class=\"style6\">&nbsp;</td>\r\n    <td align=\"center\" style=\"text-align: right\" class=\"style3\">&nbsp;</td>\r\n    <td align=\"center\" style=\"text-align: left\" class=\"style5\">\r\n        <a id=\"lnkForgotPassword\" href=\"javascript:__doPostBack(&#39;lnkForgotPassword&#39;,&#39;&#39;)\">Forgot Password?</a>\r\n    </td>\r\n    <td align=\"center\" style=\"text-align: left\" class=\"style4\">\r\n        &nbsp;</td>\r\n    <td style=\"text-align: center\">\r\n        &nbsp;</td>\r\n    <td align=right >&nbsp;</td></tr>  \r\n                       </tbody>\r\n    </table>\r\n    </div></div>\r\n<div id=bottom>\r\n</div>\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nvar Page_Validators =  new Array(document.getElementById(\"RFtxtUserID\"), document.getElementById(\"RFtxtPassword\"));\r\n//]]>\r\n</script>\r\n\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\nvar RFtxtUserID = document.all ? document.all[\"RFtxtUserID\"] : document.getElementById(\"RFtxtUserID\");\r\nRFtxtUserID.controltovalidate = \"txtUserID\";\r\nRFtxtUserID.errormessage = \"*\";\r\nRFtxtUserID.evaluationfunction = \"RequiredFieldValidatorEvaluateIsValid\";\r\nRFtxtUserID.initialvalue = \"\";\r\nvar RFtxtPassword = document.all ? document.all[\"RFtxtPassword\"] : document.getElementById(\"RFtxtPassword\");\r\nRFtxtPassword.controltovalidate = \"txtPassword\";\r\nRFtxtPassword.errormessage = \"*\";\r\nRFtxtPassword.evaluationfunction = \"RequiredFieldValidatorEvaluateIsValid\";\r\nRFtxtPassword.initialvalue = \"\";\r\n//]]>\r\n</script>\r\n\r\n\r\n<script type=\"text/javascript\">\r\n//<![CDATA[\r\n\r\nvar Page_ValidationActive = false;\r\nif (typeof(ValidatorOnLoad) == \"function\") {\r\n    ValidatorOnLoad();\r\n}\r\n\r\nfunction ValidatorOnSubmit() {\r\n    if (Page_ValidationActive) {\r\n        return ValidatorCommonOnSubmit();\r\n    }\r\n    else {\r\n        return true;\r\n    }\r\n}\r\n        //]]>\r\n</script>\r\n</form></body></html>",
         "datamd5" : "51f50a085d2e7b062f6ddf44a08d1791",
         "datammh3" : 457846952,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "domain" : [
            "m1net.com.sg"
         ],
         "geolocus" : {
            "asn" : "AS17547",
            "continent" : "AS",
            "continentname" : "Asia",
            "country" : "SG",
            "countryname" : "Singapore",
            "domain" : [
               "m1.com.sg",
               "m1net.sg",
               "qala.com.sg"
            ],
            "isineu" : "false",
            "latitude" : "1.352083",
            "location" : "1.352083,103.819836",
            "longitude" : "103.819836",
            "netname" : "M1NET-SG",
            "organization" : "M1 NET LTD",
            "subnet" : "210.193.0.0/18"
         },
         "host" : [
            197
         ],
         "hostname" : [
            "197.210-193-12.ngn.m1net.com.sg"
         ],
         "ip" : "210.193.12.197",
         "ipv6" : "false",
         "latitude" : "1.3154",
         "location" : "1.3154,103.6498",
         "longitude" : "103.6498",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "M1 NET LTD",
         "os" : "Windows",
         "osvendor" : "Microsoft",
         "osversion" : [
            "Server 2008",
            7
         ],
         "port" : 81,
         "product" : "IIS",
         "productvendor" : "Microsoft",
         "productversion" : "7.5",
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "reverse" : [
            "197.210-193-12.ngn.m1net.com.sg"
         ],
         "seen_date" : "2024-11-07",
         "source" : "datascan",
         "status" : 200,
         "subdomains" : [
            "ngn.m1net.com.sg",
            "210-193-12.ngn.m1net.com.sg"
         ],
         "subnet" : "210.193.0.0/18",
         "tag" : "<enterprise field>: tag",
         "tld" : [
            "com.sg"
         ],
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/"
      }
      
  • 103.56.235.107:81 (tcp/http) - last seen on 2024-11-07 at 05:24:58 UTC

    • IP
      103.56.235.107
      Network
      103.56.235.0/24
      Device

      <enterprise field>: device.class

      Operating System
      Linux Linux Kernel
      URL

      http://103.56.235.107:81/ 200

      HTTP Title
      LOGIN
      HTTP Description
      Modern admin is super flexible, powerful, clean &amp; modern responsive bootstrap 4 admin template with unlimited possibilities with bitcoin dashboard.
      HTTP Keyword(s)
      admin template bitcoin dashboard crypto dashboard dashboard template flat admin template modern admin template responsive admin template web app
      ASN
      AS131111
      Organization
      PT Mora Telematika Indonesia
      Protocol
      http
      Source
      datascan
    • Operating System
      Linux Linux Kernel
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      ca980bf10b54bccde12bd567b97d6869
      HTTP Header MD5
      1c75c737a3e0e60010d88ea7b8532a04
      HTTP Body MD5
      88e22fe92715a82a8b4ff314e0738534
    • HTTP/1.1 200 OK
      Host: <ip>:81
      Date: Thu, 07 Nov 2024 05:24:58 GMT
      Connection: close
      Cache-control: no-store, max-age=0, no-cache
      Content-Type: text/html; charset=UTF-8
      
      <!DOCTYPE html>
      <html class="loading" lang="en" data-textdirection="ltr">
      <!-- BEGIN: Head-->
      
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimal-ui">
        <meta name="description" content="Modern admin is super flexible, powerful, clean &amp; modern responsive bootstrap 4 admin template with unlimited possibilities with bitcoin dashboard.">
        <meta name="keywords" content="admin template, modern admin template, dashboard template, flat admin template, responsive admin template, web app, crypto dashboard, bitcoin dashboard">
        <meta name="author" content="PIXINVENT">
        <title>LOGIN</title>
        <link rel="apple-touch-icon" href="http://udcahayaterang.store:81/app-assets/images/ico/apple-icon-120.png">
        <link rel="shortcut icon" type="image/x-icon" href="http://udcahayaterang.store:81/app-assets/images/ico/favicon.ico">
        <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i%7CQuicksand:300,400,500,700" rel="stylesheet">
      
        <!-- BEGIN: Vendor CSS-->
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/vendors/css/vendors.min.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/icheck.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/custom.css">
        <!-- END: Vendor CSS-->
      
        <!-- BEGIN: Theme CSS-->
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/bootstrap.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/bootstrap-extended.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/colors.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/components.css">
        <!-- END: Theme CSS-->
      
        <!-- BEGIN: Page CSS-->
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/core/menu/menu-types/vertical-menu-modern.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/core/colors/palette-gradient.css">
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/app-assets/css/pages/login-register.css">
        <!-- END: Page CSS-->
      
        <!-- BEGIN: Custom CSS-->
        <link rel="stylesheet" type="text/css" href="http://udcahayaterang.store:81/assets/css/style.css">
        <!-- END: Custom CSS-->
      
      </head>
      <!-- END: Head-->
      
      <!-- BEGIN: Body-->
      
      <body class="vertical-layout vertical-menu-modern 1-column  bg-full-screen-image blank-page" data-open="click" data-menu="vertical-menu-modern" data-col="1-column">
        <!-- BEGIN: Content-->
        <div class="app-content content">
          <div class="content-overlay"></div>
          <div class="content-wrapper">
            <div class="content-header row">
            </div>
            <div class="content-body">
              <section class="row flexbox-container">
                <div class="col-12 d-flex align-items-center justify-content-center">
                  <div class="col-lg-3 col-md-8 col-10 box-shadow-2 p-0">
                    <div class="card border-grey border-lighten-3 px-1 py-1 m-0">
                      <div class="card-header border-0">
                        <div class="card-title text-center">
                          <img src="../app-assets/img/udtr-logo.png" class="w-50" alt="branding logo">
                          <h2>Inventory <br> UD Cahaya Terang</h2>
                        </div>
                      </div>
                      <div class="card-content">
                        <div class="card-body">
                          <form action="http://udcahayaterang.store:81/Site/dashboard" method="post" class="form-horizontal">
                            <fieldset class="form-group position-relative has-icon-left">
                              <input type="text" class="form-control" id="username" name="username" placeholder="Username" required>
                              <div class="form-control-position">
                                <i class="la la-user"></i>
                              </div>
                            </fieldset>
                            <fieldset class="form-group position-relative has-icon-left">
                                <div class="input-group">
                                <input type="password" class="form-control" id="password" name="password" placeholder="Password" required>
                                    <div class="input-group-append">
                                    <span id="mybutton" onclick="change()" class="input-group-text">
      
                                        <!-- icon mata bawaan bootstrap  -->
                                        <svg width="1em" height="1em" viewBox="0 0 16 16" class="bi bi-eye-fill" fill="currentColor"
                                            xmlns="http://www.w3.org/2000/svg">
                                            <path d="M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z" />
                                            <path fill-rule="evenodd"
                                                d="M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z" />
                                        </svg>
                                        </span>
                                    </div>
                                </div>
                                <div class="form-control-position">
                                <i class="la la-key"></i>
                              </div>
                            </fieldset>
                            <fieldset class="form-group position-relative has-icon-left">
                              <select class="form-control" name="hak_akses" id="hak_akses" required>
                                  <option value="">Pilih</option>
                                  <option value="Administrator">Administrator</option>
                                  <option value="Owner">Owner</option>
                              </select>
                              <div class="form-control-position">
                                <i class="la la-check-circle"></i>
                              </div>
                            </fieldset>
                            <button type="submit" class="btn btn-outline-info btn-block"><i class="ft-unlock"></i> Masuk</button>
                          </form>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </section>
      
            </div>
          </div>
        </div>
        <!-- END: Content-->
      
      
        <!-- BEGIN: Vendor JS-->
        <script src="http://udcahayaterang.store:81/app-assets/vendors/js/vendors.min.js"></script>
        <!-- BEGIN Vendor JS-->
      
        <!-- BEGIN: Page Vendor JS-->
        <script src="http://udcahayaterang.store:81/app-assets/vendors/js/forms/validation/jqBootstrapValidation.js"></script>
        <script src="http://udcahayaterang.store:81/app-assets/vendors/js/forms/icheck/icheck.min.js"></script>
        <!-- END: Page Vendor JS-->
      
        <!-- BEGIN: Theme JS-->
        <script src="http://udcahayaterang.store:81/app-assets/js/core/app-menu.js"></script>
        <script src="http://udcahayaterang.store:81/app-assets/js/core/app.js"></script>
        <!-- END: Theme JS-->
      
        <!-- BEGIN: Page JS-->
        <script src="http://udcahayaterang.store:81/app-assets/js/scripts/forms/form-login-register.js"></script>
        <!-- END: Page JS-->
      
        <script>
              // membuat fungsi change
              function change() {
      
                  // membuat variabel berisi tipe input dari id='pass', id='pass' adalah form input password 
                  var x = document.getElementById('password').type;
      
                  //membuat if kondisi, jika tipe x adalah password maka jalankan perintah di bawahnya
                  if (x == 'password') {
      
                      //ubah form input password menjadi text
                      document.getElementById('password').type = 'text';
                      
                      //ubah icon mata terbuka menjadi tertutup
                      document.getElementById('mybutton').innerHTML = `<svg width="1em" height="1em" viewBox="0 0 16 16" class="bi bi-eye-slash-fill" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
                                                                      <path d="M10.79 12.912l-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 0 0 2.79-.588zM5.21 3.088A7.028 7.028 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474L5.21 3.089z"/>
                                                                      <path d="M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829l-2.83-2.829zm4.95.708l-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829z"/>
                                                                      <path fill-rule="evenodd" d="M13.646 14.354l-12-12 .708-.708 12 12-.708.708z"/>
                                                                      </svg>`;
                  }
                  else {
      
                      //ubah form input password menjadi text
                      document.getElementById('password').type = 'password';
      
                      //ubah icon mata terbuka menjadi tertutup
                      document.getElementById('mybutton').innerHTML = `<svg width="1em" height="1em" viewBox="0 0 16 16" class="bi bi-eye-fill" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
                                                                      <path d="M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z"/>
                                                                      <path fill-rule="evenodd" d="M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z"/>
                                                                      </svg>`;
                  }
              }
          </script>
      
      </body>
      <!-- END: Body-->
      
      </html>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:24:58.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "googleapis.com",
                  "udcahayaterang.store",
                  "w3.org"
               ],
               "hostname" : [
                  "fonts.googleapis.com",
                  "udcahayaterang.store",
                  "www.w3.org"
               ],
               "url" : [
                  "http://udcahayaterang.store:81/Site/dashboard",
                  "http://udcahayaterang.store:81/app-assets/css/bootstrap-extended.css",
                  "http://udcahayaterang.store:81/app-assets/css/bootstrap.css",
                  "http://udcahayaterang.store:81/app-assets/css/colors.css",
                  "http://udcahayaterang.store:81/app-assets/css/components.css",
                  "http://udcahayaterang.store:81/app-assets/css/core/colors/palette-gradient.css",
                  "http://udcahayaterang.store:81/app-assets/css/core/menu/menu-types/vertical-menu-modern.css",
                  "http://udcahayaterang.store:81/app-assets/css/pages/login-register.css",
                  "http://udcahayaterang.store:81/app-assets/images/ico/apple-icon-120.png",
                  "http://udcahayaterang.store:81/app-assets/images/ico/favicon.ico",
                  "http://udcahayaterang.store:81/app-assets/js/core/app-menu.js",
                  "http://udcahayaterang.store:81/app-assets/js/core/app.js",
                  "http://udcahayaterang.store:81/app-assets/js/scripts/forms/form-login-register.js",
                  "http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/custom.css",
                  "http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/icheck.css",
                  "http://udcahayaterang.store:81/app-assets/vendors/css/vendors.min.css",
                  "http://udcahayaterang.store:81/app-assets/vendors/js/forms/icheck/icheck.min.js",
                  "http://udcahayaterang.store:81/app-assets/vendors/js/forms/validation/jqBootstrapValidation.js",
                  "http://udcahayaterang.store:81/app-assets/vendors/js/vendors.min.js",
                  "http://udcahayaterang.store:81/assets/css/style.css",
                  "http://www.w3.org/2000/svg",
                  "https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i%7CQuicksand:300,400,500,700"
               ]
            },
            "favicon" : {
               "url" : "/app-assets/images/ico/favicon.ico"
            },
            "http" : {
               "bodymd5" : "88e22fe92715a82a8b4ff314e0738534",
               "bodymmh3" : 2098598923,
               "description" : "Modern admin is super flexible, powerful, clean &amp; modern responsive bootstrap 4 admin template with unlimited possibilities with bitcoin dashboard.",
               "headermd5" : "1c75c737a3e0e60010d88ea7b8532a04",
               "headermmh3" : -965628878,
               "keywords" : [
                  "admin template",
                  "bitcoin dashboard",
                  "crypto dashboard",
                  "dashboard template",
                  "flat admin template",
                  "modern admin template",
                  "responsive admin template",
                  "web app"
               ],
               "title" : "LOGIN"
            },
            "length" : 9909
         },
         "asn" : "AS131111",
         "country" : "ID",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.1 200 OK\r\nHost: <ip>:81\r\nDate: Thu, 07 Nov 2024 05:24:58 GMT\r\nConnection: close\r\nCache-control: no-store, max-age=0, no-cache\r\nContent-Type: text/html; charset=UTF-8\r\n\r\n<!DOCTYPE html>\n<html class=\"loading\" lang=\"en\" data-textdirection=\"ltr\">\n<!-- BEGIN: Head-->\n\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=0, minimal-ui\">\n  <meta name=\"description\" content=\"Modern admin is super flexible, powerful, clean &amp; modern responsive bootstrap 4 admin template with unlimited possibilities with bitcoin dashboard.\">\n  <meta name=\"keywords\" content=\"admin template, modern admin template, dashboard template, flat admin template, responsive admin template, web app, crypto dashboard, bitcoin dashboard\">\n  <meta name=\"author\" content=\"PIXINVENT\">\n  <title>LOGIN</title>\n  <link rel=\"apple-touch-icon\" href=\"http://udcahayaterang.store:81/app-assets/images/ico/apple-icon-120.png\">\n  <link rel=\"shortcut icon\" type=\"image/x-icon\" href=\"http://udcahayaterang.store:81/app-assets/images/ico/favicon.ico\">\n  <link href=\"https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i%7CQuicksand:300,400,500,700\" rel=\"stylesheet\">\n\n  <!-- BEGIN: Vendor CSS-->\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/vendors/css/vendors.min.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/icheck.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/vendors/css/forms/icheck/custom.css\">\n  <!-- END: Vendor CSS-->\n\n  <!-- BEGIN: Theme CSS-->\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/bootstrap.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/bootstrap-extended.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/colors.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/components.css\">\n  <!-- END: Theme CSS-->\n\n  <!-- BEGIN: Page CSS-->\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/core/menu/menu-types/vertical-menu-modern.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/core/colors/palette-gradient.css\">\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/app-assets/css/pages/login-register.css\">\n  <!-- END: Page CSS-->\n\n  <!-- BEGIN: Custom CSS-->\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"http://udcahayaterang.store:81/assets/css/style.css\">\n  <!-- END: Custom CSS-->\n\n</head>\n<!-- END: Head-->\n\n<!-- BEGIN: Body-->\n\n<body class=\"vertical-layout vertical-menu-modern 1-column  bg-full-screen-image blank-page\" data-open=\"click\" data-menu=\"vertical-menu-modern\" data-col=\"1-column\">\n  <!-- BEGIN: Content-->\n  <div class=\"app-content content\">\n    <div class=\"content-overlay\"></div>\n    <div class=\"content-wrapper\">\n      <div class=\"content-header row\">\n      </div>\n      <div class=\"content-body\">\n        <section class=\"row flexbox-container\">\n          <div class=\"col-12 d-flex align-items-center justify-content-center\">\n            <div class=\"col-lg-3 col-md-8 col-10 box-shadow-2 p-0\">\n              <div class=\"card border-grey border-lighten-3 px-1 py-1 m-0\">\n                <div class=\"card-header border-0\">\n                  <div class=\"card-title text-center\">\n                    <img src=\"../app-assets/img/udtr-logo.png\" class=\"w-50\" alt=\"branding logo\">\n                    <h2>Inventory <br> UD Cahaya Terang</h2>\n                  </div>\n                </div>\n                <div class=\"card-content\">\n                  <div class=\"card-body\">\n                    <form action=\"http://udcahayaterang.store:81/Site/dashboard\" method=\"post\" class=\"form-horizontal\">\n                      <fieldset class=\"form-group position-relative has-icon-left\">\n                        <input type=\"text\" class=\"form-control\" id=\"username\" name=\"username\" placeholder=\"Username\" required>\n                        <div class=\"form-control-position\">\n                          <i class=\"la la-user\"></i>\n                        </div>\n                      </fieldset>\n                      <fieldset class=\"form-group position-relative has-icon-left\">\n                          <div class=\"input-group\">\n                          <input type=\"password\" class=\"form-control\" id=\"password\" name=\"password\" placeholder=\"Password\" required>\n                              <div class=\"input-group-append\">\n                              <span id=\"mybutton\" onclick=\"change()\" class=\"input-group-text\">\n\n                                  <!-- icon mata bawaan bootstrap  -->\n                                  <svg width=\"1em\" height=\"1em\" viewBox=\"0 0 16 16\" class=\"bi bi-eye-fill\" fill=\"currentColor\"\n                                      xmlns=\"http://www.w3.org/2000/svg\">\n                                      <path d=\"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z\" />\n                                      <path fill-rule=\"evenodd\"\n                                          d=\"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z\" />\n                                  </svg>\n                                  </span>\n                              </div>\n                          </div>\n                          <div class=\"form-control-position\">\n                          <i class=\"la la-key\"></i>\n                        </div>\n                      </fieldset>\n                      <fieldset class=\"form-group position-relative has-icon-left\">\n                        <select class=\"form-control\" name=\"hak_akses\" id=\"hak_akses\" required>\n                            <option value=\"\">Pilih</option>\n                            <option value=\"Administrator\">Administrator</option>\n                            <option value=\"Owner\">Owner</option>\n                        </select>\n                        <div class=\"form-control-position\">\n                          <i class=\"la la-check-circle\"></i>\n                        </div>\n                      </fieldset>\n                      <button type=\"submit\" class=\"btn btn-outline-info btn-block\"><i class=\"ft-unlock\"></i> Masuk</button>\n                    </form>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </section>\n\n      </div>\n    </div>\n  </div>\n  <!-- END: Content-->\n\n\n  <!-- BEGIN: Vendor JS-->\n  <script src=\"http://udcahayaterang.store:81/app-assets/vendors/js/vendors.min.js\"></script>\n  <!-- BEGIN Vendor JS-->\n\n  <!-- BEGIN: Page Vendor JS-->\n  <script src=\"http://udcahayaterang.store:81/app-assets/vendors/js/forms/validation/jqBootstrapValidation.js\"></script>\n  <script src=\"http://udcahayaterang.store:81/app-assets/vendors/js/forms/icheck/icheck.min.js\"></script>\n  <!-- END: Page Vendor JS-->\n\n  <!-- BEGIN: Theme JS-->\n  <script src=\"http://udcahayaterang.store:81/app-assets/js/core/app-menu.js\"></script>\n  <script src=\"http://udcahayaterang.store:81/app-assets/js/core/app.js\"></script>\n  <!-- END: Theme JS-->\n\n  <!-- BEGIN: Page JS-->\n  <script src=\"http://udcahayaterang.store:81/app-assets/js/scripts/forms/form-login-register.js\"></script>\n  <!-- END: Page JS-->\n\n  <script>\n        // membuat fungsi change\n        function change() {\n\n            // membuat variabel berisi tipe input dari id='pass', id='pass' adalah form input password \n            var x = document.getElementById('password').type;\n\n            //membuat if kondisi, jika tipe x adalah password maka jalankan perintah di bawahnya\n            if (x == 'password') {\n\n                //ubah form input password menjadi text\n                document.getElementById('password').type = 'text';\n                \n                //ubah icon mata terbuka menjadi tertutup\n                document.getElementById('mybutton').innerHTML = `<svg width=\"1em\" height=\"1em\" viewBox=\"0 0 16 16\" class=\"bi bi-eye-slash-fill\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\">\n                                                                <path d=\"M10.79 12.912l-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 0 0 2.79-.588zM5.21 3.088A7.028 7.028 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474L5.21 3.089z\"/>\n                                                                <path d=\"M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829l-2.83-2.829zm4.95.708l-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829z\"/>\n                                                                <path fill-rule=\"evenodd\" d=\"M13.646 14.354l-12-12 .708-.708 12 12-.708.708z\"/>\n                                                                </svg>`;\n            }\n            else {\n\n                //ubah form input password menjadi text\n                document.getElementById('password').type = 'password';\n\n                //ubah icon mata terbuka menjadi tertutup\n                document.getElementById('mybutton').innerHTML = `<svg width=\"1em\" height=\"1em\" viewBox=\"0 0 16 16\" class=\"bi bi-eye-fill\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\">\n                                                                <path d=\"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z\"/>\n                                                                <path fill-rule=\"evenodd\" d=\"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z\"/>\n                                                                </svg>`;\n            }\n        }\n    </script>\n\n</body>\n<!-- END: Body-->\n\n</html>",
         "datamd5" : "ca980bf10b54bccde12bd567b97d6869",
         "datammh3" : -1659300765,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "geolocus" : {
            "asn" : "AS131111",
            "continent" : "AS",
            "continentname" : "Asia",
            "country" : "ID",
            "countryname" : "Indonesia",
            "domain" : [
               "moratelindo.co.id"
            ],
            "isineu" : "false",
            "latitude" : "-0.789275",
            "location" : "-0.789275,113.921327",
            "longitude" : "113.921327",
            "netname" : "MORATELINDONAP-ID",
            "organization" : "Route Object for PT. Mora Telematika Indonesia",
            "subnet" : "103.56.235.0/24"
         },
         "ip" : "103.56.235.107",
         "ipv6" : "false",
         "latitude" : "-6.1728",
         "location" : "-6.1728,106.8272",
         "longitude" : "106.8272",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "PT Mora Telematika Indonesia",
         "os" : "Linux Kernel",
         "osvendor" : "Linux",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "seen_date" : "2024-11-07",
         "source" : "datascan",
         "status" : 200,
         "subnet" : "103.56.235.0/24",
         "tag" : "<enterprise field>: tag",
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/"
      }
      
  • 173.231.126.126:81 (tcp/http) - last seen on 2024-11-07 at 05:21:45 UTC

    • IP
      173.231.126.126
      Network
      173.231.120.0/21
      Domain(s)
      fibrenoire.ca
      Device

      <enterprise field>: device.class

      URL

      http://173.231.126.126:81/login.htm?page=%2F 200

      HTTP Title
      Blue Iris Login
      Reverse DNS
      ip-173-231-126-126.static.fibrenoire.ca
      ASN
      AS22652
      Organization
      FIBRENOIRE-INTERNET
      Protocol
      http
      Source
      urlscan::redirect
    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      c71e4fac97008c6f584156ef7a8d5472
      HTTP Header MD5
      3d828451c7a8cfb64d5503cc8403f549
      HTTP Body MD5
      c3beb4f33fd82aca728566b9032bf710
    • HTTP/1.1 200 OK
      Server: BlueServer/4.8.6.1
      Date: Thu, 07 Nov 2024 05:21:34 GMT
      P3P: CP="CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE"
      Access-Control-Allow-Origin: *
      Set-Cookie: session=649729647b3840880a6e795c12c97076; path=/
      Connection: Close
      Content-Type: text/html; charset=UTF-8
      Content-Length: 14979
      Cache-Control: no-cache, no-store
      X-Frame-Options: SAMEORIGIN
      
      <!DOCTYPE html>
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
      	<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
      	<meta name="viewport" content="width=device-width, initial-scale=1" />
      	<title>Blue Iris Login</title>
      	<script type="text/javascript">
      		var login_version = "19";
      		var bi_version = "4.8.6.1";
      		var combined_version = login_version + "-" + bi_version;
      	</script>
      	<script type="text/javascript">
      		window.onerror = function (msg, url, line, charIdx)
      		{
      			try
      			{
      				var versionStr = "unknown";
      				if (typeof login_version !== "undefined")
      					versionStr = login_version;
      				var biVersionStr = "unknown";
      				if (typeof bi_version !== "undefined")
      					biVersionStr = bi_version;
      				url = url.replace(/\/\/.*?\//, '//censored_hostname/');
      				alert("An unexpected error has occurred in Blue Iris Login (v " + versionStr + " / " + biVersionStr + "). If you wish to report the error, please SCREENSHOT the browser now.\n\n" + msg + "\nat " + url + " [" + line + ":" + charIdx + "]\n" + navigator.userAgent);
      			}
      			catch (ex)
      			{
      				alert(ex);
      			}
      		};
      	</script>
      	<style type="text/css">
      		body
      		{
      			font-family: sans-serif;
      			background: #212325;
      		}
      
      		#loginLoading
      		{
      			display: none;
      			text-shadow: 0 0 10px rgba(0,0,0,0.3);
      			position: absolute;
      			text-align: center;
      			top: 40%;
      			width: 100%;
      			color: #FFFFFF;
      		}
      
      			#loginLoading h1
      			{
      				margin: 0 0 20px 0;
      				font-size: 32px;
      			}
      
      			#loginLoading div
      			{
      				font-size: 20px;
      			}
      
      		#login
      		{
      			display: none;
      		}
      
      		.checkboxWrapper
      		{
      			max-width: 488px;
      		}
      	</style>
      </head>
      <body>
      	<div id="loginLoading">
      		<h1>Ferme Eric Lessard</h1>
      		<div>Loading login page...</div>
      	</div>
      	<div id="login">
      		<h1>Ferme Eric Lessard</h1>
      		<input id="txtUn" type="text" class="text" placeholder="Username" autocapitalize="off" autocorrect="off" />
      		<input id="txtPw" type="password" class="text" placeholder="Password" onkeypress="return pwKeypress(this, event);" autocapitalize="off" autocorrect="off" />
      		<div class="checkboxWrapper">
      			<input id="cbLoginAutomatically" type="checkbox" class="checkbox" onchange="cbLoginAutomaticallyClicked();" /><label for="cbLoginAutomatically" id="lblLoginAutomatically"><span class="ui"></span>Log in automatically:</label>
      		</div>
      		<div id="status_wrapper_upper"></div>
      		<input id="btnLogin" type="button" class="btn" value="Log in" onclick="login();" />
      		<div id="status_wrapper_lower"><div id="status"></div></div>
      	</div>
      	<script type="text/javascript">
      		var loadingOpacity = 0;
      		function IncreaseLoadingOpacity()
      		{
      			loadingOpacity += 0.05;
      			if (loadingOpacity > 1)
      				loadingOpacity = 1;
      			var ele = document.getElementById('loginLoading');
      			ele.style.display = "block";
      			ele.style.opacity = loadingOpacity;
      			if (loadingOpacity < 1)
      				showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);
      		}
      		var showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);
      
      		document.write('<link href="applet/loginStyles.css?v=' + combined_version + '" rel="stylesheet" />'
      			+ '<script src="applet/loginScripts.js?v=' + combined_version + '"><\/script>');
      	</script>
      	<script type="text/javascript">
      		/* eslint no-extra-parens: 0 */
      		var autologin_timeout_1 = null;
      		var autologin_timeout_2 = null;
      		var existingSession = "649729647b3840880a6e795c12c97076";
      		var isStoredDataLoaded = false;
      		var windowUnloading = false;
      		var cookiesEnabled;
      		var localStorageEnabled;
      
      		/**
      		 * Changes the current URL by removing the specified query string parameter(s) from it.
      		 * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.
      		 */
      		function NavRemoveUrlParams()
      		{
      			var url = RemoveUrlParams.apply(this, arguments);
      			try { history.replaceState(history.state, "", url); return null; } catch (ex) { return url; }
      		}
      		function RemoveUrlParams()
      		{
      			var s = location.search;
      			for (var i = 0; i < arguments.length; i++)
      			{
      				var param = arguments[i];
      				var rx = new RegExp('(&|\\?)' + param + '=[^&?#%]+', 'gi');
      				s = s.replace(rx, "");
      				while (s.indexOf("&") === 0)
      				{
      					if (s.length > 1)
      						s = s.substr(1);
      					else
      						s = "";
      				}
      				if (s.length > 0 && s.indexOf("?") === -1)
      					s = "?" + s;
      			}
      			return location.origin + location.pathname + s + location.hash;
      		}
      
      		NavRemoveUrlParams("session");
      
      		$(function ()
      		{
      			cookiesEnabled = testCookieFunctionality();
      			localStorageEnabled = isLocalStorageEnabled();
      			var skipAutoLogin = GetPersistedValue("bi_override_disable_auto_login_once") === "1";
      			if (UrlParameters.Get("autologin") === "0")
      			{
      				skipAutoLogin = true;
      				var url = NavRemoveUrlParams("session", "autologin");
      				if (url)
      				{
      					SetPersistedValue("bi_override_disable_auto_login_once", "1");
      					location.href = url;
      					return;
      				}
      			}
      			if (skipAutoLogin)
      			{
      				SetPersistedValue("bi_override_disable_auto_login_once", "0");
      			}
      			clearTimeout(showLoadingMessageTimeout);
      			$("#loginLoading").hide();
      			$("#login").show();
      			if (typeof window.JSON === 'undefined')
      			{
      				$("#login").html("<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \"Secure only\" requirement within Blue Iris's web server settings.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!existingSession || (existingSession.length === 11 && existingSession.startsWith("%") && existingSession.endsWith("%") && existingSession.indexOf("SESSION") === 2))
      			{
      				$("#login").html("<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!localStorageEnabled)
      				$("#cbLoginAutomatically").parent().text("Note: Local Storage is disabled in your browser, so credentials can not be saved.").css("color", "#EEEEEE");
      			SetupLoginContextMenu();
      			SetStatus();
      			$(window).resize(resized);
      			resized();
      			window.onbeforeunload = function ()
      			{
      				windowUnloading = true;
      				cbLoginAutomaticallyClicked();
      				return;
      			};
      			// Handle automatic login
      			if (GetPersistedValue("bi_rememberMe") === "1")
      			{
      				$("#cbLoginAutomatically").attr('checked', 'checked');
      				$("#txtUn").val(Base64.decode(GetPersistedValue("bi_username")));
      				$("#txtPw").val(Base64.decode(GetPersistedValue("bi_password")));
      
      				if (!skipAutoLogin)
      				{
      					if ($("#txtUn").val() !== "" && $("#txtPw").val() !== "")
      					{
      						if (GetAutoLoginInstantly())
      						{
      							if ($("#cbLoginAutomatically").is(":checked"))
      								login();
      						}
      						else
      						{
      							$("#btnLogin").val("Logging in, in 2 seconds");
      							autologin_timeout_1 = setTimeout(function () { $("#btnLogin").val("Logging in, in 1 second"); }, 1000);
      							autologin_timeout_2 = setTimeout(function ()
      							{
      								if ($("#cbLoginAutomatically").is(":checked"))
      									login();
      							}, 2000);
      						}
      					}
      				}
      			}
      			else
      			{
      				$("#cbLoginAutomatically").removeAttr('checked');
      				SetPersistedValue("bi_username", "");
      				SetPersistedValue("bi_password", "");
      			}
      
      			// Check for existing session
      			ExecJSON({ cmd: "login", session: existingSession }, function (response)
      			{
      				if (response.result === "fail")
      				{
      					// No existing session.
      					var anonymousAvailable = response.data && response.data["auth-exempt"];
      					if (anonymousAvailable)
      					{
      						// Attempt Anonymous login, to get the permission level.
      						var myResponse = md5("Anonymous:" + response.session + ":");
      						ExecJSON({ cmd: "login", session: response.session, response: myResponse }, function (response)
      						{
      							if (response.result === "success")
      							{
      								existingSession = response.session;
      								SetStatus("An anonymous " + (response.data.admin ? "administrator" : "user") + ' session is available. <a href="javascript:LeaveLoginPage()">Click here to use it.</a>');
      							}
      						},
      							function (jqXHR, textStatus, errorThrown)
      							{
      								HandleError("Unable to contact Blue Iris server");
      							});
      					}
      				}
      				else if (response.result === "success")
      				{
      					existingSession = response.session;
      					SetStatus("An existing " + (response.data.admin ? "administrator" : "user") + ' session is available. <a href="javascript:LeaveLoginPage()">Click here to use it.</a>');
      				}
      			},
      				function (jqXHR, textStatus, errorThrown)
      				{
      					HandleError("Unable to contact Blue Iris server");
      				});
      
      			// Set focus on first empty field
      			if (!$("#txtUn").val())
      				$("#txtUn").get(0).focus();
      			else if (!$("#txtPw").val())
      				$("#txtPw").get(0).focus();
      			else
      				$("#btnLogin").get(0).focus();
      
      			isStoredDataLoaded = true;
      		});
      		function login()
      		{
      			cbLoginAutomaticallyClicked();
      			$("#btnLogin").val("Logging in ...");
      			SetStatus();
      			ExecJSON({ cmd: "login" }, function (response)
      			{
      				var myResponse = md5($("#txtUn").val() + ":" + response.session + ":" + $("#txtPw").val());
      				ExecJSON({ cmd: "login", session: response.session, response: myResponse }, function (response)
      				{
      					if (response.result === "success")
      					{
      						$("#btnLogin").attr("disabled", "disabled").val("Redirecting...");
      						existingSession = response.session;
      						LeaveLoginPage();
      					}
      					else
      					{
      						$("#cbLoginAutomatically").removeAttr('checked');
      						SetPersistedValue("bi_rememberMe", "0");
      						SetPersistedValue("bi_username", "");
      						SetPersistedValue("bi_password", "");
      						$("#btnLogin").val("Log in");
      						HandleError(response.data ? response.data.reason : "Login failed but Blue Iris did not provide a reason.");
      					}
      				},
      					function (jqXHR, textStatus, errorThrown)
      					{
      						HandleError("Unable to contact Blue Iris server");
      						$("#btnLogin").val("Log in");
      					});
      			},
      				function (jqXHR, textStatus, errorThrown)
      				{
      					HandleError("Unable to contact Blue Iris server");
      					$("#btnLogin").val("Log in");
      				});
      		}
      		function LeaveLoginPage()
      		{
      			var page = UrlParameters.Get("page");
      			if (page === "")
      				page = "/";
      			page = page.replace(/&session=[^&?#%]+/gi, '');
      			page = page.replace(/\?session=[^&?#%]+/gi, '?');
      			page += (page.indexOf("?") < 0 ? "?" : "&") + "session=" + existingSession;
      			if (cookiesEnabled)
      				$.cookie("session", existingSession, { path: "/" });
      			location.href = page + location.hash;
      		}
      		function cancelAutoLogin()
      		{
      			if (autologin_timeout_1 !== null)
      			{
      				clearTimeout(autologin_timeout_1);
      				autologin_timeout_1 = null;
      			}
      			if (autologin_timeout_2 !== null)
      			{
      				clearTimeout(autologin_timeout_2);
      				autologin_timeout_2 = null;
      			}
      			$("#btnLogin").val(windowUnloading ? "Redirecting..." : "Log in");
      		}
      		function cbLoginAutomaticallyClicked()
      		{
      			cancelAutoLogin();
      			if (!isStoredDataLoaded)
      				return;
      			var isChecked = $("#cbLoginAutomatically").is(":checked");
      			SetPersistedValue("bi_rememberMe", isChecked ? "1" : "0");
      			SetPersistedValue("bi_username", isChecked ? Base64.encode($("#txtUn").val()) : "");
      			SetPersistedValue("bi_password", isChecked ? Base64.encode($("#txtPw").val()) : "");
      		}
      		function GetPersistedValue(key)
      		{
      			var value;
      			if (localStorageEnabled)
      				value = localStorage.getItem(key);
      			if (!value)
      				value = "";
      			return value;
      		}
      		function SetPersistedValue(key, value)
      		{
      			if (localStorageEnabled)
      				return localStorage.setItem(key, value);
      		}
      		function pwKeypress(ele, e)
      		{
      			var keycode;
      			if (window.event) keycode = window.event.keyCode;
      			else if (typeof e !== "undefined" && e) keycode = e.which;
      			else return true;
      
      			if (keycode === 13)
      			{
      				login();
      				return false;
      			}
      			else
      				return true;
      		}
      		function resized()
      		{
      			if ($("#status").is(":visible"))
      			{
      				$("#status").hide();
      				$("#status").css("max-width", $("#login").width() + "px");
      				$("#status").show();
      			}
      			$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });
      			$("#status").css("max-width", $("#login").width() + "px");
      			var heightTotal = 0;
      			$("#login").children().each(function (idx, ele)
      			{
      				heightTotal += $(ele).outerHeight(true);
      			});
      			if (heightTotal > $(window).height())
      			{
      				if ($("#status").parent().attr("id") !== "status_wrapper_upper")
      					$("#status_wrapper_upper").append($("#status"));
      			}
      			else
      			{
      				if ($("#status").parent().attr("id") !== "status_wrapper_lower")
      					$("#status_wrapper_lower").append($("#status"));
      			}
      			$("#lblLoginAutomatically").parent().css("padding-left", (($('#login').outerWidth() - $("#lblLoginAutomatically").outerWidth(true)) / 2) + "px");
      		}
      		function HandleError(error)
      		{
      			SetStatus(error, "#FF6262");
      		}
      		function SetStatus(html, color)
      		{
      			if (typeof html === "undefined" || html === null || html === "")
      			{
      				html = "";
      				$("#status").hide();
      			}
      			else
      				$("#status").show();
      			if (typeof color === "undefined" || color === null || color === "")
      				color = "#FFFFFF";
      			$("#status").html(html);
      			$("#status").css("color", color);
      			resized();
      		}
      		function GetAutoLoginInstantly()
      		{
      			return GetPersistedValue("bi_autoLoginInstant") === "1";
      		}
      		function GetPreferredContextMenuTrigger()
      		{
      			return GetPersistedValue("ui3_contextMenus_longPress") === "1" ? "longpress" : "right";
      		}
      		function SetupLoginContextMenu()
      		{
      			var onTriggerContextMenu = function (e)
      			{
      				if (GetAutoLoginInstantly())
      					$("#autoLoginNoDelay").text("Auto Login: Instant (click to change)");
      				else
      					$("#autoLoginNoDelay").text("Auto Login: Delayed (click to change)");
      				return true;
      			};
      			var onContextMenuAction = function ()
      			{
      				if (this.data.alias === "autoLoginNoDelay")
      					SetPersistedValue("bi_autoLoginInstant", GetAutoLoginInstantly() ? "0" : "1");
      			};
      			var menuOptions =
      			{
      				alias: "cmroot_login", width: "300px", items:
      					[
      						{ text: '<span id="autoLoginNoDelay"></span>', icon: "", alias: "autoLoginNoDelay", action: onContextMenuAction }
      					]
      				, onContextMenu: onTriggerContextMenu
      				, clickType: GetPreferredContextMenuTrigger()
      			};
      			$(".checkboxWrapper,#btnLogin").contextmenu(menuOptions);
      		}
      	</script>
      </body>
      </html>
      
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:21:45.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "w3.org"
               ],
               "hostname" : [
                  "www.w3.org"
               ],
               "ip" : [
                  "4.8.6.1",
                  "4.8.2.3"
               ],
               "url" : [
                  "http://www.w3.org/1999/xhtml"
               ]
            },
            "http" : {
               "bodymd5" : "c3beb4f33fd82aca728566b9032bf710",
               "bodymmh3" : 1345640069,
               "headermd5" : "3d828451c7a8cfb64d5503cc8403f549",
               "headermmh3" : 149652606,
               "title" : "Blue Iris Login"
            },
            "length" : 15361
         },
         "asn" : "AS22652",
         "city" : "East Broughton",
         "country" : "CA",
         "data" : "HTTP/1.1 200 OK\r\nServer: BlueServer/4.8.6.1\r\nDate: Thu, 07 Nov 2024 05:21:34 GMT\r\nP3P: CP=\"CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE\"\r\nAccess-Control-Allow-Origin: *\r\nSet-Cookie: session=649729647b3840880a6e795c12c97076; path=/\r\nConnection: Close\r\nContent-Type: text/html; charset=UTF-8\r\nContent-Length: 14979\r\nCache-Control: no-cache, no-store\r\nX-Frame-Options: SAMEORIGIN\r\n\r\n<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\r\n\t<link rel=\"shortcut icon\" href=\"/favicon.ico\" type=\"image/x-icon\" />\r\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\r\n\t<title>Blue Iris Login</title>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar login_version = \"19\";\r\n\t\tvar bi_version = \"4.8.6.1\";\r\n\t\tvar combined_version = login_version + \"-\" + bi_version;\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\twindow.onerror = function (msg, url, line, charIdx)\r\n\t\t{\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tvar versionStr = \"unknown\";\r\n\t\t\t\tif (typeof login_version !== \"undefined\")\r\n\t\t\t\t\tversionStr = login_version;\r\n\t\t\t\tvar biVersionStr = \"unknown\";\r\n\t\t\t\tif (typeof bi_version !== \"undefined\")\r\n\t\t\t\t\tbiVersionStr = bi_version;\r\n\t\t\t\turl = url.replace(/\\/\\/.*?\\//, '//censored_hostname/');\r\n\t\t\t\talert(\"An unexpected error has occurred in Blue Iris Login (v \" + versionStr + \" / \" + biVersionStr + \"). If you wish to report the error, please SCREENSHOT the browser now.\\n\\n\" + msg + \"\\nat \" + url + \" [\" + line + \":\" + charIdx + \"]\\n\" + navigator.userAgent);\r\n\t\t\t}\r\n\t\t\tcatch (ex)\r\n\t\t\t{\r\n\t\t\t\talert(ex);\r\n\t\t\t}\r\n\t\t};\r\n\t</script>\r\n\t<style type=\"text/css\">\r\n\t\tbody\r\n\t\t{\r\n\t\t\tfont-family: sans-serif;\r\n\t\t\tbackground: #212325;\r\n\t\t}\r\n\r\n\t\t#loginLoading\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t\ttext-shadow: 0 0 10px rgba(0,0,0,0.3);\r\n\t\t\tposition: absolute;\r\n\t\t\ttext-align: center;\r\n\t\t\ttop: 40%;\r\n\t\t\twidth: 100%;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t}\r\n\r\n\t\t\t#loginLoading h1\r\n\t\t\t{\r\n\t\t\t\tmargin: 0 0 20px 0;\r\n\t\t\t\tfont-size: 32px;\r\n\t\t\t}\r\n\r\n\t\t\t#loginLoading div\r\n\t\t\t{\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t}\r\n\r\n\t\t#login\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\r\n\t\t.checkboxWrapper\r\n\t\t{\r\n\t\t\tmax-width: 488px;\r\n\t\t}\r\n\t</style>\r\n</head>\r\n<body>\r\n\t<div id=\"loginLoading\">\r\n\t\t<h1>Ferme Eric Lessard</h1>\r\n\t\t<div>Loading login page...</div>\r\n\t</div>\r\n\t<div id=\"login\">\r\n\t\t<h1>Ferme Eric Lessard</h1>\r\n\t\t<input id=\"txtUn\" type=\"text\" class=\"text\" placeholder=\"Username\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<input id=\"txtPw\" type=\"password\" class=\"text\" placeholder=\"Password\" onkeypress=\"return pwKeypress(this, event);\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<div class=\"checkboxWrapper\">\r\n\t\t\t<input id=\"cbLoginAutomatically\" type=\"checkbox\" class=\"checkbox\" onchange=\"cbLoginAutomaticallyClicked();\" /><label for=\"cbLoginAutomatically\" id=\"lblLoginAutomatically\"><span class=\"ui\"></span>Log in automatically:</label>\r\n\t\t</div>\r\n\t\t<div id=\"status_wrapper_upper\"></div>\r\n\t\t<input id=\"btnLogin\" type=\"button\" class=\"btn\" value=\"Log in\" onclick=\"login();\" />\r\n\t\t<div id=\"status_wrapper_lower\"><div id=\"status\"></div></div>\r\n\t</div>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar loadingOpacity = 0;\r\n\t\tfunction IncreaseLoadingOpacity()\r\n\t\t{\r\n\t\t\tloadingOpacity += 0.05;\r\n\t\t\tif (loadingOpacity > 1)\r\n\t\t\t\tloadingOpacity = 1;\r\n\t\t\tvar ele = document.getElementById('loginLoading');\r\n\t\t\tele.style.display = \"block\";\r\n\t\t\tele.style.opacity = loadingOpacity;\r\n\t\t\tif (loadingOpacity < 1)\r\n\t\t\t\tshowLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);\r\n\t\t}\r\n\t\tvar showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);\r\n\r\n\t\tdocument.write('<link href=\"applet/loginStyles.css?v=' + combined_version + '\" rel=\"stylesheet\" />'\r\n\t\t\t+ '<script src=\"applet/loginScripts.js?v=' + combined_version + '\"><\\/script>');\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t/* eslint no-extra-parens: 0 */\r\n\t\tvar autologin_timeout_1 = null;\r\n\t\tvar autologin_timeout_2 = null;\r\n\t\tvar existingSession = \"649729647b3840880a6e795c12c97076\";\r\n\t\tvar isStoredDataLoaded = false;\r\n\t\tvar windowUnloading = false;\r\n\t\tvar cookiesEnabled;\r\n\t\tvar localStorageEnabled;\r\n\r\n\t\t/**\r\n\t\t * Changes the current URL by removing the specified query string parameter(s) from it.\r\n\t\t * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.\r\n\t\t */\r\n\t\tfunction NavRemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar url = RemoveUrlParams.apply(this, arguments);\r\n\t\t\ttry { history.replaceState(history.state, \"\", url); return null; } catch (ex) { return url; }\r\n\t\t}\r\n\t\tfunction RemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar s = location.search;\r\n\t\t\tfor (var i = 0; i < arguments.length; i++)\r\n\t\t\t{\r\n\t\t\t\tvar param = arguments[i];\r\n\t\t\t\tvar rx = new RegExp('(&|\\\\?)' + param + '=[^&?#%]+', 'gi');\r\n\t\t\t\ts = s.replace(rx, \"\");\r\n\t\t\t\twhile (s.indexOf(\"&\") === 0)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (s.length > 1)\r\n\t\t\t\t\t\ts = s.substr(1);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ts = \"\";\r\n\t\t\t\t}\r\n\t\t\t\tif (s.length > 0 && s.indexOf(\"?\") === -1)\r\n\t\t\t\t\ts = \"?\" + s;\r\n\t\t\t}\r\n\t\t\treturn location.origin + location.pathname + s + location.hash;\r\n\t\t}\r\n\r\n\t\tNavRemoveUrlParams(\"session\");\r\n\r\n\t\t$(function ()\r\n\t\t{\r\n\t\t\tcookiesEnabled = testCookieFunctionality();\r\n\t\t\tlocalStorageEnabled = isLocalStorageEnabled();\r\n\t\t\tvar skipAutoLogin = GetPersistedValue(\"bi_override_disable_auto_login_once\") === \"1\";\r\n\t\t\tif (UrlParameters.Get(\"autologin\") === \"0\")\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = true;\r\n\t\t\t\tvar url = NavRemoveUrlParams(\"session\", \"autologin\");\r\n\t\t\t\tif (url)\r\n\t\t\t\t{\r\n\t\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"1\");\r\n\t\t\t\t\tlocation.href = url;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"0\");\r\n\t\t\t}\r\n\t\t\tclearTimeout(showLoadingMessageTimeout);\r\n\t\t\t$(\"#loginLoading\").hide();\r\n\t\t\t$(\"#login\").show();\r\n\t\t\tif (typeof window.JSON === 'undefined')\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \\\"Secure only\\\" requirement within Blue Iris's web server settings.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!existingSession || (existingSession.length === 11 && existingSession.startsWith(\"%\") && existingSession.endsWith(\"%\") && existingSession.indexOf(\"SESSION\") === 2))\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!localStorageEnabled)\r\n\t\t\t\t$(\"#cbLoginAutomatically\").parent().text(\"Note: Local Storage is disabled in your browser, so credentials can not be saved.\").css(\"color\", \"#EEEEEE\");\r\n\t\t\tSetupLoginContextMenu();\r\n\t\t\tSetStatus();\r\n\t\t\t$(window).resize(resized);\r\n\t\t\tresized();\r\n\t\t\twindow.onbeforeunload = function ()\r\n\t\t\t{\r\n\t\t\t\twindowUnloading = true;\r\n\t\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t\treturn;\r\n\t\t\t};\r\n\t\t\t// Handle automatic login\r\n\t\t\tif (GetPersistedValue(\"bi_rememberMe\") === \"1\")\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").attr('checked', 'checked');\r\n\t\t\t\t$(\"#txtUn\").val(Base64.decode(GetPersistedValue(\"bi_username\")));\r\n\t\t\t\t$(\"#txtPw\").val(Base64.decode(GetPersistedValue(\"bi_password\")));\r\n\r\n\t\t\t\tif (!skipAutoLogin)\r\n\t\t\t\t{\r\n\t\t\t\t\tif ($(\"#txtUn\").val() !== \"\" && $(\"#txtPw\").val() !== \"\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif (GetAutoLoginInstantly())\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tif ($(\"#cbLoginAutomatically\").is(\":checked\"))\r\n\t\t\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t$(\"#btnLogin\").val(\"Logging in, in 2 seconds\");\r\n\t\t\t\t\t\t\tautologin_timeout_1 = setTimeout(function () { $(\"#btnLogin\").val(\"Logging in, in 1 second\"); }, 1000);\r\n\t\t\t\t\t\t\tautologin_timeout_2 = setTimeout(function ()\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tif ($(\"#cbLoginAutomatically\").is(\":checked\"))\r\n\t\t\t\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t\t\t}, 2000);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t}\r\n\r\n\t\t\t// Check for existing session\r\n\t\t\tExecJSON({ cmd: \"login\", session: existingSession }, function (response)\r\n\t\t\t{\r\n\t\t\t\tif (response.result === \"fail\")\r\n\t\t\t\t{\r\n\t\t\t\t\t// No existing session.\r\n\t\t\t\t\tvar anonymousAvailable = response.data && response.data[\"auth-exempt\"];\r\n\t\t\t\t\tif (anonymousAvailable)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// Attempt Anonymous login, to get the permission level.\r\n\t\t\t\t\t\tvar myResponse = md5(\"Anonymous:\" + response.session + \":\");\r\n\t\t\t\t\t\tExecJSON({ cmd: \"login\", session: response.session, response: myResponse }, function (response)\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tif (response.result === \"success\")\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\t\t\t\tSetStatus(\"An anonymous \" + (response.data.admin ? \"administrator\" : \"user\") + ' session is available. <a href=\"javascript:LeaveLoginPage()\">Click here to use it.</a>');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tfunction (jqXHR, textStatus, errorThrown)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse if (response.result === \"success\")\r\n\t\t\t\t{\r\n\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\tSetStatus(\"An existing \" + (response.data.admin ? \"administrator\" : \"user\") + ' session is available. <a href=\"javascript:LeaveLoginPage()\">Click here to use it.</a>');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t\tfunction (jqXHR, textStatus, errorThrown)\r\n\t\t\t\t{\r\n\t\t\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t\t});\r\n\r\n\t\t\t// Set focus on first empty field\r\n\t\t\tif (!$(\"#txtUn\").val())\r\n\t\t\t\t$(\"#txtUn\").get(0).focus();\r\n\t\t\telse if (!$(\"#txtPw\").val())\r\n\t\t\t\t$(\"#txtPw\").get(0).focus();\r\n\t\t\telse\r\n\t\t\t\t$(\"#btnLogin\").get(0).focus();\r\n\r\n\t\t\tisStoredDataLoaded = true;\r\n\t\t});\r\n\t\tfunction login()\r\n\t\t{\r\n\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t$(\"#btnLogin\").val(\"Logging in ...\");\r\n\t\t\tSetStatus();\r\n\t\t\tExecJSON({ cmd: \"login\" }, function (response)\r\n\t\t\t{\r\n\t\t\t\tvar myResponse = md5($(\"#txtUn\").val() + \":\" + response.session + \":\" + $(\"#txtPw\").val());\r\n\t\t\t\tExecJSON({ cmd: \"login\", session: response.session, response: myResponse }, function (response)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (response.result === \"success\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$(\"#btnLogin\").attr(\"disabled\", \"disabled\").val(\"Redirecting...\");\r\n\t\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\t\tLeaveLoginPage();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_rememberMe\", \"0\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t\t\tHandleError(response.data ? response.data.reason : \"Login failed but Blue Iris did not provide a reason.\");\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t\tfunction (jqXHR, textStatus, errorThrown)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t\t});\r\n\t\t\t},\r\n\t\t\t\tfunction (jqXHR, textStatus, errorThrown)\r\n\t\t\t\t{\r\n\t\t\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t});\r\n\t\t}\r\n\t\tfunction LeaveLoginPage()\r\n\t\t{\r\n\t\t\tvar page = UrlParameters.Get(\"page\");\r\n\t\t\tif (page === \"\")\r\n\t\t\t\tpage = \"/\";\r\n\t\t\tpage = page.replace(/&session=[^&?#%]+/gi, '');\r\n\t\t\tpage = page.replace(/\\?session=[^&?#%]+/gi, '?');\r\n\t\t\tpage += (page.indexOf(\"?\") < 0 ? \"?\" : \"&\") + \"session=\" + existingSession;\r\n\t\t\tif (cookiesEnabled)\r\n\t\t\t\t$.cookie(\"session\", existingSession, { path: \"/\" });\r\n\t\t\tlocation.href = page + location.hash;\r\n\t\t}\r\n\t\tfunction cancelAutoLogin()\r\n\t\t{\r\n\t\t\tif (autologin_timeout_1 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_1);\r\n\t\t\t\tautologin_timeout_1 = null;\r\n\t\t\t}\r\n\t\t\tif (autologin_timeout_2 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_2);\r\n\t\t\t\tautologin_timeout_2 = null;\r\n\t\t\t}\r\n\t\t\t$(\"#btnLogin\").val(windowUnloading ? \"Redirecting...\" : \"Log in\");\r\n\t\t}\r\n\t\tfunction cbLoginAutomaticallyClicked()\r\n\t\t{\r\n\t\t\tcancelAutoLogin();\r\n\t\t\tif (!isStoredDataLoaded)\r\n\t\t\t\treturn;\r\n\t\t\tvar isChecked = $(\"#cbLoginAutomatically\").is(\":checked\");\r\n\t\t\tSetPersistedValue(\"bi_rememberMe\", isChecked ? \"1\" : \"0\");\r\n\t\t\tSetPersistedValue(\"bi_username\", isChecked ? Base64.encode($(\"#txtUn\").val()) : \"\");\r\n\t\t\tSetPersistedValue(\"bi_password\", isChecked ? Base64.encode($(\"#txtPw\").val()) : \"\");\r\n\t\t}\r\n\t\tfunction GetPersistedValue(key)\r\n\t\t{\r\n\t\t\tvar value;\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\tvalue = localStorage.getItem(key);\r\n\t\t\tif (!value)\r\n\t\t\t\tvalue = \"\";\r\n\t\t\treturn value;\r\n\t\t}\r\n\t\tfunction SetPersistedValue(key, value)\r\n\t\t{\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\treturn localStorage.setItem(key, value);\r\n\t\t}\r\n\t\tfunction pwKeypress(ele, e)\r\n\t\t{\r\n\t\t\tvar keycode;\r\n\t\t\tif (window.event) keycode = window.event.keyCode;\r\n\t\t\telse if (typeof e !== \"undefined\" && e) keycode = e.which;\r\n\t\t\telse return true;\r\n\r\n\t\t\tif (keycode === 13)\r\n\t\t\t{\r\n\t\t\t\tlogin();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t\treturn true;\r\n\t\t}\r\n\t\tfunction resized()\r\n\t\t{\r\n\t\t\tif ($(\"#status\").is(\":visible\"))\r\n\t\t\t{\r\n\t\t\t\t$(\"#status\").hide();\r\n\t\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\t\t$(\"#status\").show();\r\n\t\t\t}\r\n\t\t\t$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });\r\n\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\tvar heightTotal = 0;\r\n\t\t\t$(\"#login\").children().each(function (idx, ele)\r\n\t\t\t{\r\n\t\t\t\theightTotal += $(ele).outerHeight(true);\r\n\t\t\t});\r\n\t\t\tif (heightTotal > $(window).height())\r\n\t\t\t{\r\n\t\t\t\tif ($(\"#status\").parent().attr(\"id\") !== \"status_wrapper_upper\")\r\n\t\t\t\t\t$(\"#status_wrapper_upper\").append($(\"#status\"));\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tif ($(\"#status\").parent().attr(\"id\") !== \"status_wrapper_lower\")\r\n\t\t\t\t\t$(\"#status_wrapper_lower\").append($(\"#status\"));\r\n\t\t\t}\r\n\t\t\t$(\"#lblLoginAutomatically\").parent().css(\"padding-left\", (($('#login').outerWidth() - $(\"#lblLoginAutomatically\").outerWidth(true)) / 2) + \"px\");\r\n\t\t}\r\n\t\tfunction HandleError(error)\r\n\t\t{\r\n\t\t\tSetStatus(error, \"#FF6262\");\r\n\t\t}\r\n\t\tfunction SetStatus(html, color)\r\n\t\t{\r\n\t\t\tif (typeof html === \"undefined\" || html === null || html === \"\")\r\n\t\t\t{\r\n\t\t\t\thtml = \"\";\r\n\t\t\t\t$(\"#status\").hide();\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t\t$(\"#status\").show();\r\n\t\t\tif (typeof color === \"undefined\" || color === null || color === \"\")\r\n\t\t\t\tcolor = \"#FFFFFF\";\r\n\t\t\t$(\"#status\").html(html);\r\n\t\t\t$(\"#status\").css(\"color\", color);\r\n\t\t\tresized();\r\n\t\t}\r\n\t\tfunction GetAutoLoginInstantly()\r\n\t\t{\r\n\t\t\treturn GetPersistedValue(\"bi_autoLoginInstant\") === \"1\";\r\n\t\t}\r\n\t\tfunction GetPreferredContextMenuTrigger()\r\n\t\t{\r\n\t\t\treturn GetPersistedValue(\"ui3_contextMenus_longPress\") === \"1\" ? \"longpress\" : \"right\";\r\n\t\t}\r\n\t\tfunction SetupLoginContextMenu()\r\n\t\t{\r\n\t\t\tvar onTriggerContextMenu = function (e)\r\n\t\t\t{\r\n\t\t\t\tif (GetAutoLoginInstantly())\r\n\t\t\t\t\t$(\"#autoLoginNoDelay\").text(\"Auto Login: Instant (click to change)\");\r\n\t\t\t\telse\r\n\t\t\t\t\t$(\"#autoLoginNoDelay\").text(\"Auto Login: Delayed (click to change)\");\r\n\t\t\t\treturn true;\r\n\t\t\t};\r\n\t\t\tvar onContextMenuAction = function ()\r\n\t\t\t{\r\n\t\t\t\tif (this.data.alias === \"autoLoginNoDelay\")\r\n\t\t\t\t\tSetPersistedValue(\"bi_autoLoginInstant\", GetAutoLoginInstantly() ? \"0\" : \"1\");\r\n\t\t\t};\r\n\t\t\tvar menuOptions =\r\n\t\t\t{\r\n\t\t\t\talias: \"cmroot_login\", width: \"300px\", items:\r\n\t\t\t\t\t[\r\n\t\t\t\t\t\t{ text: '<span id=\"autoLoginNoDelay\"></span>', icon: \"\", alias: \"autoLoginNoDelay\", action: onContextMenuAction }\r\n\t\t\t\t\t]\r\n\t\t\t\t, onContextMenu: onTriggerContextMenu\r\n\t\t\t\t, clickType: GetPreferredContextMenuTrigger()\r\n\t\t\t};\r\n\t\t\t$(\".checkboxWrapper,#btnLogin\").contextmenu(menuOptions);\r\n\t\t}\r\n\t</script>\r\n</body>\r\n</html>\r\n",
         "datamd5" : "c71e4fac97008c6f584156ef7a8d5472",
         "datammh3" : 1408777789,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "domain" : [
            "fibrenoire.ca"
         ],
         "forward" : "173.231.126.126",
         "geolocus" : {
            "asn" : "AS22652",
            "continent" : "NA",
            "continentname" : "North America",
            "country" : "CA",
            "countryname" : "Canada",
            "domain" : [
               "fibrenoire.ca"
            ],
            "isineu" : "false",
            "latitude" : "56.130366",
            "location" : "56.130366,-106.346771",
            "longitude" : "-106.346771",
            "netname" : "FNI-CIDR-8",
            "organization" : "Videotron Ltee",
            "subnet" : "173.231.120.0/21"
         },
         "host" : [
            "ip-173-231-126-126"
         ],
         "hostname" : [
            "173.231.126.126",
            "ip-173-231-126-126.static.fibrenoire.ca"
         ],
         "ip" : "173.231.126.126",
         "ipv6" : "false",
         "latitude" : "46.2148",
         "location" : "46.2148,-71.0829",
         "longitude" : "-71.0829",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "FIBRENOIRE-INTERNET",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "reverse" : [
            "ip-173-231-126-126.static.fibrenoire.ca"
         ],
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subdomains" : [
            "static.fibrenoire.ca"
         ],
         "subnet" : "173.231.120.0/21",
         "tag" : "<enterprise field>: tag",
         "tld" : [
            "ca"
         ],
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/login.htm?page=%2F"
      }
      
  • 60.249.14.229:81 (tcp/http) - last seen on 2024-11-07 at 05:21:05 UTC

    • IP
      60.249.14.229
      Network
      60.248.0.0/14
      Domain(s)
      hinet.net
      Device

      <enterprise field>: device.class

      Operating System
      Microsoft Windows
      URL

      http://60.249.14.229:81/ 200

      HTTP Title
      WebMail - Login
      Reverse DNS
      60-249-14-229.hinet-ip.hinet.net
      ASN
      AS3462
      Organization
      Data Communication Business Group
      Protocol
      http
      Source
      datascan
    • Operating System
      Microsoft Windows
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      124a63b390244253e7bab46bbff01e73
      HTTP Header MD5
      7af0c7d9087fc95d9f1e33389eafcd51
      HTTP Body MD5
      6da5f398f1919c6337ca8c5c69874392
    • HTTP/1.1 200 OK
      Connection: close
      Content-Disposition: inline; filename="login.html";
      Content-Type: text/html
      Content-Length: 4013
      Date: Thu, 07 Nov 2024 05:21:04 GMT
      Strict-Transport-Security: max-age=31536000; includeSubDomains
      X-Frame-Options: SAMEORIGIN
      X-Content-Type-Options: nosniff
      Permissions-Policy: geolocation=(self "https://example.com"), microphone=()
      Referrer-Policy: no-referrer
      Content-Security-Policy: base-uri 'self'
      Set-Cookie: IDHTTPSESSIONID=3bnFGqVO1yPfkKl; Path=/
      
      <html>
      <head>
      <meta name="robots" content="noindex,nofollow">
      <meta http-equiv="Content-Type" content="text/html; charset=big5">
      <title>WebMail - Login</title>
      <link rel="stylesheet" type="text/css" href="Webimages/style.css"/>
      <script language="javascript">
      function init(){
      	document.form1.loginid.focus();
      }
      </script>
      <style type="text/css">
      <!--
      .style1 {font-family: Tahoma, verdana}
      -->
      </style>
      </head>
      
      <body onload="init()">
      <div id="loginDiv">
      <form name="form1" method="post" action="listmail.html">
      	<table width="60%" height="100%" border="0" align="center">
      		<tr>
      			<td width="100%" align="left" valign="center"><img src="Webimages/RaidenMAILD.jpg" border="0" width=320"></td>
      			<td width="30%" align="center" valign="center">
      				<table class="loginBG" cellspacing="0" cellpadding="3">
      					<tr height="60"><td colspan="2"></td></tr>
      					<tr height="30">
      						<td align="right">�b��:<input type="text" name="loginid" class="txt"></td><td width=30%></td>
      					</tr>
      					<tr height="30">
      						<td align="right">�K�X:<input type="password" name="loginpass" class="txt"></td>
      					</tr>
      					<!-- Begin of Multilingual -->
      					<tr height="30">
      						<td align="right">�w�]�y�t:
      						<select name="langname" class="txt">
      						<option value="language_cht.res">Chinese Traditional</option>
      						<option value="language_eng.res">English</option>
      						<option value="language_gb.res">Chinese Simplified</option>
      						<option value="language_dk.res">Danish</option>
      						<option value="language_hun.res">Hungarian</option>
      						<option value="language_swe.res">Swedish</option>
      						<option value="language_spa.res">Spanish</option>
      						<option value="language_jpn.res">Japanese</option>
      						<option value="language_fre.res">French</option>
      						<option value="language_el.res">Greek</option>
      						</select>
      						</td>
      					</tr>
      					<tr height="30">
      						<td align="right">�w�]�s�X:
      						<select name="encoding" class="txt">
      						<option value="BIG5">BIG5</option>
      						<option value="ISO-8859-1">ISO-8859-1</option>
      						<option value="GB2312">GB2312</option>
      						<option value="SHIFT-JIS">SHIFT-JIS</option>
      						<option value="ISO-8859-7">ISO-8859-7</option>
      						</select>
      						</td>
      					</tr>
      <!--					<tr height="30">
      						<td align="right">�ﶵ
      						<select name="option" class="txt">
      						<option value="login">�n�J</option>
      						<option value="changepassword">�ܧ�K�X</option>
      						</select>
      						</td>
      					</tr>-->
      					<!-- End of Multilingual -->
      					<tr height="30">
      						<td align="right">
      						<input type="submit" value="�n�JWeb Mail" class="btn"></td>					
      						<!--<input type="hidden" name="option" value="changepassword">-->
      						<input type="hidden" name="option" value="login">
      				  </td>
      					</tr>
      				</table>
      			</td>		
      		</tr>
      		<tr>
      			<td colspan=3 align="left" valign="center">
      				<span class="information">
      				�p�qMAILD �ϥΦw��`�N�ƶ�:<br>
      				1. �H�c�ϥΧ�����, �Ы�n�X �ӵn�X�t�Ψ�����s���.<br>
      				2. �ϥδ���Y���m�L�[, �t�αN�۰ʱN�ϥΪ̰h�X�t��.<br>
      				<br>
      				�A�w�g��U�b���F��? �I<a href="registerform.html">�o��</a>�ӽзs�b��.<br>
      				�d�ߥӽЪ��p���I<a href="registerqueryform.html">�o��</a><br>
      				�ѰO�K�X���I<a href="requestpasswordmailform.html">�o��</a>
      			</span>
      			</td>
      		</tr>
      
      
      		<tr><td colspan="2" width="100%" align="center" halign="center">Powered by <a href="http://www.raidenmaild.com/tw/" target="_blank">RaidenMAILD Mail Server</a>, Copyright &copy; Team John Long, all rights reserved.<br>
      Raiden pro server family:&nbsp;<a href="http://www.ftpserver.tw" target="_blank">Ftp Server</a>&nbsp;|&nbsp;
      <a href="http://www.raidenhttpd.com/tw/" target="_blank">Web Server</a>&nbsp;|&nbsp;<a href="http://www.raidendnsd.com/" target="_blank">Dns Server</a>&nbsp;|&nbsp;<a href="http://www.raidentunes.com/" target="_blank">Music Server</a>
      		</td></tr>
      </table>
      </div>
      </body>
      </html>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:21:05.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "raidenmaild.com",
                  "raidentunes.com",
                  "raidenhttpd.com",
                  "example.com",
                  "ftpserver.tw",
                  "raidendnsd.com"
               ],
               "hostname" : [
                  "example.com",
                  "www.ftpserver.tw",
                  "www.raidendnsd.com",
                  "www.raidenhttpd.com",
                  "www.raidenmaild.com",
                  "www.raidentunes.com"
               ],
               "url" : [
                  "http://www.ftpserver.tw",
                  "http://www.raidendnsd.com/",
                  "http://www.raidenhttpd.com/tw/",
                  "http://www.raidenmaild.com/tw/",
                  "http://www.raidentunes.com/",
                  "https://example.com"
               ]
            },
            "http" : {
               "bodymd5" : "6da5f398f1919c6337ca8c5c69874392",
               "bodymmh3" : -343980268,
               "headermd5" : "7af0c7d9087fc95d9f1e33389eafcd51",
               "headermmh3" : 342613134,
               "title" : "WebMail - Login"
            },
            "length" : 4516
         },
         "asn" : "AS3462",
         "city" : "Taichung",
         "country" : "TW",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.1 200 OK\r\nConnection: close\r\nContent-Disposition: inline; filename=\"login.html\";\r\nContent-Type: text/html\r\nContent-Length: 4013\r\nDate: Thu, 07 Nov 2024 05:21:04 GMT\r\nStrict-Transport-Security: max-age=31536000; includeSubDomains\r\nX-Frame-Options: SAMEORIGIN\r\nX-Content-Type-Options: nosniff\r\nPermissions-Policy: geolocation=(self \"https://example.com\"), microphone=()\r\nReferrer-Policy: no-referrer\r\nContent-Security-Policy: base-uri 'self'\r\nSet-Cookie: IDHTTPSESSIONID=3bnFGqVO1yPfkKl; Path=/\r\n\r\n<html>\r\n<head>\r\n<meta name=\"robots\" content=\"noindex,nofollow\">\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=big5\">\r\n<title>WebMail - Login</title>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"Webimages/style.css\"/>\r\n<script language=\"javascript\">\r\nfunction init(){\r\n\tdocument.form1.loginid.focus();\r\n}\r\n</script>\r\n<style type=\"text/css\">\r\n<!--\r\n.style1 {font-family: Tahoma, verdana}\r\n-->\r\n</style>\r\n</head>\r\n\r\n<body onload=\"init()\">\r\n<div id=\"loginDiv\">\r\n<form name=\"form1\" method=\"post\" action=\"listmail.html\">\r\n\t<table width=\"60%\" height=\"100%\" border=\"0\" align=\"center\">\r\n\t\t<tr>\r\n\t\t\t<td width=\"100%\" align=\"left\" valign=\"center\"><img src=\"Webimages/RaidenMAILD.jpg\" border=\"0\" width=320\"></td>\r\n\t\t\t<td width=\"30%\" align=\"center\" valign=\"center\">\r\n\t\t\t\t<table class=\"loginBG\" cellspacing=\"0\" cellpadding=\"3\">\r\n\t\t\t\t\t<tr height=\"60\"><td colspan=\"2\"></td></tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdb\ufffd\ufffd:<input type=\"text\" name=\"loginid\" class=\"txt\"></td><td width=30%></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdK\ufffdX:<input type=\"password\" name=\"loginpass\" class=\"txt\"></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<!-- Begin of Multilingual -->\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdw\ufffd]\ufffdy\ufffdt:\r\n\t\t\t\t\t\t<select name=\"langname\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"language_cht.res\">Chinese Traditional</option>\r\n\t\t\t\t\t\t<option value=\"language_eng.res\">English</option>\r\n\t\t\t\t\t\t<option value=\"language_gb.res\">Chinese Simplified</option>\r\n\t\t\t\t\t\t<option value=\"language_dk.res\">Danish</option>\r\n\t\t\t\t\t\t<option value=\"language_hun.res\">Hungarian</option>\r\n\t\t\t\t\t\t<option value=\"language_swe.res\">Swedish</option>\r\n\t\t\t\t\t\t<option value=\"language_spa.res\">Spanish</option>\r\n\t\t\t\t\t\t<option value=\"language_jpn.res\">Japanese</option>\r\n\t\t\t\t\t\t<option value=\"language_fre.res\">French</option>\r\n\t\t\t\t\t\t<option value=\"language_el.res\">Greek</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdw\ufffd]\ufffds\ufffdX:\r\n\t\t\t\t\t\t<select name=\"encoding\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"BIG5\">BIG5</option>\r\n\t\t\t\t\t\t<option value=\"ISO-8859-1\">ISO-8859-1</option>\r\n\t\t\t\t\t\t<option value=\"GB2312\">GB2312</option>\r\n\t\t\t\t\t\t<option value=\"SHIFT-JIS\">SHIFT-JIS</option>\r\n\t\t\t\t\t\t<option value=\"ISO-8859-7\">ISO-8859-7</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n<!--\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffd\ufdb5\r\n\t\t\t\t\t\t<select name=\"option\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"login\">\ufffdn\ufffdJ</option>\r\n\t\t\t\t\t\t<option value=\"changepassword\">\ufffd\u0727\ufffdK\ufffdX</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>-->\r\n\t\t\t\t\t<!-- End of Multilingual -->\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\r\n\t\t\t\t\t\t<input type=\"submit\" value=\"\ufffdn\ufffdJWeb Mail\" class=\"btn\"></td>\t\t\t\t\t\r\n\t\t\t\t\t\t<!--<input type=\"hidden\" name=\"option\" value=\"changepassword\">-->\r\n\t\t\t\t\t\t<input type=\"hidden\" name=\"option\" value=\"login\">\r\n\t\t\t\t  </td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</td>\t\t\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td colspan=3 align=\"left\" valign=\"center\">\r\n\t\t\t\t<span class=\"information\">\r\n\t\t\t\t\ufffdp\ufffdqMAILD \ufffd\u03e5\u03a6w\ufffd\ufffd`\ufffdN\ufffd\u01b6\ufffd:<br>\r\n\t\t\t\t1. \ufffdH\ufffdc\ufffd\u03e5\u03a7\ufffd\ufffd\ufffd\ufffd\ufffd, \ufffd\u042b\ufffdn\ufffdX \ufffd\u04f5n\ufffdX\ufffdt\ufffd\u03a8\ufffd\ufffd\ufffd\ufffd\ufffds\ufffd\ufffd\ufffd.<br>\r\n\t\t\t\t2. \ufffd\u03e5\u03b4\ufffd\ufffd\ufffdY\ufffd\ufffd\ufffdm\ufffdL\ufffd[, \ufffdt\ufffd\u03b1N\ufffd\u06f0\u02b1N\ufffd\u03e5\u03aa\u0330h\ufffdX\ufffdt\ufffd\ufffd.<br>\r\n\t\t\t\t<br>\r\n\t\t\t\t\ufffdA\ufffdw\ufffdg\ufffd\ufffdU\ufffdb\ufffd\ufffd\ufffdF\ufffd\ufffd? \ufffdI<a href=\"registerform.html\">\ufffdo\ufffd\ufffd</a>\ufffd\u04fd\u0437s\ufffdb\ufffd\ufffd.<br>\r\n\t\t\t\t\ufffdd\ufffd\u07e5\u04fd\u042a\ufffd\ufffdp\ufffd\ufffd\ufffdI<a href=\"registerqueryform.html\">\ufffdo\ufffd\ufffd</a><br>\r\n\t\t\t\t\ufffd\u0470O\ufffdK\ufffdX\ufffd\ufffd\ufffdI<a href=\"requestpasswordmailform.html\">\ufffdo\ufffd\ufffd</a>\r\n\t\t\t</span>\r\n\t\t\t</td>\r\n\t\t</tr>\r\n\r\n\r\n\t\t<tr><td colspan=\"2\" width=\"100%\" align=\"center\" halign=\"center\">Powered by <a href=\"http://www.raidenmaild.com/tw/\" target=\"_blank\">RaidenMAILD Mail Server</a>, Copyright &copy; Team John Long, all rights reserved.<br>\r\nRaiden pro server family:&nbsp;<a href=\"http://www.ftpserver.tw\" target=\"_blank\">Ftp Server</a>&nbsp;|&nbsp;\r\n<a href=\"http://www.raidenhttpd.com/tw/\" target=\"_blank\">Web Server</a>&nbsp;|&nbsp;<a href=\"http://www.raidendnsd.com/\" target=\"_blank\">Dns Server</a>&nbsp;|&nbsp;<a href=\"http://www.raidentunes.com/\" target=\"_blank\">Music Server</a>\r\n\t\t</td></tr>\r\n</table>\r\n</div>\r\n</body>\r\n</html>",
         "datamd5" : "124a63b390244253e7bab46bbff01e73",
         "datammh3" : 688791564,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "domain" : [
            "hinet.net"
         ],
         "geolocus" : {
            "asn" : "AS3462",
            "continent" : "AS",
            "continentname" : "Asia",
            "country" : "TW",
            "countryname" : "Taiwan",
            "domain" : [
               "hinet.net",
               "twnic.net",
               "twnic.net.tw"
            ],
            "isineu" : "false",
            "latitude" : "23.69781",
            "location" : "23.69781,120.960515",
            "longitude" : "120.960515",
            "netname" : "HINET-NET",
            "organization" : "Data Communication Business Group",
            "subnet" : "60.249.0.0/16"
         },
         "host" : [
            "60-249-14-229"
         ],
         "hostname" : [
            "60-249-14-229.hinet-ip.hinet.net"
         ],
         "ip" : "60.249.14.229",
         "ipv6" : "false",
         "latitude" : "24.1440",
         "location" : "24.1440,120.6844",
         "longitude" : "120.6844",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "Data Communication Business Group",
         "os" : "Windows",
         "osvendor" : "Microsoft",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "reverse" : [
            "60-249-14-229.hinet-ip.hinet.net"
         ],
         "seen_date" : "2024-11-07",
         "source" : "datascan",
         "status" : 200,
         "subdomains" : [
            "hinet-ip.hinet.net"
         ],
         "subnet" : "60.248.0.0/14",
         "tag" : "<enterprise field>: tag",
         "tld" : [
            "net"
         ],
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/"
      }
      
  • 47.225.148.199:81 (tcp/http) - last seen on 2024-11-07 at 05:21:02 UTC

    • IP
      47.225.148.199
      Network
      47.225.128.0/18
      Domain(s)
      spectrum.com
      Device

      <enterprise field>: device.class

      URL

      http://47.225.148.199:81/login.htm?page=%2F 200

      HTTP Title
      Blue Iris Login
      Reverse DNS
      syn-047-225-148-199.res.spectrum.com
      ASN
      AS20115
      Organization
      CHARTER-20115
      Protocol
      http
      Source
      urlscan::redirect
    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      395ef1c4d83189ccb8388448d28c7af7
      HTTP Header MD5
      dfda7a81782ec85d5da71fab26752798
      HTTP Body MD5
      71be9da04b4012db34dee212e463600f
    • HTTP/1.0 200 OK
      Server: BlueServer/5.5.9.6
      Date: Thu, 07 Nov 2024 05:20:58 GMT
      P3P: CP="CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE"
      Access-Control-Allow-Origin: *
      Set-Cookie: session=1ebf1883311a2cef516e0e9918625a0b; path=/
      Connection: close
      Content-Type: text/html; charset=UTF-8
      Content-Length: 17764
      Cache-Control: no-cache, no-store
      X-Frame-Options: SAMEORIGIN
      
      <!DOCTYPE html>
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
      	<link rel="icon" id="ui3launcher1">
      	<link rel="apple-touch-icon" id="ui3launcher2">
      	<meta name="viewport" content="width=device-width, initial-scale=1" />
      	<meta name="apple-mobile-web-app-capable" content="yes"> <!--iOS Safari-->
      	<meta name="apple-mobile-web-app-status-bar-style" content="black">
      	<meta name="mobile-web-app-capable" content="yes"><!--Android Chrome-->
      	<meta name="theme-color" content="#000000">
      	<link rel="manifest" id="ui3manifest">
      	<title>Blue Iris Login</title>
      	<script type="text/javascript">
      		var login_version = "27";
      		var bi_version = "5.5.9.6";
      		var combined_version = login_version + "-" + bi_version;
      		var appPath = "/" + "/".replace(/^\/+|\/+$/g, '');
      		if (!appPath.endsWith("/"))
      			appPath = appPath + "/";
      	</script>
      	<script type="text/javascript">
      		// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.
      		var suppressErrorCallbacks = [
      			function (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.
      			{
      				return err.line === 1 && err.msg && err.msg.indexOf("'getAttribute'") > -1 && err.url && err.url.indexOf(".htm") > -1;
      			},
      			function (err) // [2021-07-19] LG TV browser fails repeatedly.
      			{
      				return err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf("Script error.") > -1 && (!err.url || err.url == "");
      			},
      			function (err) // ublock origin in Brave browser
      			{
      				return err.msg && err.msg == "Uncaught TypeError: Cannot redefine property: getElementById" && err.url === "";
      			},
      			function (err) // Edge iOS
      			{
      				return err.msg && err.msg.indexOf("instantSearchSDKJSBridgeClearHighlight") > -1;
      			}
      		];
      		window.onerror = function (msg, url, line, charIdx)
      		{
      			try
      			{
      				var versionStr = "unknown";
      				if (typeof login_version !== "undefined")
      					versionStr = login_version;
      				var biVersionStr = "unknown";
      				if (typeof bi_version !== "undefined")
      					biVersionStr = bi_version;
      				url = url.replace(/\/\/.*?\//, '//censored_hostname/');
      				var errStr = "An unexpected error has occurred in Blue Iris Login (v " + versionStr + " / " + biVersionStr + "). If you wish to report the error, please SCREENSHOT the browser now.\n\n" + msg + "\nat " + url + " [" + line + ":" + charIdx + "]\n" + navigator.userAgent;
      
      				var errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };
      				for (var i = 0; i < suppressErrorCallbacks.length; i++)
      				{
      					try
      					{
      						if (suppressErrorCallbacks[i](errObj))
      						{
      							try { console.log("The following error report was suppressed by callback " + i + ":"); console.error(errStr); }
      							catch (ex) { }
      							return;
      						}
      					}
      					catch (ex)
      					{
      						try { console.log("Error suppression callback " + i + " had an error:"); console.error(errStr); }
      						catch (ex) { }
      						return;
      					}
      				}
      				alert(errStr);
      			}
      			catch (ex)
      			{
      				alert(ex);
      			}
      		};
      	</script>
      	<script type="text/javascript">
      		document.getElementById("ui3manifest").href = 'applet/manifest.json?v=' + combined_version;
      		document.getElementById("ui3launcher1").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;
      		document.getElementById("ui3launcher2").href = 'applet/launcher-icon.png?v=' + combined_version;
      	</script>
      	<style type="text/css">
      		body
      		{
      			font-family: sans-serif;
      			background: #212325;
      		}
      
      		#loginLoading
      		{
      			display: none;
      			text-shadow: 0 0 10px rgba(0,0,0,0.3);
      			position: absolute;
      			text-align: center;
      			top: 40%;
      			width: 100%;
      			color: #FFFFFF;
      		}
      
      			#loginLoading h1
      			{
      				margin: 0 0 20px 0;
      				font-size: 32px;
      			}
      
      			#loginLoading div
      			{
      				font-size: 20px;
      			}
      
      		#login
      		{
      			display: none;
      		}
      
      		.checkboxWrapper
      		{
      			max-width: 488px;
      		}
      	</style>
      </head>
      <body>
      	<div id="loginLoading">
      		<h1> Brennansap</h1>
      		<div>Loading login page...</div>
      	</div>
      	<div id="login">
      		<h1> Brennansap</h1>
      		<input id="txtUn" type="text" class="text" placeholder="Username" autocapitalize="off" autocorrect="off" />
      		<input id="txtPw" type="password" class="text" placeholder="Password" onkeypress="return pwKeypress(this, event);" autocapitalize="off" autocorrect="off" />
      		<div class="checkboxWrapper">
      			<input id="cbLoginAutomatically" type="checkbox" class="checkbox" onchange="cbLoginAutomaticallyClicked();" /><label for="cbLoginAutomatically" id="lblLoginAutomatically"><span class="ui"></span>Log in automatically:</label>
      		</div>
      		<div id="status_wrapper_upper"></div>
      		<input id="btnLogin" type="button" class="btn" value="Log in" onclick="login();" />
      		<div id="status_wrapper_lower"><div id="status"></div></div>
      	</div>
      	<script type="text/javascript">
      		var loadingOpacity = 0;
      		function IncreaseLoadingOpacity()
      		{
      			loadingOpacity += 0.05;
      			if (loadingOpacity > 1)
      				loadingOpacity = 1;
      			var ele = document.getElementById('loginLoading');
      			ele.style.display = "block";
      			ele.style.opacity = loadingOpacity;
      			if (loadingOpacity < 1)
      				showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);
      		}
      		var showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);
      
      		document.write('<link href="applet/loginStyles.css?v=' + combined_version + '" rel="stylesheet" />'
      			+ '<script src="applet/loginScripts.js?v=' + combined_version + '"><\/script>');
      	</script>
      	<script type="text/javascript">
      		/* eslint no-extra-parens: 0 */
      		var autologin_timeout_1 = null;
      		var autologin_timeout_2 = null;
      		var existingSession = "1ebf1883311a2cef516e0e9918625a0b";
      		var authStatus = "unknown";
      		var authExempt = "no";
      		var loginSession = "";
      		var isStoredDataLoaded = false;
      		var windowUnloading = false;
      		var cookiesEnabled;
      		var localStorageEnabled;
      
      		/**
      		 * Changes the current URL by removing the specified query string parameter(s) from it.
      		 * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.
      		 */
      		function NavRemoveUrlParams()
      		{
      			var url = RemoveUrlParams.apply(this, arguments);
      			try { history.replaceState(history.state, "", url); return null; } catch (ex) { return url; }
      		}
      		function RemoveUrlParams()
      		{
      			var s = location.search;
      			for (var i = 0; i < arguments.length; i++)
      			{
      				var param = arguments[i];
      				var rx = new RegExp('(&|\\?)' + param + '=[^&?#%]+', 'gi');
      				s = s.replace(rx, "");
      				while (s.indexOf("&") === 0)
      				{
      					if (s.length > 1)
      						s = s.substr(1);
      					else
      						s = "";
      				}
      				if (s.length > 0 && s.indexOf("?") === -1)
      					s = "?" + s;
      			}
      			return location.origin + location.pathname + s + location.hash;
      		}
      
      		NavRemoveUrlParams("session");
      
      		$(function ()
      		{
      			cookiesEnabled = testCookieFunctionality();
      			localStorageEnabled = isLocalStorageEnabled();
      			var skipAutoLogin = GetPersistedValue("bi_override_disable_auto_login_once") === "1";
      			if (UrlParameters.Get("autologin") === "0")
      			{
      				skipAutoLogin = true;
      				var url = NavRemoveUrlParams("session", "autologin");
      				if (url)
      				{
      					SetPersistedValue("bi_override_disable_auto_login_once", "1");
      					location.href = url;
      					return;
      				}
      			}
      			if (skipAutoLogin)
      			{
      				SetPersistedValue("bi_override_disable_auto_login_once", "0");
      			}
      			var lastUnload = GetPersistedValue("bi_lastunload");
      			if (lastUnload > Date.now())
      				SetPersistedValue("bi_lastunload", 0);
      			else if (!skipAutoLogin)
      				skipAutoLogin = Date.now() - lastUnload < 5000;
      			clearTimeout(showLoadingMessageTimeout);
      			$("#loginLoading").hide();
      			$("#login").show();
      			if (typeof window.JSON === 'undefined')
      			{
      				$("#login").html("<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \"Secure only\" requirement within Blue Iris's web server settings.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!existingSession || (existingSession.length === 11 && existingSession.startsWith("%") && existingSession.endsWith("%") && existingSession.indexOf("SESSION") === 2))
      			{
      				$("#login").html("<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!localStorageEnabled)
      				$("#cbLoginAutomatically").parent().text("Note: Local Storage is disabled in your browser, so credentials can not be saved.").css("color", "#EEEEEE");
      			SetupLoginContextMenu();
      			SetStatus();
      			$(window).resize(resized);
      			resized();
      			window.onbeforeunload = function ()
      			{
      				windowUnloading = true;
      				cbLoginAutomaticallyClicked();
      				return;
      			};
      			// Handle automatic login
      			if (GetPersistedValue("bi_rememberMe") === "1")
      			{
      				$("#cbLoginAutomatically").attr('checked', 'checked');
      				$("#txtUn").val(Base64.decode(GetPersistedValue("bi_username")));
      				$("#txtPw").val(Base64.decode(GetPersistedValue("bi_password")));
      
      				if (!skipAutoLogin)
      				{
      					if ($("#txtUn").val() !== "" && $("#txtPw").val() !== "")
      					{
      						if (GetAutoLoginInstantly())
      						{
      							if ($("#cbLoginAutomatically").is(":checked"))
      								login();
      						}
      						else
      						{
      							$("#btnLogin").val("Logging in, in 2 seconds");
      							autologin_timeout_1 = setTimeout(function () { $("#btnLogin").val("Logging in, in 1 second"); }, 1000);
      							autologin_timeout_2 = setTimeout(function ()
      							{
      								if ($("#cbLoginAutomatically").is(":checked"))
      									login();
      							}, 2000);
      						}
      					}
      				}
      			}
      			else
      			{
      				$("#cbLoginAutomatically").removeAttr('checked');
      				SetPersistedValue("bi_username", "");
      				SetPersistedValue("bi_password", "");
      			}
      
      			var sessionType = "";
      
      			// authExempt predefined values: no, user, admin, unknown (should not happen)
      			if (authExempt === "user")
      				sessionType = "anonymous user";
      			else if (authExempt === "admin")
      				sessionType = "anonymous admin";
      
      			// authStatus predefined values: unknown, admin, anonymous, user
      			if (authStatus === "admin")
      				sessionType = "existing admin";
      			else if (authStatus === "user")
      				sessionType = "existing user";
      			else if (authStatus === "anonymous")
      				sessionType = "existing anonymous user";
      
      			if (sessionType)
      				SetStatus("An " + sessionType + ' session is available. <a href="javascript:UseAltSession(\'' + sessionType + '\')">Click here to use it.</a>');
      
      			// Set focus on first empty field
      			if (!$("#txtUn").val())
      				$("#txtUn").get(0).focus();
      			else if (!$("#txtPw").val())
      				$("#txtPw").get(0).focus();
      			else
      				$("#btnLogin").get(0).focus();
      
      			isStoredDataLoaded = true;
      		});
      		function login()
      		{
      			cbLoginAutomaticallyClicked();
      			$("#btnLogin").val("Logging in ...");
      			SetStatus();
      			if (authStatus === "unknown")
      				loginSession = existingSession;
      
      			if (!loginSession)
      				authenticateNewSession();
      			else
      				authenticateSession(loginSession);
      		}
      		function authenticateNewSession(user, pass)
      		{
      			ExecJSON({ cmd: "login" }, function (response)
      			{
      				loginSession = response.session;
      				authenticateSession(loginSession, true);
      			}, loginFail);
      		}
      		function authenticateSession(session, isNewSession)
      		{
      			var myResponse = md5($("#txtUn").val() + ":" + session + ":" + $("#txtPw").val());
      			ExecJSON({ cmd: "login", session: session, response: myResponse }, function (response)
      			{
      				if (response.result === "success")
      				{
      					$("#btnLogin").attr("disabled", "disabled").val("Redirecting...");
      					existingSession = response.session;
      					LeaveLoginPage();
      				}
      				else
      				{
      					if ((!response.data || !response.data.reason) && !isNewSession)
      					{
      						// This happens when the session we were trying to authenticate has expired.
      						authenticateNewSession();
      					}
      					else
      					{
      						$("#cbLoginAutomatically").removeAttr('checked');
      						SetPersistedValue("bi_rememberMe", "0");
      						SetPersistedValue("bi_username", "");
      						SetPersistedValue("bi_password", "");
      						$("#btnLogin").val("Log in");
      						HandleError(response.data ? response.data.reason : "Login failed but Blue Iris did not provide a reason.");
      					}
      				}
      			}, loginFail);
      		}
      		function loginFail(jqXHR, textStatus, errorThrown)
      		{
      			HandleError("Unable to contact Blue Iris server");
      			$("#btnLogin").val("Log in");
      		}
      		function UseAltSession(sessionType)
      		{
      			if (!sessionType)
      				alert("Error. Please reload.");
      			else if (sessionType.indexOf("existing") > -1)
      				LeaveLoginPage();
      			else
      			{
      				existingSession = "";
      				LeaveLoginPage();
      			}
      		}
      		function LeaveLoginPage()
      		{
      			var page = UrlParameters.Get("page");
      			if (page.match(/timeout\.htm/i))
      				page = page.replace(/timeout\.htm.*/i, 'ui3.htm');
      			if (page.indexOf(appPath) !== 0)
      				page = appPath + page.replace(/^\/+/g, '');
      			page = page.replace(/[&?]session=[^&?#%]+/gi, '');
      			if (existingSession)
      			{
      				page += (page.indexOf("?") < 0 ? "?" : "&") + "session=" + existingSession;
      				if (cookiesEnabled)
      					$.cookie("session", existingSession, { path: "/" });
      			}
      			location.href = page + location.hash;
      		}
      		function cancelAutoLogin()
      		{
      			if (autologin_timeout_1 !== null)
      			{
      				clearTimeout(autologin_timeout_1);
      				autologin_timeout_1 = null;
      			}
      			if (autologin_timeout_2 !== null)
      			{
      				clearTimeout(autologin_timeout_2);
      				autologin_timeout_2 = null;
      			}
      			$("#btnLogin").val(windowUnloading ? "Redirecting..." : "Log in");
      		}
      		function cbLoginAutomaticallyClicked()
      		{
      			cancelAutoLogin();
      			if (!isStoredDataLoaded)
      				return;
      			var isChecked = $("#cbLoginAutomatically").is(":checked");
      			SetPersistedValue("bi_rememberMe", isChecked ? "1" : "0");
      			SetPersistedValue("bi_username", isChecked ? Base64.encode($("#txtUn").val()) : "");
      			SetPersistedValue("bi_password", isChecked ? Base64.encode($("#txtPw").val()) : "");
      		}
      		function GetPersistedValue(key)
      		{
      			var value;
      			if (localStorageEnabled)
      				value = localStorage.getItem(key);
      			if (!value)
      				value = "";
      			return value;
      		}
      		function SetPersistedValue(key, value)
      		{
      			if (localStorageEnabled)
      				return localStorage.setItem(key, value);
      		}
      		function pwKeypress(ele, e)
      		{
      			var keycode;
      			if (window.event) keycode = window.event.keyCode;
      			else if (typeof e !== "undefined" && e) keycode = e.which;
      			else return true;
      
      			if (keycode === 13)
      			{
      				login();
      				return false;
      			}
      			else
      				return true;
      		}
      		function resized()
      		{
      			if ($("#status").is(":visible"))
      			{
      				$("#status").hide();
      				$("#status").css("max-width", $("#login").width() + "px");
      				$("#status").show();
      			}
      			$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });
      			$("#status").css("max-width", $("#login").width() + "px");
      			var heightTotal = 0;
      			$("#login").children().each(function (idx, ele)
      			{
      				heightTotal += $(ele).outerHeight(true);
      			});
      			if (heightTotal > $(window).height())
      			{
      				if ($("#status").parent().attr("id") !== "status_wrapper_upper")
      					$("#status_wrapper_upper").append($("#status"));
      			}
      			else
      			{
      				if ($("#status").parent().attr("id") !== "status_wrapper_lower")
      					$("#status_wrapper_lower").append($("#status"));
      			}
      			$("#lblLoginAu
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:21:02.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "w3.org"
               ],
               "hostname" : [
                  "www.w3.org"
               ],
               "ip" : [
                  "5.5.9.6",
                  "4.8.2.3"
               ],
               "url" : [
                  "http://www.w3.org/1999/xhtml"
               ]
            },
            "http" : {
               "bodymd5" : "71be9da04b4012db34dee212e463600f",
               "bodymmh3" : -44712022,
               "headermd5" : "dfda7a81782ec85d5da71fab26752798",
               "headermmh3" : -2120812458,
               "title" : "Blue Iris Login"
            },
            "length" : 16384
         },
         "asn" : "AS20115",
         "city" : "Plainwell",
         "country" : "US",
         "data" : "HTTP/1.0 200 OK\r\nServer: BlueServer/5.5.9.6\r\nDate: Thu, 07 Nov 2024 05:20:58 GMT\r\nP3P: CP=\"CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE\"\r\nAccess-Control-Allow-Origin: *\r\nSet-Cookie: session=1ebf1883311a2cef516e0e9918625a0b; path=/\r\nConnection: close\r\nContent-Type: text/html; charset=UTF-8\r\nContent-Length: 17764\r\nCache-Control: no-cache, no-store\r\nX-Frame-Options: SAMEORIGIN\r\n\r\n<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\r\n\t<link rel=\"icon\" id=\"ui3launcher1\">\r\n\t<link rel=\"apple-touch-icon\" id=\"ui3launcher2\">\r\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\r\n\t<meta name=\"apple-mobile-web-app-capable\" content=\"yes\"> <!--iOS Safari-->\r\n\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black\">\r\n\t<meta name=\"mobile-web-app-capable\" content=\"yes\"><!--Android Chrome-->\r\n\t<meta name=\"theme-color\" content=\"#000000\">\r\n\t<link rel=\"manifest\" id=\"ui3manifest\">\r\n\t<title>Blue Iris Login</title>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar login_version = \"27\";\r\n\t\tvar bi_version = \"5.5.9.6\";\r\n\t\tvar combined_version = login_version + \"-\" + bi_version;\r\n\t\tvar appPath = \"/\" + \"/\".replace(/^\\/+|\\/+$/g, '');\r\n\t\tif (!appPath.endsWith(\"/\"))\r\n\t\t\tappPath = appPath + \"/\";\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.\r\n\t\tvar suppressErrorCallbacks = [\r\n\t\t\tfunction (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 1 && err.msg && err.msg.indexOf(\"'getAttribute'\") > -1 && err.url && err.url.indexOf(\".htm\") > -1;\r\n\t\t\t},\r\n\t\t\tfunction (err) // [2021-07-19] LG TV browser fails repeatedly.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf(\"Script error.\") > -1 && (!err.url || err.url == \"\");\r\n\t\t\t},\r\n\t\t\tfunction (err) // ublock origin in Brave browser\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg == \"Uncaught TypeError: Cannot redefine property: getElementById\" && err.url === \"\";\r\n\t\t\t},\r\n\t\t\tfunction (err) // Edge iOS\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg.indexOf(\"instantSearchSDKJSBridgeClearHighlight\") > -1;\r\n\t\t\t}\r\n\t\t];\r\n\t\twindow.onerror = function (msg, url, line, charIdx)\r\n\t\t{\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tvar versionStr = \"unknown\";\r\n\t\t\t\tif (typeof login_version !== \"undefined\")\r\n\t\t\t\t\tversionStr = login_version;\r\n\t\t\t\tvar biVersionStr = \"unknown\";\r\n\t\t\t\tif (typeof bi_version !== \"undefined\")\r\n\t\t\t\t\tbiVersionStr = bi_version;\r\n\t\t\t\turl = url.replace(/\\/\\/.*?\\//, '//censored_hostname/');\r\n\t\t\t\tvar errStr = \"An unexpected error has occurred in Blue Iris Login (v \" + versionStr + \" / \" + biVersionStr + \"). If you wish to report the error, please SCREENSHOT the browser now.\\n\\n\" + msg + \"\\nat \" + url + \" [\" + line + \":\" + charIdx + \"]\\n\" + navigator.userAgent;\r\n\r\n\t\t\t\tvar errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };\r\n\t\t\t\tfor (var i = 0; i < suppressErrorCallbacks.length; i++)\r\n\t\t\t\t{\r\n\t\t\t\t\ttry\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif (suppressErrorCallbacks[i](errObj))\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttry { console.log(\"The following error report was suppressed by callback \" + i + \":\"); console.error(errStr); }\r\n\t\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcatch (ex)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttry { console.log(\"Error suppression callback \" + i + \" had an error:\"); console.error(errStr); }\r\n\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\talert(errStr);\r\n\t\t\t}\r\n\t\t\tcatch (ex)\r\n\t\t\t{\r\n\t\t\t\talert(ex);\r\n\t\t\t}\r\n\t\t};\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\tdocument.getElementById(\"ui3manifest\").href = 'applet/manifest.json?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher1\").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher2\").href = 'applet/launcher-icon.png?v=' + combined_version;\r\n\t</script>\r\n\t<style type=\"text/css\">\r\n\t\tbody\r\n\t\t{\r\n\t\t\tfont-family: sans-serif;\r\n\t\t\tbackground: #212325;\r\n\t\t}\r\n\r\n\t\t#loginLoading\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t\ttext-shadow: 0 0 10px rgba(0,0,0,0.3);\r\n\t\t\tposition: absolute;\r\n\t\t\ttext-align: center;\r\n\t\t\ttop: 40%;\r\n\t\t\twidth: 100%;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t}\r\n\r\n\t\t\t#loginLoading h1\r\n\t\t\t{\r\n\t\t\t\tmargin: 0 0 20px 0;\r\n\t\t\t\tfont-size: 32px;\r\n\t\t\t}\r\n\r\n\t\t\t#loginLoading div\r\n\t\t\t{\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t}\r\n\r\n\t\t#login\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\r\n\t\t.checkboxWrapper\r\n\t\t{\r\n\t\t\tmax-width: 488px;\r\n\t\t}\r\n\t</style>\r\n</head>\r\n<body>\r\n\t<div id=\"loginLoading\">\r\n\t\t<h1> Brennansap</h1>\r\n\t\t<div>Loading login page...</div>\r\n\t</div>\r\n\t<div id=\"login\">\r\n\t\t<h1> Brennansap</h1>\r\n\t\t<input id=\"txtUn\" type=\"text\" class=\"text\" placeholder=\"Username\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<input id=\"txtPw\" type=\"password\" class=\"text\" placeholder=\"Password\" onkeypress=\"return pwKeypress(this, event);\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<div class=\"checkboxWrapper\">\r\n\t\t\t<input id=\"cbLoginAutomatically\" type=\"checkbox\" class=\"checkbox\" onchange=\"cbLoginAutomaticallyClicked();\" /><label for=\"cbLoginAutomatically\" id=\"lblLoginAutomatically\"><span class=\"ui\"></span>Log in automatically:</label>\r\n\t\t</div>\r\n\t\t<div id=\"status_wrapper_upper\"></div>\r\n\t\t<input id=\"btnLogin\" type=\"button\" class=\"btn\" value=\"Log in\" onclick=\"login();\" />\r\n\t\t<div id=\"status_wrapper_lower\"><div id=\"status\"></div></div>\r\n\t</div>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar loadingOpacity = 0;\r\n\t\tfunction IncreaseLoadingOpacity()\r\n\t\t{\r\n\t\t\tloadingOpacity += 0.05;\r\n\t\t\tif (loadingOpacity > 1)\r\n\t\t\t\tloadingOpacity = 1;\r\n\t\t\tvar ele = document.getElementById('loginLoading');\r\n\t\t\tele.style.display = \"block\";\r\n\t\t\tele.style.opacity = loadingOpacity;\r\n\t\t\tif (loadingOpacity < 1)\r\n\t\t\t\tshowLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);\r\n\t\t}\r\n\t\tvar showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);\r\n\r\n\t\tdocument.write('<link href=\"applet/loginStyles.css?v=' + combined_version + '\" rel=\"stylesheet\" />'\r\n\t\t\t+ '<script src=\"applet/loginScripts.js?v=' + combined_version + '\"><\\/script>');\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t/* eslint no-extra-parens: 0 */\r\n\t\tvar autologin_timeout_1 = null;\r\n\t\tvar autologin_timeout_2 = null;\r\n\t\tvar existingSession = \"1ebf1883311a2cef516e0e9918625a0b\";\r\n\t\tvar authStatus = \"unknown\";\r\n\t\tvar authExempt = \"no\";\r\n\t\tvar loginSession = \"\";\r\n\t\tvar isStoredDataLoaded = false;\r\n\t\tvar windowUnloading = false;\r\n\t\tvar cookiesEnabled;\r\n\t\tvar localStorageEnabled;\r\n\r\n\t\t/**\r\n\t\t * Changes the current URL by removing the specified query string parameter(s) from it.\r\n\t\t * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.\r\n\t\t */\r\n\t\tfunction NavRemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar url = RemoveUrlParams.apply(this, arguments);\r\n\t\t\ttry { history.replaceState(history.state, \"\", url); return null; } catch (ex) { return url; }\r\n\t\t}\r\n\t\tfunction RemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar s = location.search;\r\n\t\t\tfor (var i = 0; i < arguments.length; i++)\r\n\t\t\t{\r\n\t\t\t\tvar param = arguments[i];\r\n\t\t\t\tvar rx = new RegExp('(&|\\\\?)' + param + '=[^&?#%]+', 'gi');\r\n\t\t\t\ts = s.replace(rx, \"\");\r\n\t\t\t\twhile (s.indexOf(\"&\") === 0)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (s.length > 1)\r\n\t\t\t\t\t\ts = s.substr(1);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ts = \"\";\r\n\t\t\t\t}\r\n\t\t\t\tif (s.length > 0 && s.indexOf(\"?\") === -1)\r\n\t\t\t\t\ts = \"?\" + s;\r\n\t\t\t}\r\n\t\t\treturn location.origin + location.pathname + s + location.hash;\r\n\t\t}\r\n\r\n\t\tNavRemoveUrlParams(\"session\");\r\n\r\n\t\t$(function ()\r\n\t\t{\r\n\t\t\tcookiesEnabled = testCookieFunctionality();\r\n\t\t\tlocalStorageEnabled = isLocalStorageEnabled();\r\n\t\t\tvar skipAutoLogin = GetPersistedValue(\"bi_override_disable_auto_login_once\") === \"1\";\r\n\t\t\tif (UrlParameters.Get(\"autologin\") === \"0\")\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = true;\r\n\t\t\t\tvar url = NavRemoveUrlParams(\"session\", \"autologin\");\r\n\t\t\t\tif (url)\r\n\t\t\t\t{\r\n\t\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"1\");\r\n\t\t\t\t\tlocation.href = url;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"0\");\r\n\t\t\t}\r\n\t\t\tvar lastUnload = GetPersistedValue(\"bi_lastunload\");\r\n\t\t\tif (lastUnload > Date.now())\r\n\t\t\t\tSetPersistedValue(\"bi_lastunload\", 0);\r\n\t\t\telse if (!skipAutoLogin)\r\n\t\t\t\tskipAutoLogin = Date.now() - lastUnload < 5000;\r\n\t\t\tclearTimeout(showLoadingMessageTimeout);\r\n\t\t\t$(\"#loginLoading\").hide();\r\n\t\t\t$(\"#login\").show();\r\n\t\t\tif (typeof window.JSON === 'undefined')\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \\\"Secure only\\\" requirement within Blue Iris's web server settings.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!existingSession || (existingSession.length === 11 && existingSession.startsWith(\"%\") && existingSession.endsWith(\"%\") && existingSession.indexOf(\"SESSION\") === 2))\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!localStorageEnabled)\r\n\t\t\t\t$(\"#cbLoginAutomatically\").parent().text(\"Note: Local Storage is disabled in your browser, so credentials can not be saved.\").css(\"color\", \"#EEEEEE\");\r\n\t\t\tSetupLoginContextMenu();\r\n\t\t\tSetStatus();\r\n\t\t\t$(window).resize(resized);\r\n\t\t\tresized();\r\n\t\t\twindow.onbeforeunload = function ()\r\n\t\t\t{\r\n\t\t\t\twindowUnloading = true;\r\n\t\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t\treturn;\r\n\t\t\t};\r\n\t\t\t// Handle automatic login\r\n\t\t\tif (GetPersistedValue(\"bi_rememberMe\") === \"1\")\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").attr('checked', 'checked');\r\n\t\t\t\t$(\"#txtUn\").val(Base64.decode(GetPersistedValue(\"bi_username\")));\r\n\t\t\t\t$(\"#txtPw\").val(Base64.decode(GetPersistedValue(\"bi_password\")));\r\n\r\n\t\t\t\tif (!skipAutoLogin)\r\n\t\t\t\t{\r\n\t\t\t\t\tif ($(\"#txtUn\").val() !== \"\" && $(\"#txtPw\").val() !== \"\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif (GetAutoLoginInstantly())\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tif ($(\"#cbLoginAutomatically\").is(\":checked\"))\r\n\t\t\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t$(\"#btnLogin\").val(\"Logging in, in 2 seconds\");\r\n\t\t\t\t\t\t\tautologin_timeout_1 = setTimeout(function () { $(\"#btnLogin\").val(\"Logging in, in 1 second\"); }, 1000);\r\n\t\t\t\t\t\t\tautologin_timeout_2 = setTimeout(function ()\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tif ($(\"#cbLoginAutomatically\").is(\":checked\"))\r\n\t\t\t\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t\t\t}, 2000);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t}\r\n\r\n\t\t\tvar sessionType = \"\";\r\n\r\n\t\t\t// authExempt predefined values: no, user, admin, unknown (should not happen)\r\n\t\t\tif (authExempt === \"user\")\r\n\t\t\t\tsessionType = \"anonymous user\";\r\n\t\t\telse if (authExempt === \"admin\")\r\n\t\t\t\tsessionType = \"anonymous admin\";\r\n\r\n\t\t\t// authStatus predefined values: unknown, admin, anonymous, user\r\n\t\t\tif (authStatus === \"admin\")\r\n\t\t\t\tsessionType = \"existing admin\";\r\n\t\t\telse if (authStatus === \"user\")\r\n\t\t\t\tsessionType = \"existing user\";\r\n\t\t\telse if (authStatus === \"anonymous\")\r\n\t\t\t\tsessionType = \"existing anonymous user\";\r\n\r\n\t\t\tif (sessionType)\r\n\t\t\t\tSetStatus(\"An \" + sessionType + ' session is available. <a href=\"javascript:UseAltSession(\\'' + sessionType + '\\')\">Click here to use it.</a>');\r\n\r\n\t\t\t// Set focus on first empty field\r\n\t\t\tif (!$(\"#txtUn\").val())\r\n\t\t\t\t$(\"#txtUn\").get(0).focus();\r\n\t\t\telse if (!$(\"#txtPw\").val())\r\n\t\t\t\t$(\"#txtPw\").get(0).focus();\r\n\t\t\telse\r\n\t\t\t\t$(\"#btnLogin\").get(0).focus();\r\n\r\n\t\t\tisStoredDataLoaded = true;\r\n\t\t});\r\n\t\tfunction login()\r\n\t\t{\r\n\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t$(\"#btnLogin\").val(\"Logging in ...\");\r\n\t\t\tSetStatus();\r\n\t\t\tif (authStatus === \"unknown\")\r\n\t\t\t\tloginSession = existingSession;\r\n\r\n\t\t\tif (!loginSession)\r\n\t\t\t\tauthenticateNewSession();\r\n\t\t\telse\r\n\t\t\t\tauthenticateSession(loginSession);\r\n\t\t}\r\n\t\tfunction authenticateNewSession(user, pass)\r\n\t\t{\r\n\t\t\tExecJSON({ cmd: \"login\" }, function (response)\r\n\t\t\t{\r\n\t\t\t\tloginSession = response.session;\r\n\t\t\t\tauthenticateSession(loginSession, true);\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction authenticateSession(session, isNewSession)\r\n\t\t{\r\n\t\t\tvar myResponse = md5($(\"#txtUn\").val() + \":\" + session + \":\" + $(\"#txtPw\").val());\r\n\t\t\tExecJSON({ cmd: \"login\", session: session, response: myResponse }, function (response)\r\n\t\t\t{\r\n\t\t\t\tif (response.result === \"success\")\r\n\t\t\t\t{\r\n\t\t\t\t\t$(\"#btnLogin\").attr(\"disabled\", \"disabled\").val(\"Redirecting...\");\r\n\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\tLeaveLoginPage();\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tif ((!response.data || !response.data.reason) && !isNewSession)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// This happens when the session we were trying to authenticate has expired.\r\n\t\t\t\t\t\tauthenticateNewSession();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_rememberMe\", \"0\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t\t\tHandleError(response.data ? response.data.reason : \"Login failed but Blue Iris did not provide a reason.\");\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction loginFail(jqXHR, textStatus, errorThrown)\r\n\t\t{\r\n\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t}\r\n\t\tfunction UseAltSession(sessionType)\r\n\t\t{\r\n\t\t\tif (!sessionType)\r\n\t\t\t\talert(\"Error. Please reload.\");\r\n\t\t\telse if (sessionType.indexOf(\"existing\") > -1)\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\texistingSession = \"\";\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\t}\r\n\t\t}\r\n\t\tfunction LeaveLoginPage()\r\n\t\t{\r\n\t\t\tvar page = UrlParameters.Get(\"page\");\r\n\t\t\tif (page.match(/timeout\\.htm/i))\r\n\t\t\t\tpage = page.replace(/timeout\\.htm.*/i, 'ui3.htm');\r\n\t\t\tif (page.indexOf(appPath) !== 0)\r\n\t\t\t\tpage = appPath + page.replace(/^\\/+/g, '');\r\n\t\t\tpage = page.replace(/[&?]session=[^&?#%]+/gi, '');\r\n\t\t\tif (existingSession)\r\n\t\t\t{\r\n\t\t\t\tpage += (page.indexOf(\"?\") < 0 ? \"?\" : \"&\") + \"session=\" + existingSession;\r\n\t\t\t\tif (cookiesEnabled)\r\n\t\t\t\t\t$.cookie(\"session\", existingSession, { path: \"/\" });\r\n\t\t\t}\r\n\t\t\tlocation.href = page + location.hash;\r\n\t\t}\r\n\t\tfunction cancelAutoLogin()\r\n\t\t{\r\n\t\t\tif (autologin_timeout_1 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_1);\r\n\t\t\t\tautologin_timeout_1 = null;\r\n\t\t\t}\r\n\t\t\tif (autologin_timeout_2 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_2);\r\n\t\t\t\tautologin_timeout_2 = null;\r\n\t\t\t}\r\n\t\t\t$(\"#btnLogin\").val(windowUnloading ? \"Redirecting...\" : \"Log in\");\r\n\t\t}\r\n\t\tfunction cbLoginAutomaticallyClicked()\r\n\t\t{\r\n\t\t\tcancelAutoLogin();\r\n\t\t\tif (!isStoredDataLoaded)\r\n\t\t\t\treturn;\r\n\t\t\tvar isChecked = $(\"#cbLoginAutomatically\").is(\":checked\");\r\n\t\t\tSetPersistedValue(\"bi_rememberMe\", isChecked ? \"1\" : \"0\");\r\n\t\t\tSetPersistedValue(\"bi_username\", isChecked ? Base64.encode($(\"#txtUn\").val()) : \"\");\r\n\t\t\tSetPersistedValue(\"bi_password\", isChecked ? Base64.encode($(\"#txtPw\").val()) : \"\");\r\n\t\t}\r\n\t\tfunction GetPersistedValue(key)\r\n\t\t{\r\n\t\t\tvar value;\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\tvalue = localStorage.getItem(key);\r\n\t\t\tif (!value)\r\n\t\t\t\tvalue = \"\";\r\n\t\t\treturn value;\r\n\t\t}\r\n\t\tfunction SetPersistedValue(key, value)\r\n\t\t{\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\treturn localStorage.setItem(key, value);\r\n\t\t}\r\n\t\tfunction pwKeypress(ele, e)\r\n\t\t{\r\n\t\t\tvar keycode;\r\n\t\t\tif (window.event) keycode = window.event.keyCode;\r\n\t\t\telse if (typeof e !== \"undefined\" && e) keycode = e.which;\r\n\t\t\telse return true;\r\n\r\n\t\t\tif (keycode === 13)\r\n\t\t\t{\r\n\t\t\t\tlogin();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t\treturn true;\r\n\t\t}\r\n\t\tfunction resized()\r\n\t\t{\r\n\t\t\tif ($(\"#status\").is(\":visible\"))\r\n\t\t\t{\r\n\t\t\t\t$(\"#status\").hide();\r\n\t\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\t\t$(\"#status\").show();\r\n\t\t\t}\r\n\t\t\t$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });\r\n\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\tvar heightTotal = 0;\r\n\t\t\t$(\"#login\").children().each(function (idx, ele)\r\n\t\t\t{\r\n\t\t\t\theightTotal += $(ele).outerHeight(true);\r\n\t\t\t});\r\n\t\t\tif (heightTotal > $(window).height())\r\n\t\t\t{\r\n\t\t\t\tif ($(\"#status\").parent().attr(\"id\") !== \"status_wrapper_upper\")\r\n\t\t\t\t\t$(\"#status_wrapper_upper\").append($(\"#status\"));\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tif ($(\"#status\").parent().attr(\"id\") !== \"status_wrapper_lower\")\r\n\t\t\t\t\t$(\"#status_wrapper_lower\").append($(\"#status\"));\r\n\t\t\t}\r\n\t\t\t$(\"#lblLoginAu",
         "datamd5" : "395ef1c4d83189ccb8388448d28c7af7",
         "datammh3" : 1148006748,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "domain" : [
            "spectrum.com"
         ],
         "forward" : "47.225.148.199",
         "geolocus" : {
            "asn" : "AS20115",
            "continent" : "NA",
            "continentname" : "North America",
            "country" : "US",
            "countryname" : "United States",
            "domain" : [
               "charter.com",
               "charter.net",
               "spectrum.com"
            ],
            "isineu" : "false",
            "latitude" : "37.09024",
            "location" : "37.09024,-95.712891",
            "longitude" : "-95.712891",
            "netname" : "CC04",
            "organization" : "Charter Communications",
            "subnet" : "47.225.128.0/18"
         },
         "host" : [
            "syn-047-225-148-199"
         ],
         "hostname" : [
            "47.225.148.199",
            "syn-047-225-148-199.res.spectrum.com"
         ],
         "ip" : "47.225.148.199",
         "ipv6" : "false",
         "latitude" : "42.4400",
         "location" : "42.4400,-85.6489",
         "longitude" : "-85.6489",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "CHARTER-20115",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.0",
         "reason" : "OK",
         "reverse" : [
            "syn-047-225-148-199.res.spectrum.com"
         ],
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subdomains" : [
            "res.spectrum.com"
         ],
         "subnet" : "47.225.128.0/18",
         "tag" : "<enterprise field>: tag",
         "tld" : [
            "com"
         ],
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/login.htm?page=%2F"
      }
      
  • 60.249.14.229:81 (tcp/http) - last seen on 2024-11-07 at 05:20:59 UTC

    • IP
      60.249.14.229
      Network
      60.248.0.0/14
      Domain(s)
      hinet.net
      Device

      <enterprise field>: device.class

      Operating System
      Microsoft Windows
      URL

      http://60.249.14.229:81/ 200

      HTTP Title
      WebMail - Login
      Reverse DNS
      60-249-14-229.hinet-ip.hinet.net
      ASN
      AS3462
      Organization
      Data Communication Business Group
      Protocol
      http
      Source
      datascan
    • Operating System
      Microsoft Windows
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      124a63b390244253e7bab46bbff01e73
      HTTP Header MD5
      7af0c7d9087fc95d9f1e33389eafcd51
      HTTP Body MD5
      6da5f398f1919c6337ca8c5c69874392
    • HTTP/1.1 200 OK
      Connection: close
      Content-Disposition: inline; filename="login.html";
      Content-Type: text/html
      Content-Length: 4013
      Date: Thu, 07 Nov 2024 05:20:58 GMT
      Strict-Transport-Security: max-age=31536000; includeSubDomains
      X-Frame-Options: SAMEORIGIN
      X-Content-Type-Options: nosniff
      Permissions-Policy: geolocation=(self "https://example.com"), microphone=()
      Referrer-Policy: no-referrer
      Content-Security-Policy: base-uri 'self'
      Set-Cookie: IDHTTPSESSIONID=cXVm4sWzGX5Z7va; Path=/
      
      <html>
      <head>
      <meta name="robots" content="noindex,nofollow">
      <meta http-equiv="Content-Type" content="text/html; charset=big5">
      <title>WebMail - Login</title>
      <link rel="stylesheet" type="text/css" href="Webimages/style.css"/>
      <script language="javascript">
      function init(){
      	document.form1.loginid.focus();
      }
      </script>
      <style type="text/css">
      <!--
      .style1 {font-family: Tahoma, verdana}
      -->
      </style>
      </head>
      
      <body onload="init()">
      <div id="loginDiv">
      <form name="form1" method="post" action="listmail.html">
      	<table width="60%" height="100%" border="0" align="center">
      		<tr>
      			<td width="100%" align="left" valign="center"><img src="Webimages/RaidenMAILD.jpg" border="0" width=320"></td>
      			<td width="30%" align="center" valign="center">
      				<table class="loginBG" cellspacing="0" cellpadding="3">
      					<tr height="60"><td colspan="2"></td></tr>
      					<tr height="30">
      						<td align="right">�b��:<input type="text" name="loginid" class="txt"></td><td width=30%></td>
      					</tr>
      					<tr height="30">
      						<td align="right">�K�X:<input type="password" name="loginpass" class="txt"></td>
      					</tr>
      					<!-- Begin of Multilingual -->
      					<tr height="30">
      						<td align="right">�w�]�y�t:
      						<select name="langname" class="txt">
      						<option value="language_cht.res">Chinese Traditional</option>
      						<option value="language_eng.res">English</option>
      						<option value="language_gb.res">Chinese Simplified</option>
      						<option value="language_dk.res">Danish</option>
      						<option value="language_hun.res">Hungarian</option>
      						<option value="language_swe.res">Swedish</option>
      						<option value="language_spa.res">Spanish</option>
      						<option value="language_jpn.res">Japanese</option>
      						<option value="language_fre.res">French</option>
      						<option value="language_el.res">Greek</option>
      						</select>
      						</td>
      					</tr>
      					<tr height="30">
      						<td align="right">�w�]�s�X:
      						<select name="encoding" class="txt">
      						<option value="BIG5">BIG5</option>
      						<option value="ISO-8859-1">ISO-8859-1</option>
      						<option value="GB2312">GB2312</option>
      						<option value="SHIFT-JIS">SHIFT-JIS</option>
      						<option value="ISO-8859-7">ISO-8859-7</option>
      						</select>
      						</td>
      					</tr>
      <!--					<tr height="30">
      						<td align="right">�ﶵ
      						<select name="option" class="txt">
      						<option value="login">�n�J</option>
      						<option value="changepassword">�ܧ�K�X</option>
      						</select>
      						</td>
      					</tr>-->
      					<!-- End of Multilingual -->
      					<tr height="30">
      						<td align="right">
      						<input type="submit" value="�n�JWeb Mail" class="btn"></td>					
      						<!--<input type="hidden" name="option" value="changepassword">-->
      						<input type="hidden" name="option" value="login">
      				  </td>
      					</tr>
      				</table>
      			</td>		
      		</tr>
      		<tr>
      			<td colspan=3 align="left" valign="center">
      				<span class="information">
      				�p�qMAILD �ϥΦw��`�N�ƶ�:<br>
      				1. �H�c�ϥΧ�����, �Ы�n�X �ӵn�X�t�Ψ�����s���.<br>
      				2. �ϥδ���Y���m�L�[, �t�αN�۰ʱN�ϥΪ̰h�X�t��.<br>
      				<br>
      				�A�w�g��U�b���F��? �I<a href="registerform.html">�o��</a>�ӽзs�b��.<br>
      				�d�ߥӽЪ��p���I<a href="registerqueryform.html">�o��</a><br>
      				�ѰO�K�X���I<a href="requestpasswordmailform.html">�o��</a>
      			</span>
      			</td>
      		</tr>
      
      
      		<tr><td colspan="2" width="100%" align="center" halign="center">Powered by <a href="http://www.raidenmaild.com/tw/" target="_blank">RaidenMAILD Mail Server</a>, Copyright &copy; Team John Long, all rights reserved.<br>
      Raiden pro server family:&nbsp;<a href="http://www.ftpserver.tw" target="_blank">Ftp Server</a>&nbsp;|&nbsp;
      <a href="http://www.raidenhttpd.com/tw/" target="_blank">Web Server</a>&nbsp;|&nbsp;<a href="http://www.raidendnsd.com/" target="_blank">Dns Server</a>&nbsp;|&nbsp;<a href="http://www.raidentunes.com/" target="_blank">Music Server</a>
      		</td></tr>
      </table>
      </div>
      </body>
      </html>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:20:59.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "example.com",
                  "raidenhttpd.com",
                  "ftpserver.tw",
                  "raidendnsd.com",
                  "raidenmaild.com",
                  "raidentunes.com"
               ],
               "hostname" : [
                  "example.com",
                  "www.ftpserver.tw",
                  "www.raidendnsd.com",
                  "www.raidenhttpd.com",
                  "www.raidenmaild.com",
                  "www.raidentunes.com"
               ],
               "url" : [
                  "http://www.ftpserver.tw",
                  "http://www.raidendnsd.com/",
                  "http://www.raidenhttpd.com/tw/",
                  "http://www.raidenmaild.com/tw/",
                  "http://www.raidentunes.com/",
                  "https://example.com"
               ]
            },
            "http" : {
               "bodymd5" : "6da5f398f1919c6337ca8c5c69874392",
               "bodymmh3" : -343980268,
               "headermd5" : "7af0c7d9087fc95d9f1e33389eafcd51",
               "headermmh3" : 1965937587,
               "title" : "WebMail - Login"
            },
            "length" : 4516
         },
         "asn" : "AS3462",
         "city" : "Taichung",
         "country" : "TW",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.1 200 OK\r\nConnection: close\r\nContent-Disposition: inline; filename=\"login.html\";\r\nContent-Type: text/html\r\nContent-Length: 4013\r\nDate: Thu, 07 Nov 2024 05:20:58 GMT\r\nStrict-Transport-Security: max-age=31536000; includeSubDomains\r\nX-Frame-Options: SAMEORIGIN\r\nX-Content-Type-Options: nosniff\r\nPermissions-Policy: geolocation=(self \"https://example.com\"), microphone=()\r\nReferrer-Policy: no-referrer\r\nContent-Security-Policy: base-uri 'self'\r\nSet-Cookie: IDHTTPSESSIONID=cXVm4sWzGX5Z7va; Path=/\r\n\r\n<html>\r\n<head>\r\n<meta name=\"robots\" content=\"noindex,nofollow\">\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=big5\">\r\n<title>WebMail - Login</title>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"Webimages/style.css\"/>\r\n<script language=\"javascript\">\r\nfunction init(){\r\n\tdocument.form1.loginid.focus();\r\n}\r\n</script>\r\n<style type=\"text/css\">\r\n<!--\r\n.style1 {font-family: Tahoma, verdana}\r\n-->\r\n</style>\r\n</head>\r\n\r\n<body onload=\"init()\">\r\n<div id=\"loginDiv\">\r\n<form name=\"form1\" method=\"post\" action=\"listmail.html\">\r\n\t<table width=\"60%\" height=\"100%\" border=\"0\" align=\"center\">\r\n\t\t<tr>\r\n\t\t\t<td width=\"100%\" align=\"left\" valign=\"center\"><img src=\"Webimages/RaidenMAILD.jpg\" border=\"0\" width=320\"></td>\r\n\t\t\t<td width=\"30%\" align=\"center\" valign=\"center\">\r\n\t\t\t\t<table class=\"loginBG\" cellspacing=\"0\" cellpadding=\"3\">\r\n\t\t\t\t\t<tr height=\"60\"><td colspan=\"2\"></td></tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdb\ufffd\ufffd:<input type=\"text\" name=\"loginid\" class=\"txt\"></td><td width=30%></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdK\ufffdX:<input type=\"password\" name=\"loginpass\" class=\"txt\"></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<!-- Begin of Multilingual -->\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdw\ufffd]\ufffdy\ufffdt:\r\n\t\t\t\t\t\t<select name=\"langname\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"language_cht.res\">Chinese Traditional</option>\r\n\t\t\t\t\t\t<option value=\"language_eng.res\">English</option>\r\n\t\t\t\t\t\t<option value=\"language_gb.res\">Chinese Simplified</option>\r\n\t\t\t\t\t\t<option value=\"language_dk.res\">Danish</option>\r\n\t\t\t\t\t\t<option value=\"language_hun.res\">Hungarian</option>\r\n\t\t\t\t\t\t<option value=\"language_swe.res\">Swedish</option>\r\n\t\t\t\t\t\t<option value=\"language_spa.res\">Spanish</option>\r\n\t\t\t\t\t\t<option value=\"language_jpn.res\">Japanese</option>\r\n\t\t\t\t\t\t<option value=\"language_fre.res\">French</option>\r\n\t\t\t\t\t\t<option value=\"language_el.res\">Greek</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffdw\ufffd]\ufffds\ufffdX:\r\n\t\t\t\t\t\t<select name=\"encoding\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"BIG5\">BIG5</option>\r\n\t\t\t\t\t\t<option value=\"ISO-8859-1\">ISO-8859-1</option>\r\n\t\t\t\t\t\t<option value=\"GB2312\">GB2312</option>\r\n\t\t\t\t\t\t<option value=\"SHIFT-JIS\">SHIFT-JIS</option>\r\n\t\t\t\t\t\t<option value=\"ISO-8859-7\">ISO-8859-7</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n<!--\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\ufffd\ufdb5\r\n\t\t\t\t\t\t<select name=\"option\" class=\"txt\">\r\n\t\t\t\t\t\t<option value=\"login\">\ufffdn\ufffdJ</option>\r\n\t\t\t\t\t\t<option value=\"changepassword\">\ufffd\u0727\ufffdK\ufffdX</option>\r\n\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>-->\r\n\t\t\t\t\t<!-- End of Multilingual -->\r\n\t\t\t\t\t<tr height=\"30\">\r\n\t\t\t\t\t\t<td align=\"right\">\r\n\t\t\t\t\t\t<input type=\"submit\" value=\"\ufffdn\ufffdJWeb Mail\" class=\"btn\"></td>\t\t\t\t\t\r\n\t\t\t\t\t\t<!--<input type=\"hidden\" name=\"option\" value=\"changepassword\">-->\r\n\t\t\t\t\t\t<input type=\"hidden\" name=\"option\" value=\"login\">\r\n\t\t\t\t  </td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</td>\t\t\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td colspan=3 align=\"left\" valign=\"center\">\r\n\t\t\t\t<span class=\"information\">\r\n\t\t\t\t\ufffdp\ufffdqMAILD \ufffd\u03e5\u03a6w\ufffd\ufffd`\ufffdN\ufffd\u01b6\ufffd:<br>\r\n\t\t\t\t1. \ufffdH\ufffdc\ufffd\u03e5\u03a7\ufffd\ufffd\ufffd\ufffd\ufffd, \ufffd\u042b\ufffdn\ufffdX \ufffd\u04f5n\ufffdX\ufffdt\ufffd\u03a8\ufffd\ufffd\ufffd\ufffd\ufffds\ufffd\ufffd\ufffd.<br>\r\n\t\t\t\t2. \ufffd\u03e5\u03b4\ufffd\ufffd\ufffdY\ufffd\ufffd\ufffdm\ufffdL\ufffd[, \ufffdt\ufffd\u03b1N\ufffd\u06f0\u02b1N\ufffd\u03e5\u03aa\u0330h\ufffdX\ufffdt\ufffd\ufffd.<br>\r\n\t\t\t\t<br>\r\n\t\t\t\t\ufffdA\ufffdw\ufffdg\ufffd\ufffdU\ufffdb\ufffd\ufffd\ufffdF\ufffd\ufffd? \ufffdI<a href=\"registerform.html\">\ufffdo\ufffd\ufffd</a>\ufffd\u04fd\u0437s\ufffdb\ufffd\ufffd.<br>\r\n\t\t\t\t\ufffdd\ufffd\u07e5\u04fd\u042a\ufffd\ufffdp\ufffd\ufffd\ufffdI<a href=\"registerqueryform.html\">\ufffdo\ufffd\ufffd</a><br>\r\n\t\t\t\t\ufffd\u0470O\ufffdK\ufffdX\ufffd\ufffd\ufffdI<a href=\"requestpasswordmailform.html\">\ufffdo\ufffd\ufffd</a>\r\n\t\t\t</span>\r\n\t\t\t</td>\r\n\t\t</tr>\r\n\r\n\r\n\t\t<tr><td colspan=\"2\" width=\"100%\" align=\"center\" halign=\"center\">Powered by <a href=\"http://www.raidenmaild.com/tw/\" target=\"_blank\">RaidenMAILD Mail Server</a>, Copyright &copy; Team John Long, all rights reserved.<br>\r\nRaiden pro server family:&nbsp;<a href=\"http://www.ftpserver.tw\" target=\"_blank\">Ftp Server</a>&nbsp;|&nbsp;\r\n<a href=\"http://www.raidenhttpd.com/tw/\" target=\"_blank\">Web Server</a>&nbsp;|&nbsp;<a href=\"http://www.raidendnsd.com/\" target=\"_blank\">Dns Server</a>&nbsp;|&nbsp;<a href=\"http://www.raidentunes.com/\" target=\"_blank\">Music Server</a>\r\n\t\t</td></tr>\r\n</table>\r\n</div>\r\n</body>\r\n</html>",
         "datamd5" : "124a63b390244253e7bab46bbff01e73",
         "datammh3" : 688791564,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "domain" : [
            "hinet.net"
         ],
         "geolocus" : {
            "asn" : "AS3462",
            "continent" : "AS",
            "continentname" : "Asia",
            "country" : "TW",
            "countryname" : "Taiwan",
            "domain" : [
               "hinet.net",
               "twnic.net",
               "twnic.net.tw"
            ],
            "isineu" : "false",
            "latitude" : "23.69781",
            "location" : "23.69781,120.960515",
            "longitude" : "120.960515",
            "netname" : "HINET-NET",
            "organization" : "Data Communication Business Group",
            "subnet" : "60.249.0.0/16"
         },
         "host" : [
            "60-249-14-229"
         ],
         "hostname" : [
            "60-249-14-229.hinet-ip.hinet.net"
         ],
         "ip" : "60.249.14.229",
         "ipv6" : "false",
         "latitude" : "24.1440",
         "location" : "24.1440,120.6844",
         "longitude" : "120.6844",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "Data Communication Business Group",
         "os" : "Windows",
         "osvendor" : "Microsoft",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "reverse" : [
            "60-249-14-229.hinet-ip.hinet.net"
         ],
         "seen_date" : "2024-11-07",
         "source" : "datascan",
         "status" : 200,
         "subdomains" : [
            "hinet-ip.hinet.net"
         ],
         "subnet" : "60.248.0.0/14",
         "tag" : "<enterprise field>: tag",
         "tld" : [
            "net"
         ],
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/"
      }
      
  • 108.35.152.105:81 (tcp/http) - last seen on 2024-11-07 at 05:20:51 UTC

    • IP
      108.35.152.105
      Network
      108.35.128.0/17
      Device

      <enterprise field>: device.class

      URL

      http://108.35.152.105:81/login.htm?page=%2F 200

      HTTP Title
      Blue Iris Login
      ASN
      AS701
      Organization
      UUNET
      Protocol
      http
      Source
      urlscan::redirect
    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      7174669b9e4dc5fc915cac9d28463749
      HTTP Header MD5
      c10772e0c6eaf1cc31331ae8b1dfe205
      HTTP Body MD5
      cd173fb2ebe0f8fed03466d881fbb9a8
    • HTTP/1.0 200 OK
      Server: BlueServer/5.9.9.0
      Date: Thu, 07 Nov 2024 05:20:44 GMT
      P3P: CP="CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE"
      Set-Cookie: session=2182457f3fea0a4855c7611c751e110d; path=/
      Access-Control-Allow-Origin: *
      Connection: close
      Content-Type: text/html; charset=UTF-8
      Content-Length: 16968
      Cache-Control: no-cache, no-store
      X-Frame-Options: SAMEORIGIN
      
      <!DOCTYPE html>
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
      	<link rel="icon" id="ui3launcher1">
      	<link rel="apple-touch-icon" id="ui3launcher2">
      	<meta name="viewport" content="width=device-width, initial-scale=1" />
      	<meta name="apple-mobile-web-app-capable" content="yes"> <!--iOS Safari-->
      	<meta name="apple-mobile-web-app-status-bar-style" content="black">
      	<meta name="mobile-web-app-capable" content="yes"><!--Android Chrome-->
      	<meta name="theme-color" content="#000000">
      	<link rel="manifest" id="ui3manifest">
      	<title>Blue Iris Login</title>
      	<script type="text/javascript">
      		var login_version = "30";
      		var bi_version = "5.9.9.0";
      		var combined_version = login_version + "-" + bi_version;
      		var appPath = "/" + "/".replace(/^\/+|\/+$/g, '');
      		if (!appPath.endsWith("/"))
      			appPath = appPath + "/";
      	</script>
      	<script type="text/javascript">
      		// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.
      		var suppressErrorCallbacks = [
      			function (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.
      			{
      				return err.line === 1 && err.msg && err.msg.indexOf("'getAttribute'") > -1 && err.url && err.url.indexOf(".htm") > -1;
      			},
      			function (err) // [2021-07-19] LG TV browser fails repeatedly.
      			{
      				return err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf("Script error.") > -1 && (!err.url || err.url == "");
      			},
      			function (err) // ublock origin in Brave browser
      			{
      				return err.msg && err.msg == "Uncaught TypeError: Cannot redefine property: getElementById" && err.url === "";
      			},
      			function (err) // Edge iOS
      			{
      				return err.msg && err.msg.indexOf("instantSearchSDKJSBridgeClearHighlight") > -1;
      			}
      		];
      		window.onerror = function (msg, url, line, charIdx)
      		{
      			try
      			{
      				var versionStr = "unknown";
      				if (typeof login_version !== "undefined")
      					versionStr = login_version;
      				var biVersionStr = "unknown";
      				if (typeof bi_version !== "undefined")
      					biVersionStr = bi_version;
      				url = url.replace(/\/\/.*?\//, '//censored_hostname/');
      				var errStr = "An unexpected error has occurred in Blue Iris Login (v " + versionStr + " / " + biVersionStr + "). If you wish to report the error, please SCREENSHOT the browser now.\n\n" + msg + "\nat " + url + " [" + line + ":" + charIdx + "]\n" + navigator.userAgent;
      
      				var errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };
      				for (var i = 0; i < suppressErrorCallbacks.length; i++)
      				{
      					try
      					{
      						if (suppressErrorCallbacks[i](errObj))
      						{
      							try { console.log("The following error report was suppressed by callback " + i + ":"); console.error(errStr); }
      							catch (ex) { }
      							return;
      						}
      					}
      					catch (ex)
      					{
      						try { console.log("Error suppression callback " + i + " had an error:"); console.error(errStr); }
      						catch (ex) { }
      						return;
      					}
      				}
      				alert(errStr);
      			}
      			catch (ex)
      			{
      				alert(ex);
      			}
      		};
      	</script>
      	<script type="text/javascript">
      		document.getElementById("ui3manifest").href = 'applet/manifest.json?v=' + combined_version;
      		document.getElementById("ui3launcher1").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;
      		document.getElementById("ui3launcher2").href = 'applet/launcher-icon.png?v=' + combined_version;
      	</script>
      	<style type="text/css">
      		body
      		{
      			font-family: sans-serif;
      			background: #212325;
      		}
      
      		#loginLoading
      		{
      			display: none;
      			text-shadow: 0 0 10px rgba(0,0,0,0.3);
      			position: absolute;
      			text-align: center;
      			top: 40%;
      			width: 100%;
      			color: #FFFFFF;
      		}
      
      			#loginLoading h1
      			{
      				margin: 0 0 20px 0;
      				font-size: 32px;
      			}
      
      			#loginLoading div
      			{
      				font-size: 20px;
      			}
      
      		#login
      		{
      			display: none;
      		}
      
      		.checkboxWrapper
      		{
      			max-width: 488px;
      		}
      	</style>
      </head>
      <body>
      	<div id="loginLoading">
      		<h1>76 Deer Creek Dr</h1>
      		<div>Loading login page...</div>
      	</div>
      	<div id="login">
      		<h1>76 Deer Creek Dr</h1>
      		<input id="txtUn" type="text" class="text" placeholder="Username" autocapitalize="off" autocorrect="off" />
      		<input id="txtPw" type="password" class="text" placeholder="Password" onkeypress="return pwKeypress(this, event);" autocapitalize="off" autocorrect="off" />
      		<div class="checkboxWrapper">
      			<input id="cbLoginAutomatically" type="checkbox" class="checkbox" onchange="cbLoginAutomaticallyClicked();" /><label for="cbLoginAutomatically" id="lblLoginAutomatically"><span class="ui"></span>Log in automatically:</label>
      		</div>
      		<div id="status_wrapper_upper"></div>
      		<input id="btnLogin" type="button" class="btn" value="Log in" onclick="login();" />
      		<div id="status_wrapper_lower"><div id="status"></div></div>
      	</div>
      	<script type="text/javascript">
      		var loadingOpacity = 0;
      		function IncreaseLoadingOpacity()
      		{
      			loadingOpacity += 0.05;
      			if (loadingOpacity > 1)
      				loadingOpacity = 1;
      			var ele = document.getElementById('loginLoading');
      			ele.style.display = "block";
      			ele.style.opacity = loadingOpacity;
      			if (loadingOpacity < 1)
      				showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);
      		}
      		var showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);
      
      		document.write('<link href="applet/loginStyles.css?v=' + combined_version + '" rel="stylesheet" />'
      			+ '<script src="applet/loginScripts.js?v=' + combined_version + '"><\/script>');
      	</script>
      	<script type="text/javascript">
      		/* eslint no-extra-parens: 0 */
      		var autologin_timeout_1 = null;
      		var autologin_timeout_2 = null;
      		var existingSession = "2182457f3fea0a4855c7611c751e110d";
      		var authStatus = "unknown";
      		var authExempt = "no";
      		var loginSession = "";
      		var isStoredDataLoaded = false;
      		var windowUnloading = false;
      		var cookiesEnabled;
      		var localStorageEnabled;
      
      		/**
      		 * Changes the current URL by removing the specified query string parameter(s) from it.
      		 * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.
      		 */
      		function NavRemoveUrlParams()
      		{
      			var url = RemoveUrlParams.apply(this, arguments);
      			try { history.replaceState(history.state, "", url); return null; } catch (ex) { return url; }
      		}
      		function RemoveUrlParams()
      		{
      			var s = location.search;
      			for (var i = 0; i < arguments.length; i++)
      			{
      				var param = arguments[i];
      				var rx = new RegExp('(&|\\?)' + param + '=[^&?#%]+', 'gi');
      				s = s.replace(rx, "");
      				while (s.indexOf("&") === 0)
      				{
      					if (s.length > 1)
      						s = s.substr(1);
      					else
      						s = "";
      				}
      				if (s.length > 0 && s.indexOf("?") === -1)
      					s = "?" + s;
      			}
      			return location.origin + location.pathname + s + location.hash;
      		}
      
      		NavRemoveUrlParams("session");
      
      		$(function ()
      		{
      			cookiesEnabled = testCookieFunctionality();
      			localStorageEnabled = isLocalStorageEnabled();
      			var skipAutoLogin = GetPersistedValue("bi_override_disable_auto_login_once") === "1";
      			if (UrlParameters.Get("autologin") === "0")
      			{
      				skipAutoLogin = true;
      				var url = NavRemoveUrlParams("session", "autologin");
      				if (url)
      				{
      					SetPersistedValue("bi_override_disable_auto_login_once", "1");
      					location.href = url;
      					return;
      				}
      			}
      			if (skipAutoLogin)
      			{
      				SetPersistedValue("bi_override_disable_auto_login_once", "0");
      				console.log('Auto login was temporarily disabled because "autologin=0" URL parameter was observed (the UI3 "Main Menu" > "Log Out" button sets this parameter).');
      			}
      			var lastUnload = GetPersistedValue("bi_lastunload");
      			if (lastUnload > Date.now())
      				SetPersistedValue("bi_lastunload", 0);
      			else if (!skipAutoLogin)
      			{
      				skipAutoLogin = Date.now() - lastUnload < 5000;
      				if (skipAutoLogin)
      					console.log('Auto login was temporarily disabled because UI3 was determined to be running within the previous 5 seconds.');
      			}
      			clearTimeout(showLoadingMessageTimeout);
      			$("#loginLoading").hide();
      			$("#login").show();
      			if (typeof window.JSON === 'undefined')
      			{
      				$("#login").html("<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \"Secure only\" requirement within Blue Iris's web server settings.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!existingSession || (existingSession.length === 11 && existingSession.startsWith("%") && existingSession.endsWith("%") && existingSession.indexOf("SESSION") === 2))
      			{
      				$("#login").html("<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!localStorageEnabled)
      				$("#cbLoginAutomatically").parent().text("Note: Local Storage is disabled in your browser, so credentials can not be saved.").css("color", "#EEEEEE");
      			SetStatus();
      			$(window).resize(resized);
      			resized();
      			window.onbeforeunload = function ()
      			{
      				windowUnloading = true;
      				cbLoginAutomaticallyClicked();
      				return;
      			};
      			// Handle automatic login
      			if (GetPersistedValue("bi_rememberMe") === "1")
      			{
      				$("#cbLoginAutomatically").attr('checked', 'checked');
      				$("#txtUn").val(Base64.decode(GetPersistedValue("bi_username")));
      				$("#txtPw").val(Base64.decode(GetPersistedValue("bi_password")));
      
      				if (!skipAutoLogin)
      				{
      					if ($("#txtUn").val() !== "" && $("#txtPw").val() !== "")
      					{
      						login();
      					}
      				}
      			}
      			else
      			{
      				$("#cbLoginAutomatically").removeAttr('checked');
      				SetPersistedValue("bi_username", "");
      				SetPersistedValue("bi_password", "");
      			}
      
      			var sessionType = "";
      
      			// authExempt predefined values: no, user, admin, unknown (should not happen)
      			if (authExempt === "user")
      				sessionType = "anonymous user";
      			else if (authExempt === "admin")
      				sessionType = "anonymous admin";
      
      			// authStatus predefined values: unknown, admin, anonymous, user
      			if (authStatus === "admin")
      				sessionType = "existing admin";
      			else if (authStatus === "user")
      				sessionType = "existing user";
      			else if (authStatus === "anonymous")
      				sessionType = "existing anonymous user";
      
      			if (sessionType)
      				SetStatus("An " + sessionType + ' session is available. <a href="javascript:UseAltSession(\'' + sessionType + '\')">Click here to use it.</a>');
      
      			// Set focus on first empty field
      			if (!$("#txtUn").val())
      				$("#txtUn").get(0).focus();
      			else if (!$("#txtPw").val())
      				$("#txtPw").get(0).focus();
      			else
      				$("#btnLogin").get(0).focus();
      
      			isStoredDataLoaded = true;
      		});
      		function login()
      		{
      			cbLoginAutomaticallyClicked();
      			$("#btnLogin").val("Logging in ...");
      			SetStatus();
      			if (authStatus === "unknown")
      				loginSession = existingSession;
      
      			if (!loginSession)
      				authenticateNewSession();
      			else
      				authenticateSession(loginSession);
      		}
      		function authenticateNewSession(user, pass)
      		{
      			ExecJSON({ cmd: "login" }, function (response)
      			{
      				loginSession = response.session;
      				authenticateSession(loginSession, true);
      			}, loginFail);
      		}
      		function authenticateSession(session, isNewSession)
      		{
      			var myResponse = md5($("#txtUn").val() + ":" + session + ":" + $("#txtPw").val());
      			ExecJSON({ cmd: "login", session: session, response: myResponse }, function (response)
      			{
      				if (response.result === "success")
      				{
      					$("#btnLogin").attr("disabled", "disabled").val("Redirecting...");
      					existingSession = response.session;
      					LeaveLoginPage();
      				}
      				else
      				{
      					var isExpired;
      					if (compareVersions(bi_version, "5.8.1.1") >= 0)
      					{
      						isExpired = response.result === "fail"
      							&& response.data
      							&& typeof response.data.reason === "string"
      							&& response.data.reason.toUpperCase() === "INVALID SESSION";
      					}
      					else
      					{
      						// BI prior to 5.8.1.1 did not return a data.reason string in the case of invalid session.
      						isExpired = response.result === "fail" && (!response.data || !response.data.reason);
      					}
      					if (isExpired && !isNewSession)
      					{
      						// This happens when the session we were trying to authenticate has expired.
      						authenticateNewSession();
      					}
      					else
      					{
      						$("#cbLoginAutomatically").removeAttr('checked');
      						SetPersistedValue("bi_rememberMe", "0");
      						SetPersistedValue("bi_username", "");
      						SetPersistedValue("bi_password", "");
      						$("#btnLogin").val("Log in");
      						HandleError(response.data && response.data.reason ? response.data.reason : "Login failed but Blue Iris did not provide a reason.");
      					}
      				}
      			}, loginFail);
      		}
      		function loginFail(jqXHR, textStatus, errorThrown)
      		{
      			HandleError("Unable to contact Blue Iris server");
      			$("#btnLogin").val("Log in");
      		}
      		function UseAltSession(sessionType)
      		{
      			if (!sessionType)
      				alert("Error. Please reload.");
      			else if (sessionType.indexOf("existing") > -1)
      				LeaveLoginPage();
      			else
      			{
      				existingSession = "";
      				LeaveLoginPage();
      			}
      		}
      		function LeaveLoginPage()
      		{
      			var page = UrlParameters.Get("page");
      			if (page.match(/timeout\.htm/i))
      				page = page.replace(/timeout\.htm.*/i, 'ui3.htm');
      			if (page.indexOf(appPath) !== 0)
      				page = appPath + page.replace(/^\/+/g, '');
      			page = page.replace(/[&?]session=[^&?#%]+/gi, '');
      			if (existingSession)
      			{
      				page += (page.indexOf("?") < 0 ? "?" : "&") + "session=" + existingSession;
      				if (cookiesEnabled)
      					$.cookie("session", existingSession, { path: "/" });
      			}
      			location.href = page + location.hash;
      		}
      		function cancelAutoLogin()
      		{
      			if (autologin_timeout_1 !== null)
      			{
      				clearTimeout(autologin_timeout_1);
      				autologin_timeout_1 = null;
      			}
      			if (autologin_timeout_2 !== null)
      			{
      				clearTimeout(autologin_timeout_2);
      				autologin_timeout_2 = null;
      			}
      			$("#btnLogin").val(windowUnloading ? "Redirecting..." : "Log in");
      		}
      		function cbLoginAutomaticallyClicked()
      		{
      			cancelAutoLogin();
      			if (!isStoredDataLoaded)
      				return;
      			var isChecked = $("#cbLoginAutomatically").is(":checked");
      			SetPersistedValue("bi_rememberMe", isChecked ? "1" : "0");
      			SetPersistedValue("bi_username", isChecked ? Base64.encode($("#txtUn").val()) : "");
      			SetPersistedValue("bi_password", isChecked ? Base64.encode($("#txtPw").val()) : "");
      		}
      		function GetPersistedValue(key)
      		{
      			var value;
      			if (localStorageEnabled)
      				value = localStorage.getItem(key);
      			if (!value)
      				value = "";
      			return value;
      		}
      		function SetPersistedValue(key, value)
      		{
      			if (localStorageEnabled)
      				return localStorage.setItem(key, value);
      		}
      		function pwKeypress(ele, e)
      		{
      			var keycode;
      			if (window.event) keycode = window.event.keyCode;
      			else if (typeof e !== "undefined" && e) keycode = e.which;
      			else return true;
      
      			if (keycode === 13)
      			{
      				login();
      				return false;
      			}
      			else
      				return true;
      		}
      		function resized()
      		{
      			if ($("#status").is(":visible"))
      			{
      				$("#status").hide();
      				$("#status").css("max-width", $("#login").width() + "px");
      				$("#status").show();
      			}
      			$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });
      			$("#status").css("max-width", $("#login").width() + "px");
      			var heightTotal = 0;
      			$("#login").children().each(function (idx, ele)
      			{
      				heightTotal += $(ele).outerHeight(true);
      			});
      
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:20:51.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "w3.org"
               ],
               "hostname" : [
                  "www.w3.org"
               ],
               "ip" : [
                  "5.9.9.0",
                  "5.8.1.1",
                  "4.8.2.3"
               ],
               "url" : [
                  "http://www.w3.org/1999/xhtml"
               ]
            },
            "http" : {
               "bodymd5" : "cd173fb2ebe0f8fed03466d881fbb9a8",
               "bodymmh3" : -416489162,
               "headermd5" : "c10772e0c6eaf1cc31331ae8b1dfe205",
               "headermmh3" : 1978185754,
               "title" : "Blue Iris Login"
            },
            "length" : 16384
         },
         "asn" : "AS701",
         "city" : "Livingston",
         "country" : "US",
         "data" : "HTTP/1.0 200 OK\r\nServer: BlueServer/5.9.9.0\r\nDate: Thu, 07 Nov 2024 05:20:44 GMT\r\nP3P: CP=\"CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE\"\r\nSet-Cookie: session=2182457f3fea0a4855c7611c751e110d; path=/\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\nContent-Type: text/html; charset=UTF-8\r\nContent-Length: 16968\r\nCache-Control: no-cache, no-store\r\nX-Frame-Options: SAMEORIGIN\r\n\r\n<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\r\n\t<link rel=\"icon\" id=\"ui3launcher1\">\r\n\t<link rel=\"apple-touch-icon\" id=\"ui3launcher2\">\r\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\r\n\t<meta name=\"apple-mobile-web-app-capable\" content=\"yes\"> <!--iOS Safari-->\r\n\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black\">\r\n\t<meta name=\"mobile-web-app-capable\" content=\"yes\"><!--Android Chrome-->\r\n\t<meta name=\"theme-color\" content=\"#000000\">\r\n\t<link rel=\"manifest\" id=\"ui3manifest\">\r\n\t<title>Blue Iris Login</title>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar login_version = \"30\";\r\n\t\tvar bi_version = \"5.9.9.0\";\r\n\t\tvar combined_version = login_version + \"-\" + bi_version;\r\n\t\tvar appPath = \"/\" + \"/\".replace(/^\\/+|\\/+$/g, '');\r\n\t\tif (!appPath.endsWith(\"/\"))\r\n\t\t\tappPath = appPath + \"/\";\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.\r\n\t\tvar suppressErrorCallbacks = [\r\n\t\t\tfunction (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 1 && err.msg && err.msg.indexOf(\"'getAttribute'\") > -1 && err.url && err.url.indexOf(\".htm\") > -1;\r\n\t\t\t},\r\n\t\t\tfunction (err) // [2021-07-19] LG TV browser fails repeatedly.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf(\"Script error.\") > -1 && (!err.url || err.url == \"\");\r\n\t\t\t},\r\n\t\t\tfunction (err) // ublock origin in Brave browser\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg == \"Uncaught TypeError: Cannot redefine property: getElementById\" && err.url === \"\";\r\n\t\t\t},\r\n\t\t\tfunction (err) // Edge iOS\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg.indexOf(\"instantSearchSDKJSBridgeClearHighlight\") > -1;\r\n\t\t\t}\r\n\t\t];\r\n\t\twindow.onerror = function (msg, url, line, charIdx)\r\n\t\t{\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tvar versionStr = \"unknown\";\r\n\t\t\t\tif (typeof login_version !== \"undefined\")\r\n\t\t\t\t\tversionStr = login_version;\r\n\t\t\t\tvar biVersionStr = \"unknown\";\r\n\t\t\t\tif (typeof bi_version !== \"undefined\")\r\n\t\t\t\t\tbiVersionStr = bi_version;\r\n\t\t\t\turl = url.replace(/\\/\\/.*?\\//, '//censored_hostname/');\r\n\t\t\t\tvar errStr = \"An unexpected error has occurred in Blue Iris Login (v \" + versionStr + \" / \" + biVersionStr + \"). If you wish to report the error, please SCREENSHOT the browser now.\\n\\n\" + msg + \"\\nat \" + url + \" [\" + line + \":\" + charIdx + \"]\\n\" + navigator.userAgent;\r\n\r\n\t\t\t\tvar errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };\r\n\t\t\t\tfor (var i = 0; i < suppressErrorCallbacks.length; i++)\r\n\t\t\t\t{\r\n\t\t\t\t\ttry\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif (suppressErrorCallbacks[i](errObj))\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttry { console.log(\"The following error report was suppressed by callback \" + i + \":\"); console.error(errStr); }\r\n\t\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcatch (ex)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttry { console.log(\"Error suppression callback \" + i + \" had an error:\"); console.error(errStr); }\r\n\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\talert(errStr);\r\n\t\t\t}\r\n\t\t\tcatch (ex)\r\n\t\t\t{\r\n\t\t\t\talert(ex);\r\n\t\t\t}\r\n\t\t};\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\tdocument.getElementById(\"ui3manifest\").href = 'applet/manifest.json?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher1\").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher2\").href = 'applet/launcher-icon.png?v=' + combined_version;\r\n\t</script>\r\n\t<style type=\"text/css\">\r\n\t\tbody\r\n\t\t{\r\n\t\t\tfont-family: sans-serif;\r\n\t\t\tbackground: #212325;\r\n\t\t}\r\n\r\n\t\t#loginLoading\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t\ttext-shadow: 0 0 10px rgba(0,0,0,0.3);\r\n\t\t\tposition: absolute;\r\n\t\t\ttext-align: center;\r\n\t\t\ttop: 40%;\r\n\t\t\twidth: 100%;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t}\r\n\r\n\t\t\t#loginLoading h1\r\n\t\t\t{\r\n\t\t\t\tmargin: 0 0 20px 0;\r\n\t\t\t\tfont-size: 32px;\r\n\t\t\t}\r\n\r\n\t\t\t#loginLoading div\r\n\t\t\t{\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t}\r\n\r\n\t\t#login\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\r\n\t\t.checkboxWrapper\r\n\t\t{\r\n\t\t\tmax-width: 488px;\r\n\t\t}\r\n\t</style>\r\n</head>\r\n<body>\r\n\t<div id=\"loginLoading\">\r\n\t\t<h1>76 Deer Creek Dr</h1>\r\n\t\t<div>Loading login page...</div>\r\n\t</div>\r\n\t<div id=\"login\">\r\n\t\t<h1>76 Deer Creek Dr</h1>\r\n\t\t<input id=\"txtUn\" type=\"text\" class=\"text\" placeholder=\"Username\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<input id=\"txtPw\" type=\"password\" class=\"text\" placeholder=\"Password\" onkeypress=\"return pwKeypress(this, event);\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<div class=\"checkboxWrapper\">\r\n\t\t\t<input id=\"cbLoginAutomatically\" type=\"checkbox\" class=\"checkbox\" onchange=\"cbLoginAutomaticallyClicked();\" /><label for=\"cbLoginAutomatically\" id=\"lblLoginAutomatically\"><span class=\"ui\"></span>Log in automatically:</label>\r\n\t\t</div>\r\n\t\t<div id=\"status_wrapper_upper\"></div>\r\n\t\t<input id=\"btnLogin\" type=\"button\" class=\"btn\" value=\"Log in\" onclick=\"login();\" />\r\n\t\t<div id=\"status_wrapper_lower\"><div id=\"status\"></div></div>\r\n\t</div>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar loadingOpacity = 0;\r\n\t\tfunction IncreaseLoadingOpacity()\r\n\t\t{\r\n\t\t\tloadingOpacity += 0.05;\r\n\t\t\tif (loadingOpacity > 1)\r\n\t\t\t\tloadingOpacity = 1;\r\n\t\t\tvar ele = document.getElementById('loginLoading');\r\n\t\t\tele.style.display = \"block\";\r\n\t\t\tele.style.opacity = loadingOpacity;\r\n\t\t\tif (loadingOpacity < 1)\r\n\t\t\t\tshowLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);\r\n\t\t}\r\n\t\tvar showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);\r\n\r\n\t\tdocument.write('<link href=\"applet/loginStyles.css?v=' + combined_version + '\" rel=\"stylesheet\" />'\r\n\t\t\t+ '<script src=\"applet/loginScripts.js?v=' + combined_version + '\"><\\/script>');\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t/* eslint no-extra-parens: 0 */\r\n\t\tvar autologin_timeout_1 = null;\r\n\t\tvar autologin_timeout_2 = null;\r\n\t\tvar existingSession = \"2182457f3fea0a4855c7611c751e110d\";\r\n\t\tvar authStatus = \"unknown\";\r\n\t\tvar authExempt = \"no\";\r\n\t\tvar loginSession = \"\";\r\n\t\tvar isStoredDataLoaded = false;\r\n\t\tvar windowUnloading = false;\r\n\t\tvar cookiesEnabled;\r\n\t\tvar localStorageEnabled;\r\n\r\n\t\t/**\r\n\t\t * Changes the current URL by removing the specified query string parameter(s) from it.\r\n\t\t * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.\r\n\t\t */\r\n\t\tfunction NavRemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar url = RemoveUrlParams.apply(this, arguments);\r\n\t\t\ttry { history.replaceState(history.state, \"\", url); return null; } catch (ex) { return url; }\r\n\t\t}\r\n\t\tfunction RemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar s = location.search;\r\n\t\t\tfor (var i = 0; i < arguments.length; i++)\r\n\t\t\t{\r\n\t\t\t\tvar param = arguments[i];\r\n\t\t\t\tvar rx = new RegExp('(&|\\\\?)' + param + '=[^&?#%]+', 'gi');\r\n\t\t\t\ts = s.replace(rx, \"\");\r\n\t\t\t\twhile (s.indexOf(\"&\") === 0)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (s.length > 1)\r\n\t\t\t\t\t\ts = s.substr(1);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ts = \"\";\r\n\t\t\t\t}\r\n\t\t\t\tif (s.length > 0 && s.indexOf(\"?\") === -1)\r\n\t\t\t\t\ts = \"?\" + s;\r\n\t\t\t}\r\n\t\t\treturn location.origin + location.pathname + s + location.hash;\r\n\t\t}\r\n\r\n\t\tNavRemoveUrlParams(\"session\");\r\n\r\n\t\t$(function ()\r\n\t\t{\r\n\t\t\tcookiesEnabled = testCookieFunctionality();\r\n\t\t\tlocalStorageEnabled = isLocalStorageEnabled();\r\n\t\t\tvar skipAutoLogin = GetPersistedValue(\"bi_override_disable_auto_login_once\") === \"1\";\r\n\t\t\tif (UrlParameters.Get(\"autologin\") === \"0\")\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = true;\r\n\t\t\t\tvar url = NavRemoveUrlParams(\"session\", \"autologin\");\r\n\t\t\t\tif (url)\r\n\t\t\t\t{\r\n\t\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"1\");\r\n\t\t\t\t\tlocation.href = url;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"0\");\r\n\t\t\t\tconsole.log('Auto login was temporarily disabled because \"autologin=0\" URL parameter was observed (the UI3 \"Main Menu\" > \"Log Out\" button sets this parameter).');\r\n\t\t\t}\r\n\t\t\tvar lastUnload = GetPersistedValue(\"bi_lastunload\");\r\n\t\t\tif (lastUnload > Date.now())\r\n\t\t\t\tSetPersistedValue(\"bi_lastunload\", 0);\r\n\t\t\telse if (!skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = Date.now() - lastUnload < 5000;\r\n\t\t\t\tif (skipAutoLogin)\r\n\t\t\t\t\tconsole.log('Auto login was temporarily disabled because UI3 was determined to be running within the previous 5 seconds.');\r\n\t\t\t}\r\n\t\t\tclearTimeout(showLoadingMessageTimeout);\r\n\t\t\t$(\"#loginLoading\").hide();\r\n\t\t\t$(\"#login\").show();\r\n\t\t\tif (typeof window.JSON === 'undefined')\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \\\"Secure only\\\" requirement within Blue Iris's web server settings.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!existingSession || (existingSession.length === 11 && existingSession.startsWith(\"%\") && existingSession.endsWith(\"%\") && existingSession.indexOf(\"SESSION\") === 2))\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!localStorageEnabled)\r\n\t\t\t\t$(\"#cbLoginAutomatically\").parent().text(\"Note: Local Storage is disabled in your browser, so credentials can not be saved.\").css(\"color\", \"#EEEEEE\");\r\n\t\t\tSetStatus();\r\n\t\t\t$(window).resize(resized);\r\n\t\t\tresized();\r\n\t\t\twindow.onbeforeunload = function ()\r\n\t\t\t{\r\n\t\t\t\twindowUnloading = true;\r\n\t\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t\treturn;\r\n\t\t\t};\r\n\t\t\t// Handle automatic login\r\n\t\t\tif (GetPersistedValue(\"bi_rememberMe\") === \"1\")\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").attr('checked', 'checked');\r\n\t\t\t\t$(\"#txtUn\").val(Base64.decode(GetPersistedValue(\"bi_username\")));\r\n\t\t\t\t$(\"#txtPw\").val(Base64.decode(GetPersistedValue(\"bi_password\")));\r\n\r\n\t\t\t\tif (!skipAutoLogin)\r\n\t\t\t\t{\r\n\t\t\t\t\tif ($(\"#txtUn\").val() !== \"\" && $(\"#txtPw\").val() !== \"\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t}\r\n\r\n\t\t\tvar sessionType = \"\";\r\n\r\n\t\t\t// authExempt predefined values: no, user, admin, unknown (should not happen)\r\n\t\t\tif (authExempt === \"user\")\r\n\t\t\t\tsessionType = \"anonymous user\";\r\n\t\t\telse if (authExempt === \"admin\")\r\n\t\t\t\tsessionType = \"anonymous admin\";\r\n\r\n\t\t\t// authStatus predefined values: unknown, admin, anonymous, user\r\n\t\t\tif (authStatus === \"admin\")\r\n\t\t\t\tsessionType = \"existing admin\";\r\n\t\t\telse if (authStatus === \"user\")\r\n\t\t\t\tsessionType = \"existing user\";\r\n\t\t\telse if (authStatus === \"anonymous\")\r\n\t\t\t\tsessionType = \"existing anonymous user\";\r\n\r\n\t\t\tif (sessionType)\r\n\t\t\t\tSetStatus(\"An \" + sessionType + ' session is available. <a href=\"javascript:UseAltSession(\\'' + sessionType + '\\')\">Click here to use it.</a>');\r\n\r\n\t\t\t// Set focus on first empty field\r\n\t\t\tif (!$(\"#txtUn\").val())\r\n\t\t\t\t$(\"#txtUn\").get(0).focus();\r\n\t\t\telse if (!$(\"#txtPw\").val())\r\n\t\t\t\t$(\"#txtPw\").get(0).focus();\r\n\t\t\telse\r\n\t\t\t\t$(\"#btnLogin\").get(0).focus();\r\n\r\n\t\t\tisStoredDataLoaded = true;\r\n\t\t});\r\n\t\tfunction login()\r\n\t\t{\r\n\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t$(\"#btnLogin\").val(\"Logging in ...\");\r\n\t\t\tSetStatus();\r\n\t\t\tif (authStatus === \"unknown\")\r\n\t\t\t\tloginSession = existingSession;\r\n\r\n\t\t\tif (!loginSession)\r\n\t\t\t\tauthenticateNewSession();\r\n\t\t\telse\r\n\t\t\t\tauthenticateSession(loginSession);\r\n\t\t}\r\n\t\tfunction authenticateNewSession(user, pass)\r\n\t\t{\r\n\t\t\tExecJSON({ cmd: \"login\" }, function (response)\r\n\t\t\t{\r\n\t\t\t\tloginSession = response.session;\r\n\t\t\t\tauthenticateSession(loginSession, true);\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction authenticateSession(session, isNewSession)\r\n\t\t{\r\n\t\t\tvar myResponse = md5($(\"#txtUn\").val() + \":\" + session + \":\" + $(\"#txtPw\").val());\r\n\t\t\tExecJSON({ cmd: \"login\", session: session, response: myResponse }, function (response)\r\n\t\t\t{\r\n\t\t\t\tif (response.result === \"success\")\r\n\t\t\t\t{\r\n\t\t\t\t\t$(\"#btnLogin\").attr(\"disabled\", \"disabled\").val(\"Redirecting...\");\r\n\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\tLeaveLoginPage();\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tvar isExpired;\r\n\t\t\t\t\tif (compareVersions(bi_version, \"5.8.1.1\") >= 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tisExpired = response.result === \"fail\"\r\n\t\t\t\t\t\t\t&& response.data\r\n\t\t\t\t\t\t\t&& typeof response.data.reason === \"string\"\r\n\t\t\t\t\t\t\t&& response.data.reason.toUpperCase() === \"INVALID SESSION\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// BI prior to 5.8.1.1 did not return a data.reason string in the case of invalid session.\r\n\t\t\t\t\t\tisExpired = response.result === \"fail\" && (!response.data || !response.data.reason);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (isExpired && !isNewSession)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// This happens when the session we were trying to authenticate has expired.\r\n\t\t\t\t\t\tauthenticateNewSession();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_rememberMe\", \"0\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t\t\tHandleError(response.data && response.data.reason ? response.data.reason : \"Login failed but Blue Iris did not provide a reason.\");\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction loginFail(jqXHR, textStatus, errorThrown)\r\n\t\t{\r\n\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t}\r\n\t\tfunction UseAltSession(sessionType)\r\n\t\t{\r\n\t\t\tif (!sessionType)\r\n\t\t\t\talert(\"Error. Please reload.\");\r\n\t\t\telse if (sessionType.indexOf(\"existing\") > -1)\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\texistingSession = \"\";\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\t}\r\n\t\t}\r\n\t\tfunction LeaveLoginPage()\r\n\t\t{\r\n\t\t\tvar page = UrlParameters.Get(\"page\");\r\n\t\t\tif (page.match(/timeout\\.htm/i))\r\n\t\t\t\tpage = page.replace(/timeout\\.htm.*/i, 'ui3.htm');\r\n\t\t\tif (page.indexOf(appPath) !== 0)\r\n\t\t\t\tpage = appPath + page.replace(/^\\/+/g, '');\r\n\t\t\tpage = page.replace(/[&?]session=[^&?#%]+/gi, '');\r\n\t\t\tif (existingSession)\r\n\t\t\t{\r\n\t\t\t\tpage += (page.indexOf(\"?\") < 0 ? \"?\" : \"&\") + \"session=\" + existingSession;\r\n\t\t\t\tif (cookiesEnabled)\r\n\t\t\t\t\t$.cookie(\"session\", existingSession, { path: \"/\" });\r\n\t\t\t}\r\n\t\t\tlocation.href = page + location.hash;\r\n\t\t}\r\n\t\tfunction cancelAutoLogin()\r\n\t\t{\r\n\t\t\tif (autologin_timeout_1 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_1);\r\n\t\t\t\tautologin_timeout_1 = null;\r\n\t\t\t}\r\n\t\t\tif (autologin_timeout_2 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_2);\r\n\t\t\t\tautologin_timeout_2 = null;\r\n\t\t\t}\r\n\t\t\t$(\"#btnLogin\").val(windowUnloading ? \"Redirecting...\" : \"Log in\");\r\n\t\t}\r\n\t\tfunction cbLoginAutomaticallyClicked()\r\n\t\t{\r\n\t\t\tcancelAutoLogin();\r\n\t\t\tif (!isStoredDataLoaded)\r\n\t\t\t\treturn;\r\n\t\t\tvar isChecked = $(\"#cbLoginAutomatically\").is(\":checked\");\r\n\t\t\tSetPersistedValue(\"bi_rememberMe\", isChecked ? \"1\" : \"0\");\r\n\t\t\tSetPersistedValue(\"bi_username\", isChecked ? Base64.encode($(\"#txtUn\").val()) : \"\");\r\n\t\t\tSetPersistedValue(\"bi_password\", isChecked ? Base64.encode($(\"#txtPw\").val()) : \"\");\r\n\t\t}\r\n\t\tfunction GetPersistedValue(key)\r\n\t\t{\r\n\t\t\tvar value;\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\tvalue = localStorage.getItem(key);\r\n\t\t\tif (!value)\r\n\t\t\t\tvalue = \"\";\r\n\t\t\treturn value;\r\n\t\t}\r\n\t\tfunction SetPersistedValue(key, value)\r\n\t\t{\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\treturn localStorage.setItem(key, value);\r\n\t\t}\r\n\t\tfunction pwKeypress(ele, e)\r\n\t\t{\r\n\t\t\tvar keycode;\r\n\t\t\tif (window.event) keycode = window.event.keyCode;\r\n\t\t\telse if (typeof e !== \"undefined\" && e) keycode = e.which;\r\n\t\t\telse return true;\r\n\r\n\t\t\tif (keycode === 13)\r\n\t\t\t{\r\n\t\t\t\tlogin();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t\treturn true;\r\n\t\t}\r\n\t\tfunction resized()\r\n\t\t{\r\n\t\t\tif ($(\"#status\").is(\":visible\"))\r\n\t\t\t{\r\n\t\t\t\t$(\"#status\").hide();\r\n\t\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\t\t$(\"#status\").show();\r\n\t\t\t}\r\n\t\t\t$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });\r\n\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\tvar heightTotal = 0;\r\n\t\t\t$(\"#login\").children().each(function (idx, ele)\r\n\t\t\t{\r\n\t\t\t\theightTotal += $(ele).outerHeight(true);\r\n\t\t\t});\r",
         "datamd5" : "7174669b9e4dc5fc915cac9d28463749",
         "datammh3" : 234013841,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "forward" : "108.35.152.105",
         "geolocus" : {
            "asn" : "AS701",
            "continent" : "NA",
            "continentname" : "North America",
            "country" : "US",
            "countryname" : "United States",
            "domain" : [
               "verizon-gni.net",
               "verizon.com",
               "verizon.net",
               "verizonbusiness.com"
            ],
            "isineu" : "false",
            "latitude" : "37.09024",
            "location" : "37.09024,-95.712891",
            "longitude" : "-95.712891",
            "netname" : "VIS-BLOCK",
            "organization" : "Verizon Business",
            "subnet" : "108.35.0.0/16"
         },
         "hostname" : [
            "108.35.152.105"
         ],
         "ip" : "108.35.152.105",
         "ipv6" : "false",
         "latitude" : "40.7872",
         "location" : "40.7872,-74.3225",
         "longitude" : "-74.3225",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "UUNET",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.0",
         "reason" : "OK",
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subnet" : "108.35.128.0/17",
         "tag" : "<enterprise field>: tag",
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/login.htm?page=%2F"
      }
      
  • 32.140.123.214:81 (tcp/http) - last seen on 2024-11-07 at 05:20:33 UTC

    • IP
      32.140.123.214
      Network
      32.128.0.0/12
      Device

      <enterprise field>: device.class

      URL

      http://32.140.123.214:81/login.htm?page=%2F 200

      HTTP Title
      Blue Iris Login
      ASN
      AS7018
      Organization
      ATT-INTERNET4
      Protocol
      http
      Source
      urlscan::redirect
    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      3d3647981e671a1bfcf82d11e847bac9
      HTTP Header MD5
      7957ff820b15e9d0dbc76a04b8d8dd80
      HTTP Body MD5
      0cadf7c7370414df705dcf4e17b2c55c
    • HTTP/1.0 200 OK
      Server: BlueServer/5.8.2.5
      Date: Thu, 07 Nov 2024 05:20:27 GMT
      P3P: CP="CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE"
      Access-Control-Allow-Origin: *
      Set-Cookie: session=05de580c15d0635f5125660c0ade1188; path=/
      Connection: close
      Content-Type: text/html; charset=UTF-8
      Content-Length: 16976
      Cache-Control: no-cache, no-store
      X-Frame-Options: SAMEORIGIN
      
      <!DOCTYPE html>
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
      	<link rel="icon" id="ui3launcher1">
      	<link rel="apple-touch-icon" id="ui3launcher2">
      	<meta name="viewport" content="width=device-width, initial-scale=1" />
      	<meta name="apple-mobile-web-app-capable" content="yes"> <!--iOS Safari-->
      	<meta name="apple-mobile-web-app-status-bar-style" content="black">
      	<meta name="mobile-web-app-capable" content="yes"><!--Android Chrome-->
      	<meta name="theme-color" content="#000000">
      	<link rel="manifest" id="ui3manifest">
      	<title>Blue Iris Login</title>
      	<script type="text/javascript">
      		var login_version = "30";
      		var bi_version = "5.8.2.5";
      		var combined_version = login_version + "-" + bi_version;
      		var appPath = "/" + "/".replace(/^\/+|\/+$/g, '');
      		if (!appPath.endsWith("/"))
      			appPath = appPath + "/";
      	</script>
      	<script type="text/javascript">
      		// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.
      		var suppressErrorCallbacks = [
      			function (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.
      			{
      				return err.line === 1 && err.msg && err.msg.indexOf("'getAttribute'") > -1 && err.url && err.url.indexOf(".htm") > -1;
      			},
      			function (err) // [2021-07-19] LG TV browser fails repeatedly.
      			{
      				return err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf("Script error.") > -1 && (!err.url || err.url == "");
      			},
      			function (err) // ublock origin in Brave browser
      			{
      				return err.msg && err.msg == "Uncaught TypeError: Cannot redefine property: getElementById" && err.url === "";
      			},
      			function (err) // Edge iOS
      			{
      				return err.msg && err.msg.indexOf("instantSearchSDKJSBridgeClearHighlight") > -1;
      			}
      		];
      		window.onerror = function (msg, url, line, charIdx)
      		{
      			try
      			{
      				var versionStr = "unknown";
      				if (typeof login_version !== "undefined")
      					versionStr = login_version;
      				var biVersionStr = "unknown";
      				if (typeof bi_version !== "undefined")
      					biVersionStr = bi_version;
      				url = url.replace(/\/\/.*?\//, '//censored_hostname/');
      				var errStr = "An unexpected error has occurred in Blue Iris Login (v " + versionStr + " / " + biVersionStr + "). If you wish to report the error, please SCREENSHOT the browser now.\n\n" + msg + "\nat " + url + " [" + line + ":" + charIdx + "]\n" + navigator.userAgent;
      
      				var errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };
      				for (var i = 0; i < suppressErrorCallbacks.length; i++)
      				{
      					try
      					{
      						if (suppressErrorCallbacks[i](errObj))
      						{
      							try { console.log("The following error report was suppressed by callback " + i + ":"); console.error(errStr); }
      							catch (ex) { }
      							return;
      						}
      					}
      					catch (ex)
      					{
      						try { console.log("Error suppression callback " + i + " had an error:"); console.error(errStr); }
      						catch (ex) { }
      						return;
      					}
      				}
      				alert(errStr);
      			}
      			catch (ex)
      			{
      				alert(ex);
      			}
      		};
      	</script>
      	<script type="text/javascript">
      		document.getElementById("ui3manifest").href = 'applet/manifest.json?v=' + combined_version;
      		document.getElementById("ui3launcher1").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;
      		document.getElementById("ui3launcher2").href = 'applet/launcher-icon.png?v=' + combined_version;
      	</script>
      	<style type="text/css">
      		body
      		{
      			font-family: sans-serif;
      			background: #212325;
      		}
      
      		#loginLoading
      		{
      			display: none;
      			text-shadow: 0 0 10px rgba(0,0,0,0.3);
      			position: absolute;
      			text-align: center;
      			top: 40%;
      			width: 100%;
      			color: #FFFFFF;
      		}
      
      			#loginLoading h1
      			{
      				margin: 0 0 20px 0;
      				font-size: 32px;
      			}
      
      			#loginLoading div
      			{
      				font-size: 20px;
      			}
      
      		#login
      		{
      			display: none;
      		}
      
      		.checkboxWrapper
      		{
      			max-width: 488px;
      		}
      	</style>
      </head>
      <body>
      	<div id="loginLoading">
      		<h1>Platform Flint River</h1>
      		<div>Loading login page...</div>
      	</div>
      	<div id="login">
      		<h1>Platform Flint River</h1>
      		<input id="txtUn" type="text" class="text" placeholder="Username" autocapitalize="off" autocorrect="off" />
      		<input id="txtPw" type="password" class="text" placeholder="Password" onkeypress="return pwKeypress(this, event);" autocapitalize="off" autocorrect="off" />
      		<div class="checkboxWrapper">
      			<input id="cbLoginAutomatically" type="checkbox" class="checkbox" onchange="cbLoginAutomaticallyClicked();" /><label for="cbLoginAutomatically" id="lblLoginAutomatically"><span class="ui"></span>Log in automatically:</label>
      		</div>
      		<div id="status_wrapper_upper"></div>
      		<input id="btnLogin" type="button" class="btn" value="Log in" onclick="login();" />
      		<div id="status_wrapper_lower"><div id="status"></div></div>
      	</div>
      	<script type="text/javascript">
      		var loadingOpacity = 0;
      		function IncreaseLoadingOpacity()
      		{
      			loadingOpacity += 0.05;
      			if (loadingOpacity > 1)
      				loadingOpacity = 1;
      			var ele = document.getElementById('loginLoading');
      			ele.style.display = "block";
      			ele.style.opacity = loadingOpacity;
      			if (loadingOpacity < 1)
      				showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);
      		}
      		var showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);
      
      		document.write('<link href="applet/loginStyles.css?v=' + combined_version + '" rel="stylesheet" />'
      			+ '<script src="applet/loginScripts.js?v=' + combined_version + '"><\/script>');
      	</script>
      	<script type="text/javascript">
      		/* eslint no-extra-parens: 0 */
      		var autologin_timeout_1 = null;
      		var autologin_timeout_2 = null;
      		var existingSession = "05de580c15d0635f5125660c0ade1188";
      		var authStatus = "unknown";
      		var authExempt = "no";
      		var loginSession = "";
      		var isStoredDataLoaded = false;
      		var windowUnloading = false;
      		var cookiesEnabled;
      		var localStorageEnabled;
      
      		/**
      		 * Changes the current URL by removing the specified query string parameter(s) from it.
      		 * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.
      		 */
      		function NavRemoveUrlParams()
      		{
      			var url = RemoveUrlParams.apply(this, arguments);
      			try { history.replaceState(history.state, "", url); return null; } catch (ex) { return url; }
      		}
      		function RemoveUrlParams()
      		{
      			var s = location.search;
      			for (var i = 0; i < arguments.length; i++)
      			{
      				var param = arguments[i];
      				var rx = new RegExp('(&|\\?)' + param + '=[^&?#%]+', 'gi');
      				s = s.replace(rx, "");
      				while (s.indexOf("&") === 0)
      				{
      					if (s.length > 1)
      						s = s.substr(1);
      					else
      						s = "";
      				}
      				if (s.length > 0 && s.indexOf("?") === -1)
      					s = "?" + s;
      			}
      			return location.origin + location.pathname + s + location.hash;
      		}
      
      		NavRemoveUrlParams("session");
      
      		$(function ()
      		{
      			cookiesEnabled = testCookieFunctionality();
      			localStorageEnabled = isLocalStorageEnabled();
      			var skipAutoLogin = GetPersistedValue("bi_override_disable_auto_login_once") === "1";
      			if (UrlParameters.Get("autologin") === "0")
      			{
      				skipAutoLogin = true;
      				var url = NavRemoveUrlParams("session", "autologin");
      				if (url)
      				{
      					SetPersistedValue("bi_override_disable_auto_login_once", "1");
      					location.href = url;
      					return;
      				}
      			}
      			if (skipAutoLogin)
      			{
      				SetPersistedValue("bi_override_disable_auto_login_once", "0");
      				console.log('Auto login was temporarily disabled because "autologin=0" URL parameter was observed (the UI3 "Main Menu" > "Log Out" button sets this parameter).');
      			}
      			var lastUnload = GetPersistedValue("bi_lastunload");
      			if (lastUnload > Date.now())
      				SetPersistedValue("bi_lastunload", 0);
      			else if (!skipAutoLogin)
      			{
      				skipAutoLogin = Date.now() - lastUnload < 5000;
      				if (skipAutoLogin)
      					console.log('Auto login was temporarily disabled because UI3 was determined to be running within the previous 5 seconds.');
      			}
      			clearTimeout(showLoadingMessageTimeout);
      			$("#loginLoading").hide();
      			$("#login").show();
      			if (typeof window.JSON === 'undefined')
      			{
      				$("#login").html("<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \"Secure only\" requirement within Blue Iris's web server settings.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!existingSession || (existingSession.length === 11 && existingSession.startsWith("%") && existingSession.endsWith("%") && existingSession.indexOf("SESSION") === 2))
      			{
      				$("#login").html("<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>");
      				$("#login").css("color", "#EEEEEE").css("margin", "8px");
      				return;
      			}
      			if (!localStorageEnabled)
      				$("#cbLoginAutomatically").parent().text("Note: Local Storage is disabled in your browser, so credentials can not be saved.").css("color", "#EEEEEE");
      			SetStatus();
      			$(window).resize(resized);
      			resized();
      			window.onbeforeunload = function ()
      			{
      				windowUnloading = true;
      				cbLoginAutomaticallyClicked();
      				return;
      			};
      			// Handle automatic login
      			if (GetPersistedValue("bi_rememberMe") === "1")
      			{
      				$("#cbLoginAutomatically").attr('checked', 'checked');
      				$("#txtUn").val(Base64.decode(GetPersistedValue("bi_username")));
      				$("#txtPw").val(Base64.decode(GetPersistedValue("bi_password")));
      
      				if (!skipAutoLogin)
      				{
      					if ($("#txtUn").val() !== "" && $("#txtPw").val() !== "")
      					{
      						login();
      					}
      				}
      			}
      			else
      			{
      				$("#cbLoginAutomatically").removeAttr('checked');
      				SetPersistedValue("bi_username", "");
      				SetPersistedValue("bi_password", "");
      			}
      
      			var sessionType = "";
      
      			// authExempt predefined values: no, user, admin, unknown (should not happen)
      			if (authExempt === "user")
      				sessionType = "anonymous user";
      			else if (authExempt === "admin")
      				sessionType = "anonymous admin";
      
      			// authStatus predefined values: unknown, admin, anonymous, user
      			if (authStatus === "admin")
      				sessionType = "existing admin";
      			else if (authStatus === "user")
      				sessionType = "existing user";
      			else if (authStatus === "anonymous")
      				sessionType = "existing anonymous user";
      
      			if (sessionType)
      				SetStatus("An " + sessionType + ' session is available. <a href="javascript:UseAltSession(\'' + sessionType + '\')">Click here to use it.</a>');
      
      			// Set focus on first empty field
      			if (!$("#txtUn").val())
      				$("#txtUn").get(0).focus();
      			else if (!$("#txtPw").val())
      				$("#txtPw").get(0).focus();
      			else
      				$("#btnLogin").get(0).focus();
      
      			isStoredDataLoaded = true;
      		});
      		function login()
      		{
      			cbLoginAutomaticallyClicked();
      			$("#btnLogin").val("Logging in ...");
      			SetStatus();
      			if (authStatus === "unknown")
      				loginSession = existingSession;
      
      			if (!loginSession)
      				authenticateNewSession();
      			else
      				authenticateSession(loginSession);
      		}
      		function authenticateNewSession(user, pass)
      		{
      			ExecJSON({ cmd: "login" }, function (response)
      			{
      				loginSession = response.session;
      				authenticateSession(loginSession, true);
      			}, loginFail);
      		}
      		function authenticateSession(session, isNewSession)
      		{
      			var myResponse = md5($("#txtUn").val() + ":" + session + ":" + $("#txtPw").val());
      			ExecJSON({ cmd: "login", session: session, response: myResponse }, function (response)
      			{
      				if (response.result === "success")
      				{
      					$("#btnLogin").attr("disabled", "disabled").val("Redirecting...");
      					existingSession = response.session;
      					LeaveLoginPage();
      				}
      				else
      				{
      					var isExpired;
      					if (compareVersions(bi_version, "5.8.1.1") >= 0)
      					{
      						isExpired = response.result === "fail"
      							&& response.data
      							&& typeof response.data.reason === "string"
      							&& response.data.reason.toUpperCase() === "INVALID SESSION";
      					}
      					else
      					{
      						// BI prior to 5.8.1.1 did not return a data.reason string in the case of invalid session.
      						isExpired = response.result === "fail" && (!response.data || !response.data.reason);
      					}
      					if (isExpired && !isNewSession)
      					{
      						// This happens when the session we were trying to authenticate has expired.
      						authenticateNewSession();
      					}
      					else
      					{
      						$("#cbLoginAutomatically").removeAttr('checked');
      						SetPersistedValue("bi_rememberMe", "0");
      						SetPersistedValue("bi_username", "");
      						SetPersistedValue("bi_password", "");
      						$("#btnLogin").val("Log in");
      						HandleError(response.data && response.data.reason ? response.data.reason : "Login failed but Blue Iris did not provide a reason.");
      					}
      				}
      			}, loginFail);
      		}
      		function loginFail(jqXHR, textStatus, errorThrown)
      		{
      			HandleError("Unable to contact Blue Iris server");
      			$("#btnLogin").val("Log in");
      		}
      		function UseAltSession(sessionType)
      		{
      			if (!sessionType)
      				alert("Error. Please reload.");
      			else if (sessionType.indexOf("existing") > -1)
      				LeaveLoginPage();
      			else
      			{
      				existingSession = "";
      				LeaveLoginPage();
      			}
      		}
      		function LeaveLoginPage()
      		{
      			var page = UrlParameters.Get("page");
      			if (page.match(/timeout\.htm/i))
      				page = page.replace(/timeout\.htm.*/i, 'ui3.htm');
      			if (page.indexOf(appPath) !== 0)
      				page = appPath + page.replace(/^\/+/g, '');
      			page = page.replace(/[&?]session=[^&?#%]+/gi, '');
      			if (existingSession)
      			{
      				page += (page.indexOf("?") < 0 ? "?" : "&") + "session=" + existingSession;
      				if (cookiesEnabled)
      					$.cookie("session", existingSession, { path: "/" });
      			}
      			location.href = page + location.hash;
      		}
      		function cancelAutoLogin()
      		{
      			if (autologin_timeout_1 !== null)
      			{
      				clearTimeout(autologin_timeout_1);
      				autologin_timeout_1 = null;
      			}
      			if (autologin_timeout_2 !== null)
      			{
      				clearTimeout(autologin_timeout_2);
      				autologin_timeout_2 = null;
      			}
      			$("#btnLogin").val(windowUnloading ? "Redirecting..." : "Log in");
      		}
      		function cbLoginAutomaticallyClicked()
      		{
      			cancelAutoLogin();
      			if (!isStoredDataLoaded)
      				return;
      			var isChecked = $("#cbLoginAutomatically").is(":checked");
      			SetPersistedValue("bi_rememberMe", isChecked ? "1" : "0");
      			SetPersistedValue("bi_username", isChecked ? Base64.encode($("#txtUn").val()) : "");
      			SetPersistedValue("bi_password", isChecked ? Base64.encode($("#txtPw").val()) : "");
      		}
      		function GetPersistedValue(key)
      		{
      			var value;
      			if (localStorageEnabled)
      				value = localStorage.getItem(key);
      			if (!value)
      				value = "";
      			return value;
      		}
      		function SetPersistedValue(key, value)
      		{
      			if (localStorageEnabled)
      				return localStorage.setItem(key, value);
      		}
      		function pwKeypress(ele, e)
      		{
      			var keycode;
      			if (window.event) keycode = window.event.keyCode;
      			else if (typeof e !== "undefined" && e) keycode = e.which;
      			else return true;
      
      			if (keycode === 13)
      			{
      				login();
      				return false;
      			}
      			else
      				return true;
      		}
      		function resized()
      		{
      			if ($("#status").is(":visible"))
      			{
      				$("#status").hide();
      				$("#status").css("max-width", $("#login").width() + "px");
      				$("#status").show();
      			}
      			$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });
      			$("#status").css("max-width", $("#login").width() + "px");
      			var heightTotal = 0;
      			$("#login").children().each(function (idx, ele)
      			{
      				heightTotal += $(ele).outerHeight(true);
      
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:20:33.000Z",
         "app" : {
            "extract" : {
               "domain" : [
                  "w3.org"
               ],
               "hostname" : [
                  "www.w3.org"
               ],
               "ip" : [
                  "5.8.2.5",
                  "4.8.2.3",
                  "5.8.1.1"
               ],
               "url" : [
                  "http://www.w3.org/1999/xhtml"
               ]
            },
            "http" : {
               "bodymd5" : "0cadf7c7370414df705dcf4e17b2c55c",
               "bodymmh3" : -737436907,
               "headermd5" : "7957ff820b15e9d0dbc76a04b8d8dd80",
               "headermmh3" : -104612410,
               "title" : "Blue Iris Login"
            },
            "length" : 16384
         },
         "asn" : "AS7018",
         "city" : "Bainbridge",
         "country" : "US",
         "data" : "HTTP/1.0 200 OK\r\nServer: BlueServer/5.8.2.5\r\nDate: Thu, 07 Nov 2024 05:20:27 GMT\r\nP3P: CP=\"CAO COR CURa ADMa DEVa OUR IND ONL COM DEM PRE\"\r\nAccess-Control-Allow-Origin: *\r\nSet-Cookie: session=05de580c15d0635f5125660c0ade1188; path=/\r\nConnection: close\r\nContent-Type: text/html; charset=UTF-8\r\nContent-Length: 16976\r\nCache-Control: no-cache, no-store\r\nX-Frame-Options: SAMEORIGIN\r\n\r\n<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\r\n\t<link rel=\"icon\" id=\"ui3launcher1\">\r\n\t<link rel=\"apple-touch-icon\" id=\"ui3launcher2\">\r\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\r\n\t<meta name=\"apple-mobile-web-app-capable\" content=\"yes\"> <!--iOS Safari-->\r\n\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black\">\r\n\t<meta name=\"mobile-web-app-capable\" content=\"yes\"><!--Android Chrome-->\r\n\t<meta name=\"theme-color\" content=\"#000000\">\r\n\t<link rel=\"manifest\" id=\"ui3manifest\">\r\n\t<title>Blue Iris Login</title>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar login_version = \"30\";\r\n\t\tvar bi_version = \"5.8.2.5\";\r\n\t\tvar combined_version = login_version + \"-\" + bi_version;\r\n\t\tvar appPath = \"/\" + \"/\".replace(/^\\/+|\\/+$/g, '');\r\n\t\tif (!appPath.endsWith(\"/\"))\r\n\t\t\tappPath = appPath + \"/\";\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t// Each method in suppressErrorCallbacks can inspect the error and return true to suppress reporting of the error.\r\n\t\tvar suppressErrorCallbacks = [\r\n\t\t\tfunction (err) // [2020-11-11] LG TV browser injects bad script on line 1 of htm file.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 1 && err.msg && err.msg.indexOf(\"'getAttribute'\") > -1 && err.url && err.url.indexOf(\".htm\") > -1;\r\n\t\t\t},\r\n\t\t\tfunction (err) // [2021-07-19] LG TV browser fails repeatedly.\r\n\t\t\t{\r\n\t\t\t\treturn err.line === 0 && err.charIdx === 0 && err.msg && err.msg.indexOf(\"Script error.\") > -1 && (!err.url || err.url == \"\");\r\n\t\t\t},\r\n\t\t\tfunction (err) // ublock origin in Brave browser\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg == \"Uncaught TypeError: Cannot redefine property: getElementById\" && err.url === \"\";\r\n\t\t\t},\r\n\t\t\tfunction (err) // Edge iOS\r\n\t\t\t{\r\n\t\t\t\treturn err.msg && err.msg.indexOf(\"instantSearchSDKJSBridgeClearHighlight\") > -1;\r\n\t\t\t}\r\n\t\t];\r\n\t\twindow.onerror = function (msg, url, line, charIdx)\r\n\t\t{\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tvar versionStr = \"unknown\";\r\n\t\t\t\tif (typeof login_version !== \"undefined\")\r\n\t\t\t\t\tversionStr = login_version;\r\n\t\t\t\tvar biVersionStr = \"unknown\";\r\n\t\t\t\tif (typeof bi_version !== \"undefined\")\r\n\t\t\t\t\tbiVersionStr = bi_version;\r\n\t\t\t\turl = url.replace(/\\/\\/.*?\\//, '//censored_hostname/');\r\n\t\t\t\tvar errStr = \"An unexpected error has occurred in Blue Iris Login (v \" + versionStr + \" / \" + biVersionStr + \"). If you wish to report the error, please SCREENSHOT the browser now.\\n\\n\" + msg + \"\\nat \" + url + \" [\" + line + \":\" + charIdx + \"]\\n\" + navigator.userAgent;\r\n\r\n\t\t\t\tvar errObj = { msg: msg, url: url, line: line, charIdx: charIdx, versionStr: versionStr, biVersionStr: biVersionStr };\r\n\t\t\t\tfor (var i = 0; i < suppressErrorCallbacks.length; i++)\r\n\t\t\t\t{\r\n\t\t\t\t\ttry\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif (suppressErrorCallbacks[i](errObj))\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttry { console.log(\"The following error report was suppressed by callback \" + i + \":\"); console.error(errStr); }\r\n\t\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcatch (ex)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttry { console.log(\"Error suppression callback \" + i + \" had an error:\"); console.error(errStr); }\r\n\t\t\t\t\t\tcatch (ex) { }\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\talert(errStr);\r\n\t\t\t}\r\n\t\t\tcatch (ex)\r\n\t\t\t{\r\n\t\t\t\talert(ex);\r\n\t\t\t}\r\n\t\t};\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\tdocument.getElementById(\"ui3manifest\").href = 'applet/manifest.json?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher1\").href = 'applet/logos/launcher-icon48.png?v=' + combined_version;\r\n\t\tdocument.getElementById(\"ui3launcher2\").href = 'applet/launcher-icon.png?v=' + combined_version;\r\n\t</script>\r\n\t<style type=\"text/css\">\r\n\t\tbody\r\n\t\t{\r\n\t\t\tfont-family: sans-serif;\r\n\t\t\tbackground: #212325;\r\n\t\t}\r\n\r\n\t\t#loginLoading\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t\ttext-shadow: 0 0 10px rgba(0,0,0,0.3);\r\n\t\t\tposition: absolute;\r\n\t\t\ttext-align: center;\r\n\t\t\ttop: 40%;\r\n\t\t\twidth: 100%;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t}\r\n\r\n\t\t\t#loginLoading h1\r\n\t\t\t{\r\n\t\t\t\tmargin: 0 0 20px 0;\r\n\t\t\t\tfont-size: 32px;\r\n\t\t\t}\r\n\r\n\t\t\t#loginLoading div\r\n\t\t\t{\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t}\r\n\r\n\t\t#login\r\n\t\t{\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\r\n\t\t.checkboxWrapper\r\n\t\t{\r\n\t\t\tmax-width: 488px;\r\n\t\t}\r\n\t</style>\r\n</head>\r\n<body>\r\n\t<div id=\"loginLoading\">\r\n\t\t<h1>Platform Flint River</h1>\r\n\t\t<div>Loading login page...</div>\r\n\t</div>\r\n\t<div id=\"login\">\r\n\t\t<h1>Platform Flint River</h1>\r\n\t\t<input id=\"txtUn\" type=\"text\" class=\"text\" placeholder=\"Username\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<input id=\"txtPw\" type=\"password\" class=\"text\" placeholder=\"Password\" onkeypress=\"return pwKeypress(this, event);\" autocapitalize=\"off\" autocorrect=\"off\" />\r\n\t\t<div class=\"checkboxWrapper\">\r\n\t\t\t<input id=\"cbLoginAutomatically\" type=\"checkbox\" class=\"checkbox\" onchange=\"cbLoginAutomaticallyClicked();\" /><label for=\"cbLoginAutomatically\" id=\"lblLoginAutomatically\"><span class=\"ui\"></span>Log in automatically:</label>\r\n\t\t</div>\r\n\t\t<div id=\"status_wrapper_upper\"></div>\r\n\t\t<input id=\"btnLogin\" type=\"button\" class=\"btn\" value=\"Log in\" onclick=\"login();\" />\r\n\t\t<div id=\"status_wrapper_lower\"><div id=\"status\"></div></div>\r\n\t</div>\r\n\t<script type=\"text/javascript\">\r\n\t\tvar loadingOpacity = 0;\r\n\t\tfunction IncreaseLoadingOpacity()\r\n\t\t{\r\n\t\t\tloadingOpacity += 0.05;\r\n\t\t\tif (loadingOpacity > 1)\r\n\t\t\t\tloadingOpacity = 1;\r\n\t\t\tvar ele = document.getElementById('loginLoading');\r\n\t\t\tele.style.display = \"block\";\r\n\t\t\tele.style.opacity = loadingOpacity;\r\n\t\t\tif (loadingOpacity < 1)\r\n\t\t\t\tshowLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 33);\r\n\t\t}\r\n\t\tvar showLoadingMessageTimeout = setTimeout(IncreaseLoadingOpacity, 67);\r\n\r\n\t\tdocument.write('<link href=\"applet/loginStyles.css?v=' + combined_version + '\" rel=\"stylesheet\" />'\r\n\t\t\t+ '<script src=\"applet/loginScripts.js?v=' + combined_version + '\"><\\/script>');\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\t/* eslint no-extra-parens: 0 */\r\n\t\tvar autologin_timeout_1 = null;\r\n\t\tvar autologin_timeout_2 = null;\r\n\t\tvar existingSession = \"05de580c15d0635f5125660c0ade1188\";\r\n\t\tvar authStatus = \"unknown\";\r\n\t\tvar authExempt = \"no\";\r\n\t\tvar loginSession = \"\";\r\n\t\tvar isStoredDataLoaded = false;\r\n\t\tvar windowUnloading = false;\r\n\t\tvar cookiesEnabled;\r\n\t\tvar localStorageEnabled;\r\n\r\n\t\t/**\r\n\t\t * Changes the current URL by removing the specified query string parameter(s) from it.\r\n\t\t * @returns {String} Returns null if successful, otherwise returns the new URL if changing the history state failed.\r\n\t\t */\r\n\t\tfunction NavRemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar url = RemoveUrlParams.apply(this, arguments);\r\n\t\t\ttry { history.replaceState(history.state, \"\", url); return null; } catch (ex) { return url; }\r\n\t\t}\r\n\t\tfunction RemoveUrlParams()\r\n\t\t{\r\n\t\t\tvar s = location.search;\r\n\t\t\tfor (var i = 0; i < arguments.length; i++)\r\n\t\t\t{\r\n\t\t\t\tvar param = arguments[i];\r\n\t\t\t\tvar rx = new RegExp('(&|\\\\?)' + param + '=[^&?#%]+', 'gi');\r\n\t\t\t\ts = s.replace(rx, \"\");\r\n\t\t\t\twhile (s.indexOf(\"&\") === 0)\r\n\t\t\t\t{\r\n\t\t\t\t\tif (s.length > 1)\r\n\t\t\t\t\t\ts = s.substr(1);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ts = \"\";\r\n\t\t\t\t}\r\n\t\t\t\tif (s.length > 0 && s.indexOf(\"?\") === -1)\r\n\t\t\t\t\ts = \"?\" + s;\r\n\t\t\t}\r\n\t\t\treturn location.origin + location.pathname + s + location.hash;\r\n\t\t}\r\n\r\n\t\tNavRemoveUrlParams(\"session\");\r\n\r\n\t\t$(function ()\r\n\t\t{\r\n\t\t\tcookiesEnabled = testCookieFunctionality();\r\n\t\t\tlocalStorageEnabled = isLocalStorageEnabled();\r\n\t\t\tvar skipAutoLogin = GetPersistedValue(\"bi_override_disable_auto_login_once\") === \"1\";\r\n\t\t\tif (UrlParameters.Get(\"autologin\") === \"0\")\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = true;\r\n\t\t\t\tvar url = NavRemoveUrlParams(\"session\", \"autologin\");\r\n\t\t\t\tif (url)\r\n\t\t\t\t{\r\n\t\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"1\");\r\n\t\t\t\t\tlocation.href = url;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tSetPersistedValue(\"bi_override_disable_auto_login_once\", \"0\");\r\n\t\t\t\tconsole.log('Auto login was temporarily disabled because \"autologin=0\" URL parameter was observed (the UI3 \"Main Menu\" > \"Log Out\" button sets this parameter).');\r\n\t\t\t}\r\n\t\t\tvar lastUnload = GetPersistedValue(\"bi_lastunload\");\r\n\t\t\tif (lastUnload > Date.now())\r\n\t\t\t\tSetPersistedValue(\"bi_lastunload\", 0);\r\n\t\t\telse if (!skipAutoLogin)\r\n\t\t\t{\r\n\t\t\t\tskipAutoLogin = Date.now() - lastUnload < 5000;\r\n\t\t\t\tif (skipAutoLogin)\r\n\t\t\t\t\tconsole.log('Auto login was temporarily disabled because UI3 was determined to be running within the previous 5 seconds.');\r\n\t\t\t}\r\n\t\t\tclearTimeout(showLoadingMessageTimeout);\r\n\t\t\t$(\"#loginLoading\").hide();\r\n\t\t\t$(\"#login\").show();\r\n\t\t\tif (typeof window.JSON === 'undefined')\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Your web browser is too old to use the Blue Iris web interface properly.<br><br>To proceed with this browser, disable the \\\"Secure only\\\" requirement within Blue Iris's web server settings.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!existingSession || (existingSession.length === 11 && existingSession.startsWith(\"%\") && existingSession.endsWith(\"%\") && existingSession.indexOf(\"SESSION\") === 2))\r\n\t\t\t{\r\n\t\t\t\t$(\"#login\").html(\"<div>Session data was not provided as expected. This login page only works when served by Blue Iris 4.8.2.3 or newer.</div>\");\r\n\t\t\t\t$(\"#login\").css(\"color\", \"#EEEEEE\").css(\"margin\", \"8px\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (!localStorageEnabled)\r\n\t\t\t\t$(\"#cbLoginAutomatically\").parent().text(\"Note: Local Storage is disabled in your browser, so credentials can not be saved.\").css(\"color\", \"#EEEEEE\");\r\n\t\t\tSetStatus();\r\n\t\t\t$(window).resize(resized);\r\n\t\t\tresized();\r\n\t\t\twindow.onbeforeunload = function ()\r\n\t\t\t{\r\n\t\t\t\twindowUnloading = true;\r\n\t\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t\treturn;\r\n\t\t\t};\r\n\t\t\t// Handle automatic login\r\n\t\t\tif (GetPersistedValue(\"bi_rememberMe\") === \"1\")\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").attr('checked', 'checked');\r\n\t\t\t\t$(\"#txtUn\").val(Base64.decode(GetPersistedValue(\"bi_username\")));\r\n\t\t\t\t$(\"#txtPw\").val(Base64.decode(GetPersistedValue(\"bi_password\")));\r\n\r\n\t\t\t\tif (!skipAutoLogin)\r\n\t\t\t\t{\r\n\t\t\t\t\tif ($(\"#txtUn\").val() !== \"\" && $(\"#txtPw\").val() !== \"\")\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlogin();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t}\r\n\r\n\t\t\tvar sessionType = \"\";\r\n\r\n\t\t\t// authExempt predefined values: no, user, admin, unknown (should not happen)\r\n\t\t\tif (authExempt === \"user\")\r\n\t\t\t\tsessionType = \"anonymous user\";\r\n\t\t\telse if (authExempt === \"admin\")\r\n\t\t\t\tsessionType = \"anonymous admin\";\r\n\r\n\t\t\t// authStatus predefined values: unknown, admin, anonymous, user\r\n\t\t\tif (authStatus === \"admin\")\r\n\t\t\t\tsessionType = \"existing admin\";\r\n\t\t\telse if (authStatus === \"user\")\r\n\t\t\t\tsessionType = \"existing user\";\r\n\t\t\telse if (authStatus === \"anonymous\")\r\n\t\t\t\tsessionType = \"existing anonymous user\";\r\n\r\n\t\t\tif (sessionType)\r\n\t\t\t\tSetStatus(\"An \" + sessionType + ' session is available. <a href=\"javascript:UseAltSession(\\'' + sessionType + '\\')\">Click here to use it.</a>');\r\n\r\n\t\t\t// Set focus on first empty field\r\n\t\t\tif (!$(\"#txtUn\").val())\r\n\t\t\t\t$(\"#txtUn\").get(0).focus();\r\n\t\t\telse if (!$(\"#txtPw\").val())\r\n\t\t\t\t$(\"#txtPw\").get(0).focus();\r\n\t\t\telse\r\n\t\t\t\t$(\"#btnLogin\").get(0).focus();\r\n\r\n\t\t\tisStoredDataLoaded = true;\r\n\t\t});\r\n\t\tfunction login()\r\n\t\t{\r\n\t\t\tcbLoginAutomaticallyClicked();\r\n\t\t\t$(\"#btnLogin\").val(\"Logging in ...\");\r\n\t\t\tSetStatus();\r\n\t\t\tif (authStatus === \"unknown\")\r\n\t\t\t\tloginSession = existingSession;\r\n\r\n\t\t\tif (!loginSession)\r\n\t\t\t\tauthenticateNewSession();\r\n\t\t\telse\r\n\t\t\t\tauthenticateSession(loginSession);\r\n\t\t}\r\n\t\tfunction authenticateNewSession(user, pass)\r\n\t\t{\r\n\t\t\tExecJSON({ cmd: \"login\" }, function (response)\r\n\t\t\t{\r\n\t\t\t\tloginSession = response.session;\r\n\t\t\t\tauthenticateSession(loginSession, true);\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction authenticateSession(session, isNewSession)\r\n\t\t{\r\n\t\t\tvar myResponse = md5($(\"#txtUn\").val() + \":\" + session + \":\" + $(\"#txtPw\").val());\r\n\t\t\tExecJSON({ cmd: \"login\", session: session, response: myResponse }, function (response)\r\n\t\t\t{\r\n\t\t\t\tif (response.result === \"success\")\r\n\t\t\t\t{\r\n\t\t\t\t\t$(\"#btnLogin\").attr(\"disabled\", \"disabled\").val(\"Redirecting...\");\r\n\t\t\t\t\texistingSession = response.session;\r\n\t\t\t\t\tLeaveLoginPage();\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tvar isExpired;\r\n\t\t\t\t\tif (compareVersions(bi_version, \"5.8.1.1\") >= 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tisExpired = response.result === \"fail\"\r\n\t\t\t\t\t\t\t&& response.data\r\n\t\t\t\t\t\t\t&& typeof response.data.reason === \"string\"\r\n\t\t\t\t\t\t\t&& response.data.reason.toUpperCase() === \"INVALID SESSION\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// BI prior to 5.8.1.1 did not return a data.reason string in the case of invalid session.\r\n\t\t\t\t\t\tisExpired = response.result === \"fail\" && (!response.data || !response.data.reason);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (isExpired && !isNewSession)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// This happens when the session we were trying to authenticate has expired.\r\n\t\t\t\t\t\tauthenticateNewSession();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$(\"#cbLoginAutomatically\").removeAttr('checked');\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_rememberMe\", \"0\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_username\", \"\");\r\n\t\t\t\t\t\tSetPersistedValue(\"bi_password\", \"\");\r\n\t\t\t\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t\t\t\t\tHandleError(response.data && response.data.reason ? response.data.reason : \"Login failed but Blue Iris did not provide a reason.\");\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}, loginFail);\r\n\t\t}\r\n\t\tfunction loginFail(jqXHR, textStatus, errorThrown)\r\n\t\t{\r\n\t\t\tHandleError(\"Unable to contact Blue Iris server\");\r\n\t\t\t$(\"#btnLogin\").val(\"Log in\");\r\n\t\t}\r\n\t\tfunction UseAltSession(sessionType)\r\n\t\t{\r\n\t\t\tif (!sessionType)\r\n\t\t\t\talert(\"Error. Please reload.\");\r\n\t\t\telse if (sessionType.indexOf(\"existing\") > -1)\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\texistingSession = \"\";\r\n\t\t\t\tLeaveLoginPage();\r\n\t\t\t}\r\n\t\t}\r\n\t\tfunction LeaveLoginPage()\r\n\t\t{\r\n\t\t\tvar page = UrlParameters.Get(\"page\");\r\n\t\t\tif (page.match(/timeout\\.htm/i))\r\n\t\t\t\tpage = page.replace(/timeout\\.htm.*/i, 'ui3.htm');\r\n\t\t\tif (page.indexOf(appPath) !== 0)\r\n\t\t\t\tpage = appPath + page.replace(/^\\/+/g, '');\r\n\t\t\tpage = page.replace(/[&?]session=[^&?#%]+/gi, '');\r\n\t\t\tif (existingSession)\r\n\t\t\t{\r\n\t\t\t\tpage += (page.indexOf(\"?\") < 0 ? \"?\" : \"&\") + \"session=\" + existingSession;\r\n\t\t\t\tif (cookiesEnabled)\r\n\t\t\t\t\t$.cookie(\"session\", existingSession, { path: \"/\" });\r\n\t\t\t}\r\n\t\t\tlocation.href = page + location.hash;\r\n\t\t}\r\n\t\tfunction cancelAutoLogin()\r\n\t\t{\r\n\t\t\tif (autologin_timeout_1 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_1);\r\n\t\t\t\tautologin_timeout_1 = null;\r\n\t\t\t}\r\n\t\t\tif (autologin_timeout_2 !== null)\r\n\t\t\t{\r\n\t\t\t\tclearTimeout(autologin_timeout_2);\r\n\t\t\t\tautologin_timeout_2 = null;\r\n\t\t\t}\r\n\t\t\t$(\"#btnLogin\").val(windowUnloading ? \"Redirecting...\" : \"Log in\");\r\n\t\t}\r\n\t\tfunction cbLoginAutomaticallyClicked()\r\n\t\t{\r\n\t\t\tcancelAutoLogin();\r\n\t\t\tif (!isStoredDataLoaded)\r\n\t\t\t\treturn;\r\n\t\t\tvar isChecked = $(\"#cbLoginAutomatically\").is(\":checked\");\r\n\t\t\tSetPersistedValue(\"bi_rememberMe\", isChecked ? \"1\" : \"0\");\r\n\t\t\tSetPersistedValue(\"bi_username\", isChecked ? Base64.encode($(\"#txtUn\").val()) : \"\");\r\n\t\t\tSetPersistedValue(\"bi_password\", isChecked ? Base64.encode($(\"#txtPw\").val()) : \"\");\r\n\t\t}\r\n\t\tfunction GetPersistedValue(key)\r\n\t\t{\r\n\t\t\tvar value;\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\tvalue = localStorage.getItem(key);\r\n\t\t\tif (!value)\r\n\t\t\t\tvalue = \"\";\r\n\t\t\treturn value;\r\n\t\t}\r\n\t\tfunction SetPersistedValue(key, value)\r\n\t\t{\r\n\t\t\tif (localStorageEnabled)\r\n\t\t\t\treturn localStorage.setItem(key, value);\r\n\t\t}\r\n\t\tfunction pwKeypress(ele, e)\r\n\t\t{\r\n\t\t\tvar keycode;\r\n\t\t\tif (window.event) keycode = window.event.keyCode;\r\n\t\t\telse if (typeof e !== \"undefined\" && e) keycode = e.which;\r\n\t\t\telse return true;\r\n\r\n\t\t\tif (keycode === 13)\r\n\t\t\t{\r\n\t\t\t\tlogin();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t\treturn true;\r\n\t\t}\r\n\t\tfunction resized()\r\n\t\t{\r\n\t\t\tif ($(\"#status\").is(\":visible\"))\r\n\t\t\t{\r\n\t\t\t\t$(\"#status\").hide();\r\n\t\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\t\t$(\"#status\").show();\r\n\t\t\t}\r\n\t\t\t$('#login').css({ position: 'absolute', left: ($(window).width() - $('#login').outerWidth()) / 2, top: ($(window).height() - $('#login').outerHeight()) / 2 });\r\n\t\t\t$(\"#status\").css(\"max-width\", $(\"#login\").width() + \"px\");\r\n\t\t\tvar heightTotal = 0;\r\n\t\t\t$(\"#login\").children().each(function (idx, ele)\r\n\t\t\t{\r\n\t\t\t\theightTotal += $(ele).outerHeight(true);\r",
         "datamd5" : "3d3647981e671a1bfcf82d11e847bac9",
         "datammh3" : 1461457117,
         "device" : {
            "class" : "<enterprise field>: device.class"
         },
         "forward" : "32.140.123.214",
         "geolocus" : {
            "asn" : "AS7018",
            "continent" : "NA",
            "continentname" : "North America",
            "country" : "US",
            "countryname" : "United States",
            "domain" : [
               "att.com",
               "att.net"
            ],
            "isineu" : "false",
            "latitude" : "37.09024",
            "location" : "37.09024,-95.712891",
            "longitude" : "-95.712891",
            "netname" : "ATTWORLD-32-140-0-0-16",
            "organization" : "AT&T Global Network Services, LLC",
            "subnet" : "32.140.0.0/15"
         },
         "hostname" : [
            "32.140.123.214"
         ],
         "ip" : "32.140.123.214",
         "ipv6" : "false",
         "latitude" : "30.9029",
         "location" : "30.9029,-84.5698",
         "longitude" : "-84.5698",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "ATT-INTERNET4",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.0",
         "reason" : "OK",
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subnet" : "32.128.0.0/12",
         "tag" : "<enterprise field>: tag",
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/login.htm?page=%2F"
      }
      
  • 145.131.75.161:81 (tcp/http) - last seen on 2024-11-07 at 05:20:31 UTC

    • IP
      145.131.75.161
      Network
      145.131.64.0/18
      Device

      <enterprise field>: device.class <enterprise field>: device.productvendor <enterprise field>: device.product

      Operating System
      Linux Linux sUse
      URL

      http://145.131.75.161:81/weblogin.htm 200

      HTTP Title
      Vigor Login Page
      ASN
      AS28685
      Organization
      Routit BV
      Protocol
      http
      Source
      urlscan::redirect
    • Operating System
      Linux Linux sUse
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      a115722b3ed6177f002821dd84a061c1
      HTTP Header MD5
      d67f2c30548c2e0ae7de6628982a86f8
      HTTP Body MD5
      5a09730ac1dc7a38efa9ac317c22459b
    • HTTP/1.0 200 OK
      Pragma: no-cache
      Content-type: text/html
      Expires: 0
      X-Frame-Options: SAMEORIGIN
      Content-length: 13059
      Connection: close
      
      <html><head><title>Vigor Login Page</title><meta content="text/html; charset=iso-8859-1" http-equiv=Content-Type><script> function TR(str){return str;}</script><style>
      td.userpwd {
      color: #000000;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 14px;
      font-weight: bold;
      }
      td.errmsg {
      color : red;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 12px;
      }
      td.errmsg1 {
      color : red;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 12px;
      }
      td.copyright {
      color: #888;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      font-size: 10px;
      font-weight: normal;
      -webkit-text-size-adjust:none
      }
      input.userpwd {
      width: 180px;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      }
      input.login {
      color: #000;
      width: 68px;
      height: 25px;
      padding: 0 .38em .22em .38em;
      background: #004488 url(images/login1.jpg) scroll 0;
      border: 0px #004488 solid;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      font-style: normal;
      font-weight: bold;
      font-size: 14px;
      cursor: pointer;
      }
      </style></head><body style=background:#f1f1f1><form name=frm1 onsubmit="return false;"><div height=100% marginheight=0 marginwidth=0 style=z-index:-10 width=100%><iframe style="z-index:-1;position:absolute;left:0;top:0" name="content_frame" id="content_frame" width=100% height=100% frameborder=0></iframe></div><table border=0 height=90% width=100%><tr><td><script>var str="";if(6==9) str+='<table background="images/login_ori.png" align=center width=524px height=352px border=0>';else str+='<table background="images/login.png" align=center width=524px height=352px border=0>';if('(nil)'=='2'){str='<table align=center width=524px border=0 cellspacing="0" cellpadding=0>';str+='<tr><td colspan=2><img src="/get_logo.cgi" width="524px"></td></tr>';str+='<tr><td colspan=2 style="border:2px solid #aaaaaa;">';str+='<table width=80% align=center cellspacing="0" cellpadding=2 border=0 style="margin-top:30px">';}else{if('(nil)'=='1')str='<table align=center width=524px height=352px border=0>';str+='<tr><td colspan=2>';str+='<table width=80% align=center cellspacing="0" cellpadding=2 border=0 style="margin-top:75px">';}document.write(str);</script><tr align=center class=CustomLogin style=display:none><td colspan=2><h3>Router Login</h3></td></tr><tr height=40><td class=userpwd width=40%><span style="margin-left:60px">Username</span></td><td width=60%><input autocapitalize=off autocomplete=off class=userpwd maxlength=24 name=sUserName type=text></td></tr><tr><td class=userpwd><span style="margin-left:60px">Password</span></td><td><input autocomplete=off class=userpwd maxlength=24 name=sSysPass type=password></td></tr><tr class=sValidatedCode style=display:none><td class=userpwd>Validation Code</td><td><input id=validated_code style="width: 80px" type=text>&nbsp; <img align=bottom alt=ValidatedCode height=24px id=sVerification onclick=changecode() style=cursor:pointer; width=96px></td></tr><script>var enSSlgrp='/*';var enAdminAuth='-->';var admin_local_en=0;var admin_ldap_en=0;var sslgrp_used=false;var add_group_selector=false;var ssl_group=["(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)"];var ssl_group_en=["(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)","(nil)"];if(enSSlgrp==""){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!="")sslgrp_used=true;}}add_group_selector=(enSSlgrp==""&&sslgrp_used)||(enAdminAuth==""&&(admin_local_en||admin_ldap_en));if(add_group_selector){var str="";str+="<tr><td class=userpwd><span style='margin-left:60px'>"+TR("Group")+"</span></td>";str+="<td><select name=sltsslgrp>";str+="<option value=-1>---</option>";if(enAdminAuth==""){if(admin_local_en==1||admin_ldap_en==1){str+="<option value=admin>"+TR("admin")+"</option>";}}if(enSSlgrp==""){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!="")str+="<option value="+i+">"+ssl_group[i]+"</option>";}}str+="</select></td></tr>";document.write(str);}else{document.write("<input type=hidden name=sltsslgrp value=-1>");}</script><tr><td class=errmsg colspan=2 height=15><span id=errmsg></span></td></tr><tr><td class=errmsg1 colspan=2 height=15><span id=errmsg1></span></td></tr><tr><td align=right colspan=2 height=35 valign=top><span style="margin-right:63px"><input class=login name=btnOk type=button value=Login></span></td></tr></table></td></tr><tr><td height=70 width=150></td><td class=copyright>Copyright &copy; <script>var buildtime="Apr 11 2016 04:35:43";var build_ary=buildtime.split(" ");for(var i=0;i<build_ary.length;i++){if(build_ary[i].length==4){document.write(build_ary[i]);break;}}</script> DrayTek Corp. All Rights Reserved.</td></tr></table><table align=center border=0 class=CustomLogin style=display:none><tr><td><h1><b><font color=red>Welcome Message</font></b></h1><p>This welcome message is displayed in the Login page of the router. Replace this text with your own message. </p><ol><li>The welcome message can be written in HTML so lists such as this one can be created </li><li>Other markup tags such as p, font or img can be used</li></ol></td></tr></table></td></tr></table></form><form name=frmSub><script>var sUser_mgt_End='-->';var sValidatedCode='';var sValidatedCodeNum;var form_num=2; if(sUser_mgt_End=="")form_num+=5; if(enSSlgrp==""||enAdminAuth=="")form_num+=1;if(sValidatedCode!="")form_num+=2;for(i=0;i<form_num+1;i++){document.write("<input type=hidden name=obj"+i+">");}</script></form></body></html><script>var isNav=(navigator.appName.indexOf("Netscape")!=-1);var isIE=(navigator.appName.indexOf("Microsoft")!=-1);var isOpr=(navigator.appName.indexOf("Opera")!=-1);var f=document.frm1;var iFrmLgErr=0;var iCustomLoginFlag='0';var CUST_LOGIN_ENABLE=(1<<3);var src_ip;var target_url;var mode;var fw_set;var fw_rule;initParameter();initPage();if(opener&&typeof(window.opener.document)!='unknown'&&typeof(window.opener.document)!='undefined'){if(opener.loginset_preview==1)opener.loginset_preview=0;}else ClearCookies();function Browser(){var u=navigator.userAgent;if(u.indexOf('Trident')>-1){ return"Trident";}else if(u.indexOf('AppleWebKit')>-1&&u.indexOf('Safari')>-1&&u.indexOf('Chrome')==-1){return"Safari";}else{return"";}}function VerCheck(){switch(Browser()){case"Trident":var _IE=(function(){var v=3,div=document.createElement('div'),all=div.getElementsByTagName('i');while(div.innerHTML='<!--[if gt IE '+(++v)+']><i></i><![endif]-->',all[0]);return v>4?v:false;}());if(_IE==6||_IE==7||_IE==8)return-1;else return 0;break;case"Safari":return-1;break;default:return 0;}}function changecode(){var verify=document.getElementById('sVerification');sValidatedCodeNum=Math.random()*1000000;verify.setAttribute('src','/image/verification.bmp?'+sValidatedCodeNum);}function showElmtByClass(_doc,_tag,_el){var doc=_doc;var tag=_tag;var el=_el;if(doc.getElementsByTagName){var nodes=doc.getElementsByTagName(tag);var max=nodes.length;for(var i=0;i<max;i++){var node=nodes.item(i);if(node.className==el){node.style.display="";}}}}function initPage(){if(sValidatedCode!=""){if(VerCheck()==0)changecode();else{sValidatedCode="";iFrmLgErr=6;}}if((iCustomLoginFlag&CUST_LOGIN_ENABLE)==CUST_LOGIN_ENABLE){if('(nil)'=='0')showElmtByClass(document,"tr","CustomLogin");showElmtByClass(document,"table","CustomLogin");} if(self!=top)top.location="weblogin.htm";f.sUserName.focus();if(sUser_mgt_End==""){if(mode){switch(mode){case 3: if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}else if(iFrmLgErr==6){errmsg.innerHTML=TR("1. IOS doesn't support Draytek login captcha.");errmsg1.innerHTML=TR("2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.");}else{errmsg.innerHTML=TR("The username or password you entered is incorrect.");}break;case 4: errmsg.innerHTML=TR("Reach the maximum login number. Try another user account.");break;case 5: errmsg.innerHTML=TR("No available buffer now. Please contact with your administrator");break;case 6: errmsg.innerHTML=TR("The username or password you entered is incorrect.");break;case 7:errmsg.innerHTML=TR("User account is not enabled now.");break;case 8:errmsg.innerHTML=TR("You aren't allowed to access internet (out of schedule).");break;case 9:errmsg.innerHTML=TR("User login denied from http protocol. Please contact with your administrator");break;case 10:errmsg.innerHTML=TR("The user ran out of time quota.");break;case 11:errmsg.innerHTML=TR("The user ran out of data quota.");break;case 12:errmsg.innerHTML=TR("Wrong user account. Please contact with your administrator.");break;default:if(iFrmLgErr==2)errmsg.innerHTML=TR("The username or password you entered is incorrect.");break;}}else if(iFrmLgErr==2){errmsg.innerHTML=TR("The username or password you entered is incorrect.");}else if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}else if(iFrmLgErr==6){errmsg.innerHTML=TR("1. IOS doesn't support Draytek login captcha.");errmsg1.innerHTML=TR("2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.");}}else if(iFrmLgErr==2){errmsg.innerHTML=TR("The username or password you entered is incorrect.");}else if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}else if(iFrmLgErr==6){errmsg.innerHTML=TR("1. IOS doesn't support Draytek login captcha.");errmsg1.innerHTML=TR("2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.");}if(sValidatedCode!=""){showElmtByClass(document,"tr","sValidatedCode");} for(var d=0;d<document.forms.length;d++){ for(var e=0;e<document.forms[d].elements.length;e++){addhandlers(document.forms[d].elements[e]);}}}function initParameter(){if(sUser_mgt_End==""){src_ip='(nil)';target_url='(nil)';mode=(nil);fw_set=(nil);fw_rule=(nil);}}function encode(instr){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var outstr="";var chr1,chr2,chr3="";var enc1,enc2,enc3,enc4="";var i=0;do{chr1=instr.charCodeAt(i++);chr2=instr.charCodeAt(i++);chr3=instr.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}outstr=outstr+keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4);chr1=chr2=chr3="";enc1=enc2=enc3=enc4="";}while(i<instr.length);return outstr;}function submitPara(){var frmSub=document.frmSub;var fwElmIdx=2;frmSub.method="post";frmSub.action="cgi-bin/wlogin.cgi";frmSub[0].name="aa";frmSub[0].value=encode(f.sUserName.value);frmSub[1].name="ab";frmSub[1].value=encode(f.sSysPass.value); if(sUser_mgt_End==""&&mode!=0){frmSub[2].name="src_ip";frmSub[2].value=src_ip;frmSub[3].name="target_url";frmSub[3].value=target_url;frmSub[4].name="mode";frmSub[4].value=mode;frmSub[5].name="fw_set";frmSub[5].value=fw_set;frmSub[6].name="fw_rule";frmSub[6].value=fw_rule;fwElmIdx=7;}if(enSSlgrp==""||enAdminAuth==""){frmSub[fwElmIdx].name="sslgroup";frmSub[fwElmIdx].value=f.sltsslgrp.value;}if(sValidatedCode!=""){fwElmIdx++;frmSub[fwElmIdx].name="sVerifCode";frmSub[fwElmIdx].value=document.getElementById("validated_code").value;fwElmIdx++;frmSub[fwElmIdx].name="sValidatedCodeNum";frmSub[fwElmIdx].value=sValidatedCodeNum;}frmSub[form_num].name="sFormAuthStr";frmSub[form_num].value=randomString(15);if(iFrmLgErr==6)alert(TR("Warning:\n1. iOS doesn't support Draytek login captcha.\n2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version."));else frmSub.submit();}function randomString(len){var chars='ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';var maxPos=chars.length;var pwd='';for(i=0;i<len;i++){pwd+=chars.charAt(Math.floor(Math.random()*maxPos));}return pwd;}function handler(_e){var e=_e,elmt,type;if(isNav){elmt=e.target;type=e.type;keycode=e.which;}if(isIE||isOpr){e=window.event;elmt=e.srcElement;type=e.type;keycode=e.keyCode;} if(isIE){if(elmt.type=="text")e.cancelBubble=false;else e.cancelBubble=true;}if(elmt==f.btnOk&&type=="click"){submitPara();}if(elmt!=f.btnOk&&type=="keydown"){if(keycode==13){ e.returnValue=false;submitPara();}}} function addhandlers(_o){var o=_o;o.onclick=handler;o.onkeydown=handler;}function ClearCookies(){var temp=document.cookie.split(";");var ts;for(var i=0;;i++){if(!temp[i])break;ts=temp[i].split("=")[0];DeleteCookie(ts);}}function GetCookieVal(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1)endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}function GetCookie(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)return GetCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0)break;}return null;}function DeleteCookie(name){var exp=new Date();exp.setTime(exp.getTime()-1);var cval=GetCookie(name);document.cookie=name+"="+cval+"; expires="+exp.toGMTString();}</script>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:20:31.000Z",
         "app" : {
            "extract" : {
               "file" : [
                  "wlogin.cgi",
                  "get_logo.cgi"
               ]
            },
            "http" : {
               "bodymd5" : "5a09730ac1dc7a38efa9ac317c22459b",
               "bodymmh3" : 1212773819,
               "headermd5" : "d67f2c30548c2e0ae7de6628982a86f8",
               "headermmh3" : 1535703452,
               "title" : "Vigor Login Page"
            },
            "length" : 13204
         },
         "asn" : "AS28685",
         "city" : "Bilthoven",
         "country" : "NL",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.0 200 OK\r\nPragma: no-cache\r\nContent-type: text/html\r\nExpires: 0\r\nX-Frame-Options: SAMEORIGIN\r\nContent-length: 13059\r\nConnection: close\r\n\r\n<html><head><title>Vigor Login Page</title><meta content=\"text/html; charset=iso-8859-1\" http-equiv=Content-Type><script> function TR(str){return str;}</script><style>\r\ntd.userpwd {\r\ncolor: #000000;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 14px;\r\nfont-weight: bold;\r\n}\r\ntd.errmsg {\r\ncolor : red;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 12px;\r\n}\r\ntd.errmsg1 {\r\ncolor : red;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 12px;\r\n}\r\ntd.copyright {\r\ncolor: #888;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\nfont-size: 10px;\r\nfont-weight: normal;\r\n-webkit-text-size-adjust:none\r\n}\r\ninput.userpwd {\r\nwidth: 180px;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\n}\r\ninput.login {\r\ncolor: #000;\r\nwidth: 68px;\r\nheight: 25px;\r\npadding: 0 .38em .22em .38em;\r\nbackground: #004488 url(images/login1.jpg) scroll 0;\r\nborder: 0px #004488 solid;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\nfont-style: normal;\r\nfont-weight: bold;\r\nfont-size: 14px;\r\ncursor: pointer;\r\n}\r\n</style></head><body style=background:#f1f1f1><form name=frm1 onsubmit=\"return false;\"><div height=100% marginheight=0 marginwidth=0 style=z-index:-10 width=100%><iframe style=\"z-index:-1;position:absolute;left:0;top:0\" name=\"content_frame\" id=\"content_frame\" width=100% height=100% frameborder=0></iframe></div><table border=0 height=90% width=100%><tr><td><script>var str=\"\";if(6==9) str+='<table background=\"images/login_ori.png\" align=center width=524px height=352px border=0>';else str+='<table background=\"images/login.png\" align=center width=524px height=352px border=0>';if('(nil)'=='2'){str='<table align=center width=524px border=0 cellspacing=\"0\" cellpadding=0>';str+='<tr><td colspan=2><img src=\"/get_logo.cgi\" width=\"524px\"></td></tr>';str+='<tr><td colspan=2 style=\"border:2px solid #aaaaaa;\">';str+='<table width=80% align=center cellspacing=\"0\" cellpadding=2 border=0 style=\"margin-top:30px\">';}else{if('(nil)'=='1')str='<table align=center width=524px height=352px border=0>';str+='<tr><td colspan=2>';str+='<table width=80% align=center cellspacing=\"0\" cellpadding=2 border=0 style=\"margin-top:75px\">';}document.write(str);</script><tr align=center class=CustomLogin style=display:none><td colspan=2><h3>Router Login</h3></td></tr><tr height=40><td class=userpwd width=40%><span style=\"margin-left:60px\">Username</span></td><td width=60%><input autocapitalize=off autocomplete=off class=userpwd maxlength=24 name=sUserName type=text></td></tr><tr><td class=userpwd><span style=\"margin-left:60px\">Password</span></td><td><input autocomplete=off class=userpwd maxlength=24 name=sSysPass type=password></td></tr><tr class=sValidatedCode style=display:none><td class=userpwd>Validation Code</td><td><input id=validated_code style=\"width: 80px\" type=text>&nbsp; <img align=bottom alt=ValidatedCode height=24px id=sVerification onclick=changecode() style=cursor:pointer; width=96px></td></tr><script>var enSSlgrp='/*';var enAdminAuth='-->';var admin_local_en=0;var admin_ldap_en=0;var sslgrp_used=false;var add_group_selector=false;var ssl_group=[\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\"];var ssl_group_en=[\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\",\"(nil)\"];if(enSSlgrp==\"\"){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!=\"\")sslgrp_used=true;}}add_group_selector=(enSSlgrp==\"\"&&sslgrp_used)||(enAdminAuth==\"\"&&(admin_local_en||admin_ldap_en));if(add_group_selector){var str=\"\";str+=\"<tr><td class=userpwd><span style='margin-left:60px'>\"+TR(\"Group\")+\"</span></td>\";str+=\"<td><select name=sltsslgrp>\";str+=\"<option value=-1>---</option>\";if(enAdminAuth==\"\"){if(admin_local_en==1||admin_ldap_en==1){str+=\"<option value=admin>\"+TR(\"admin\")+\"</option>\";}}if(enSSlgrp==\"\"){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!=\"\")str+=\"<option value=\"+i+\">\"+ssl_group[i]+\"</option>\";}}str+=\"</select></td></tr>\";document.write(str);}else{document.write(\"<input type=hidden name=sltsslgrp value=-1>\");}</script><tr><td class=errmsg colspan=2 height=15><span id=errmsg></span></td></tr><tr><td class=errmsg1 colspan=2 height=15><span id=errmsg1></span></td></tr><tr><td align=right colspan=2 height=35 valign=top><span style=\"margin-right:63px\"><input class=login name=btnOk type=button value=Login></span></td></tr></table></td></tr><tr><td height=70 width=150></td><td class=copyright>Copyright &copy; <script>var buildtime=\"Apr 11 2016 04:35:43\";var build_ary=buildtime.split(\" \");for(var i=0;i<build_ary.length;i++){if(build_ary[i].length==4){document.write(build_ary[i]);break;}}</script> DrayTek Corp. All Rights Reserved.</td></tr></table><table align=center border=0 class=CustomLogin style=display:none><tr><td><h1><b><font color=red>Welcome Message</font></b></h1><p>This welcome message is displayed in the Login page of the router. Replace this text with your own message. </p><ol><li>The welcome message can be written in HTML so lists such as this one can be created </li><li>Other markup tags such as p, font or img can be used</li></ol></td></tr></table></td></tr></table></form><form name=frmSub><script>var sUser_mgt_End='-->';var sValidatedCode='';var sValidatedCodeNum;var form_num=2; if(sUser_mgt_End==\"\")form_num+=5; if(enSSlgrp==\"\"||enAdminAuth==\"\")form_num+=1;if(sValidatedCode!=\"\")form_num+=2;for(i=0;i<form_num+1;i++){document.write(\"<input type=hidden name=obj\"+i+\">\");}</script></form></body></html><script>var isNav=(navigator.appName.indexOf(\"Netscape\")!=-1);var isIE=(navigator.appName.indexOf(\"Microsoft\")!=-1);var isOpr=(navigator.appName.indexOf(\"Opera\")!=-1);var f=document.frm1;var iFrmLgErr=0;var iCustomLoginFlag='0';var CUST_LOGIN_ENABLE=(1<<3);var src_ip;var target_url;var mode;var fw_set;var fw_rule;initParameter();initPage();if(opener&&typeof(window.opener.document)!='unknown'&&typeof(window.opener.document)!='undefined'){if(opener.loginset_preview==1)opener.loginset_preview=0;}else ClearCookies();function Browser(){var u=navigator.userAgent;if(u.indexOf('Trident')>-1){ return\"Trident\";}else if(u.indexOf('AppleWebKit')>-1&&u.indexOf('Safari')>-1&&u.indexOf('Chrome')==-1){return\"Safari\";}else{return\"\";}}function VerCheck(){switch(Browser()){case\"Trident\":var _IE=(function(){var v=3,div=document.createElement('div'),all=div.getElementsByTagName('i');while(div.innerHTML='<!--[if gt IE '+(++v)+']><i></i><![endif]-->',all[0]);return v>4?v:false;}());if(_IE==6||_IE==7||_IE==8)return-1;else return 0;break;case\"Safari\":return-1;break;default:return 0;}}function changecode(){var verify=document.getElementById('sVerification');sValidatedCodeNum=Math.random()*1000000;verify.setAttribute('src','/image/verification.bmp?'+sValidatedCodeNum);}function showElmtByClass(_doc,_tag,_el){var doc=_doc;var tag=_tag;var el=_el;if(doc.getElementsByTagName){var nodes=doc.getElementsByTagName(tag);var max=nodes.length;for(var i=0;i<max;i++){var node=nodes.item(i);if(node.className==el){node.style.display=\"\";}}}}function initPage(){if(sValidatedCode!=\"\"){if(VerCheck()==0)changecode();else{sValidatedCode=\"\";iFrmLgErr=6;}}if((iCustomLoginFlag&CUST_LOGIN_ENABLE)==CUST_LOGIN_ENABLE){if('(nil)'=='0')showElmtByClass(document,\"tr\",\"CustomLogin\");showElmtByClass(document,\"table\",\"CustomLogin\");} if(self!=top)top.location=\"weblogin.htm\";f.sUserName.focus();if(sUser_mgt_End==\"\"){if(mode){switch(mode){case 3: if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}else if(iFrmLgErr==6){errmsg.innerHTML=TR(\"1. IOS doesn't support Draytek login captcha.\");errmsg1.innerHTML=TR(\"2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.\");}else{errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}break;case 4: errmsg.innerHTML=TR(\"Reach the maximum login number. Try another user account.\");break;case 5: errmsg.innerHTML=TR(\"No available buffer now. Please contact with your administrator\");break;case 6: errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");break;case 7:errmsg.innerHTML=TR(\"User account is not enabled now.\");break;case 8:errmsg.innerHTML=TR(\"You aren't allowed to access internet (out of schedule).\");break;case 9:errmsg.innerHTML=TR(\"User login denied from http protocol. Please contact with your administrator\");break;case 10:errmsg.innerHTML=TR(\"The user ran out of time quota.\");break;case 11:errmsg.innerHTML=TR(\"The user ran out of data quota.\");break;case 12:errmsg.innerHTML=TR(\"Wrong user account. Please contact with your administrator.\");break;default:if(iFrmLgErr==2)errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");break;}}else if(iFrmLgErr==2){errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}else if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}else if(iFrmLgErr==6){errmsg.innerHTML=TR(\"1. IOS doesn't support Draytek login captcha.\");errmsg1.innerHTML=TR(\"2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.\");}}else if(iFrmLgErr==2){errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}else if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}else if(iFrmLgErr==6){errmsg.innerHTML=TR(\"1. IOS doesn't support Draytek login captcha.\");errmsg1.innerHTML=TR(\"2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.\");}if(sValidatedCode!=\"\"){showElmtByClass(document,\"tr\",\"sValidatedCode\");} for(var d=0;d<document.forms.length;d++){ for(var e=0;e<document.forms[d].elements.length;e++){addhandlers(document.forms[d].elements[e]);}}}function initParameter(){if(sUser_mgt_End==\"\"){src_ip='(nil)';target_url='(nil)';mode=(nil);fw_set=(nil);fw_rule=(nil);}}function encode(instr){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var outstr=\"\";var chr1,chr2,chr3=\"\";var enc1,enc2,enc3,enc4=\"\";var i=0;do{chr1=instr.charCodeAt(i++);chr2=instr.charCodeAt(i++);chr3=instr.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}outstr=outstr+keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4);chr1=chr2=chr3=\"\";enc1=enc2=enc3=enc4=\"\";}while(i<instr.length);return outstr;}function submitPara(){var frmSub=document.frmSub;var fwElmIdx=2;frmSub.method=\"post\";frmSub.action=\"cgi-bin/wlogin.cgi\";frmSub[0].name=\"aa\";frmSub[0].value=encode(f.sUserName.value);frmSub[1].name=\"ab\";frmSub[1].value=encode(f.sSysPass.value); if(sUser_mgt_End==\"\"&&mode!=0){frmSub[2].name=\"src_ip\";frmSub[2].value=src_ip;frmSub[3].name=\"target_url\";frmSub[3].value=target_url;frmSub[4].name=\"mode\";frmSub[4].value=mode;frmSub[5].name=\"fw_set\";frmSub[5].value=fw_set;frmSub[6].name=\"fw_rule\";frmSub[6].value=fw_rule;fwElmIdx=7;}if(enSSlgrp==\"\"||enAdminAuth==\"\"){frmSub[fwElmIdx].name=\"sslgroup\";frmSub[fwElmIdx].value=f.sltsslgrp.value;}if(sValidatedCode!=\"\"){fwElmIdx++;frmSub[fwElmIdx].name=\"sVerifCode\";frmSub[fwElmIdx].value=document.getElementById(\"validated_code\").value;fwElmIdx++;frmSub[fwElmIdx].name=\"sValidatedCodeNum\";frmSub[fwElmIdx].value=sValidatedCodeNum;}frmSub[form_num].name=\"sFormAuthStr\";frmSub[form_num].value=randomString(15);if(iFrmLgErr==6)alert(TR(\"Warning:\\n1. iOS doesn't support Draytek login captcha.\\n2. If you are using PC or MAC, please use Chrome/Firefox/IE9 and above version.\"));else frmSub.submit();}function randomString(len){var chars='ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';var maxPos=chars.length;var pwd='';for(i=0;i<len;i++){pwd+=chars.charAt(Math.floor(Math.random()*maxPos));}return pwd;}function handler(_e){var e=_e,elmt,type;if(isNav){elmt=e.target;type=e.type;keycode=e.which;}if(isIE||isOpr){e=window.event;elmt=e.srcElement;type=e.type;keycode=e.keyCode;} if(isIE){if(elmt.type==\"text\")e.cancelBubble=false;else e.cancelBubble=true;}if(elmt==f.btnOk&&type==\"click\"){submitPara();}if(elmt!=f.btnOk&&type==\"keydown\"){if(keycode==13){ e.returnValue=false;submitPara();}}} function addhandlers(_o){var o=_o;o.onclick=handler;o.onkeydown=handler;}function ClearCookies(){var temp=document.cookie.split(\";\");var ts;for(var i=0;;i++){if(!temp[i])break;ts=temp[i].split(\"=\")[0];DeleteCookie(ts);}}function GetCookieVal(offset){var endstr=document.cookie.indexOf(\";\",offset);if(endstr==-1)endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}function GetCookie(name){var arg=name+\"=\";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)return GetCookieVal(j);i=document.cookie.indexOf(\" \",i)+1;if(i==0)break;}return null;}function DeleteCookie(name){var exp=new Date();exp.setTime(exp.getTime()-1);var cval=GetCookie(name);document.cookie=name+\"=\"+cval+\"; expires=\"+exp.toGMTString();}</script>",
         "datamd5" : "a115722b3ed6177f002821dd84a061c1",
         "datammh3" : 2034923207,
         "device" : {
            "class" : "<enterprise field>: device.class",
            "product" : "<enterprise field>: device.product",
            "productvendor" : "<enterprise field>: device.productvendor"
         },
         "forward" : "145.131.75.161",
         "geolocus" : {
            "asn" : "AS28685",
            "continent" : "EU",
            "continentname" : "Europe",
            "country" : "NL",
            "countryname" : "Netherlands",
            "domain" : [
               "kpn.com",
               "routit.net",
               "routit.nl"
            ],
            "isineu" : "true",
            "latitude" : "52.132633",
            "location" : "52.132633,5.291266",
            "longitude" : "5.291266",
            "netname" : "RoutIT",
            "organization" : "TMS",
            "subnet" : "145.131.64.0/18"
         },
         "hostname" : [
            "145.131.75.161"
         ],
         "ip" : "145.131.75.161",
         "ipv6" : "false",
         "latitude" : "52.1232",
         "location" : "52.1232,5.2109",
         "longitude" : "5.2109",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "Routit BV",
         "os" : "Linux",
         "osdistribution" : "sUse",
         "osvendor" : "Linux",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.0",
         "reason" : "OK",
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subnet" : "145.131.64.0/18",
         "tag" : "<enterprise field>: tag",
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/weblogin.htm"
      }
      
  • 84.243.227.193:81 (tcp/http) - last seen on 2024-11-07 at 05:19:58 UTC

    • IP
      84.243.227.193
      Network
      84.243.192.0/18
      Device

      <enterprise field>: device.class <enterprise field>: device.productvendor <enterprise field>: device.product

      Operating System
      Linux Linux sUse
      URL

      http://84.243.227.193:81/weblogin.htm 200

      HTTP Title
      Vigor Login Page
      ASN
      AS39647
      Organization
      Enreach Netherlands B.V.
      Protocol
      http
      Source
      urlscan::redirect
    • Operating System
      Linux Linux sUse
      CPE(s)

      <enterprise field>: cpe

    • This feature requires at least a "Lion View" to unlock. Go to our Pricing page for more.

    • Data MD5
      7df49eb463d540cf02f0c925fd2b1315
      HTTP Header MD5
      ab9cf6aa443bbde2ce55b373769d64e9
      HTTP Body MD5
      5ed6b4eb9126f02793bfc5702f42d358
    • HTTP/1.1 200 OK
      Content-Type: text/html
      X-Frame-Options: SAMEORIGIN
      Cache-Control: no-cache
      Expires: 0
      Content-Length: 13194
      Connection: close
      Date: Thu, 07 Nov 2024 05:19:51 GMT
      Server: DrayWebServer
      
      <html><head><title>Vigor Login Page</title><LINK / href=../images/favicon.ico rel="shortcut icon" type=image/x-icon><meta content="text/html; charset=iso-8859-1" http-equiv=Content-Type><script> function TR(str){return str;}</script><style>
      input {height:24px;}
      select {height:24px;}
      td.userpwd {
      color: #000000;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 14px;
      font-weight: bold;
      }
      td.errmsg {
      color : red;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 12px;
      }
      td.errmsg1 {
      color : red;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 12px;
      }
      td.warningmsg {
      color : black;
      font-family : Verdana, Arial, Helvetica, sans-serif;
      font-size : 12px;
      font-weight: bold;
      }
      td.copyright {
      color: #888;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      font-size: 10px;
      font-weight: normal;
      padding-bottom: 15px;
      -webkit-text-size-adjust:none
      }
      input.userpwd {
      width: 180px;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      }
      input.login {
      color: #000;
      width: 68px;
      height: 25px;
      padding: 0 .38em .22em .38em;
      background: #004488 url(images/login1.jpg) scroll 0;
      border: 0px #004488 solid;
      font-family: Verdana, Arial, Helvetica, sans-serif;
      font-style: normal;
      font-weight: bold;
      font-size: 14px;
      cursor: pointer;
      margin-left: 275px;
      }
      </style></head><body><form name=frm1 onsubmit="return false;"><table border=0 height=90% width=100%><tr><td><script>var str="";if('2'=='2'){str='<table align=center width=524px border=0 cellspacing="0" cellpadding=0>';str+='<tr><td><img src="/get_logo.cgi" width="524px"></td></tr>';str+='<tr><td style="border:2px solid #aaaaaa;">';str+='<table width=80% align=center cellspacing="0" cellpadding=2 border=0 style="margin-top:30px">';}else if('2'=='1'){str='<table align=center width=524px height=352px border=0 cellspacing="0" cellpadding=0>';str+='<tr><td>';str+='<table width=80% align=center cellspacing="0" cellpadding=2 border=0 style="margin-top:75px">';}else{if('0'=='0')str="<table align=center width=524px border=0 cellspacing=0 cellpadding=0><tr height=95><td colspan=2 style='background:url(images/2865login.png) no-repeat;'>&nbsp;</td></tr>";else str="<table align=center width=524px border=0 cellspacing=0 cellpadding=0><tr height=95><td colspan=2 style='background:url(images/2866login.png) no-repeat;'>&nbsp;</td></tr>";str+='<tr><td style="background:url(images/login2.png) repeat;">';str+='<table width=80% align=center cellspacing="0" cellpadding=2 border=0>';}document.write(str);</script><tr align=center class=CustomLogin style=display:none><td colspan=2><h3>Router Login</h3></td></tr><tr height=35><td class=userpwd style=padding-right:20px;text-align:right; width=40%>Username</td><td width=60%><input autocapitalize=off autocomplete=off class=userpwd maxlength=24 name=sUserName type=text></td></tr><tr height=35><td class=userpwd style=padding-right:20px;text-align:right;>Password</td><td><input autocomplete=off class=userpwd maxlength=84 name=sSysPass type=password></td></tr><tr class=sValidatedCode height=35 style=display:none><td class=userpwd style=padding-right:20px;text-align:right;>Validation Code</td><td><input id=validated_code maxlength=4 style="width: 60px" type=text><img align=bottom alt=ValidatedCode height=24px id=sVerification onclick=changecode() style="margin-left:15px;cursor:pointer;vertical-align: middle;" width=96px></td></tr><script>var enSSlgrp='';var enAdminAuth='';var admin_local_en=0;var admin_ldap_en=0;var sslgrp_used=false;var add_group_selector=false;var ssl_group=["","","","","","","","","",""];var ssl_group_en=["0","0","0","0","0","0","0","0","0","0"];if(enSSlgrp==""){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!="")sslgrp_used=true;}}add_group_selector=(enSSlgrp==""&&sslgrp_used)||(enAdminAuth==""&&(admin_local_en||admin_ldap_en));if(add_group_selector){var str="";str+="<tr height='35'><td class=userpwd style='padding-right:20px;text-align:right;'>"+TR("Group")+"</td>";str+="<td><select name=sltsslgrp>";str+="<option value=-1>---</option>";if(enAdminAuth==""){if(admin_local_en==1||admin_ldap_en==1){str+="<option value=admin>"+TR("admin")+"</option>";}}if(enSSlgrp==""){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!="")str+="<option value="+i+">"+ssl_group[i]+"</option>";}}str+="</select></td></tr>";document.write(str);}else{document.write("<input type=hidden name=sltsslgrp value=-1>");}</script><tr><td class=errmsg colspan=2 height=15><span id=errmsg></span></td></tr><tr><td class=errmsg1 colspan=2 height=15><span id=errmsg1></span></td></tr><tr><td colspan=2 valign=top><input class=login name=btnOk type=button value=Login></td></tr></table></td></tr><tr id=warning style=display:none><script>var str='<td colspan=2 align=center>';if('2'=='0'){str='<td colspan=2 align=center style="background:url(images/login2.png) repeat;">';}document.write(str);</script><table border=0 width=90%><tr><td align=center class=warningmsg>Security Warning: You are logging in without encryption which is not recommended. To login securely  <a href=javascript:HttpsLogin()>click here</a>.</td></tr></table></td></tr><script>var str='<tr><td height=60 class=copyright style="text-align:center;">';if('2'=='2')str='<tr><td height=60 class=copyright style="text-align:center;">';else if('2'=='0')str='<tr><td class=copyright height=70 style="background:url(images/login3.png) no-repeat;text-align:center;">';str+=TR("Copyright &copy; 2000-");var buildtime="Jul 28 2020 14:50:57";var build_ary=buildtime.split(" ");for(var i=0;i<build_ary.length;i++){if(build_ary[i].length==4){str+=build_ary[i];break;}}str+=TR(" DrayTek Corp. All Rights Reserved.")+"</td></tr>";document.write(str);</script></table><table align=center border=0 class=CustomLogin style=display:none><tr><td><h1><b><font color=red>Welcome Message</font></b></h1><p>This welcome message is displayed in the Login page of the router. Replace this text with your own message. </p><ol><li>The welcome message can be written in HTML so lists such as this one can be created </li><li>Other markup tags such as p, font or img can be used</li></ol></td></tr></table></td></tr></table></form><form name=frmSub><script>var sUser_mgt_End='';var sValidatedCode='';var sValidatedCodeNum;var form_num=2; if(sUser_mgt_End=="")form_num+=5; form_num+=1;if(sValidatedCode!="")form_num+=2;for(i=0;i<form_num+1;i++){document.write("<input type=hidden name=obj"+i+">");}</script></form></body></html><script>var isNav=(navigator.appName.indexOf("Netscape")!=-1);var isIE=(navigator.appName.indexOf("Microsoft")!=-1);var isOpr=(navigator.appName.indexOf("Opera")!=-1);var f=document.frm1;var iFrmLgErr=0;var iCustomLoginFlag='0';var CUST_LOGIN_ENABLE=(1<<3);var src_ip;var target_url;var mode;var fw_set;var fw_rule;initParameter();initPage();if(opener&&typeof(window.opener.document)!='unknown'&&typeof(window.opener.document)!='undefined'){if(opener.loginset_preview==1)opener.loginset_preview=0;}else ClearCookies();function changecode(){var verify=document.getElementById('sVerification');sValidatedCodeNum=Math.random()*1000000;verify.setAttribute('src','/image/verification.png?'+sValidatedCodeNum);}function showElmtByClass(_doc,_tag,_el){var doc=_doc;var tag=_tag;var el=_el;if(doc.getElementsByTagName){var nodes=doc.getElementsByTagName(tag);var max=nodes.length;for(var i=0;i<max;i++){var node=nodes.item(i);if(node.className==el){node.style.display="";}}}}function initPage(){if(sValidatedCode!=""){changecode();}if((iCustomLoginFlag&CUST_LOGIN_ENABLE)==CUST_LOGIN_ENABLE){if('2'=='0')showElmtByClass(document,"tr","CustomLogin");showElmtByClass(document,"table","CustomLogin");} if(self!=top)top.location="weblogin.htm";f.sUserName.focus();if(sUser_mgt_End==""){if(mode){switch(mode){case 3: if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}else{errmsg.innerHTML=TR("The username or password you entered is incorrect.");}break;case 4: errmsg.innerHTML=TR("Reach the maximum login number. Try another user account.");break;case 5: errmsg.innerHTML=TR("No available buffer now. Please contact with your administrator");break;case 6: errmsg.innerHTML=TR("The username or password you entered is incorrect.");break;case 7:errmsg.innerHTML=TR("User account is not enabled now.");break;case 8:errmsg.innerHTML=TR("You aren't allowed to access internet (out of schedule).");break;case 9:errmsg.innerHTML=TR("User login denied from http protocol. Please contact with your administrator");break;case 10:errmsg.innerHTML=TR("The user ran out of time quota.");break;case 11:errmsg.innerHTML=TR("The user ran out of data quota.");break;case 12:errmsg.innerHTML=TR("Wrong user account. Please contact with your administrator.");break;default:if(iFrmLgErr==2)errmsg.innerHTML=TR("The username or password you entered is incorrect.");break;}}else if(iFrmLgErr==2){errmsg.innerHTML=TR("The username or password you entered is incorrect.");}else if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}}else if(iFrmLgErr==2){errmsg.innerHTML=TR("The username or password you entered is incorrect.");}else if(iFrmLgErr==4){errmsg.innerHTML=TR("User Mode is off now.");}else if(iFrmLgErr==5){errmsg.innerHTML=TR("Wrong validation code!");}if(sValidatedCode!=""){showElmtByClass(document,"tr","sValidatedCode");}if('https:'!=document.location.protocol){document.getElementById("warning").style.display="";}else{document.getElementById("warning").style.display="none";} for(var d=0;d<document.forms.length;d++){ for(var e=0;e<document.forms[d].elements.length;e++){addhandlers(document.forms[d].elements[e]);}}}function HttpsLogin(){var url=window.location.href;var new_url=url;var dport=50443;url=url.replace("http://","https://");if(url.split(":").length==3){ new_url=url.split(":")[0]+":"+url.split(":")[1]+":"+dport;}else if(url.split(":").length==2){ var tmp=url.split(":")[1].split("/");new_url=url.split(":")[0]+"://"+tmp[2]+":"+dport;}window.location.href=new_url;}function initParameter(){if(sUser_mgt_End==""){src_ip='';target_url='';mode=6;fw_set=0;fw_rule=0;}}function encode(instr){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var outstr="";var chr1,chr2,chr3="";var enc1,enc2,enc3,enc4="";var i=0;do{chr1=instr.charCodeAt(i++);chr2=instr.charCodeAt(i++);chr3=instr.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}outstr=outstr+keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4);chr1=chr2=chr3="";enc1=enc2=enc3=enc4="";}while(i<instr.length);return outstr;}function submitPara(){var frmSub=document.frmSub;var fwElmIdx=2;frmSub.method="post";frmSub.action="cgi-bin/wlogin.cgi";frmSub[0].name="aa";frmSub[0].value=encode(f.sUserName.value);frmSub[1].name="ab";frmSub[1].value=encode(f.sSysPass.value); if(sUser_mgt_End==""&&mode!=0){frmSub[2].name="src_ip";frmSub[2].value=src_ip;frmSub[3].name="target_url";frmSub[3].value=target_url;frmSub[4].name="mode";frmSub[4].value=mode;frmSub[5].name="fw_set";frmSub[5].value=fw_set;frmSub[6].name="fw_rule";frmSub[6].value=fw_rule;fwElmIdx=7;}if(enSSlgrp==""||enAdminAuth==""){frmSub[fwElmIdx].name="sslgroup";frmSub[fwElmIdx].value=f.sltsslgrp.value;}if(sValidatedCode!=""){fwElmIdx++;frmSub[fwElmIdx].name="sVerifCode";frmSub[fwElmIdx].value=document.getElementById("validated_code").value;fwElmIdx++;frmSub[fwElmIdx].name="sValidatedCodeNum";frmSub[fwElmIdx].value=sValidatedCodeNum;}frmSub[form_num].name="sFormAuthStr";frmSub[form_num].value=randomString(15);frmSub.submit();}function randomString(len){var chars='ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';var maxPos=chars.length;var pwd='';for(i=0;i<len;i++){pwd+=chars.charAt(Math.floor(Math.random()*maxPos));}return pwd;}function handler(_e){var e=_e,elmt,type;if(isNav){elmt=e.target;type=e.type;keycode=e.which;}if(isIE||isOpr){e=window.event;elmt=e.srcElement;type=e.type;keycode=e.keyCode;} if(isIE){if(elmt.type=="text")e.cancelBubble=false;else e.cancelBubble=true;}if(elmt==f.btnOk&&type=="click"){submitPara();}if(elmt!=f.btnOk&&type=="keydown"){if(keycode==13){ e.returnValue=false;submitPara();}}} function addhandlers(_o){var o=_o;o.onclick=handler;o.onkeydown=handler;}function ClearCookies(){var temp=document.cookie.split(";");var ts;for(var i=0;;i++){if(!temp[i])break;ts=temp[i].split("=")[0];DeleteCookie(ts);}}function GetCookieVal(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1)endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}function GetCookie(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)return GetCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0)break;}return null;}function DeleteCookie(name){var exp=new Date();exp.setTime(exp.getTime()-1);var cval=GetCookie(name);document.cookie=name+"="+cval+"; expires="+exp.toGMTString();}</script>
    • {
         "@category" : "datascan",
         "@timestamp" : "2024-11-07T05:19:58.000Z",
         "app" : {
            "extract" : {
               "file" : [
                  "get_logo.cgi",
                  "wlogin.cgi"
               ]
            },
            "http" : {
               "bodymd5" : "5ed6b4eb9126f02793bfc5702f42d358",
               "bodymmh3" : 1338785774,
               "headermd5" : "ab9cf6aa443bbde2ce55b373769d64e9",
               "headermmh3" : -154055536,
               "title" : "Vigor Login Page"
            },
            "length" : 13406
         },
         "asn" : "AS39647",
         "city" : "Bussum",
         "country" : "NL",
         "cpe" : "<enterprise field>: cpe",
         "cpecount" : "<enterprise field>: cpecount",
         "data" : "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\nX-Frame-Options: SAMEORIGIN\r\nCache-Control: no-cache\r\nExpires: 0\r\nContent-Length: 13194\r\nConnection: close\r\nDate: Thu, 07 Nov 2024 05:19:51 GMT\r\nServer: DrayWebServer\r\n\r\n<html><head><title>Vigor Login Page</title><LINK / href=../images/favicon.ico rel=\"shortcut icon\" type=image/x-icon><meta content=\"text/html; charset=iso-8859-1\" http-equiv=Content-Type><script> function TR(str){return str;}</script><style>\r\ninput {height:24px;}\r\nselect {height:24px;}\r\ntd.userpwd {\r\ncolor: #000000;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 14px;\r\nfont-weight: bold;\r\n}\r\ntd.errmsg {\r\ncolor : red;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 12px;\r\n}\r\ntd.errmsg1 {\r\ncolor : red;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 12px;\r\n}\r\ntd.warningmsg {\r\ncolor : black;\r\nfont-family : Verdana, Arial, Helvetica, sans-serif;\r\nfont-size : 12px;\r\nfont-weight: bold;\r\n}\r\ntd.copyright {\r\ncolor: #888;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\nfont-size: 10px;\r\nfont-weight: normal;\r\npadding-bottom: 15px;\r\n-webkit-text-size-adjust:none\r\n}\r\ninput.userpwd {\r\nwidth: 180px;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\n}\r\ninput.login {\r\ncolor: #000;\r\nwidth: 68px;\r\nheight: 25px;\r\npadding: 0 .38em .22em .38em;\r\nbackground: #004488 url(images/login1.jpg) scroll 0;\r\nborder: 0px #004488 solid;\r\nfont-family: Verdana, Arial, Helvetica, sans-serif;\r\nfont-style: normal;\r\nfont-weight: bold;\r\nfont-size: 14px;\r\ncursor: pointer;\r\nmargin-left: 275px;\r\n}\r\n</style></head><body><form name=frm1 onsubmit=\"return false;\"><table border=0 height=90% width=100%><tr><td><script>var str=\"\";if('2'=='2'){str='<table align=center width=524px border=0 cellspacing=\"0\" cellpadding=0>';str+='<tr><td><img src=\"/get_logo.cgi\" width=\"524px\"></td></tr>';str+='<tr><td style=\"border:2px solid #aaaaaa;\">';str+='<table width=80% align=center cellspacing=\"0\" cellpadding=2 border=0 style=\"margin-top:30px\">';}else if('2'=='1'){str='<table align=center width=524px height=352px border=0 cellspacing=\"0\" cellpadding=0>';str+='<tr><td>';str+='<table width=80% align=center cellspacing=\"0\" cellpadding=2 border=0 style=\"margin-top:75px\">';}else{if('0'=='0')str=\"<table align=center width=524px border=0 cellspacing=0 cellpadding=0><tr height=95><td colspan=2 style='background:url(images/2865login.png) no-repeat;'>&nbsp;</td></tr>\";else str=\"<table align=center width=524px border=0 cellspacing=0 cellpadding=0><tr height=95><td colspan=2 style='background:url(images/2866login.png) no-repeat;'>&nbsp;</td></tr>\";str+='<tr><td style=\"background:url(images/login2.png) repeat;\">';str+='<table width=80% align=center cellspacing=\"0\" cellpadding=2 border=0>';}document.write(str);</script><tr align=center class=CustomLogin style=display:none><td colspan=2><h3>Router Login</h3></td></tr><tr height=35><td class=userpwd style=padding-right:20px;text-align:right; width=40%>Username</td><td width=60%><input autocapitalize=off autocomplete=off class=userpwd maxlength=24 name=sUserName type=text></td></tr><tr height=35><td class=userpwd style=padding-right:20px;text-align:right;>Password</td><td><input autocomplete=off class=userpwd maxlength=84 name=sSysPass type=password></td></tr><tr class=sValidatedCode height=35 style=display:none><td class=userpwd style=padding-right:20px;text-align:right;>Validation Code</td><td><input id=validated_code maxlength=4 style=\"width: 60px\" type=text><img align=bottom alt=ValidatedCode height=24px id=sVerification onclick=changecode() style=\"margin-left:15px;cursor:pointer;vertical-align: middle;\" width=96px></td></tr><script>var enSSlgrp='';var enAdminAuth='';var admin_local_en=0;var admin_ldap_en=0;var sslgrp_used=false;var add_group_selector=false;var ssl_group=[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\"];var ssl_group_en=[\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\",\"0\"];if(enSSlgrp==\"\"){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!=\"\")sslgrp_used=true;}}add_group_selector=(enSSlgrp==\"\"&&sslgrp_used)||(enAdminAuth==\"\"&&(admin_local_en||admin_ldap_en));if(add_group_selector){var str=\"\";str+=\"<tr height='35'><td class=userpwd style='padding-right:20px;text-align:right;'>\"+TR(\"Group\")+\"</td>\";str+=\"<td><select name=sltsslgrp>\";str+=\"<option value=-1>---</option>\";if(enAdminAuth==\"\"){if(admin_local_en==1||admin_ldap_en==1){str+=\"<option value=admin>\"+TR(\"admin\")+\"</option>\";}}if(enSSlgrp==\"\"){for(var i=0;i<ssl_group.length;i++){if(ssl_group_en[i]==1&&ssl_group[i]!=\"\")str+=\"<option value=\"+i+\">\"+ssl_group[i]+\"</option>\";}}str+=\"</select></td></tr>\";document.write(str);}else{document.write(\"<input type=hidden name=sltsslgrp value=-1>\");}</script><tr><td class=errmsg colspan=2 height=15><span id=errmsg></span></td></tr><tr><td class=errmsg1 colspan=2 height=15><span id=errmsg1></span></td></tr><tr><td colspan=2 valign=top><input class=login name=btnOk type=button value=Login></td></tr></table></td></tr><tr id=warning style=display:none><script>var str='<td colspan=2 align=center>';if('2'=='0'){str='<td colspan=2 align=center style=\"background:url(images/login2.png) repeat;\">';}document.write(str);</script><table border=0 width=90%><tr><td align=center class=warningmsg>Security Warning: You are logging in without encryption which is not recommended. To login securely  <a href=javascript:HttpsLogin()>click here</a>.</td></tr></table></td></tr><script>var str='<tr><td height=60 class=copyright style=\"text-align:center;\">';if('2'=='2')str='<tr><td height=60 class=copyright style=\"text-align:center;\">';else if('2'=='0')str='<tr><td class=copyright height=70 style=\"background:url(images/login3.png) no-repeat;text-align:center;\">';str+=TR(\"Copyright &copy; 2000-\");var buildtime=\"Jul 28 2020 14:50:57\";var build_ary=buildtime.split(\" \");for(var i=0;i<build_ary.length;i++){if(build_ary[i].length==4){str+=build_ary[i];break;}}str+=TR(\" DrayTek Corp. All Rights Reserved.\")+\"</td></tr>\";document.write(str);</script></table><table align=center border=0 class=CustomLogin style=display:none><tr><td><h1><b><font color=red>Welcome Message</font></b></h1><p>This welcome message is displayed in the Login page of the router. Replace this text with your own message. </p><ol><li>The welcome message can be written in HTML so lists such as this one can be created </li><li>Other markup tags such as p, font or img can be used</li></ol></td></tr></table></td></tr></table></form><form name=frmSub><script>var sUser_mgt_End='';var sValidatedCode='';var sValidatedCodeNum;var form_num=2; if(sUser_mgt_End==\"\")form_num+=5; form_num+=1;if(sValidatedCode!=\"\")form_num+=2;for(i=0;i<form_num+1;i++){document.write(\"<input type=hidden name=obj\"+i+\">\");}</script></form></body></html><script>var isNav=(navigator.appName.indexOf(\"Netscape\")!=-1);var isIE=(navigator.appName.indexOf(\"Microsoft\")!=-1);var isOpr=(navigator.appName.indexOf(\"Opera\")!=-1);var f=document.frm1;var iFrmLgErr=0;var iCustomLoginFlag='0';var CUST_LOGIN_ENABLE=(1<<3);var src_ip;var target_url;var mode;var fw_set;var fw_rule;initParameter();initPage();if(opener&&typeof(window.opener.document)!='unknown'&&typeof(window.opener.document)!='undefined'){if(opener.loginset_preview==1)opener.loginset_preview=0;}else ClearCookies();function changecode(){var verify=document.getElementById('sVerification');sValidatedCodeNum=Math.random()*1000000;verify.setAttribute('src','/image/verification.png?'+sValidatedCodeNum);}function showElmtByClass(_doc,_tag,_el){var doc=_doc;var tag=_tag;var el=_el;if(doc.getElementsByTagName){var nodes=doc.getElementsByTagName(tag);var max=nodes.length;for(var i=0;i<max;i++){var node=nodes.item(i);if(node.className==el){node.style.display=\"\";}}}}function initPage(){if(sValidatedCode!=\"\"){changecode();}if((iCustomLoginFlag&CUST_LOGIN_ENABLE)==CUST_LOGIN_ENABLE){if('2'=='0')showElmtByClass(document,\"tr\",\"CustomLogin\");showElmtByClass(document,\"table\",\"CustomLogin\");} if(self!=top)top.location=\"weblogin.htm\";f.sUserName.focus();if(sUser_mgt_End==\"\"){if(mode){switch(mode){case 3: if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}else{errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}break;case 4: errmsg.innerHTML=TR(\"Reach the maximum login number. Try another user account.\");break;case 5: errmsg.innerHTML=TR(\"No available buffer now. Please contact with your administrator\");break;case 6: errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");break;case 7:errmsg.innerHTML=TR(\"User account is not enabled now.\");break;case 8:errmsg.innerHTML=TR(\"You aren't allowed to access internet (out of schedule).\");break;case 9:errmsg.innerHTML=TR(\"User login denied from http protocol. Please contact with your administrator\");break;case 10:errmsg.innerHTML=TR(\"The user ran out of time quota.\");break;case 11:errmsg.innerHTML=TR(\"The user ran out of data quota.\");break;case 12:errmsg.innerHTML=TR(\"Wrong user account. Please contact with your administrator.\");break;default:if(iFrmLgErr==2)errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");break;}}else if(iFrmLgErr==2){errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}else if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}}else if(iFrmLgErr==2){errmsg.innerHTML=TR(\"The username or password you entered is incorrect.\");}else if(iFrmLgErr==4){errmsg.innerHTML=TR(\"User Mode is off now.\");}else if(iFrmLgErr==5){errmsg.innerHTML=TR(\"Wrong validation code!\");}if(sValidatedCode!=\"\"){showElmtByClass(document,\"tr\",\"sValidatedCode\");}if('https:'!=document.location.protocol){document.getElementById(\"warning\").style.display=\"\";}else{document.getElementById(\"warning\").style.display=\"none\";} for(var d=0;d<document.forms.length;d++){ for(var e=0;e<document.forms[d].elements.length;e++){addhandlers(document.forms[d].elements[e]);}}}function HttpsLogin(){var url=window.location.href;var new_url=url;var dport=50443;url=url.replace(\"http://\",\"https://\");if(url.split(\":\").length==3){ new_url=url.split(\":\")[0]+\":\"+url.split(\":\")[1]+\":\"+dport;}else if(url.split(\":\").length==2){ var tmp=url.split(\":\")[1].split(\"/\");new_url=url.split(\":\")[0]+\"://\"+tmp[2]+\":\"+dport;}window.location.href=new_url;}function initParameter(){if(sUser_mgt_End==\"\"){src_ip='';target_url='';mode=6;fw_set=0;fw_rule=0;}}function encode(instr){var keyStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";var outstr=\"\";var chr1,chr2,chr3=\"\";var enc1,enc2,enc3,enc4=\"\";var i=0;do{chr1=instr.charCodeAt(i++);chr2=instr.charCodeAt(i++);chr3=instr.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}outstr=outstr+keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4);chr1=chr2=chr3=\"\";enc1=enc2=enc3=enc4=\"\";}while(i<instr.length);return outstr;}function submitPara(){var frmSub=document.frmSub;var fwElmIdx=2;frmSub.method=\"post\";frmSub.action=\"cgi-bin/wlogin.cgi\";frmSub[0].name=\"aa\";frmSub[0].value=encode(f.sUserName.value);frmSub[1].name=\"ab\";frmSub[1].value=encode(f.sSysPass.value); if(sUser_mgt_End==\"\"&&mode!=0){frmSub[2].name=\"src_ip\";frmSub[2].value=src_ip;frmSub[3].name=\"target_url\";frmSub[3].value=target_url;frmSub[4].name=\"mode\";frmSub[4].value=mode;frmSub[5].name=\"fw_set\";frmSub[5].value=fw_set;frmSub[6].name=\"fw_rule\";frmSub[6].value=fw_rule;fwElmIdx=7;}if(enSSlgrp==\"\"||enAdminAuth==\"\"){frmSub[fwElmIdx].name=\"sslgroup\";frmSub[fwElmIdx].value=f.sltsslgrp.value;}if(sValidatedCode!=\"\"){fwElmIdx++;frmSub[fwElmIdx].name=\"sVerifCode\";frmSub[fwElmIdx].value=document.getElementById(\"validated_code\").value;fwElmIdx++;frmSub[fwElmIdx].name=\"sValidatedCodeNum\";frmSub[fwElmIdx].value=sValidatedCodeNum;}frmSub[form_num].name=\"sFormAuthStr\";frmSub[form_num].value=randomString(15);frmSub.submit();}function randomString(len){var chars='ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';var maxPos=chars.length;var pwd='';for(i=0;i<len;i++){pwd+=chars.charAt(Math.floor(Math.random()*maxPos));}return pwd;}function handler(_e){var e=_e,elmt,type;if(isNav){elmt=e.target;type=e.type;keycode=e.which;}if(isIE||isOpr){e=window.event;elmt=e.srcElement;type=e.type;keycode=e.keyCode;} if(isIE){if(elmt.type==\"text\")e.cancelBubble=false;else e.cancelBubble=true;}if(elmt==f.btnOk&&type==\"click\"){submitPara();}if(elmt!=f.btnOk&&type==\"keydown\"){if(keycode==13){ e.returnValue=false;submitPara();}}} function addhandlers(_o){var o=_o;o.onclick=handler;o.onkeydown=handler;}function ClearCookies(){var temp=document.cookie.split(\";\");var ts;for(var i=0;;i++){if(!temp[i])break;ts=temp[i].split(\"=\")[0];DeleteCookie(ts);}}function GetCookieVal(offset){var endstr=document.cookie.indexOf(\";\",offset);if(endstr==-1)endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}function GetCookie(name){var arg=name+\"=\";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)return GetCookieVal(j);i=document.cookie.indexOf(\" \",i)+1;if(i==0)break;}return null;}function DeleteCookie(name){var exp=new Date();exp.setTime(exp.getTime()-1);var cval=GetCookie(name);document.cookie=name+\"=\"+cval+\"; expires=\"+exp.toGMTString();}</script>",
         "datamd5" : "7df49eb463d540cf02f0c925fd2b1315",
         "datammh3" : 704354334,
         "device" : {
            "class" : "<enterprise field>: device.class",
            "product" : "<enterprise field>: device.product",
            "productvendor" : "<enterprise field>: device.productvendor"
         },
         "forward" : "84.243.227.193",
         "geolocus" : {
            "asn" : "AS39647",
            "continent" : "EU",
            "continentname" : "Europe",
            "country" : "NL",
            "countryname" : "Netherlands",
            "domain" : [
               "redhosting.nl"
            ],
            "isineu" : "true",
            "latitude" : "52.132633",
            "location" : "52.132633,5.291266",
            "longitude" : "5.291266",
            "netname" : "NL-ISPWORKS-20040709",
            "organization" : "Enreach Netherlands B.V.",
            "subnet" : "84.243.192.0/18"
         },
         "hostname" : [
            "84.243.227.193"
         ],
         "ip" : "84.243.227.193",
         "ipv6" : "false",
         "latitude" : "52.2775",
         "location" : "52.2775,5.1728",
         "longitude" : "5.1728",
         "node" : {
            "country" : "<enterprise field>: node.country",
            "groupid" : "<enterprise field>: node.groupid",
            "id" : "<enterprise field>: node.id",
            "physicalcountry" : "<enterprise field>: node.physicalcountry"
         },
         "organization" : "Enreach Netherlands B.V.",
         "os" : "Linux",
         "osdistribution" : "sUse",
         "osvendor" : "Linux",
         "port" : 81,
         "protocol" : "http",
         "protocolversion" : "1.1",
         "reason" : "OK",
         "seen_date" : "2024-11-07",
         "source" : "urlscan::redirect",
         "status" : 200,
         "subnet" : "84.243.192.0/18",
         "tag" : "<enterprise field>: tag",
         "tls" : "false",
         "transport" : "tcp",
         "url" : "/weblogin.htm"
      }