WEB应用系统安全规范
目录
WEB应用系统安全规范1
1概述2
1.1目的2
1.2适用范围2
2范围3
3名词解释3
4WEB开发安全规范3
4.1W EB应用程序体系结构和安全3
4.2W E B安全编码规范5
区分公共区域和受限区域5
对身份验证cookie 的内容进行加密5
限制会话寿命5
使用SSL 保护会话身份验证Cookie5
确保用户没有绕过检查5
验证从客户端发送的所有数据6
不要向客户端泄漏信息6
记录详细的错误信息6
捕捉异常6
不要信任头信息6
不要使用-GET 协议传递敏感数据6
不要在永久性cookie 中存储敏感数据6
对数据进行加密或确保通信通道的安全7
SQL 语句的参数应以变量形式传入7
页面中的非源代码内容应经过URI 编码7
页面中拼装的脚本应校验元素来源的合法性7
页面请求处理应校验参数的最大长度7
登录失败信息错误提示应一致8
避免页面上传任意扩展名的文件8
避免接受页面中的主机磁盘路径信息8
第三方产品的合法性8
5系统部署安全规范8
5.1部署架构和安全8
网络基础结构组件8
部署拓扑结构9
5.2部署操作安全规范9
确保管理界面的安全9
确保配置存储的安全9
单独分配管理特权9
使用最少特权进程和服务##10
尽量避免存储##10
不要在代码中存储##10
不要以纯文本形式存储数据库连接、密码或密钥10
限制主机上WEB 系统启动用户的权限10
隐藏后台调试信息10
密码加密存储10
隐藏重要配置参数信息11
隐藏日志文件11
禁用WebDAV,或者禁止不需要的方法11
保证管理平台、测试账号口令强度11
定期核查文件上传路径、日志路径中是否存在木马11
与时删除应用系统临时文件11
重要系统隔离11
6安全审计12
6.1审核并记录跨应用层的访问12
6.2考虑标识流12
6.3记录关键事件12
6.4确保日志文件的安全12
6.5定期备份和分析日志文件13
7规范更新机制13
8规范的执行13
9参考资料13
1概述
1.1目的字符串长度web
为规范我司Java Web应用编码和部署的安全控制和管理,特制定本规范,并作为安全检查与考核的参考依据.
1.2适用范围
本规范适用于我司所有在线Java业务系统、测试系统的WEB应用.
本规范可作为其他非WEB应用的编码和部署安全办法参考.
2范围
本规范中列出的是常见安全措施和高风险的漏洞,在系统开发与系统部署的过程中,对本规范未能尽述的必要安全措施,仍应予以采用.
本规范每年复审一次,其它时候也可以根据需要进行修订并发布.本规范的解释权和修改权归属信息技术部.
3名词解释
验证:通讯实体<;例如,客户端和服务器>彼此验证,以经过访问授权的特定标识为依据.
资源的访问控制:资源的交互仅限于某些用户或程序的集合,其目的是对完整性,##性或可用性实施强制约束.
数据完整性:检验信息是否被第三方<;非信息源的其它实体>修改.例如,处于开放网络环境中的数据接收方必须能够检测并丢弃那些在传递过程中被修改过的消息.
##性或数据隐私:确保信息仅对经过访问授权的用户可用.
不可否认:对用户进行检验,让他无法否认自己进行过的活动.
捕获一个安全相关事件的防篡改记录,目的是评估安全策略和机制的有效性.
4Web开发安全规范
4.1Web应用程序体系结构和安全
是无国界的,这意味着跟踪每位用户的会话状态将成为应用程序的责任.应用程序必须能够通过某种形式的身份验证来识别用户.由于所有后续授权决策都要基于用户的标识,因此,身份验证过程必须是安全的,同样必须很好地保护用于跟踪已验证用户的会话处理机制.设计安全的身份验证和会话管理机制仅仅是Web 应用程序设计人员和开发人员所面临的众多问题中的两个方面.由于输入和输出数据要在公共网络上进行传输,因此还会存在其他挑战.防止参数操作和敏感数据泄漏也是另外一些重要问题.
Web应用程序安全设计是根据应用程序漏洞类别进行组织的.实际经验表明,如果这些领域的设计存在薄
弱环节,将会导致安全漏洞.下表列出了漏洞的类别,每个类别都突出显示了由于设计不当可能会导致的潜在问题.
针对上述漏洞的应用程序设计指南如下表:
4.2We b安全编码规范
4.2.1区分公共区域和受限区域
站点的公共区域允许任何用户进行匿名访问.受限区域只能接受特定用户的访问,而且用户必须通过站点的身份验证.考虑一个典型的零售.您可以匿名浏览产品分类.当您向购物车中添加物品时,应用程序将使用会话标识符验证您的身份.最后,当您下订单时,即可执行安全的交易.这需要您进行登录,以便通过SSL 验证交易.
将站点分割为公共访问区域和受限访问区域,可以在该站点的不同区域使用不同的身份验证和授权规则,从而限制对SSL 的使用.使用SSL 会导致性能下降,为了避免不必要的系统开销,在设计站点时,应该在要求验证访问的区域限制使用SSL.
4.2.2对身份验证cookie 的内容进行加密
即使使用SSL,也要对cookie 内容进行加密.如果攻击者试图利用XSS 攻击窃取cookie,这种方法可以防止攻击者查看和修改该cookie.在这种情况下,攻击者仍然可以使用cookie 访问应用程序,但只有当cookie 有效时,才能访问成功.
4.2.3限制会话寿命
缩短会话寿命可以降低会话劫持和重复攻击的风险.会话寿命越短,攻击者捕获会话cookie 并利用它访问应用程序的时间越有限.
4.2.4使用SSL 保护会话身份验证Cookie
不要通过连接传递身份验证cookie.在授权cookie 内设置安全的cookie 属性,以便指示浏览器只通过S 连接向服务器传回cookie.
4.2.5确保用户没有绕过检查
确保用户没有通过操作参数而绕过检查.最终用户可以通过浏览器地址文本框操作URL 参数.例如,URL 地址<YourSite>/<YourApp>/sessionId=10 包含一个值10,通过将该值更改为其他随机数字,可以得到不同的输出.应确保在服务器端代码中执行上述检查,而不是在客户端的JavaScript 中检查,因为可以在浏览器中禁用JavaScript.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论