Pokaż wyniki 1 do 5 z 5

Temat: vbulletin zabezpieczenie przed logowaniem curl

  1. #1
    Zarejestrowany
    Dec 2009
    Postów
    9

    Domyślnie vbulletin zabezpieczenie przed logowaniem curl

    Forum vbulletin ma zabezpieczenie przed logowaniem za pomocą curl. Siedziałem nad tym trochę ale nic przy submicie z formularza doczepiona jest jakaś funkcja w js ale co robi nie wiem bo kod strasznie namieszany autorom zapewne zleżało żeby nikt się w tym nie połapał. Przy logowaniu z curl niby pisze, że zalogowany i przerzuca na chwilę na stronę z formularzem posta ale po chwili następuje przekierowanie na formularz logowania

    Może ktoś ma jakiś trop jak to ominąć ?

  2. #2
    Zarejestrowany
    Nov 2009
    Postów
    643

    Domyślnie

    Jakieś osobliwe vb opisujesz, ja nie widze żadnego zabezpieczenia.

    Podaj adres tego forum.
    światło mądrości oświetla drogę z nikąd do nikąd

  3. #3
    Zarejestrowany
    Nov 2009
    Postów
    643

    Domyślnie

    Żeby nie być gołosłownym, oto funkcja logowania do VB wyciągnięta z jednej z moich aplikacj, wydaje się działać z każdą wersją VB,
    Chyba trafiłeś na właściwego rozmówcę, a przynajmniej na takiego, który jest na bierząco z takimi pierdółkami

    Kod php:

    <?php

        
    function login() {
            
            
    $url 'http://hack.pl/';
            
            
    $this->sock =& new HTTP_Request();
            
    $this->sock->_allowRedirects true;
            
    $this->sock->clearCookies();
            
    $this->sock->setURL($url);
            
    $this->sock->setMethod('GET');
            
    $this->sock->sendRequest();
            if ( ! 
    $data $this->sock->getResponseBody()) {
                return 
    error('unable to login (socket error)');
            }
            
    $this->sock->_allowRedirects false;
            
            
    $dom = new DOMDocument;
            @
    $dom->loadHTML($data);
            
            
    success('login form dom begun');
            
            
    $formList $dom->getElementsByTagName('form');
            if ( ! 
    is_object($formList) OR == $formList->length ) {
                return 
    error('unable to find form list');
            }
            
    $form $formList->item(0);
            if ( ! 
    is_object($form)) {
                return 
    error('unable to find login form');
            }
            
            
    $action $form->getAttribute('action');
            if ( ! 
    is_string($action)) {
                return 
    error('unable to find login form action');
            }
            
            
    $params = array();
            
    $inputList $form->getElementsByTagName('input');
            if ( ! 
    is_object($inputList) OR == $inputList->length ) {
                return 
    error('unable to find login form inputs');
            }
            for ( 
    $i 0$j $inputList->length$i $j$i++ ) {
                
    $input $inputList->item($i);
                if ( 
    $name $input->getAttribute('name')) {
                    
    $params[$name] = $input->getAttribute('value');
                }
            }
            
            
    $login select_login$project_id$context );
            
            
    $params = array(
                
    'vb_login_username' => $login->login,
                
    'vb_login_password' => $login->password,
                
    's' => '',
                
    'securitytoken' => $params['securitytoken'],
                
    'do' => 'login',
                
    'vb_login_md5password' => '',
                
    'vb_login_md5password_utf' => '',
            );
            
            
    $url $url 'login.php?do=login';
            
            
    $this->sock->setURL($url);
            
    $this->sock->setMethod('POST');
            
    $this->sock->clearPostData();
            foreach ( 
    $params as $key => $val ) {
                
    $this->sock->addPostData($key$val);
            }
            
    $this->sock->sendRequest();
            if ( ! 
    $data $this->sock->getResponseBody()) {
                return 
    error('unable to login (socket error)');
            }
            
            return 
    success('logged success');
        }

    ?>
    światło mądrości oświetla drogę z nikąd do nikąd

  4. #4
    Zarejestrowany
    Dec 2009
    Postów
    9

    Domyślnie

    lame dzięki za kod ale coś mi się rypie z klasami :/
    Potrzebuje linka albo kod do tych klas które wykorzystujesz, próbowałem coś zaciągnąć ale pluje błędami

  5. #5
    Zarejestrowany
    Nov 2009
    Postów
    643

    Domyślnie

    HTTP_Request oraz Cookie_menager (PEAR), wszystko sklejone razem, żeby ładnie pamiętało cookie.

    CPaste.eu beta - Your pastebin!
    światło mądrości oświetla drogę z nikąd do nikąd

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52