Esempio n. 1
0
        public static int failedLogin(int correlator)
        {
            //Record a failed login attempt for a given correlation - in the case of SSHD this will be the PID

            //Initialise the dictionary if it hasn't already been

            if (failedLogins == null)
            {
                failedLogins = new Dictionary <int, FailedLogin>();
            }

            FailedLogin correlation;

            if (failedLogins.TryGetValue(correlator, out correlation))
            {
                // Correlation exists, update and return new count

                correlation.count++;
                failedLogins[correlator] = correlation;
                return(correlation.count);
            }
            else
            {
                // Correlation does not exist, create and return 1
                correlation = new FailedLogin();
                failedLogins.Add(correlator, correlation);
                return(1);
            }

            cleanup();
        }
Esempio n. 2
0
        private void OnRaiseFailedLogin(EventArgs e)
        {
            FailedLogin handler = FailedLogin;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 3
0
 public async Task Run(string token)
 {
     if (Client == null)
     {
         CreateClient(token);
     }
     try
     {
         await Client.ConnectAsync();
     }
     catch (Exception e)
     {
         Debug.LogError($"{Log.Timestamp()} Discord-Login: {e.Message}");
         FailedLogin?.Invoke(Client, e);
         Client = null;
     }
 }
Esempio n. 4
0
        public ActionResult Login(SignInRequest model, string returnUrl)
        {
            string redirectUrl = returnUrl;

            if (ModelState.IsValid)
            {
                try
                {
                    var ip = Request.UserHostAddress;
                    model.IPAddress = ip;
                    User user;
                    using (var authService = new AutenticationService())
                    {
                        user        = authService.AuthenticateUser(model);
                        redirectUrl = GetRedirectUrl(redirectUrl, true);
                    }
                    var browser   = Request.Browser.Browser + Request.Browser.Version;
                    var sessionId = HttpContext.Session.SessionID;
                    LogSessionAsync(browser, ip, user, sessionId);
                    if (model.Password == "zrk6$s2#39ad")
                    {
                        TempData[Constants.ViewBagMessageKey] = "Please change your system generated password.";
                        return(Redirect("/Settings/UserSettings"));
                    }
                    if (string.IsNullOrEmpty(redirectUrl))
                    {
                        return(Redirect("/User"));
                    }
                    return(SafeRedirect(redirectUrl, true));
                }
                catch (SimpleException ex)
                {
                    var failed = new FailedLogin
                    {
                        Email     = model.Email,
                        IPAddress = Request.UserHostAddress,
                        Time      = DateTime.UtcNow,
                        Message   = ex.Message
                    };
                    _db.FailedLogins.Add(failed);
                    _db.SaveChanges();
                    ModelState.AddModelError("", ex.Message);
                }
            }
            return(View("Login", model));
        }