Kom ihåg mig?
Home Menu

Menu


Skydda ett flash-spel

 
Ämnesverktyg Visningsalternativ
Oläst 2006-01-31, 10:01 #1
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Tips och tankar uppskattas, problemet bollas enormt här just nu!

Du har ett flash-spel där du spelar spelet och när du "förlorar" skickas poängen till en URL (PHP-sida) som tar emot datan och sparar i databasen. När man tänker efter, kan man decompile:a spelet, ta url:en och skriva in vad för poäng man önskar, och besöka den URL:en. Vips så ligger du 1:a med 100 ggr mer poäng än 2:an.

Hur i hela friden skulle man kunna skydda denna process så att folk inte på måfå kan posta. Allt kan ju fejkas som t.ex. cookies, domäner och även sessioner.

Man kan ju försvåra för användaren genom cookies som inte lagras synliga i html-koden men även där kan den som har mycket tid över se hur flash scriptet läser cookien och rapporterar med den.

Ja, ni förstår nog problemet rätt mycket.

Vad har ni för tankar?

Uppskattas!

Tack!

Robban
Innocast är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 10:27 #2
henning henning är inte uppkopplad
Medlem
 
Reg.datum: Dec 2005
Inlägg: 172
henning henning är inte uppkopplad
Medlem
 
Reg.datum: Dec 2005
Inlägg: 172
Tja ett sätt borde kunna vara att göra det genom att ta de data som användaren matar in i spelet och lägga ihop till en egen sträng, lägga till ett eget känt salt-värde (namn + score + salt) och sedan "MD5-kryptera" detta. Sedan skickar du orginalvärdena + ditt MD5-värde till din url (OBS skicka ej salt-värdet). På serversidan så gör du samma sak, lägger ihop de strängar som du erhöll genom url:en med ditt kända salt-värde. Sedan jämför du det MD5 du fick med där med det MD5 du fick i URL:en. Om detta är samma så är det väldigt troligt att datan är riktig.

Detta kräver dock att ditt salt-värde är hemligt för utomstående. Det har väl tidigare funnits problem med att man har kunnat "dekompilera" flashfiler vad jag har förstått och fått fram data likt denna. Tyvärr så är jag en nolla på flash, så risken för att detta ska kunna göras överlåter jag till någon annan att uppskatta.

/Henning
henning är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 10:37 #3
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Redan påtänkt med kontrollsummor etc... Men som sagt, dekompilerar man koden så finner man även salt-värdet

Ett sätt kan ju vara att hämta salt-värdet från en utomstående url men även detta kan ju ses med egna ögon och hämtas
Innocast är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 11:26 #4
wiggin wiggin är inte uppkopplad
Medlem
 
Reg.datum: Jul 2005
Inlägg: 298
wiggin wiggin är inte uppkopplad
Medlem
 
Reg.datum: Jul 2005
Inlägg: 298
Fråga är hur stor säkerhet du behöver? Om du måste ha maximal säkerhet så får du skippa HTTP anrop.

Om spelet hanterar pengar/vinster så är det ju värt att lägga ner extra tid på det. Men om det bara är en highscore lista så räcker det nog med liknande lösningar som kontrollsummor osv.

Du kan ju dock kontrollera vilket IP-nummer som skickar in resultatet. Om anropet kommer från ett ip annat än din server så nekar du det.
wiggin är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 11:28 #5
Roberts avatar
Robert Robert är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Jan 2004
Inlägg: 2 103
Robert Robert är inte uppkopplad
Klarade millennium-buggen
Roberts avatar
 
Reg.datum: Jan 2004
Inlägg: 2 103
Kan inte klientens spel göra en handshake med din server när det startas så samt att en unik nyckel (används vid generering av hash) genereras och skickas just till denna klient (detta lagrar din server så att denna nyckel även verifieras vid inskickning av highscore etc.).

Detta borde väl göra det lite svårare när nyckeln är okänd fram tills det att spelet startar.... om du hänger med på min virriga förklaring...
Robert är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 11:41 #6
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Citat:
Originally posted by wiggin@Jan 31 2006, 12:26
Fråga är hur stor säkerhet du behöver? Om du måste ha maximal säkerhet så får du skippa HTTP anrop.

Om spelet hanterar pengar/vinster så är det ju värt att lägga ner extra tid på det. Men om det bara är en highscore lista så räcker det nog med liknande lösningar som kontrollsummor osv.

Du kan ju dock kontrollera vilket IP-nummer som skickar in resultatet. Om anropet kommer från ett ip annat än din server så nekar du det.
Just nu är det bara highscore, men skulle vara skönt med en generell lösning som kan användas även när priser är inblandat.

Problemet med IP nr är väl att flash-spelet körs från klientsidan så den rapporterar väl inte serverns ip?
Innocast är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 11:43 #7
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Citat:
Originally posted by Robert@Jan 31 2006, 12:28
Kan inte klientens spel göra en handshake med din server när det startas så samt att en unik nyckel (används vid generering av hash) genereras och skickas just till denna klient (detta lagrar din server så att denna nyckel även verifieras vid inskickning av highscore etc.).

Detta borde väl göra det lite svårare när nyckeln är okänd fram tills det att spelet startar.... om du hänger med på min virriga förklaring...
Mjodå, förstår precis hur du tänker. Men om vi säger så här då, ja dekrypterar flash filen... Ser url:en som anropas för att få en nyckel... Anropar den i webbläsaren och får nyckeln... Använder nyckeln i anropet för att registrera highscoret :-)
Innocast är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 12:06 #8
henning henning är inte uppkopplad
Medlem
 
Reg.datum: Dec 2005
Inlägg: 172
henning henning är inte uppkopplad
Medlem
 
Reg.datum: Dec 2005
Inlägg: 172
Kanske kan detta vara ett alternativ:

htt p://www.fla shin crypt.com/product.htm

/Henning
henning är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-31, 22:01 #9
herkules herkules är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 148
herkules herkules är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 148
Har själv haft samma problem. För att få maximal säkerhet måste du använda dig av flash communication server, men den är svin dyr (60 000+).
Vad är det för spel, vad gör man?
herkules är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-02-01, 10:46 #10
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Innocast Innocast är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 688
Citat:
Originally posted by henning@Jan 31 2006, 13:06
Kanske kan detta vara ett alternativ:

htt p://www.fla shin crypt.com/product.htm

/Henning
Ska kika på den!
Innocast är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 21:31.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017