Angular 2 与 AngularJS CSP(内容安全策略)绕过敏感性

时间:2021-06-25 06:41:48

标签: angularjs angular security content-security-policy

Angular 2 是否也受到 AngularJS 的 CSP 绕过问题的影响?

来自https://storage.googleapis.com/pub-tools-public-publication-data/pdf/45542.pdf

"为了达到目的,AngularJS会解析页面指定部分的模板并执行。可以考虑控制Angular解析的模板的能力 相当于执行任意 JavaScript。默认情况下,Angular 使用 eval() 函数来评估沙箱表达式,这是 CSP 策略禁止的,没有 unsafe-eval 关键字。然而,Angular 还附带了一个 “CSP 兼容模式”(ng-csp),其中的表达式 通过执行符号执行来评估,使其 尽管 CSP 可以调用任意 JavaScript 代码。

因此,可以加载 Angular 的攻击者 CSP 中列入白名单的域中的库可以将其用作 绕过脚本执行保护的 JS 小工具。这是 即使被攻击的应用程序没有使用 Angular 本身——唯一的要求是 Angular 将托管在列入白名单的域之一上的库 脚本-src。因此,仅仅存在任何 Angular 库 在受信任的域中会破坏 CSP 提供的保护。”

0 个答案:

没有答案