Security Appscan Standard 漏洞扫描及补漏洞

IBM Security Appscan 介绍
IBM Security AppScan 在应用程序开发的生命周期过程中提供安全测试, AppScan 扫描很多常规的漏洞,比如跨站脚本攻击(cross site cripting),HTTP 响应分割(HTTP response splitting),参数篡改(Parameter Tampering)等等。目的是测试网络应用程序在开发过程中的安全漏洞,及时发现并且尽早修复,从而降低应用程序的修复成本。

  • 跨站点请求伪造

可能会窃取或操纵客户会话和 cookie,它们可能用于模仿合法用户,从而使黑客能够以该用户身份查看或变更用户记录以及执行事务
将 HTTP 头设置为“http://bogus.referer.ibm.com” (变体标识:4)
解决办法:
验证HTTP Referer字段
根据HTTP协议,在HTTP头中有一个字段叫Referer,它记录了该HTTP请求的来源地址。在通常情况下,访问一个安全受限页面的请求必须来自于同一个网站。比如某官网是通过用户访问http://www.test/test页面完成,用户必须先登录www.test,然后通过点击页面上的按钮来触发某某事件。当用户提交请求时,该请求的Referer值就会是按钮所在页面的URL(本例中,通常是以www. test域名开头的地址)。而如果攻击者要对网站实施CSRF攻击,他只能在自己的网站构造请求,当用户通过攻击者的网站发送请求到网站时,该请求的Referer是指向攻击者的网站。因此,要防御CSRF攻击,网站只需要对于每一个页面请求验证其Referer值,如果是以www. test开头的域名,则说明该请求是来自网站自己的请求,是合法的。如果Referer是其他网站的话,就有可能是CSRF攻击,则拒绝该请求。
代码示例:
在服务器端的拦截器必不可少,它将负责检查到来的请求是否符合要求,然后视结果而决定是否继续请求或者丢弃。在 Java 中,拦截器是由 Filter 来实现的。我们可以编写一个 Filter,并在 web.xml 中对其进行配置,使其对于访问所有需要 CSRF 保护的资源的请求进行拦截。
在 Filter 中验证 Referer
以下代码先取得 Referer 值,然后进行判断,当其非空并以 www.test 开头时,则继续请求,否则的话可能是 CSRF 攻击,转到 error.jsp 页面。

String referer = request.getHeader("Referer");
// 判断 Referer 是否以 www.test 开头
if ((referer != null) && (referer.trim().startsWith("http://www.test"))) {} else {
    throw 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值