Этот сайт не может быть доступен, если в систему входят более 10 пользователей. - PullRequest
0 голосов
/ 10 апреля 2019

Я работаю над небольшим проектом, в котором пользователи могут войти, используя свои собственные данные для входа.Каждый пользователь имеет разные имя пользователя и пароль.У меня есть веб-страница, которая находится на CodeIgniter.Я использую приведенный ниже код для входа в систему пользователя.

Контроллер

public function index()
  {
   $this->checkLogin();
  }

public function checkLogin(){
  if(!$this->session->userdata('login_session'))
    {
     $this->form_validation->set_error_delimiters('<div class="error">', '</div>');
     $this->form_validation->set_rules('crmid', 'CRM id', 'trim|required|min_length[6]');
     $this->form_validation->set_rules('password', 'Password', 'trim|required');

     if ($this->form_validation->run() == FALSE)
       {
        $this->load->view('login');
       }
      else
        {
        $crmid = strtoupper($this->input->post('crmid'));
        $password = $this->input->post('password');
        $result=$this->Access_model->check_password($crmid,$password);//varifying password

        if ($result) {
        //creating session
        $login_emp_session = array('id' => $result->id,'crmid'  =>$result->crm_id,'firstname' => $result->firstname,'lastname' => $result->lastname,'access_role' => $result->access_role,'password_change_status' => $result->password_change_status);
        $this->session->set_userdata('login_session',$login_emp_session);//set the session   

             if ($result->password_change_status == 0) {
                 redirect("Access_control/changepassword");//calling change password
                }
            else{
              redirect("Dashboard_control/dashboard");//calling dashboard
                }
       }
  else{
      $this->session->set_flashdata('invalid_password', 'Invalid username and password');
      $this->load->view('login');
     }

 }
     }
     else
        {
        if ($this->session->userdata['login_session']['password_change_status'] == 0) {
             $this->session->sess_destroy();
             $this->load->view('login');

            }
         else{
          redirect("Dashboard_control/dashboard");//calling employee register
        }
        }

        }

Если в систему входит один пользователь или 2-3 пользователя, то все работает отлично, нопользователи вошли в более чем 10 систем с общедоступным IP-адресом (который является общим IP-адресом), и через 10-25 минут я получаю сообщение This site can't be reached.

Итак, я связываюсь с командой Hostgator, там они сказалиНет проблем с вашим IP-адресом, пожалуйста, проверьте ваш код еще раз.Существует некоторая проблема с ModSecurity, и мы не можем включить его.

ModSecurity: Access denied with code 409 (phase 1)

Правильно ли введен мой логин в коде?не могли бы вы помочь мне в этом вопросе?

Это логи, которые я получил от hostgator.

[Tue Apr 09 17:12:51.564509 2019] [:error] [pid 947073:tid 140357593020160] [client *.*.*.*:0] [client *.*.*.*] ModSecurity: Warning. Operator GE matched 5 at TX:inbound_anomaly_score. [file "/etc/apache2/conf.d/modsec_vendor_configs/OWASP3/rules/RESPONSE-980-CORRELATION.conf"] [line "37"] [id "980130"] [msg "Inbound Anomaly Score Exceeded (Total Inbound Score: 10 - SQLI=0,XSS=0,RFI=0,LFI=10,RCE=0,PHPI=0,HTTP=0,SESS=0): Path Traversal Attack (/../)"] [tag "event-correlation"] [hostname "abc.mydomain.com"] [uri "/errors/404_Forbidden_php.php"] [unique_id "XKzSkDANRUc4aj6DxXxtsQAAAmk"], referer: http://abc.mydomain.com/Access_control/index
...