随着网络空间安全进入纵深地带,核心战场从外部边界防护迁移到软件内部安全上,软件内部漏洞挖掘也将成为未来安全体系中最重要的环节。
企业挖掘漏洞的方式一般以人工+静态分析的代码审计工具。然而随着代码行的大幅增加,人工审核的方式将非常吃力,而SAST通过漏洞规则去做模式匹配,只能查找已知漏洞,误报率高,并且对复杂逻辑的代码场景以及未知缺陷无能为力。而模糊测试可通过实时监控被测对象的工作状态,发现被测对象潜在的安全漏洞,是一种高效保证软件质量的动态测试方法。今天我们就以开源网安模糊测试(SFuzz)为例,来谈一谈模糊测试是如何高效挖掘漏洞、精确定位问题的。
高效挖掘
高效挖掘漏洞需要满足以下几个方面:测试“广”,测试范围涵盖多种场景,确保不遗漏;测试“深”,测试行为不止停留在表面,更需深度解析,保证质量;测试“准”,要对系统的不同状态采用不同的策略,减少干扰,降低误报。
测试“广”
SFuzz引擎算法中,融合了基于变异和生成两种方式生成测试用例。整理出一套完整的“协议规范内的通用语言”,以兼容各种不同的协议,使得整个模板解析部分更具有通用性,覆盖各种应用场景。SFuzz可以对环境变量和参数、Web应用程序、文件格式、网络协议、Web浏览器、嵌入式和系统内核等进行测试,研发团队无需大量人工编写测试用例、搭建硬件环境,极大地提升检测效率。
测试“深”
SFuzz根据模板引擎解析出数据结构和行为,搭配模糊化算法生成具体的模糊化数据,相比于完全随机的模糊,优秀的算法能进一步保障模糊化出来的数据质量,更容易测出潜在的安全缺陷。
测试“准”
SFuzz支持超过60种变异算法,实现对测试用例的智能化变异,动态调整测试调度策略,减少外部干扰,从而降低误报。
精准定位
很多检测工具只能将定位到文件夹或文件,开发人员进一步精准定位漏洞需要花费很多时间,效率低。而SFuzz采用随机化序列技术,可将缺陷精准定位到代码行,并重复生成用例,重构相同的测试序列,再现“错误现场”,开发人员可以深度了解漏洞情况,快速修复缺陷。
开源网安模糊测试平台(SFuzz)
开源网安模糊测试平台(SFuzz)是基于模糊测试技术自主研发的黑盒安全检测产品,专注于面向文件格式和网络协议的模糊测试,通过向目标程序输入基于模型智能生成的测试用例,高效检测出各种软件、硬件系统中的未知漏洞。SFuzz具有模块化、跨平台、自动化测试及高效可控等优点。
漏洞挖掘&网络安全学习路线
其实入门网络安全要学的东西不算多,也就是网络基础+操作系统+中间件+数据库,四个流程下来就差不多了。
【[一一帮助安全学习【点我】一一]】 ①网络安全学习路线 ②20 份渗透测试电子书 ③安全攻防 357 页笔记 ④50 份安全攻防面试指南 ⑤安全红队渗透工具包 ⑥网络安全必备书籍 ⑦100 个漏洞实战案例 ⑧安全大厂内部教程对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
学习资料工具包
如果你想要入坑黑客&网络安全工程师,这份282G全网最全的网络安全资料包!
压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。
网络安全源码合集+工具包
视频教程
视频配套资料&国内外网安书籍、文档&工具
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
黑客/网安大礼包:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
好了就写到这了,大家有任何问题也可以随时私信问我!希望大家不要忘记点赞收藏哦!