BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Struts安全扩展解决OWASP高级安全弱点

| 作者 Scott Delap 关注 0 他的粉丝 ,译者 胡键 关注 0 他的粉丝 发布于 2007年4月11日. 估计阅读时间: 4 分钟 | ArchSummit北京2018 共同探讨机器学习、信息安全、微服务治理的关键点
HDIV(HTTP Data Integrity Validator,HTTP数据完整性验证器)项目最近发布了1.1版。HDIV是Apache许可的Struts安全扩展项目,它为Struts 1.1增加了安全功能,维护API和Struts规范。HDIV验证包括:来自客户端的可编辑数据,如文本框的输入;以及一些不可编辑信息,如链接、隐藏域、组合框值、单选框和目的页(Destiny pages)等。

这次发布的版本围绕Cookie和可编辑数据进行验证:

Cookie保密性和完整性的验证。

可编辑数据的验证(文本框和文本域):使用可编辑数据的通用验证,HDIV可以在很大程度上消除源于跨站脚本(Cross-site scripting,XSS)和SQL注入(SQL Injection)攻击的风险。用户必须使用XML格式的规则来配置通用验证,基于这些定义的限制可以减少或消除攻击的风险。

HDIV网站上包含一个内容丰富的幻灯片展示:HDIV如何解决开放Web应用程序安全项目(Open Web Application Security Project)的前10大网站安全弱点。InfoQ和项目领导者Roberto Velasco Sarasola一起讨论了这个项目。对于创建HDIV项目背后的动机,他解释说:

我审查Web应用已经有好几年了。它们都有典型的弱点,如XSS、SQL注入和参数篡改。主要的原因是:开发者不关心这种类型弱点引起的风险,尤其是由不可编辑数据引起的(选择框、隐藏框、链接……)。

Struts是主要的Java Web框架,但它并没有为这些弱点提供透明的解决途径。Struts Validator被证明是有用的,但它并没有解决数据的完整性和保密性问题。

接下来InfoQ问了些HDIV与其它Web框架的集成问题,如JSF:

目前,我们在Struts 2版本上进行工作,内部版本已经发布。我们期望下个月会发布一个公开的beta版。项目的核心与Struts版本一样,唯一的区别是自定义标签,它扩展自Struts2的自定义标签扩展。

我们也在JSF版本上进行工作,花时间将新功能仔细地集成到JSF架构设计。我们期望在两个月内会有一个beta版的发布。到那时,我们就把工作集中在易受攻击的组件(如隐藏框、命令链接和输出链接等)、Cookie验证和目录遍历的弱点上。然后,我们就可以开始从事数据保密性方面的工作。

在最后,InfoQ还询问了关于HDIV未来发展的计划:

受关注的领域仍然相同:非编辑数据的完整性和保密性,可编辑数据的通用验证等。任务是扩展我们的技术,以与其它框架集成(Struts2、JSF和AJAX标签)。我们也从事新特性的开发,如:
  • 可编辑数据验证的自动化。
  • Web管理工具(可视化日志、配置……)。
  • 产生警报(SMS、Email)。
译者简介:胡键是InfoQ中文站的志愿者翻译,自2000年西安交通大学硕士毕业后一直从事软件开发。2002年开始使用Java,在项目开发中经常采用OpenSource工具,如Ant、Maven、Hibernate、Struts等,目前正在研究信息集成方面的规范和技术。可以通过jianhgreat AT hotmail.com与他联系,或访问博客:http://foxgem.javaeye.com/。加入InfoQ中文站志愿者翻译队伍,请邮件至china-editorial@infoq.com

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT