如何修复“经常被滥用:Spring Remote Service”

时间:2015-07-23 04:29:48

标签: fortify

我使用Fortify扫描代码并通过推荐

解决了这个问题
  

建议: 利用Spring Security和SSL提供身份验证,授权,机密性和完整性。

所以我试图通过实例Spring Security和示例指南中的基本身份验证来解决这个问题 http://www.jayway.com/2008/09/30/spring-remoting-with-security-and-ssl/

我会得到像这样的弹簧配置

----服务器端配置---

远程server.xml中

<bean name="/testService" class="org.springframework.remoting.caucho.HessianServiceExporter">
        <property name="service" ref="testService" />
        <property name="serviceInterface" value="example.TestService" />
</bean>

安全的server.xml

<security:http auto-config="true">
    <security:http-basic/>
    <security:intercept-url pattern="/**" access="ROLE_ADMIN" />    
</security:http>
<security:authentication-manager alias="authenticationManager">
    <security:authentication-provider>
        <security:user-service id="uds">
            <security:user name="testUser" password="testPassword" authorities="ROLE_ADMIN, ROLE_MANAGER" />
        </security:user-service>
    </security:authentication-provider>
</security:authentication-manager>

的web.xml

<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy
    </filter-class>
</filter>
<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

---客户端配置---

远程client.xml的

<bean id="rcaRemotingService" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
    <property name="serviceUrl" value="${endpoint.url}/testService"/>
    <property name="serviceInterface" value="example.TestService"/>
    <property name="username" value="${endpoint.user}"/>
    <property name="password" value="${endpoint.password}"/>
</bean>

但它不起作用,工具总是像这样的问题

  

摘要:在remoting-servlet.xml的第5行,应用程序公开   spring bean作为远程服务。默认情况下,这些远程服务可以   不需要身份验证和传输到此的信息   服务是明文。这可能允许攻击者访问   特权操作或暴露敏感数据。

     

接收器: remote-server.xml:5 null()
  第5行:&lt; bean name =“/ testService”class =“org.springframework.remoting.caucho.HessianServiceExporter”&gt;

     

&lt; property name =“service”ref =“testService”/&gt;

     

&lt; property name =“serviceInterface”value =“example.TestService”/&gt;

     

&LT; /豆腐&GT;

0 个答案:

没有答案