版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Fortify安全整改解决方 案 1fortify安全整改解决方案代码安全示例 常见安全漏洞 SQL Injection(SQL注入) Cross-Site Scripting (跨站脚本攻击) Log Forging(日志攻击) Unrelease Resource(资源泄漏) 2fortify安全整改解决方案代码安全示例 SQL Injection (SQL 注入攻 击) 定义 在输入的字符串之中注入恶意的SQL指令,这些注入的指令会 被数据库误认为是正常的SQL指令进行执行,使系统遭到破坏。 Reference 3fortify安全整改解决方案代码安全示例 注入原理(1) SELECT
2、* FROM items WHERE owner = #userName# AND itemname = $itemName$ 使用SQL关键字(AND/OR/DELETE/UPDATE) itemName = name or 1=1 itemName = name ;Delete from items 4fortify安全整改解决方案代码安全示例 注入原理(2) 使用特殊符号(% , -) itemName = %name%; itemName = name;delete from items ;- 5fortify安全整改解决方案代码安全示例 Ibatis下的SQL注入 对于Ibaits参
3、数引用可以使用#和$两种写法。 (1)#写法会采用预编译方式,将转义交给了数据库,会自动在参数 的外面加上引号,不会出现注入问题。 (2)$写法相当于拼接字符串,会出现注入问题。 6fortify安全整改解决方案代码安全示例 解决方案(1) 对于所有请求进行入参的过滤 Reference: 7fortify安全整改解决方案代码安全示例 解决方案(2) 避免使用 $ 字符拼接变量的情况 select * from t_user where name like %$name$%; (1)Oracle select * from t_user where name like %|#name #|%
4、; (2)Mysql select * from t_user where name like concat(%,#name #,%) ; (3)Mssql select * from t_user where name like %+#name #+% 8fortify安全整改解决方案代码安全示例 常见安全漏洞 SQL Injection(SQL注入) Cross-Site Scripting (跨站脚本攻击) Log Forging(日志攻击) Unrelease Resource(资源未释放) 9fortify安全整改解决方案代码安全示例 Cross-Site Scripting (跨站
5、脚本攻击) 攻击者向动态Web页面里插入恶意HTML代码,当用户 浏览页面时,嵌入的恶意代码被执行从而达到攻击的目的。 10fortify安全整改解决方案代码安全示例 XSS分类(1) Reflected XSS(反射式XSS) 程序从 HTTP 请求中直接读取数据,并在 HTTP 响应中返 回数据。当攻击者诱使用户为易受攻击的 Web 应用程序提供危险内容, 而这些危险内容随后会反馈给用户并在 Web 浏览器中执行,就会发生反 射式 XSS 。 示例代码 Employee ID: 11fortify安全整改解决方案代码安全示例 XSS分类(2) Persisted XSS(持久式CSS) 程
6、序将危险数据储存在一个数据库或其他可信赖的数 据存储器中。这些危险数据随后会被回写到应用程序中,并包含在 动态内容中。 示例代码: JAVA代码:String name = dao.queryName(id); JSP代码:Employee Name: 12fortify安全整改解决方案代码安全示例 解决方案(1) 入参和出参校验 (1)“” 可以引入一个标签或者结束一个标签。 (2) try int value = Integer.parseInt(val); catch (NumberFormatException) (Failed to parse val = + val
7、); 正常日志: INFO:Failed to parse val=twenty-one 恶意日志: 若value输入: twenty- one%0a%0a%0aINFO:+User+logged+out%3d%3dbadguy 输出: INFO:Failed to parse val=twenty-one INFO:User logged out=badguy 18fortify安全整改解决方案代码安全示例 解决方案 (1)只输出必要的日志,功能上线前删除大多数调试日志 (2)过滤非法字符 19fortify安全整改解决方案代码安全示例 常见安全漏洞 SQL Injection(SQL注入)
8、 Cross-Site Scripting (跨站脚本攻击) Log Forging(日志攻击) Unrelease Resource(资源泄漏) 20fortify安全整改解决方案代码安全示例 Unrelease Resource (资源泄漏) 程序可能无法成功释放某一项已申请的系统资源。 如果攻击者能够故意触发资源泄漏,就有可能通过耗尽资源池的方 式发起 DOS(Denial Of Service)攻击。 21fortify安全整改解决方案代码安全示例 资源泄漏分类 Unrelease Stream(流资源未释放) Unrelease DB Connection(数据库连接未释放) 22f
9、ortify安全整改解决方案代码安全示例 Unrelease Stream (流资源未释放) try Reader reader = new (); BufferedReader br = new BufferedReader(reader) catch(Exception e) finally if(br != null) br.close();/如果抛异常,则br资源无法释放 23fortify安全整改解决方案代码安全示例 Unrelease DB Connection (数据库连接未释放) SqlConnection conn = new SqlConnection(connString); SqlCommand cmd = new SqlCommand(queryString); cmd.Connection = conn; conn.Open(); SqlDataReader rdr = cmd.ExecuteReader(); HarvestResults(rdr); conn.Connection.Close(); 如果在执行 SQL 或者处理查询结果时发生异常,SqlConnection 对象不会被关 闭。如果这种情况频繁出现,数据库将用完所有可用的指针,就不能再执行任何 SQL 查询。 24fortify安全整改解决方案代码安全示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《物理学中的力学基础概念:高中物理入门教案》
- 2025-2030药品外包装设计行业市场分析及趋势预测报告
- 2025-2030茶梗发酵饲料行业市场供需现状演变研究及投资规划优化策略报告
- 小学语文教学中绘本阅读教学的实施与效果评估课题报告教学研究课题报告
- 2026年基因编辑技术在生物医药报告
- 小学信息技术虚拟现实技术在体操教学中的应用效果分析课题报告教学研究课题报告
- 2025年门市金林湾实验学校招聘非编教师备考题库含答案详解
- 移动学习背景下轻量化AI教育资源在小学语文教学中的交互策略研究教学研究课题报告
- 2025年(冬)四川省成都市中和职业中学面向社会公开招聘临时聘用教师备考题库及答案详解1套
- 浙江省温州市重点中学2026届人教版高中生物试题选修4-1:模块综合检测试题(一)含解析
- 购房者临时居住协议
- 白银湘宇麓山环保科技有限公司30万吨-年含锌废料处置利用项目报告书
- 矿产资源评估方法研究-深度研究
- 2025年湖南铁道职业技术学院单招职业技能测试题库带答案
- 2025年十二烷基硫酸钠项目可行性研究报告
- 小学数学分数四则混合运算300题带答案
- 2020年陕西省普通高校职业教育单独招生考试数学试题
- 成都锦城学院《大学数学Ⅱ微积分》2021-2022学年第一学期期末试卷
- 2024一建《机电实务》必背速记
- YBT 6183-2024《石墨烯粉体 碳、氢、氮、硫、氧含量的测定 元素分析仪法》
- 数据资产确认工作指南
评论
0/150
提交评论