[AS3] Encryptie Flash naar PHP

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Leon-
  • Registratie: Juli 2005
  • Laatst online: 20:30
Ik ben bezig met een Flash applicatie die gaat communiceren met een PHP script om scores in een database te laden waar eventueel dingen mee te winnen zijn.

Het volgende probleem loop ik tegen aan:

Flash is erg gemakkelijk te decompilen, dus een simpele post die wordt aangemaakt en verstuurd naar een PHP bestand is makkelijk te kraken. Dus niet veilig genoeg om scores waar prijzen mee te winnen op te slaan.

Nu kan ik wel AS3Crypto gaan gebruiken (http://code.google.com/p/as3crypto/) maar wanneer je de sleutel weet kun je die post request alsnog faken. Flash is immers makkelijk te decompilen waar de sleutel hardcoded in staat, dat is dus ook niet de oplossing.

Het is misschien wel mogelijk maar dan moet er een manier zijn waardoor alleen de flash applicatie bij de sleutel kan en de gebruiker van de flash applicatie niet. Alleen is dit volgens mij niet mogelijk?

Heeft iemand een idee hoe ik dit zou kunnen oplossen?

Acties:
  • 0 Henk 'm!

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Een challenge response achtig systeem opzetten? Snelle search: http://wiki.mikrotik.com/wiki/API_ActionScript_3_class

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Acties:
  • 0 Henk 'm!

  • Spiral
  • Registratie: December 2005
  • Niet online
Als je gebruik maakt van b.v. AMFPHP of Weborb. Dan kan je redelijk eenvoudig een beveiligde verbinding maken d.m.v. SSL. In de services-config.xml geef je aan dat je wilt werken met secure amf in de channel-definition geef je de attribuutnaam class de volgende waarde mee mx.messaging.channels.SecureAMFChannel

To say of what is that it is not, or of what is not that it is, is false, while to say of what is that it is, and of what is not that it is not, is true. | Aristoteles


Acties:
  • 0 Henk 'm!

  • Leon-
  • Registratie: Juli 2005
  • Laatst online: 20:30
Spiral schreef op dinsdag 15 december 2009 @ 15:38:
Als je gebruik maakt van b.v. AMFPHP of Weborb. Dan kan je redelijk eenvoudig een beveiligde verbinding maken d.m.v. SSL. In de services-config.xml geef je aan dat je wilt werken met secure amf in de channel-definition geef je de attribuutnaam class de volgende waarde mee mx.messaging.channels.SecureAMFChannel
AMFPHP ziet er goed uit! Ik ga het testen en laat het weten :D Bedankt!

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Dit is niet mogelijk. Je situatie is heeft hetzelfde probleem als veel DRM oplossingen. Je kunt de gehele communicatie wel enorm gaan beveiligen, maar 1 van de ingangen van deze beveiligde tunnel draait altijd op een untrusted omgeving. De gebruiker kan te alle tijden achterhalen hoe hij een score op kan sturen.

Er zijn eigenlijk maar twee mogelijke oplossingen:
- Zorgen dat het hacken niet de moeite waard is (veel obfuscaten en kleine of geen prijsjes)
- Zorgen dat een deel van het spel zich op de server afspeeld zodat een hacker niet enkel de score moet uploaden, maar eigenlijk een groot deel van het spel moet simuleren.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 01:33

MueR

Admin Tweakers Discord

is niet lief

Lang, lang geleden heb ik voor een exploitant van online spellen gewerkt. Hij had er belang bij dat de scores e.d. compleet veilig waren. Het ging om een casino namelijk. Na een aantal pogingen om een beveiligde verbinding te maken is gewoon besloten om alle berekeningen op de server te laten plaatsvinden. Door middel van een aantal variabelen terug naar de flash te sturen wist de animatie wel of er lampjes moesten gaan knipperen of niet.

Je zit met het probleem dat je de complete flash applicatie niet kan vertrouwen. Deze draait compleet bij de bezoeker. De enige methode dat je die waterdicht afgeschermd krijgt, is het afhandelen op de enige trusted omgeving: je server.

Anyone who gets in between me and my morning coffee should be insecure.

Pagina: 1