Day2_J2EE安全开发
WEB应用安全和数据库安全的领航者
J2EE安全开发杭州安恒信息技术有限公司
http://www.77cn.com.cn
Java 代码编码安全 代码框架安全
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
一、开发中常见漏洞介绍及示例说明和可参考的解决方法:Web通用:
XSS、CSRF、SQL注入、文件上传等
J2EE特点所致:组件信息泄露、安全目录绕过等
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
Web通用 -- XSS描述: 攻击者对应用的页面注入恶意脚本(通常是指html脚本),然后在页面执行 这个恶意脚本,到达攻击目的。
通常类型:反射型、存储型两大类(还有些如:所谓的DOM型等)
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
示例: 一个用户输入并在页面输出的简单功能在jsp里的实现(servelt或框架实 现同理), Nebula.jsp伪代码:<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.77cn.com.cn/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>demo</title> </head> <body> <% String input=request.getParameter("input"); out.print("我的输入:"+input); %> </body> </html>
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
注入的Javascript脚本被解析执行,形成一个反射型XSS:
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
危害:
对于一般应用,用户cookie盗取(普通用户及管理员登录cookie )非 法登录应用。
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
例如:tomcat与浏览器身份验证的session id是已cookie的形式存储浏览器客户 端
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
对于大量用户交互的大型应用(如:SNS站点),可形成蠕虫,严 重影响业务,如:
1、历史第一个XSS蠕虫是针对网站MySpace的Samy(20小时内感染了100万个账户)
2、Sina微博XSS蠕虫攻击事件的HelloSamy(16分钟受影响用户就达到将近33000个)
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
Java开发中,可参考的解决方法示例: 针对“输入”与“输出” 方式,如
输入:String input=request.getParameter(“input”);输出:out.print("我的输入:"+input);
对Input参数的Html标签进行转义 一般的业务逻辑代码流程:输入 数据存储(如:存入DB) 输出 存储型XSS,如:存入DB,同一应用一般情况,危害性存储型大于反射型XSS. 特点:隐蔽性强,数据的流向不确定(如:数据可能被其他应用调用)等
www.
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
一般选择“输入” 处理方式,伪代码:输入:String input=request.getParameter(“input”); // 对html标签转义的逻辑代码 // 其他业务逻辑(如:数据存储) 输出:out.print("我的输入:"+input);
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
参数值转义html标签的伪代码示例:public static String filter(String str) {
if (str == null)return (null); char content[] = new char[str.length()]; str.getChars(0, str.length(), content, 0); StringBuilder result = new StringBuilder(content.length + 50); for (int i = 0; i < content.length; i++) { switch (content[i]) { case '<':result.append("<"); break; case '>':result.append(">");break; case '&':result.append("&");break; case '"':result.append(""");break; default:result.append(content[i]); } } return (result.toString()); }
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
但可能有些标签在实际开发需要显示输出(如:<img>标签),影响到正常业务。就可以 使用HTTPOnly方式防御,jsp显示模版示例伪代码:
response.setHeader(“Set-Cookie”, “cookiename=value;Path=/;Domain=domainvalue;Max-、 Age=seconds;HTTPOnly");
设置HTTPOnly后,js域就无法获取cookie了,缓解危害!
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
http://www.77cn.com.cn
WEB应用安全和数据库安全的领航者
…… 此处隐藏:774字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [初中教育]婚姻家庭法学教学教案
- [初中教育]浅谈小学语文教学中的创新教育
- [初中教育]中华人民共和国侵权责任法2009
- [初中教育]2016-2022年中国薄膜太阳能电池行业发
- [初中教育]多级轻型井点降水的应用
- [初中教育]外语教学法流派介绍和简评
- [初中教育]实验一、典型环节及其阶跃响应
- [初中教育]内蒙古2012-2013学年度国家奖学金获奖
- [初中教育]移动通信营销渠道管理探讨
- [初中教育]初三化学第一学期第一第二章基础知识点
- [初中教育]一天的食物教学设计
- [初中教育]光导照明系统的基本结构及工作原理
- [初中教育]长春市十一高、东北师范大学附属中学、
- [初中教育]“十三五”规划重点-配重式装卸车项目
- [初中教育]领导方法和领导艺术
- [初中教育]第三章 植物病虫草鼠害诊断与防治基
- [初中教育]2019届九年级语文上册 第二单元 6纪念
- [初中教育]甲级单位编制水豆腐项目可行性报告(立
- [初中教育]Ch8-1补充 09101数据库系统原理及应用-
- [初中教育]2017-2023年中国吊装设备行业市场分析
- 制作毕业纪念册需要哪些材料
- 2015-2016学年高二化学苏教版选修4课件
- 哈佛管理导师-创建商业案例
- 职场交际中的谈吐礼仪知识与职场会议接
- 中国糕点及面包行业发展现状与竞争战略
- 沂河“12·7”洪水茶山拦河坝
- 管道水流量计算公式
- 4-2发电机火灾事故处置方案
- 数字信号处理实验五
- 2009年经济师(中级)金融专业知识全真试
- 历史街区保护规划--04历史文化遗产保护
- 宁夏回族自治区中小学职称评价标准
- 评先评优测评表
- 圆的切线证明及线段长求解在在中考中的
- 【解析版】2015年江苏省南京外国语学校
- 人教版八年级上册科学第一章习题精华
- 责任心与执行力
- SA8000社会责任管理体系标准培训
- IgA肾病的饮食应注意
- 杭州市建设工程文件归档整理方案(试行)




