提供一些appscan漏洞解决方法(来自百度空间)


来自:http://serisboy.iteye.com/blog/1328056提供一些appscan漏洞解决方法(来自百度空间)  此博文包含图片 (2012-08-07 11:42:14)转载▼
标签: appscan 漏洞解决方法 it 分类: 软件测试
来自:http://serisboy.iteye.com/blog/1328056
1.会话标识未更新:登录页面加入以下代码
request.getSession(true).invalidate();//清空session
Cookie cookie = request.getCookies()[0];//获取cookie
cookie.setMaxAge(0);//让cookie过期
不是很明白session的机制,高手路过可以指教一下。


2.跨站点请求伪造:
在出错的url加参数sessionid。
response.getWriter().write( "<script>parent.location.href='dbase/admin/loginJsp.action?sessionId="+sessionId+"'</script>");


如果带参数报ssl错误,使用下面的post方式传值:
response.getWriter().write(
"<script language=\"javascript\"> " +
"document.write(\"<form action=dbase/admin/loginJsp.action method=post name=formx1 style='display:none'>\");" +
"document.write(\"<input type=hidden name=name value='"+sessionId+"'\");" +
"document.write(\"</form>\");" +
"document.formx1.submit();" +
"</script>"
);


3.启用不安全HTTP方法
修改web工程中或者服务器web.xml,增加安全配置信息,禁用不必要HTTP方法
<security-constraint>
<web-resource-collection>
<url-pattern>/*</url-pattern>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
<http-method>HEAD</http-method>
<http-method>OPTIONS</http-method>
<http-method>TRACE</http-method>
</web-resource-collection>
<auth-constraint>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>


4.已解密登录请求
配置SSL,具体见http://serisboy.iteye.com/admin/blogs/1320231
在web.xml加入如下配置。
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transportguarantee>
</user-data-constraint>
</security-constraint>


5.高速缓存的ssl页面
页面
<meta http-equiv="Pragma" contect="no-cache">


Java代码 复制代码 收藏代码
java代码
response.setHeader("Pragma", "No-cache");


6.目录列表
配置文件目标拒绝访问。
在conf/web.xml下:
<servlet>
<servlet-name> default </servlet-name>
<servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class>
<init-param>
<param-name> debug </param-name>
<param-value> 0 </param-value>
</init-param>
<init-param>
<param-name> listings </param-name>
<param-value> false </param-value>
</init-param>
<load-on-startup> 1 </load-on-startup>
</servlet>


把listings对应的value设置为fasle.
或者把上面的这个servlet加到你的虚拟路径下的web-inf/web.xml 中,把
servlet-name改为其它的,再加一下servlet-mapping
<servlet>
<servlet-name> default1 </servlet-name>
<servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class>
<init-param>
<param-name> debug </param-name>
<param-value> 0 </param-value>
</init-param>
<init-param>
<param-name> listings </param-name>
<param-value> false </param-value>
</init-param>
<load-on-startup> 1 </load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name> default1 </servlet-name>
<url-pattern> / </url-pattern>
<servlet-mapping>
1.会话标识未更新:登录页面加入以下代码
  1. request.getSession(true).invalidate();//清空session
  2. Cookie cookie = request.getCookies()[0];//获取cookie
  3. cookie.setMaxAge(0);//让cookie过期
不是很明白session的机制,高手路过可以指教一下。

2.跨站点请求伪造:
在出错的url加参数sessionid。
  1. response.getWriter().write( "<script>parent.location.href='dbase/admin/loginJsp.action?sessionId="+sessionId+"'</script>");

如果带参数报ssl错误,使用下面的post方式传值:
  1. response.getWriter().write(
  2. "<script language=\"javascript\"> " +
  3. "document.write(\"<form action=dbase/admin/loginJsp.action method=post name=formx1 style='display:none'>\");" +
  4. "document.write(\"<input type=hidden name=name value='"+sessionId+"'\");" +
  5. "document.write(\"</form>\");" +
  6. "document.formx1.submit();" +
  7. "</script>"
  8. );

3.启用不安全HTTP方法
  1. 修改web工程中或者服务器web.xml,增加安全配置信息,禁用不必要HTTP方法
  2. <security-constraint>
  3. <web-resource-collection>
  4. <url-pattern>/*</url-pattern>
  5. <http-method>PUT</http-method>
  6. <http-method>DELETE</http-method>
  7. <http-method>HEAD</http-method>
  8. <http-method>OPTIONS</http-method>
  9. <http-method>TRACE</http-method>
  10. </web-resource-collection>
  11. <auth-constraint>
  12. </auth-constraint>
  13. </security-constraint>
  14. <login-config>
  15. <auth-method>BASIC</auth-method>
  16. </login-config>

4.已解密登录请求
配置SSL,具体见 http://serisboy.iteye.com/admin/blogs/1320231
在web.xml加入如下配置。
  1. <security-constraint>
  2. <web-resource-collection >
  3. <web-resource-name >SSL</web-resource-name>
  4. <url-pattern>/*</url-pattern>
  5. </web-resource-collection>
  6. <user-data-constraint>
  7. <transport-guarantee>CONFIDENTIAL</transportguarantee>
  8. </user-data-constraint>
  9. </security-constraint>

5.高速缓存的ssl页面
  1. 页面
  2. <meta http-equiv="Pragma" contect="no-cache">

Java代码  复制代码  收藏代码
  1. java代码
  2. response.setHeader("Pragma", "No-cache");

6.目录列表
配置文件目标拒绝访问。
在conf/web.xml下:
  1. <servlet>
  2. <servlet-name> default </servlet-name>
  3. <servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class>
  4. <init-param>
  5. <param-name> debug </param-name>
  6. <param-value> 0 </param-value>
  7. </init-param>
  8. <init-param>
  9. <param-name> listings </param-name>
  10. <param-value> false </param-value>
  11. </init-param>
  12. <load-on-startup> 1 </load-on-startup>
  13. </servlet>

把listings对应的value设置为fasle.
或者把上面的这个servlet加到你的虚拟路径下的web-inf/web.xml 中,把
servlet-name改为其它的,再加一下servlet-mapping
  1. <servlet>
  2. <servlet-name> default1 </servlet-name>
  3. <servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class>
  4. <init-param>
  5. <param-name> debug </param-name>
  6. <param-value> 0 </param-value>
  7. </init-param>
  8. <init-param>
  9. <param-name> listings </param-name>
  10. <param-value> false </param-value>
  11. </init-param>
  12. <load-on-startup> 1 </load-on-startup>
  13. </servlet>
  14. <servlet-mapping>
  15. <servlet-name> default1 </servlet-name>
  16. <url-pattern> / </url-pattern>
  17. <servlet-mapping>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AppScan是一款流行的漏洞扫描工具,用于识别和评估Web应用程序中的安全漏洞。以下是AppScan漏洞扫描的基本使用说明: 1. 安装和配置:下载并安装AppScan,然后按照提供的指南进行基本配置。确保您的系统满足最低要求并具有适当的许可证。 2. 创建项目:在AppScan中创建一个新项目,提供相关信息,如目标URL和认证凭据(如果需要)。您还可以选择其他配置选项,如扫描深度和扫描策略。 3. 配置扫描选项:根据您的需求选择适当的扫描选项。您可以选择执行全面扫描或仅针对特定漏洞类别执行扫描。 4. 启动扫描:点击"开始扫描"按钮启动扫描。AppScan将自动访问目标URL,并尝试发现潜在的漏洞。 5. 查看扫描结果:一旦扫描完成,您可以查看扫描结果报告。报告将列出检测到的漏洞及其严重性级别。您可以通过报告中提供的详细信息,了解每个漏洞的具体细节和修复建议。 6. 修复漏洞:基于AppScan的扫描结果,您应该尽快修复检测到的漏洞。根据漏洞的严重性级别,您可以优先处理高风险漏洞。 7. 定期扫描:漏洞扫描不是一次性任务,建议定期使用AppScan对Web应用程序进行扫描,以确保持续的安全性。 请注意,这只是AppScan的基本使用说明。根据您的具体需求和环境,您可能需要更多高级配置和操作。建议参考AppScan的官方文档和用户手册,以了解更多详细信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值