Angular 阻止未经授权的 HTTP 调用

Angular block unauthorized HTTP calls

我不知道这个安全漏洞是不是真的存在,或者我只是吃了一顿辛辣的晚餐后变得偏执了。

在一个典型的 Angular 应用程序中,有任意数量的未知 npm 包以传递方式拉入。我想知道是否有一些狡猾的 npm 包可以在我不知情的情况下获取我的应用程序数据并将其发送到某个服务器。

绕过 HTTP_INTERCEPTORS 是微不足道的,所以他们作为保安人员没有太大帮助。

在 browser/app 将 运行 的 PC 上使用 Windows 防火墙规则是唯一的硬性解决方案吗?

是的,你担心这件事是对的。事实上,有许多 npm 个包可能包含危险代码。一般来说,我建议您只使用“非常知名的软件包”。有一些软件可以帮助您,例如“bytesafe”。这是一篇关于它如何工作的更详细的文章 https://bytesafe.dev/posts/npm-security-issues-2021/(无营销意图)。如果您不打算使用此类软件,则应始终使用以下方式检查您的软件包:npm audit(例如:npm audit –audit-level=critical)并相应地更新软件包或使用 npm audit fix.

我看到你在谈论“Windows 防火墙规则”。您站点所在的服务器可能是 Linux 或任何其他类型的 OS。有一个关于服务器安全和安全架构的完整世界。例如,您是在云中还是在本地,这在很大程度上取决于。因此,每种方法都有安全最佳实践,您应该根据自己的情况遵循这些最佳实践。