第一篇:Java安全开发规范
Java安全开发规范 第1章
前言
为提高应用安全水平,特制定本规范对代码编制进行规范。规范中的安全要求按照严格程度分为三级: > Policy 必须遵循的策略,实现方法可以自定义,但不能外翻策略的规定。> Discipline 必须遵守的纪律,必须按照规定中的描述实施,绝对不能违反。> Guideline 建议性的指南和规范,将逐步要求遵循实施。第2章 Java安全性开发规范 2.1 跨站脚本XSS * 风险及危害性:
跨站脚本XSS指利用网站漏洞从用户那里恶意盗取信息。用户在浏览网站、使用即时通讯软件、甚至在阅读电子邮件时,通常会点击其中的链接。攻击者通过在链接中插入恶意代 码,就能够盗取用户信息。攻击者通常会用十六进制(或其他编码方式)将链接编码,以免用户怀疑它的合法性。网站在接收到包含恶意代码的请求之后会产成一个 包含恶意代码的页面,而这个页面看起来就像是那个网站应当生成的合法页面一样。许多流行的留言本和论坛程序允许用户发表包含HTML和 javascript的帖子。假设用户甲发表了一篇包含恶意脚本的帖子,那么用户乙在浏览这篇帖子时,恶意脚本就会执行,盗取用户乙的session信 息。
如何导致XSS攻击,一般来说来自http的post,或者get方式取得参数值很可能为恶意代码,如果开发者直接用这些参数组合成http链接,用户点击该连接,就会造成XSS攻击风险。* 应对措施
开发者要保证代码的安全性,使其免受XSS攻击,可采取以下措施:
1. 过滤或转换用户提交数据中的HTML代码。
2. 限制用户提交数据的长度 * 非安全代码示例
<%
String mofWindowId = request.getParameter(“mofWindowId”);
%>