两种模糊测试方法在安全测试中的评估与应用及云安全的文献计量分析
一、两种模糊测试方法在安全测试中的应用
-
模糊测试工具对比
- Peach与FileFuzz差异 :Peach支持不同的智能变异器,在测试用例中添加异常时,不会影响大多数样本输入。而FileFuzz为每个样本仅根据一行生成样本,这也解释了其能创建多达10360个样本的原因。从两种模糊测试工具的结果可以看出,代码覆盖率会根据测试用例的内容而改变,这反映在目标特性和最终发现的故障数量上。
-
测试用例的重构
- 创建不同内容的PDF样本 :基于之前的分析得出代码覆盖率和漏洞检测之间存在正相关关系,这里创建了五个不同的PDF样本,以分析不同特征如何影响模糊测试结果。
-
分析样本覆盖率的步骤
- 生成指令 :使用Pin工具和额外的Python脚本,再次生成与Sumatra PDF相关的所有指令,以区分主要函数/指令和由五个新样本产生的新模块/指令。命令如下:
execute_pin.bat “c:\SumatraPDF\SumatraPDF.exe”
- **记录执行函数**:将Immunity调试器附加到目标,通过Sumatra界面运行空白PDF样本,利用动态插桩的Pin工具将所有执行的函数记录到文本文件中。使用以下命令提取仅与目标模块相关的函数调用信息,并按函数调用次数对结果进行排序:
python coverage_parse.py Coverage.log --dump-routines --modules "SumatraPDF" --order-by-calls --outfile C:\Users\Administrator\Desktop\generated samples\samplecoverage.txt
- **重复操作**:对每个创建的样本重复上述第二个步骤。创建的五个不同样本的特征如下表所示:
| 样本特征 | 描述 |
|---|---|
| 所有内容在一个文件中 | 包含表格、文本、图像和方程 |
| 空白页 | 无内容 |
| 表格和文本 | 仅包含表格和文本 |
| 仅图像 | 仅包含图像 |
| 方程 | 仅包含方程 |
| 3. 覆盖率结果与分析 | |
| - 理论预期 :由于目标结构是在应用程序主界面上显示PDF样本内容,理论上具有不同特征的样本会有更好的覆盖率,因为显示这些内容需要更多的函数和资源并行工作。 | |
| - 分析脚本 :使用以下脚本分析五个覆盖率日志文件,将所有创建样本的覆盖率转换为调用树轮廓格式,以提取和区分每个样本的覆盖率: |
python coverage_to_callgraph.py Coverage.log *
- **结果总结**:将每个创建特征的覆盖率结果与空白样本的覆盖率进行比较,并总结在图表中。结果表明,样本中不同内容越多,覆盖率越好。空白PDF文件覆盖了目标代码的10.2%,仅包含图像的样本使覆盖率增加了1.9%,所有内容构建在一个样本中时显示出最佳的代码覆盖率,为15%。
二、云安全的文献计量分析
-
云计算概述
- 定义与服务模型 :美国国家标准与技术研究院(NIST)将云计算定义为一种通过网络访问公共、可配置的计算数据资源组的交付模型。主要的云服务模型包括基础设施即服务(IaaS)、软件即服务(SaaS)和平台即服务(PaaS)。
- 优势与安全问题 :云计算具有独特优势,使组织和用户无需投入大量资金和资源购买、处理软硬件及维护。但随着云计算的普及,其安全问题也日益突出,如数据机密性、完整性和可用性问题,拒绝服务(DoS)攻击等。
-
云安全研究现状
- 现有预防措施的局限性 :尽管有杀毒软件、防火墙技术、入侵检测系统(IDSs)等预防措施,但由于云计算的方法和过程特点,仍存在一些无法避免的威胁。
- 研究的单一性 :许多与云安全和取证相关的研究论文仅针对单一属性,如基础设施问题、数据问题和审计。
-
文献计量分析的应用
- 传统与新方法对比 :传统的文献计量方法主要关注引文和内容分析,而新建立的文献计量分析评估作者、国家、机构的学术产出,并指出研究模式的时间演变。
- 研究目的 :对云安全的发展进行文献计量分析,使用656篇学术论文的数据集,分析最有成果的国家、机构、期刊、作者、研究领域、关键词以及高引用文章。
- 主要发现 :中国、印度和美国是该领域研究结果的主要贡献者。云安全领域的出版物数量呈上升趋势,相关关键词的数量也在增加。
综上所述,在安全测试中,通过对不同模糊测试方法的研究和对测试用例的优化,可以提高软件的安全性。而在云安全领域,文献计量分析为我们了解研究趋势和方向提供了有价值的参考,有助于未来进一步开展相关研究和开发更有效的安全措施。
两种模糊测试方法在安全测试中的评估与应用及云安全的文献计量分析
三、模糊测试方法的总结与建议
-
不同模糊测试工具的优劣
- Peach :虽然在测试过程中需要下载不同特征的样本,完成测试的时间比FileFuzz长,且可能无法进行现实的比较,但考虑到发现的崩溃数量和测试的样本数量,它在对目标应用程序结构有一定先验知识和样本覆盖率方面具有优势,在比较中更胜一筹。
- FileFuzz :操作简单,只需一个样本即可开始模糊测试,能一键生成样本,但生成的样本代码覆盖率低,效果不如Peach。
-
优化模糊测试的建议
- 样本重构 :为了获得更好的模糊测试结果,应根据对目标功能的清晰理解重构样本。对于FileFuzz,应在测量每个创建样本的代码覆盖率后选择覆盖率最高的样本;对于Peach平台,由于其允许用户创建自己的模糊测试器,可以利用这一特性创建复杂样本,并将代码修改集中在样本的特定位置。
- 多轮测试 :进行多轮模糊测试,以尽可能覆盖目标函数。
以下是模糊测试优化建议的流程图:
graph LR
A[开始模糊测试] --> B{选择工具}
B -->|Peach| C[下载不同特征样本]
B -->|FileFuzz| D[选择一个样本]
C --> E[进行样本覆盖率分析]
D --> E
E --> F{覆盖率是否达标}
F -->|否| G[重构样本]
G --> E
F -->|是| H[进行多轮模糊测试]
H --> I[结束测试]
四、云安全研究的展望
-
未来研究方向
- 数据集扩展 :未来的研究可以扩展数据集,包括更多的样本,并通过添加额外属性来增强样本特征。
- 特定漏洞测试 :基于不同测试用例中构建的特定漏洞数据库对目标进行测试,这些数据库应包含简单的执行指令。
- 物联网设备应用 :将上述模糊测试方法和云安全研究成果应用于物联网设备中的嵌入式测试软件,以提高其安全性。
-
云安全研究的重要性
- 持续关注安全 :随着云计算和物联网的不断发展,云安全问题将持续存在且更加复杂。因此,持续关注云安全研究,不断开发新的安全措施至关重要。
- 跨领域合作 :云安全研究涉及计算机科学、数学、密码学等多个领域,需要跨领域的合作来推动其发展。
以下是云安全未来研究方向的列表:
- 扩展数据集,包含更多样本和额外属性。
- 基于特定漏洞数据库进行目标测试。
- 将研究成果应用于物联网设备嵌入式测试软件。
- 开展跨领域合作,推动云安全研究发展。
总之,模糊测试方法在软件安全测试中具有重要作用,通过合理选择工具和优化样本可以提高测试效果。而云安全研究对于保障云计算和物联网的安全至关重要,未来需要在多个方向上进行深入研究和探索,以应对不断变化的安全挑战。
超级会员免费看
1455

被折叠的 条评论
为什么被折叠?



