actionscript 3 - Security: Achievement and score API in AS3 -
over years i've become uber-nerd when comes flash game development. i'm thinking looking using skills helping other game-developers out there.
i want develop api in as3 allow developer (as start) following:
- display dialogue lets user log "account" (hosted on site).
- send score/value website , attribute logged in user.
- unlock achievement (achievements set developer in web interface - key of type use api.
- display high scores, other players profiles in-game, etc (show stats in-game).
all easy enough develop straight off bat. however; becomes frustrating security. i'm not expecting indestructible solution i'm aware isn't possible, most defensive way approach this?
here issues can think on spot:
- the big 1 - people stealing api key via man-in-the-middle attack.
- highscore injection, false achievement unlocks.
- decompiling swf , stealing api key.
- using api key create dummy flash application , send random data highscores.
- altering api don't need logged in, etc.
one thought i've had converting api component there's no access code (unless decompile). problem here it's not friendly developers, though allow me create own graphics ui (rather coding many, many sprites).
private/public keys won't work unless there protection against decompiling.
i'm beginning wonder if idea dead end.
any advice on securing (or parts of it) great.
- against man-in-the-middle https seems option. may have vulnerabilities, it's way better home-made solution. problem you'll need actual certificate authorized center, because activex-based flash plugin not trust self-signed certificate.
- should not possible without decompilation
- secureswf reasonably high settings (code execution path obfuscation , encrypted strings) should beat decompilers. sure, swf can examined hex editor, require very determined hacker.
- should not possible without decompilation
- api should on server , api function require user context (loaded https)
also add encryption flash shared objects\cookies. had altered savegames using simple hex editor, because objects in amf format. encryption depend on swf decompilation, since using secureswf... or move savegames on server.
Comments
Post a Comment