Steffest Digitale Pulptuur

Reacties
Het was dan ook puur voor fun.
De valsspelers zouden toch ook iets moeten krijgen, die hebben bewezen een echte geek te zijn. Maar 'most cute' is wel niet bewezen :) Een goed beveiligde poll voor 'must cute valsspeler'? Teveel van het goeie zegt ;)

Goedles - 22/02/2009 22:25:59 http://www.goedles.be


Tuurlijk mag jij dat zeggen Steffest. De poll was dan ook een knipoog en met een grote glimlach op gezet. Van de getrishte lijst heeft de helft er niets mee te maken. Maar is het door hun 'fan'-basis dat ze ineens in de duizend stemmen hebben. Daarom dat er ook 2 winnaars zijn en er niemand buiten shot blijft! :)
Imke Dielen - 22/02/2009 22:37:40 http://imkedielen.wordpress.com


prachtig ;)
Pvw - 23/02/2009 09:21:25 http://www.nettooor.be


Deze geek zou niet de moeite hebben gedaan om al die urls op te zoeken. Ik zou gewoon WireShark hebben opgestart, 1 x gestemd hebben en dan gekeken welke URL met welke params werd aangesproken. ;-)
Mr Berre - 23/02/2009 11:20:36 http://YUYVGPGZAKMF@spammotel.com


@ Mr Berre
Ge hebt dan ook verschillene gradaties van geeks he :-)

Persoonlijk vind ik het meestal interessanter om te gaan kijken hoe iets in elkaar steekt (want stel dat er ergens nog een hash wordt berekend, dan gaat ge toch in de code moeten kijken hoe dat juist gebeurd)
Steffest - 23/02/2009 12:38:24 http://http//www.stef.be


Hehehe, vette post. En ik deel wel een beetje je aandachtrekkerij-mening maar je hebt het niet van mij hé. Vrouwen :)
Tobit - 10/03/2009 11:49:25 http://tobiasjanssens.blogspot.com/2009/03/most-cu



Commentaar toevoegen
Je reactie
Je naam
Url (van je website of blog of ....)
Antispam
Om zeker te zijn dat je geen Spam-robot bent, moet je even de volgende vraag beantwoorden:
Wat is het kleinst? Olifant, mens, kip, konijn, mier

Geef je commentaar op:
How to cheat on online polls like #MCMG

Vorig weekend opende Imke Dielen de "Most cute Male Geek" verkiezing.
Eigenlijk wilde ik dat alles gewon negeren, want - en ik mag dat zeggen he Imke - ik vond het vooral wat aandachttrekkerij, tot ik vrijdagavond zag dat @wolfr 9000+ stemmen achter zijn naam had staan.
Onder het motto "Allaai gast, alsge trisht, doegedan injees goe" oftewel "Wasdana, nen antwaarpenaar kan toch beter trishen dan die Netlash-gasten zekers" heb ik vrijdag dan toch eens een scriptje gemaakt om een mede-antwerpenaar van wat stemmen te voorzien. (Vooral ook omdat imke zelf zeer uitnodigend was)
Hier een kleine handleiding:

Stap 1 bij elke webapplicatie is altijd dezelfde: rechts klikken en "view source" kiezen.
Daar lezen we <noscript> <a href="http://answers.polldaddy.com/poll/1357963/">View Poll</a></noscript>
Wat de url is van de quiz op polldaddy.
Het meeste interessante op die pagina is de "vote" knop, die stuurt immers de actie door naar de webserver.

de actie is javascript:vote(1357963,0,0,1,10);
OK, dan even kijken waar die javascript staat.
in de HTML code staat <script type="text/javascript" language="javascript" src="/js/common.js?x=35"> <script src="js/common.js?x=35" type="text/javascript">
dus de url waar de javascript code staat is http://answers.polldaddy.com/js/common.js?x=35

daarin staat (in versimpelde versie)

function vote(id, poll_other, rand, poll_type,u)
{
for(i=0; i {
if(document.formPoll.elements[i].checked)
{answerString +=document.formPoll.elements[i].value + ',';}
}
location.href = '/vote/?va='+u+'&pt='+poll_type+'&r='+rand+'&p='+ id +'&a='+ answerString +'&o='+ otherText;
}

aha

de code location.href zegt tegen de browser om naar en bepaalde url te gaan.
en welk url dat is wordt mede bepaald door de variablelen die we aan de functie vote meegeven.
De "vote" knop roept javascript:vote(1357963,0,0,1,10)op, waardoor we al de url /vote/?va=10&pt=1&r=0&p=1357963&a='+ answerString +'&o=

om de waarde van answerstring te kennen, kijken we weer naar de HTML broncode van de poll waar we <input type="checkbox" id="PDI_answer6978941" value="6978941"></input> atog terugvinden.

answerString vervangen we door "6978941," wat de waarde is van de checkbox voor atog + een komma (dat is het + ',' stuk in de vote functie)

de volledige string wordt dan http://answers.polldaddy.com/vote/?va=10&pt=1&r=0&p=1357963&a=6978941,&o=
en inderdaad: Als we deze url oproepen in de browser, zien we dat er 1 vote bij atog is bijgekomen.

We zouden dan als een gek op refresh kunnen gaan klikken, maar na een paar 100 keer heeft polldaddy ook wel door dat er iets niet klopt en weigert dan nog nieuwe stemmen te tellen van je PC.
Je krijgt dan het volgende

Als je nu een andere PC zou gebruiken, zou je met die URL wel weer verder kunnen stemmen, maar handig is dat niet.
Gelukkig zijn daar verschillende oplossingen voor, en een oplossing die voor url-oproepen goed werkt is een zogenaamde "cgi proxy"
Dit is een script dat op een webserver draait, en als doorgeefluik dient voor webpagina's, zodat de doelwebserver (polldaddy) niet kan zien waar het verzoek eigenlijk vandaan komt.
Bovendien past zo'n proxy script nog wat slimmigheden toe om zich telkens als een andere "pc" te vermommen, waardoor het veel minder kans heeft ook geblokeerd te worden.
Je kunt zo'n script zelf op je server zetten, maar er zijn ook lijsten met publieke cgi proxies (die zijn vrij te gebruiken, al moet je er wel een kwak reclame bij nemen)
de URL http://anonymouse.org/cgi-bin/anon-www.cgi/http://answers.polldaddy.com/vote/?va=10&pt=1&r=0&p=1357963&a=6978941,&o= bijvoorbeeld roept de polldaddy stem pagina op via zo'n proxyscript zodat je zelf buitenschot blijft.
Je kunt zoveel proxy scripts tegelijk gebruiken als je wil, de webserver zal ze immers als verschillende verzoeken aanschouwen.
Dan is het nog zaak dat om de zoveel tijd automatisch te laten herhalen via een cron of een autorefresh en klaar, de tijd doet de rest.

Ik heb het script ongeveer 40 uur laten lopen en in die tijd heeft het ruim 100.000 stemmen uitgebracht.
en voor alle duidelijkheid: atog had niets te maken met deze valsspelerei - hij is uiteraard de eerlijkheid zelfve (EN een terechte winnaar! :-) )

Dit was natuurlijk maar een leutigheids-poll, maar de bottomline is: als je een online tool of spel gebruikt waarbij er ECHT iets belangrijks te winnen valt ... spendeer dan meer dan de helft van je resources aan de beveiliging ervan, want gegarandeerd dat er hopen nerds rondlopen die niets liever doen dan je actie om zeep te helpen door het systeem te kraken.