outerHTML与innerHTML有相同的XSS漏洞吗?

时间:2012-05-09 18:16:17

标签: security xss outerhtml

我们公司的安全扫描似乎一直挂在swfobject.js中的这个outerHTML属性上:

el.outerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + att + '>' + par + '</object>';

我熟悉与innerHTML相关的XSS漏洞,但是你能给我一些在这种情况下如何利用outerHTML的例子吗?我想知道扫描是否产生误报 - 我认为swfobject背后的团队会解决所有XSS问题。

谢谢!

1 个答案:

答案 0 :(得分:2)

如果您了解innerHTMLouterHTML的工作原理,您可以自己回答问题:

示例:如果el是以下示例中的内部div

<div id="outer"><div id="inner"> … </div></div>

然后将innerHTMLouterHTML<b>foobar</b>设置为:

  • innerHTML

    <div id="outer"><div id="inner"><b>foobar</b></div></div>
    
  • outerHTML

    <div id="outer"><b>foobar</b></div>
    

因此,使用innerHTML还是outerHTML并不重要。两者都容易受到XSS的攻击。<​​/ p>