Avatar billede milandt Nybegynder
07. april 2008 - 21:04 Der er 8 kommentarer og
1 løsning

Detect bot

hej eksperter

jeg har et website hvor man kan stemme på billeder, og rate dem fra 1 til 10. det fungerer ved at der igennem noget ajax bliver kaldt en url som kunne være /vote.aspx?picid=12345&rate=8&random=0.0123456

picid er billedet
rate er den stemme man ønsker at afgive
random er blot javascriptet der indsætter Math.random() for at undgå problemer med cache

jeg logger IP adresser, således at det ikke er muligt at stemme på det samme billede to gange. Gør man det alligevel har jeg mulighed for at opdatere den tidligere afgivende stemme. ganske smart..

problemet er at på det seneste er der blevet afgivet uforholdsvis mange stemmer over ganske kort tid på enkelte billeder, som er blevet rated op på et gennemsnit på 9.5+ hvilket er helt urealistisk set i en større sammenhæng. jeg kan også se at der er afgivet en del stemmer på pågældende billeder hvor IP adressen tælles op med 1 og afgives hvert andet minut (plus minus nogle sekunder).

hvordan kan jeg sikre mig at det er et menneske der sidder bag skærmen, uden at gøre det for kompliceret? dvs uden brug af chapta eller lignende. kan jeg i javascript eller på server siden tjekke på nogle klient info som man ikke kan tænkes at have lagt ind i en bot, og som kan give mig et fornuftigt svar på om det er en bot eller et menneske i en browser der afgiver stemmen?
Avatar billede arne_v Ekspert
07. april 2008 - 21:14 #1
Kraeve login for at stemme maa vaere det mest effektive.

Captcha boer lukke computere ude.

Hvis den forrrige side der genererer linket genererer den random vaerdi server side
og gemmer den i session kan du checke i vote.aspx om den er der - det vil kraeve at den
foregaaende side kaldes og parses af en eventuel bot. Det er muligt men trods alt
lidt mere arbejde.
Avatar billede milandt Nybegynder
07. april 2008 - 22:27 #2
tak for forslaget. tror en session random der bliver sat på siden og læst på vote.aspx umiddelbart er den bedste løsning.

login tror jeg ikke vil være den rette løsning. dels kan en robot programmeres til at logge ind, og dels vil jeg afskære rigtig mange fra at stemme.

captcha som jeg selv var inde på vil være for besværligt, omend det mest sikre.

hvis der ikke dummer andre forslag op der er mere skudsikre som evt kan kombineres med ovenstående, så er points dine.
Avatar billede milandt Nybegynder
07. april 2008 - 22:27 #3
dukker*
Avatar billede milandt Nybegynder
08. april 2008 - 23:51 #4
hvis man har spoofet en IP, så vil man ikke kunne modtage noget svar fra webserveren, vil man? - idet webserveren vil sende svaret til en forkert IP..?

hvis jeg laver en redirect fra vote.aspx til en anden side der skal bekræfte den afgivne stemme, ved en session variabel der er fastsat på vote.aspx og bliver kontrolleret på en anden side, vil det så ikke være en 100% skudsikker kontrol i forhold til at IP adressen kan/er falsk?
Avatar billede arne_v Ekspert
09. april 2008 - 01:09 #5
Korrekt.

Men at de ligger 1 til adressen fremfor at tage en random gør at jeg tror at de
har en serie på 254 numre og at de derfor måske godt kan læse svar.
Avatar billede milandt Nybegynder
09. april 2008 - 09:44 #6
det er ikke kun een serie der bruges. tror det er mere tilfældigt end som så. har bare set at der nogen gange måske i 20-30 IP-adresser i træk lægges 1 til, og så skiftes til et andet range i lidt tilfældig orden.
Avatar billede milandt Nybegynder
12. april 2008 - 18:26 #7
der kommer nok ikke yderligere input til dette. synes det der er helt klart er brugbart.

læg et svar.
Avatar billede arne_v Ekspert
12. april 2008 - 19:50 #8
ok
Avatar billede milandt Nybegynder
12. april 2008 - 23:02 #9
og tak
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester