是否可以在以下上下文中注入和执行javascript?还是终止JavaScript字符串?
示例:
var baseURL = "http://example.com/?[USER CONTROLLED INPUT]";
请注意,通过提供以“JavaScript”结尾的字符串,可能会导致未终止的字符串文本\
错误。假设此错误不影响其他用户输入的使用。
注意:浏览器URI编码当前是不同的。
给定以下URL:
example.com?!*'();:@&=+$,/?[]"%-.<>\^_`{|}~#
发布于 2014-03-15 07:35:51
如果这是唯一的注入点,那么我必须同意您的假设,即唯一可能造成的损害是一个未终止的JavaScript字符串文本。
但是,如果有多个注入点,即三个或更多的注入点,出现在这样的一行中:
var x = "[USER CONTROLLED INPUT]", y = "[USER CONTROLLED INPUT]", z = "[USER CONTROLLED INPUT]";
注入JavaScript代码是可能的:
x = \
y = +alert(1)+
z = //
由于这将导致:
var x = "\", y = "+alert(1)+", z = "//";
它要求注入点都在一行中,如JavaScript doesn’t allow literal line breaks in string literals。
https://stackoverflow.com/questions/22389683
复制相似问题