问题标签 [web-application-security]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 删除/保护 url 中的 id 不被篡改
我正在努力解决一些应用程序漏洞。我有一个带有 urlhttp://localhost:12997/Manning_HQ/Edit/1274
的编辑页面,问题是用户能够更改 id 并能够访问不应该访问的其他请求。
我搜索了,URLEncoding
但发现它只能确保所有浏览器都能正确传输 URL 字符串中的文本。我的问题是有办法防止这种情况吗?
我的编辑功能:
自定义授权:
访问角色助手:
自定义主体:
javascript - 安全地检查从另一个窗口发布的消息的来源
我的客户端代码正在从另一个窗口(iframe)接收消息——类似这样的东西(我们称之为page1
,或https://my.site/page1
):
iframe 应该指向与 同源的另一个 URL page1
,例如https://my.site/page2
,在某个点,page2
客户端 JS 执行:
我的目标是确保无论 iframe 最终指向何处(可能是由于我没有注意到的被利用漏洞),我page1
只接受从我的域上的 URL 发送的消息。
我正在考虑使用window.origin
as ALLOWED_ORIGIN
on page1
。这似乎比必须从某种配置文件中传递我的域本身要容易,我必须为所有不同的开发、测试环境以及最终的产品进行更改。
但是,我找不到其他人使用这种方法的例子,也找不到任何解释为什么它不够好。
被event.origin !== window.origin
认为不够安全,最重要的是,为什么?
如果这是显而易见的事情,我深表歉意,并感谢您阅读此问题!
javascript - 自我 XSS 与反射 XSS
自我 XSS 和反射 XSS 有什么区别?如果我发现一个 XSS 漏洞,我怎么知道它是自我 XSS 还是反射 XSS ?我已经尝试在 Google 上阅读很多文章,但仍然感到困惑。提前致谢!
node.js - mongodb mongoose中的重复键错误索引
我正在建立一个网站,在该网站中使用 Google 登录并输入电子邮件和密码工作正常,但是当我介绍使用 Facebook 登录时,mongoDb 出现以下错误-
MongoError:E11000 重复键错误集合:userDB.users 索引:username_1 dup key:{ username:null }
如何解决此问题,以便我可以依次通过 google 和 facebook 登录,反之亦然?
html - 企业验证检查登录真假并检索用户信息?
我正在构建一个将在 Intranet 上运行的 Web 应用程序。我想查询客户的系统以确定他们是否使用企业凭据登录。此外,如果可能,请阅读凭据以查找用户名。我不知道从哪里开始,任何资源或教程将不胜感激。
我以前用 excel 仪表板做过类似的事情,我使用用户信息在闪屏上显示名称,但不知道如何使用 Web 应用程序来实现。
谢谢你。
http - 滥用主机头注入来访问自定义的 Apache Traffic Server 协议
我遇到了一种HTTP HELP
方法(https://portswigger.net/research/cracking-the-lens-targeting-https-hidden-attack-surface章节“无效主机”)并问自己:是否还有其他系统可以提供类似那?
我想知道渗透测试者是如何想出这种方法的。
谷歌在这里帮不了我。
在特定情况下,它是关于Apache Traffic Server的,它的帮助可以查询如下:
然后具体应用如下:
encryption - Netsparker 检测到弱密码已启用。尽管没有 SSL 加密,这可能吗?
我已经使用 Netsparker 扫描了一个 Web 应用程序。尽管该站点上没有 https 支持,但 Netsparker 检测到启用了弱密码。我知道 Netsparker 说扫描仪没有误报;但是是否可以启用弱密码,即使网站上没有进行加密?
jboss - 如何针对在其上运行的不同应用程序以不同方式配置 jboss EAP 6.4?
我的 jboss 服务器上运行了 4 个应用程序,我想禁用特定应用程序的“X-PoweredBy”标头响应。如果我运行 shell 脚本并尝试更改它,它将适用于服务器上的所有实例。我如何单独为一个应用程序做到这一点?
javascript - DOM Clobbering 及其工作原理
我对DOM Clobbering的主题有一些疑问:
Portswigger 对此进行了解释:
要利用此易受攻击的代码,您可以注入以下 HTML 以使用锚元素破坏 someObject 引用:
由于两个锚点使用相同的 ID,DOM 将它们组合在一个 DOM 集合中。DOM 破坏向量然后用这个 DOM 集合覆盖 someObject 引用。在最后一个锚元素上使用了 name 属性,以破坏 someObject 对象的 url 属性,该属性指向外部脚本。
我的理解是:
带有 id 的锚元素someObject
存储在一个类似数组的结构中——一个 DOM 集合。
通过
锚元素是使用 id 引用的——一些浏览器将 id 直接存储在 window 对象中(是否始终可以从 window 对象获得 html 元素的 ID?)。
然而:
- 为什么 name 属性会用 URL 覆盖 url 属性?
- DOM 集合与这一切有什么关系?
window.someObject || {}
( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer )中的对象初始化程序是否对攻击起任何作用?
这就是控制台所说的:
(有关此主题的更多信息也可以在这里找到:https ://medium.com/@shilpybanerjee/dom-clobbering-its-clobbering-time-f8dd5c8fbc4b )
web-application-security - 从安全角度来看,从查看页面源代码访问网站头部部分的链接(例如:js 和 css)是否可以接受
从网站头部访问链接是否可以接受(例如:来自视图页面源的 js 文件或从安全角度检查元素。