Prev | Current Page 390 | Next

Rich Cannings, Himanshu Dwivedi, Zane Lackey, and Alex Stamos

"Hacking Exposed Web 2.0: Web 2.0 Security Secrets and Solutions"


Consider the following Flash application that takes user input:
class VulnerableMovie {
static var app : VulnerableMovie;
function VulnerableMovie() {
_root.createTextField("tf",0,100,100,640,480);
if (_root.userinput1 != null) {
getURL(_root.userinput1);
}
_root.tf.html = true; // default is safely false
_root.tf.htmlText = "Hello " + _root.userinput2;
230 Hacking Exposed Web 2.0
if (_root.userinput3 != null ) {
_root.loadMovie(_root.userinput3);
}
}
static function main(mc) {
app = new VulnerableMovie();
}
}
Imagine that this code came from downloading an SWF and decompiling it. This
Flash application takes three user-definable inputs??”userinput1, userinput2, and
userinput3??”via URL parameters in the source of the object tag like this:

value="http://example.com/VulnerableMovie.swf?userinput2=dude">

Or via the flashvars parameter:

378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402
news news news news news