gpt4 book ai didi

防御输入窃取攻击的Javascript代码片段

转载 作者:行者123 更新时间:2023-12-03 11:13:17 24 4
gpt4 key购买 nike

我想要一个 JavaScript 代码来保护网页元素免受输入窃取攻击。我希望击键被注册的事件处理程序拦截,并在网页上的 JavaScript 中被屏蔽,以防止各种 JavaScript 攻击。

最佳答案

您要求的 JavaScript 代码能够以其他 JavaScript 代码无法拦截击键的方式拦截击键,不幸的是,这是不可能的,因为您的代码必须比其他代码具有特权,而这不是 JavaScript 的工作方式。

键盘记录器是一个无法在应用程序层解决的严重问题,尤其是在您试图保护的攻击者已经控制了 JavaScript 的情况下使用 JavaScript。即使你能做到,那么你可能仍然需要将这些击键发送到某个地方,而其他恶意 JavaScript 代码可以在传输过程中拦截它。没有简单的方法来防止键盘记录程序。阅读 Anti-Keylogger Myths Trusteer 的论文是一个良好的开端。

您必须确保任何恶意 JavaScript 代码都不会在用户不知情且违背用户意愿的情况下执行(因为您的用户将始终能够在您的页面上下文中执行任意代码,如果没有别的,可以使用书签,你只需要处理它)。如果您在页面中包含广告或某些第三方小部件,请使用 Caja 等技术或 ADsafe .

更新:我刚刚阅读了您刚刚发布的评论,其中解释了您想要实现的目标。如果你想编写一个浏览器插件来阻止恶意代码获取击键,而只允许好的代码获取击键,那么你就会遇到一个更严重的问题:你如何区分好代码和恶意代码?一切都只是函数,并不是说它们有一些好的属性设置为 true 或 false。您最多可以做的就是完全阻止密码字段的 keydown 和 keypress 事件,但除了破坏大量告诉用户密码强度和类似内容的代码外,您实际上什么也得不到,因为攻击者可以轻松读取密码值在某些时间间隔甚至不依赖键盘事件。如果你阻止读取密码值的能力,那么你将破坏验证两个版本的密码是否匹配的代码等等,但你仍然不会取得任何成就,因为攻击者可以在表单是已提交,或已发布 AJAX 请求,等等,等等,令人作呕……

关于防御输入窃取攻击的Javascript代码片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5259345/

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