Abstract:
The behavior of browser applications, such as web browsers, can be controlled in part by script-based instructions present within documents read by those browsers. To analyze such scripts in an efficient manner, a script analyzer can identify the scripts in the document, divide them into script modules, and order the modules to represent an interpretational flow. The script can be interpreted and executed on a line-by-line basis and its behavior analyzed. Prior to interpretation, the scripts can be reviewed for delay conditionals, and such statements can be modified for more efficient interpretation. Additionally, if, during interpretation, the script generates new script, or modifies existing script, such new scripts can be themselves interpreted. External function calls made by the script can be intercepted and responded to in a generic fashion, limiting the need to create a document object model, based on the document's data, solely for script analysis purposes.