安全漏洞大揭秘:手把手教你轻松防止SQL注入( 三 )
API级别的渗透测试
使用诸如Parasoft SOAtest之类的工具可以进行API级别的渗透测试以暴露SQL注入 , 在这些工具中 , 可以从现有功能测试中创建自动模糊测试 , 从而行使应用程序的业务逻辑 。 Parasoft SOAtest与著名的渗透测试工具Burp Suite集成在一起 。
使用Parasoft SOAtest执行功能测试方案时 , 将捕获测试中定义的API调用以及请求和响应流量 。 每次测试中的Burp Suite分析工具都会将流量数据传递到Burp Suite应用程序的一个单独的运行实例 , 该实例将根据其在流量数据中观察到的API参数 , 使用自己的启发式方法对API进行渗透测试 。
然后 , Burp Suite分析工具将获取Burp Suite发现的任何错误 , 并将其报告为SOAtest中与访问API的测试相关的错误 。 Parasoft SOAtest结果将报告到Parasoft的报告和分析仪表板中 。 有关其他报告功能 。
要了解有关此集成的更多信息 , 请参阅我们以前的渗透测试文章 。 有关Portswigger关于使用Burp进行SQL注入的更多信息 , 请查看其文章 。 以下是与Burp集成的工作方式的表示:
文章插图
安全漏洞大揭秘:手把手教你轻松防止SQL注入!
将这种类型的渗透测试集成到您的CI/CD流程中是防御SQL注入和其他类型漏洞的重要组成部分 。
渗透和模糊测试无疑是DevSecOps中的重要过程 , 并且至关重要 。 但是 , 这提出了问题 。
- 测试检测到安全漏洞时会发生什么?
- 当软件团队发现其大部分用户输入处理不安全时 , 会发生什么?
- 它当然需要修复 , 但是要付出什么代价?
将SQL注入的检测和消除向左移动在软件开发中采用DevSecOps方法意味着将安全性集成到DevOps管道的各个方面 。 正如团队尽早在SDLC中推进代码分析和单元测试等质量流程一样 , 安全性也是如此 。
如果团队更广泛地采用这种方法 , 则SQL注入可能已成为过去 。 攻击的增加意味着它尚未发生 。 无论如何 , 让我们概述一种可以尽早防止SQL注入的方法 。
与修补(和道歉!)已发布的应用程序相比 , 查找和修复潜在的SQL注入(以及其他注入漏洞)可节省大量时间 。 单个重大事件可能使公司损失20万美元或更多 。 小型企业发生许多事件 。 一次攻击会造成严重的财务压力 , 更不用说有关违规披露和保护个人身份信息的潜在监管问题了 。
下面概述的“检测和阻止”方法基于将减轻SQL注入的风险转移到开发的最早阶段 , 并通过通过静态代码分析进行检测来增强此功能 。
如何检测SQL注入
检测SQL注入依赖于静态分析来在源代码中找到这些类型的漏洞 。 检测发生在开发人员的桌面和构建系统中 。 它可以包括现有的、旧的和第三方代码 。
连续检测安全问题可确保发现以下所有问题:
- 开发人员错过了IDE 。
- 存在于比您的新的检测预防方法还早的代码中 。
例如 , 以Parasoft的演示应用程序Parabank为例 。 com.parasoft.parabank.dao.jdbc.internal中的StockDataInserter.java文件中可能存在SQL注入:
…final String sql = sb.toString();rows = (nextId - lastId) / JdbcSequenceDao.OFFSET;totalRows += rows;getJdbcTemplate().update(sql);…
Parasoft JTest在生成时生成的报告如下:
- 手把手教你挑选大大大大屏的投影仪
- 手把手教你用python编程写一款自己的音乐下载器
- 手把手教你AspNetCore WebApi:Serilog
- 今天才知道,原来手机就能给视频添加字幕,手把手教会你
- 大揭秘!联想手机从昔日巅峰走到如今只剩品牌躯壳
- 「爬虫四步走」手把手教你使用Python抓取并存储网页数据
- 图解|零拷贝Zero-Copy技术大揭秘
- 深度揭秘!华强北2000块的iPhone 11竟然是组装机
- "谣言"大揭秘:新能源车自燃率高?实际起火概率远低于燃油车!
- 【权威发布】近日重点网络安全漏洞情况摘报