ESAPI For JAVA安全组件

ESAPI是一个免费、开源的Web应用程序安全控制组件,在JavaWeb应用中可帮助开发人员降低应用的风险。 ESAPI是OWASP组织的一个开源项目

    主页是: http://www.owasp.org/index.php/ESAPI
    介 绍 :http://owasp-esapi-java.googlecode.com/files/OWASP%20ESAPI.ppt
    下载地址是:https://code.google.com/p/owasp-esapi-java/downloads/list

ESAPI很适合一个新的开发项目的安全组件,各版本的ESAPI包含如下基本设计:

   1.具有一个安全接口集;
   2.对每一种安全控制有一种参考实现;
   3.对每一种安全控制可以有你自己的实现方法。

很多著名的大公司开始将ESAPI作为自己保障Web应用程序安全的手段,包括美国运通公司,Apache基金会,世界银行等。

ESAPI对常见安全漏洞都提供对应的安全控制实现方法: ESAPI使用示例: 使用ESAPI防止XSS的做法: String safe = ESAPI.encoder().encodeForHTML( request.getParameter( "input" ) ); 对用户输入“input”进行HTML编码,防止XSS。

System.out.println(ESAPI.encoder().encodeForHTML("<a href='sdfs'></a> < script > alert(); </ script >" ));

输出的结果

 &lt;a href&#x3d;&#x27;sdfs&#x27;&gt;&lt;&#x2f;a&gt; &lt; script &gt; alert&#x28;&#x29;&#x3b; &lt;&#x2f; script &gt;

使用ESAPI防止ORACLE数据库SQL注入的做法:   

String sqlStr=“select name from tableA where id=”+
  ESAPI.encoder().encodeForSQL(ORACLE_CODEC,validatedUserId)
  +“and date_created”='“
  + ESAPI.encoder()。encodeForSQL(ORACLE_CODEC,validatedStartDate)+"'";
  myStmt = conn.createStatement(sqlStr);

补充: XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值