27. juni 2007 - 07:56Der er
21 kommentarer og 2 løsninger
Undgå Spam i gæstebog.
Hejsa. Min GB bliver i øjeblikket angrebet meget af Spam. Er der en effektiv løsning på dette? Lige nu har jeg et IP filter hvor jeg tilføjer spamernes IP adresse og så kan de ikke skrive i GBen mere. Det har virket i lang tid men nu er den gal igen og det er hele tiden en ny IP adresse hvorfra der bliver skrevet. (Der ligger over 200 IP adresser i filteret nu...) Hjæææælp...
og så kan du serverside tjekke om formfeltet "valider" er Yes eller No - er det No er det en spamrobot, er den Yes er det en bruger og du kan indsætte indlægget i gæstebogen.
Jeg har et par gæstebøger, som har været pested af spam. Den mest effektive måde at sortere disse spamindlæg fra (og CAPTCHA scriptet jeg har forhindrer det ikke, så de må taste skidtet ind manuelt) er, at lave en instring kontrol af tilstedeværelsen af keywords som f.eks. http www com like site ... Hvis yes så sorteres de fra.
Jeg har skrevet om det tidligere, søg på hnteknik og de finder sikkert kodeeks. eller vend tilbage.
Og instr(strEmail, "com") skal laves om til instr(Request.Form("Email") , "com")
Du kan selv ændre listen til de ord, der dukker op hele tiden. Det har taget pusten fra spammerne, der har det sidste halve år kun været en som røg ind, men det kan man jo aldrig undgå. Husk at have en admin slette mulighed.
Hmmm. Jeg har testet det ved selv at lave et indlæg i GBen og skrive "http" og der blev jeg stoppet... Fint nok. Men nu er der igen blevet spammet og der indgår "http" også. Hvordan kan det lade sig gøre??
Hmmm - kan de have været så smarte, at det er kodet med f.eks. escapekoder, så skal vi bare checke for det. Kan du gå ind i databasen og se, hvordan karaktererne er repræsenteret!
Hvis den fanger, når du skriver http og ikke i det andet tilfælde er det nok fordi spammeren skjuler teksten på en eller anden måde.
Det kan jo være, at dit InsertAp(Request.Form("Body"))
gør noget ved koden, så 'læses' rigtig.
Du skulle nok tilføje minimum script escape og % til din liste. Jeg bør nok snart lave scriptet om så det læser fra en array, som man blot tilføjer tekst til ect. fra en db.
Så har jeg lavet den ændring og tilføjet de ekstra ord. Så må vi se om det hjælper. Jeg krydser i hvert fald fingre. :-) PS. Siger du lige til når du har lavet scriptet om så det læser fra en DB?? ;-)
Jo - jeg skal nok annoncere det, men når vi har kredset de mest bruge ord ind falder det hele til ro. Jeg har en db 2 som samler skramlet op og det ser ud til at tingene dør ud, når de opdager, at man fanger skidtet - det er også et bevis på, at det nok ikke er robotter men mennesker som udfylder disse spam meddelelser. Men helt undgå kan man nok ikke.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.