Form con antispam?

  • Creatore Discussione Creatore Discussione ozlacs
  • Data di inizio Data di inizio

ozlacs

Utente Attivo
1 Dic 2005
42
0
0
40
Decollatura (CZ)
www.ozlacs.it
ciao a tutti, ecco il mio problema:

ho un form (un guestbook) che da un po di tempo è sotto il dominio dello spam, a volte mi ritrovo a cancellare anche un centinaio di messaggi.
dato che questi messaggi provengono tutti dallo stesso ip, ho creato un semplice sistemino per bloccare gli ip nelle pagina del suddetto guestbok.
solo che questa mattina mi sono ugualmente ritrovato una cinquantina di msg di spam (con le date di inserimento a distanza di qualche secondo l'una dall'altra), provenienti tutti dall'ip bloccato.
eppure provando con il mio ip il blocco fungeva :ilpirata:

mi chiedevo, dovrei mettere un qualche sisttema antispam più avanzato?
avevo pensato a uno di quelli con l'immagine con il codice di conferma, dite che potrebbe andare bene?
 
Codice:
<!-- #include file="stringa_mysql.asp" -->
<%
	ip_utente = Request.ServerVariables("REMOTE_ADDR");
	
	var Cn = Server.CreateObject("ADODB.Connection");
		Cn.Open(stringa);
		
	var controlla = Cn.Execute("SELECT * FROM ip_bloccati WHERE ip = '" + ip_utente + "' AND stato = 'OFF'");
	
	if (controlla.EOF) {
		var controllo = "X";
		}
		
		controlla.Close();
		Cn.Close();
		
	if (controllo != "X") {
		Response.Status = "<h1>HTTP 403.6 Forbidden - IP address rejected</h1>";
		Response.Write(Response.Status);
		Response.End();
		}
%>

niente di chè
 
Ah usi addirittura una tabella per gli IP bloccati? Wow :)

Potresti semplificarla molto...

if (Request.ServerVariables("REMOTE_ADDR") == "10.10.10.10")
{
Response.Write("Vai a morì ammazzato!");
Response.End();
}

In sostanza è lo stesso ma è un controllo statico; puoi aggiungerne con || (or logico) naturalmente...

Prova!

PS. W JScript ;)
 
vabbè, uso il db perchè ho anche messo un pannellino di controllo per aggiungere, modificare o eliminare gli ip.
si, è proprio la stessa cosa, io gli ip da confrontare li prendo dalla tabella, metre come dici tu l'ip di confronto glielo passo direttamente nell'if.

però non credo che possa risolvere la cosa, proprio per il fatto che fanno la stessa cosa.
in tutti i modi, come cavolo fanno a bypassarlo?
è sempre un script lato server, posso capirlo se era uno javascript lato client...:confused:
 
Magari la classe di IP è particolare e REMOTE_ADDR non lo rileva come tale... sono messaggi in italiano?

Comunque, non sono un hacker quindi non saprei come, ma il blocco dell'IP è by-passabile tranquillamente da un attacco a forza bruta...

Nonsei il solo ultimamente a cui capita!
 
sono in inglese, roba del tipo "free on-line poker, penis enlargment. ecc", con link ed email moltro strane, una classico.
l'ip è sempre quello (213.240.228.11, posso scriverlo, no?), e non mi sembra tanto strano.
la cosa particolare è che a volte sono più messaggi, a volte dieci, a volte cinquanta, inseriti a pochi minuti o secondi l'uno dall'altro.
e tieni presente che sul form è anche presente una validazione lato server, ed è previsto il rilascio di un cookie per evitare l'inserimento di più messaggi di seguito dallo stsso utente.

anch'io non sono un hacker (anche se mi piacerebbe:D ), sono tutti controlli bypassabili facilmente, però deve essere qualcuno con molta pazienza...:mad:
 
perchè non provi a permettere di firmare solo dopo un'autenticazione? massimo permetti l'inserimento della mail, gli invii una password a caso e solo se si logga può inserire un messaggio

che palle? lo so :p
 
sul sito ho già un sisttema di registrazione utenti, con tanto di mail di conferma registrazione con codice casuale, però mi sembrava esagerato chiedere l'autenticazione per il guestbook, anche se ci avevo pensato.

in alternativa, quello di cui avevo parlato nel primo post, ovvero l'immagine con un codice random da trascrivere in un campo del form, per poter inserire il messaggio?
l'ho visto su parecchi siti, sembri che vada di moda...
di certo non aumenterà la sicurezza, ma almeno ci si dovrà perdere più tempo, e magari alla fine rinuncia...:o
 

Discussioni simili