So I was looking at this Flash-based website which used a really good security measure:
it encrypted all GET and POST data using AES.
This creates a ‘couple’ probs when testing/understanding how the app works, since we can’t easily see what is being sent to/from the server (by/to the flash swf running in the browser).
Ironically, because it is hard to see and change these values, apps that protect the client/server traffic this way usually have tons of server-side vulnerabilities, since it is easy to assume (by the devs and QA) that those values will never be changed (and it also makes it very hard to do any testing outside what the normal UI allows).
For example if we look at the login sequence, we will see that when the user submits its login details (entered via the Flash GUI), there is a request to
/post.ashx that looks like this: