zoukankan      html  css  js  c++  java
  • Appscan漏洞 之 加密会话(SSL)Cookie 中缺少 Secure 属性

      近期 Appscan扫描出漏洞 加密会话(SSL)Cookie 中缺少 Secure 属性,已做修复,现进行总结如下:

    1.1、攻击原理

      任何以明文形式发送到服务器的 cookie、会话令牌或用户凭证之类的信息都可能被窃取,并在稍后用于身份盗窃或用户伪装,此外,若干隐私法规指出,用户凭证之类的敏感信息要始终以加密的方式发送到 Web 站点。

    1.2、修复建议

      给cookie添加secure属性

    1.3、修复代码示例

      1)服务器配置为HTTPS SSL方式

      2)Servlet 3.0 (Java EE 6)的web.xml 进行如下配置:

      <session-config>
       <cookie-config>
        <secure>true</secure>
       </cookie-config>
      </session-config>

      3)ASP.NET的Web.config中进行如下配置:

       <httpCookies requireSSL="true" />

      4)php.ini中进行如下配置

      session.cookie_secure = True

      或者

      void session_set_cookie_params  ( int $lifetime  [, string $path  [, string $domain  
                                      [, bool $secure= false  [, bool $httponly= false  ]]]] )

      或者

      bool setcookie  ( string $name  [, string $value  [, int $expire= 0  [, string $path  
                     [, string $domain  [, bool $secure= false  [, bool $httponly= false  ]]]]]] )

      5)weblogic中进行如下配置:

      <wls:session-descriptor> 
          <wls:cookie-secure>true</wls:cookie-secure>
           <wls:cookie-http-only>true</wls:cookie-http-only>
       </wls:session-descriptor>

    1.4、其它资料

      https://www.owasp.org/index.php/SecureFlag

    1.5、实际修复方案

      方案一:项目使用的是WebShpere服务器,这个可以在服务器中进行设置: 

      其实这种修复方式和5.2修复建议2)给web.xml加配置的方式是一样的。这两种修复方式都是一定可以通过Appscan扫描的,只不过19环境需要支持https和http两种协议,以上两种方案的话,会导致http协议下的Cookie不能传输,从而导致http协议下的部分功能不能使用。现在暂时是以牺牲http协议下的功能不使用为代价以这种方案通过扫描的。

      方案二:

      如果给Cookie配置了secure属性,那么这个Cookie能在https协议中传输,但是不能在http协议中传输。而实际系统应用中要支持两种协议,这里可以通过request.getScheme()获取是哪种协议(这种方式https协议获取的也是http,奇怪,可以通过下面的方式判断是否是https协议)

      String url = req.getHeader("Referer");      

      if(url.startsWith("https")){}

      然后进行判断是否加这个属性:cookie.setSecure(true)。

      而这种方案的话,只能对后期自己代码响应的Cookie做设置,而不能对容器自动响应的Cookie做设置。因此这里没有使用。

  • 相关阅读:
    BZOJ3932 [CQOI2015]任务查询系统
    数位DP专练
    Codeforces #669 div2
    Codeforces #670 div2
    P1450 [HAOI2008] 硬币购物
    P3172 [CQOI2015]选数
    比赛-Round 1 (12 Jul, 2018)
    “记计帐”需求分析
    一个程序员的哲学思考
    中国式大学——我们需要获得什么?
  • 原文地址:https://www.cnblogs.com/meInfo/p/9373856.html
Copyright © 2011-2022 走看看