Visualizzazione dei risultati da 1 a 10 su 10

Discussione: 500 mail false

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449

    500 mail false

    In un sito ho creato un form per inviare richieste di informazioni.
    Ora, un paio di volte il burlone di turno ha inviato oltre 500 mail
    con IP e indirizzo email falso. Io ho previsto soltanto un controllo
    del formato dell'indirizzo mail. Quale tipo di meccanismo potrei
    immettere per evitare questi "attacchi"?

    Grazie
    M.

  2. #2
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128
    utilizzare dei controlli captcha
    ..

    un immagine con all'interno una sequenza di lettere numeri da riconoscere..

    oppure una operazione matematica...

  3. #3

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Grazie, adesso vedo.
    Per quanto invece riguarda gli indirizzi email
    c'è qualche sistema?

    M.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Problema: io ho questo codice:
    codice:
    <div class="overtitle">Segreteria</div>
    <h1>Contattaci</h1>
    <?php
    if(isset($_POST['nome'])) {
    // indirizzo e-mail destinatario
    $receiverMail = "xxxxxx@xxxxxx.xx";
    // pulizia dei dati inseriti
    $nome = ltrim(rtrim(strip_tags(stripslashes($_POST['nome']))));
    $email = ltrim(rtrim(strip_tags(stripslashes($_POST['email']))));
    $oggetto = ltrim(rtrim(strip_tags(stripslashes($_POST['oggetto']))));
    $msg = ltrim(rtrim(strip_tags($_POST['msg'])));
    // lettura dell'indirizzo IP
    $ip = getenv("REMOTE_ADDR");
    // formattazione del messaggio
    $msgformat = "Mittente: $nome \nIP del mittente: $ip\nE-mail: $email\n\n$msg";
    // verifica dei campi
    if(empty($nome) || empty($email) || empty($oggetto) || empty($msg)) {
    echo "<h3 class=\"danger\">Il messaggio non &#232; stato inviato</h3>
    <h3 class=\"danger\">Si prega di compilare tutti i campi</h3>"; }
    // verifica dell'indirizzo email
    elseif(!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
    echo "<h3 class=\"danger\">Il messaggio non &#232; stato inviato</h3>
    <h3 class=\"danger\">L'indirizzo e-mail indicato non &#232; valido</h3>"; }
    else{
    // invio del messaggio
    mail($receiverMail, $oggetto, $msgformat, "From: $nome <$email>");
    echo "<h3>Il messaggio &#232; stato inviato correttamente</h3>
    <h3>Risponderemo il pi&#249; presto possibile</h3>
    <h3>Grazie di averci scritto</h3>";
    }
    }
    else{
    // inserimento del form
    echo <<<FRM
    <h3>&#200; possibile inviarci una comunicazione 
     direttamente da questo form</h3>
    <h3>Riempire i campi richiesti 
     e premere il pulsante "Invia"</h3>
    
    
    
    <form action="" method="post">
    <fieldset>
    <label class="row" for="nome">Nome e Cognome:</label>
    
    <input type="text" name="nome" id="nome" size="40" maxlength="40" />
    
    
    <label class="row" for="email">Indirizzo e-mail:</label>
    
    <input type="text" name="email" id="email" size="40" maxlength="40" />
    
    
    <label class="row" for="oggetto">Oggetto:</label>
    
    <input type="text" name="oggetto" id="oggetto" size="40" maxlength="40" />
    
    
    <label class="row" for="msg">Messaggio:</label> 
    
    <textarea name="msg" cols="50" rows="8"></textarea> 
    
    
    <input type="submit" value="Invia" />
    <input type="reset" value="Cancella" />
    </fieldset>
    </form>
    FRM;
    }
    ?>
    A questo punto dove dovrei inserire le stringhe previste?
    codice:
    <form action=" method="post" action="verify.php">
    require_once('recaptchalib.php');
    $publickey = "your_public_key"; // you got this from the signup page
    echo recaptcha_get_html($publickey);
    M.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    No scusate, è che in locale
    non riuscivo a farlo funzionare.
    Adesso è tutto a posto.
    Grazie mille

    M.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Perfetto, installato e funzionante.
    Ripropongo il secondo questiro.
    Se invece dei form si usa l'indirizzo
    di posta elettronica? Vedo che reCAPTCHA
    "nasconde" l'indirizzo, che viene "rivelato"
    solo dopo la soluzione di un "human problem".
    Tuttavia, trattandosi del sito di una istituzione
    scolastica, la cosa è poco fattibile.
    Anzi, i vari indirizzi di posta compreso quello
    di posta certificata deveno essere bene in vista.
    In questo caso come proteggersi da attacchi
    di mail bombing?

    Grazie
    M.

  8. #8
    beh, in questo caso caso utilizzi una funzione javascript che genera l'indirizzo in questo modo l'indirizzo è ben visibile ma non è scritto e non è desumibile direttamente dal codice html in quanto deve essere eseguito il codice javascript

    generalmente i crawler che cercano e-mail non supportano l'esecuzione di javascript quindi questa soluzione, almeno per adesso, ti metterà un pò al sicuro.

    in realtà, se già gli indirizzi sono stati sul sito web in chiaro è probabile che siano finiti in varie liste di spam

    cmq, ecco qui un generato di javascript per le e-mail
    http://www.emaildefender.eu/

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Grazie della segnalazione.
    Cmq non credo sia uno spammer "esterno" e "automatico",
    ma qualche studente - spero non insegnante :-)
    Forse dovrei bloccare il range di indirizzi IP
    con qualche classe apposita, come ip_class...

    M:

  10. #10
    si, ma a prescindere considera che è una cosa che succederà lasciando gli indirizzi cosi sul web

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.