Bug ID 629334: Portal Access: JavaScript expressions in parentheses may be rewritten incorrectly

Last Modified: Apr 19, 2021

Bug Tracker

Affected Product:  See more info
BIG-IP APM(all modules)

Known Affected Versions:
11.6.0, 11.6.0 HF1, 11.6.0 HF2, 11.6.0 HF3, 11.6.0 HF4, 11.6.0 HF5, 11.6.0 HF6, 11.6.0 HF7, 11.6.0 HF8, 11.6.1, 11.6.1 HF1, 11.6.1 HF2, 11.6.2, 11.6.2 HF1, 11.6.3, 11.6.3.1, 11.6.3.2, 11.6.3.3, 11.6.3.4, 11.6.4, 11.6.5, 11.6.5.1, 11.6.5.2, 11.6.5.3, 12.0.0, 12.0.0 HF1, 12.0.0 HF2, 12.0.0 HF3, 12.0.0 HF4, 12.1.0, 12.1.0 HF1, 12.1.0 HF2, 12.1.1, 12.1.1 HF1, 12.1.1 HF2, 12.1.2, 12.1.2 HF1, 12.1.2 HF2, 12.1.3, 12.1.3.1, 12.1.3.2, 12.1.3.3, 12.1.3.4, 12.1.3.5, 12.1.3.6, 12.1.3.7, 12.1.4, 12.1.4.1, 12.1.5, 12.1.5.1, 12.1.5.2, 12.1.5.3, 12.1.6, 13.1.0, 13.1.0.1, 13.1.0.2, 13.1.0.3

Fixed In:
14.0.0, 13.1.0.4

Opened: Nov 18, 2016
Severity: 3-Major

Symptoms

In some cases Portal Access rewrites incorrectly JavaScript expressions enclosed into parentheses.

Impact

JavaScript code may not work correctly. In some cases, JavaScript code becomes syntactically incorrect.

Conditions

JavaScript code with the following constructions: - (a.b) (...) - (a[b]) (...) - (b) = ... Assuming 'b' is an element to be rewritten. Some examples: - (window.open) ("", "_blank"); - (form["submit"])(); - (location) = "http://some.org/";

Workaround

Use iRule to remove parentheses around JavaScript expressions where necessary.

Fix Information

Now JavaScript expressions in parentheses are rewritten correctly.

Behavior Change