XSS 和 Applet/Param HTML 关键字

发布于 2024-08-09 04:57:46 字数 315 浏览 5 评论 0原文

我有一个 Web 应用程序,并对其运行了 XSS 扫描,它报告说我的一个包含 Java 小程序的页面可能会受到 XSS 的攻击。

该测试设法将 javascript 警报框分配给以下 HTML 代码:

<param name='id' value='' onMouseOver=alert(40041)>

我的问题是 - 这是一个有效的测试吗?对 Param 对象进行任何 XSS javascript 操作会导致任何现实问题吗?我认为 param 对象上的 MouseOver 不会执行任何操作。

谢谢

I have a Web application and have run a XSS scan on it and it reports that one of my pages that has a Java applet in it could potentially be open to XSS.

The test managed to assign a javascript alert box to the following HTML code:

<param name='id' value='' onMouseOver=alert(40041)>

My question is - Is this a valid test? Will doing any XSS javascript manipulation on Param objects cause any real world issue? I don't think a MouseOver on a param object will do anything.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不喜欢何必死缠烂打 2024-08-16 04:57:46

这是一个有效的测试,但可能是一个严重的漏洞。

如果value的内容没有被转义,那么攻击者就可以关闭标签并添加任何其他脚本。

即使 <> 被转义/删除,但引号没有被转义/删除,它仍然可能被利用:攻击者可以附加诸如 onloadonerror< 之类的事件处理程序/代码>。在现代浏览器中,每个元素都可以变得可见(例如,甚至),因此style也可以使悬停。

防范这样的 XSS 非常简单。生成属性时始终使用引号并在值更改中:

  • & 更改为 &
  • < 更改为 <
  • '&x39;
  • ""

你赢了不必担心被劫持的会发生什么不好的事情。

This is a valid test and it may be a serious vulnerability.

If contents of value was not escaped then the attacker could close the tag and add any other script.

Even if <> are escaped/stripped, but quotes aren't, it may still be exploitable: attacker could attach event handlers like onload and onerror. In modern browsers every element can be made visible (e.g. even <head>), so style could make <param> hoverable too.

It's quite simple to protect against XSS like this. When generating attributes always use quotes and in the value change:

  • & to &
  • < to <,
  • ' to &x39;
  • and " to ".

and you won't have to worry what bad things could happen with hijacked <param>.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文