此程序會調用可覆蓋變量的函數,這可能會為攻擊者打開方便之門。
對于可覆蓋已初始化的變量的函數,攻擊者能夠通過它影響依賴被覆蓋變量的代碼的執行情況。
函數可覆蓋變量。
例 1:如果攻擊者為下面這段 ColdFusion 代碼中的 varName 提供惡意值,則對 SetVariable() 的調用可能會覆蓋所有任意值,包括 #first#。在這種情況下,如果包含 JavaScript 的惡意值覆蓋 #first#,則該程序會很容易受到 Cross-Site Scripting 攻擊。
<cfset first = "User">
<cfscript>
SetVariable(url.varName, url.varValue);
</cfscript>
<cfoutput>
#first#
</cfoutput>
[1] Standards Mapping - Common Weakness Enumeration - (CWE) CWE ID 473