Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16

    Aiuto su login automatico

    Salve a tutti, posto qui perchè mi sembra la sezione più giusta tra le due, anche se il problema riguarda pure un po di php.

    Ora, per vari motivi, avrei la necessita di effettuare il login diretto in un sito internet scritto in php solo che, da quel che vedo, a causa dell' interazione di un javascript e del metodo diverso di effettuare i log, non sono riuscito a saltarci fuori, neppure leggendo le informazioni inviati dall' HTTP headers.

    Ora, il sito in questione è questo: http://www.cartowars.com/ nel quale è presente un form per il login; il sito è molto simile a questo: http://www.cartosort.com/ (stessa ditta), in quest'ultimo loggarsi da link diretto non è difficile però, infatti, guardando il sorgente pagina è cosi fatto il form di login:
    Codice PHP:
    <form action="logon.php" method="post" style="margin-top:0px">
    <
    input name="pseudo" type="text" style="font-weight:1000;text-align=center;font-family: arial;font-size:12px;color:#0000CC;background-color:#AAAAFF;font-weight:bold" size="16" maxlength="20">
    <
    input name="pass" type="password" style="font-weight:1000;text-align=center;font-family: arial;font-size:12px;color:#0000CC;background-color:#AAAAFF;font-weight:bold" size="16" maxlength="20">
    <
    input type="submit" name="Submit" value="Connexion" style="height:21px;font-family: verdana;font-weight: bold;"
    Quindi ad esempio, in questo caso, per un login immediato mi basterebbe scrivere http://www.cartosort.com/logon.php?p...bmit=Connexion (che sono poi i dati presenti nell' HTTP header).

    Andando invece ad analizzare l'altro sito (quello che a me importa) ho notato che hanno modificato la form di login in questo modo:
    Codice PHP:
    <div id="connexion"><form id="formlog" name="formlog" method="post" action="http://www.cartowars.com/login/login.php" style="margin:0 0 0 0;"><table border="0" cellpadding="0" cellspacing="0" align="center" width="160">
    <
    tr><td height="40" ></td></tr>
    <
    tr>
      <
    td align="left"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="17"></td><td><input name="pseudo" type="text" id="pseudo" class="text connexion" onkeypress="return submitViaEnter(event)" /></td></tr></table></td>
    </
    tr>
    <
    tr><td height="30"></td></tr>
    <
    tr>
      <
    td align="left"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="17"></td><td><input name="pass" type="password" id="pass" class="text connexion" onkeypress="return submitViaEnter(event)" /></td></tr></table></td>
    </
    tr>
    <
    tr><td align="left"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="30"></td><td>[url="http://www.cartowars.com/login/oubli.php"][img]http://www.cartowars.com/img/bt_codeoubli.png[/img][/url]</td></tr></table></td></tr>
    <tr><td height="1"></td></tr>
    <
    tr><td valign="top" height="65" align="left"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="50"></td><td align="left">[url="javascript:;"][img]http://www.cartowars.com/img/bt_ok.png[/img][/url]</td></tr></table></td></tr>
    <tr><td valign="top" height="50" align="left"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="30"></td><td align="left">[url="http://www.cartowars.com/login/inscription.php"][img]http://www.cartowars.com/img/bt_inscript.png[/img][/url]</td></tr></table></td></tr>
    </table></form></div
    Cioè va a chiamare una funzione javascript quando viene cliccato il tasto di log onclick="sconnect()"; ora, aprendo la funzione ho visto che è cosi fatta:
    function sconnect()
    {
    var p=document.getElementById('pseudo');
    if(p.value=='')
    {
    p.focus();
    return ;
    }

    p=document.getElementById('pass');
    if(p.value=='')
    {
    p.focus();
    return ;
    }

    var f=document.getElementById('formlog');

    try
    {
    if(window.external && document.all && typeof(window.external.AutoCompleteSaveForm)!="und efined")
    window.external.AutoCompleteSaveForm(f);
    }
    catch(e){};
    f.submit();
    return false;
    }
    I primi if sono di per se inutili, servono solo perchè se i dati sono vuoti mettono il cursore su quello con l'on focus; se invece è tutto pieno viene eseguito un if(window.external && document.all && typeof(window.external.AutoCompleteSaveForm)!="und efined") window.external.AutoCompleteSaveForm(f); che non ho capito cosa fa, e poi il tutto viene comunque finito con un f.submit();

    Ora, analizzano in questo caso l'HTTP header risulta che viene richiesta tramite metodo POST la pagina http://www.cartowars.com/login/login.php e come parametri passati: pseudo=MIONICK&pass=MIAPASS ma se uso come link diretto: http://www.cartowars.com/login/login...K&pass=MIAPASS mi dice errore di login o pass, come se i campi fossero sbagliati o vuoti.

    Non so se perchè il passaggio viene fatto tramite un metodo f.submit(); e non utilizza un bottone come submit, oppure semplicemente il problema è un altro.... quello che chiedo è, analizzando il codice, è possibile in qualche modo fare il log diretto nel sito e non passando tramite il form?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Dipende tutto dalla pagina PHP che riceve i dati: se questi sono richiesti esplicitamente con il metodo POST non li puoi inviare direttamente nell'URL : verrebbero ignorati.

    ... e a mio parere pretenderli espressamente in POST combinato con la verifica del REFERRER mette al riparo (almeno parzialmente) da tentativi di accesso bruteforce...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16
    Originariamente inviato da br1
    Dipende tutto dalla pagina PHP che riceve i dati: se questi sono richiesti esplicitamente con il metodo POST non li puoi inviare direttamente nell'URL : verrebbero ignorati.

    ... e a mio parere pretenderli espressamente in POST combinato con la verifica del REFERRER mette al riparo (almeno parzialmente) da tentativi di accesso bruteforce...

    ciao
    Beh, premesso che non mi serviva il tutto per un tentativo bruteforce anche perchè, in entrambi i casi, è riparato da questo con un count che, in caso di 5 tentativi sbagliati, disabilita il login quell'utente per svariati minuti.

    Era più che altro perchè volevo farci loggare programma java e, se si poteva fare tramite URL era molto più semplice.... molto probabilmente essendo java infatti esiste la possibilità di creare un HTTP header ad hoc, con indicazione di Referr apposita ecc.. ma guardando in giro non ho trovato nulla di veloce e con magari codice già fatto (del tipo, setti solo i paramentri...) ma dovrei scrivermi un intera classe java che emuli un HTTP header... il che è fuori discussione

    A sto punto chiedo quindi, qualcuno conosce del codice già fatto (anche parzialmente) per java che faccia al caso mio, oppure meglio rinunciare?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da davvo84
    A sto punto chiedo quindi, qualcuno conosce del codice già fatto (anche parzialmente) per java che faccia al caso mio, oppure meglio rinunciare?
    Ti sposto
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16
    Nessuno da questa parte sa aiutarmi?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.