javascript - 公开 JavaScript 源映射有什么合法的安全问题吗?

标签 javascript security browser privacy source-maps

我正在使用错误跟踪软件来报告网络浏览器中发生的任何错误,但我的生产站点上的代码已缩小。因此,调试几乎是不可能的(变量名被更改等)。

我想将完整的源映射文件投入生产,以便我可以调试这些错误,但在这样做时我听说了一些关于隐私/安全的担忧。由于缩小的 JavaScript 可以在没有源映射的情况下被取消缩小和逆向工程,我想知道这是否是一个合理的担忧。我所看到的只是它只会使该过程更快。

将源 map 放入公共(public)领域是否存在合理的安全问题?

最佳答案

与其他人所说的相反,它存在安全方面的问题。

您是对的,因为也可以在没有源映射的情况下分析(取消缩小等)源。如您所知,它永远不会是 100% 安全的。然而,安全是关于能力和努力,以及来自这些的风险。这是关于您的威胁模型和攻击者模型。

现实世界中的攻击者通常不会拥有无限的资源,但对您的软件的了解有限。因此,虽然严格来说没有源映射的混淆 Javascript 代码在技术上等同于实际源代码,因为它无论如何都可以在客户端上运行时被检查,但在现实世界中,在工作、技能和资源方面存在显着差异这个。

因此,虽然我根本不提倡隐蔽性安全,而且我坚信您的代码应该是安全的,可以抵御拥有源代码的攻击者,但在现实中情况并非总是如此,会存在漏洞,并且如果源映射可用,攻击者将更容易发现它们。

关于javascript - 公开 JavaScript 源映射有什么合法的安全问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44336028/

相关文章:

javascript - 仅在主页上加载的脚本出现在其他路由上

security - 如何不对密码进行硬编码?

browser - 用于在浏览器中渲染 BPMN 2.0 的库

javascript - 我的 Angular 2 对象打印在控制台上,但单个属性没有从模板打印

javascript - 在 jQuery 或普通 Javascript 中的操作之间暂停

javascript - 不能一起执行的功能

c# - 是否有可用的 C#/asp.net 安全库?

javascript - 有没有一种安全的方法可以使用 JavaScript 验证 JSON 输入?

javascript - 设置 DOMElement 边界的最快方法是什么?

CSS - 选择元素 - BORDER-RADIUS - Opera 在选择输入后面显示边框?没有 flex 的边界?