gpt4 book ai didi

javascript - 调用覆盖和卡住的函数

转载 作者:行者123 更新时间:2023-11-30 12:24:08 26 4
gpt4 key购买 nike

我正在构建一个安全框架,它会注入(inject)一个始终首先执行的 javascript 文件,并阻止某些要执行的函数。开发人员将制作自己的网络应用程序,脚本将确保无法调用某些功能。

让我们假设“阻塞”脚本是这样的:

window.alert = function(){Object.freeze(this)}

有没有什么方法可以让应用程序在不使用 iframes/外部文件的情况下绕过这个 block ?delete(window.alert) 在这种情况下不起作用。

最佳答案

如果您不能首先停止该脚本运行,则不会,否则您可以将原始 alert 分配给其他东西:

var oldAlert = window.alert;
window.alert = function(){Object.freeze(this)}

您如何/为何使用 alert?如果它用于调试,你最好使用 console.log。如果您使用它来通知用户,那么专用模式可能是更好的选择

根据您更新的问题,这取决于您的框架是如何加载的。

假设您将脚本提供给开发人员使用,在这种情况下,他们可以很容易地更改脚本的功能。如果代码在不属于您的环境中运行,那么您可以认为它不安全。浏览器插件可以阻止脚本,这将绕过基于 javascript 文件的任何安全措施。

关于javascript - 调用覆盖和卡住的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30078394/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com