Evaluation of Software Static Analyzers

Lobna Khaled, Nashwa Abdelbaki
{"title":"Evaluation of Software Static Analyzers","authors":"Lobna Khaled, Nashwa Abdelbaki","doi":"10.1145/3436829.3436835","DOIUrl":null,"url":null,"abstract":"With the massive increase of software applications and websites, testing has become a very important concern in the software development process. This is due to the spread of a large number of security flaws. Dynamic testing requires code execution to examine the functional and non-functional behavior of software systems. It requires more time and cost, and it finds fewer bugs. On the other hand, static testing is done before code deployment and without code execution. Additionally, it provides a comprehensive diagnostics of code and focuses more on defects prevention. This provides greater benefits and is more cost-effective. Several techniques exist to perform static testing. One of them is using static analyzers tools that locate vulnerabilities in code and identify potential security flaws. Furthermore, these tools offer solutions to avoid security breaches. This paper contributes to the field of software testing in many aspects, by introducing the recent research studies in static analyzers. We discuss the importance of static analyzers and their challenges. We provide useful guidelines for selecting test cases to evaluate different static analyzers tools. Additionally, we explain a list of software common weaknesses. Furthermore, we explore the current research trend in static analyzers tools and techniques. Finally, we perform a research study to examine the performance of five PHP static analyzers tools. We report their ability to detect five common vulnerabilities by using Software Assurance Reference Dataset (SARD) test suite.","PeriodicalId":162157,"journal":{"name":"Proceedings of the 9th International Conference on Software and Information Engineering","volume":"162 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-11-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 9th International Conference on Software and Information Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3436829.3436835","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

With the massive increase of software applications and websites, testing has become a very important concern in the software development process. This is due to the spread of a large number of security flaws. Dynamic testing requires code execution to examine the functional and non-functional behavior of software systems. It requires more time and cost, and it finds fewer bugs. On the other hand, static testing is done before code deployment and without code execution. Additionally, it provides a comprehensive diagnostics of code and focuses more on defects prevention. This provides greater benefits and is more cost-effective. Several techniques exist to perform static testing. One of them is using static analyzers tools that locate vulnerabilities in code and identify potential security flaws. Furthermore, these tools offer solutions to avoid security breaches. This paper contributes to the field of software testing in many aspects, by introducing the recent research studies in static analyzers. We discuss the importance of static analyzers and their challenges. We provide useful guidelines for selecting test cases to evaluate different static analyzers tools. Additionally, we explain a list of software common weaknesses. Furthermore, we explore the current research trend in static analyzers tools and techniques. Finally, we perform a research study to examine the performance of five PHP static analyzers tools. We report their ability to detect five common vulnerabilities by using Software Assurance Reference Dataset (SARD) test suite.
软件静态分析器的评价
随着软件应用程序和网站的大量增加,测试已经成为软件开发过程中一个非常重要的关注点。这是由于大量安全漏洞的传播。动态测试需要执行代码来检查软件系统的功能性和非功能性行为。它需要更多的时间和成本,而且发现的bug更少。另一方面,静态测试在代码部署之前完成,不需要执行代码。此外,它提供了对代码的全面诊断,并更多地关注于缺陷预防。这提供了更大的好处,更具成本效益。有几种技术可以执行静态测试。其中之一是使用静态分析工具来定位代码中的漏洞并识别潜在的安全缺陷。此外,这些工具还提供了避免安全漏洞的解决方案。本文通过介绍静态分析器的最新研究成果,对软件测试领域做出了多方面的贡献。我们讨论了静态分析器的重要性和它们所面临的挑战。我们为选择测试用例来评估不同的静态分析工具提供了有用的指导方针。此外,我们还解释了软件常见弱点的列表。此外,我们还探讨了静态分析仪工具和技术的当前研究趋势。最后,我们进行了一项研究,以检查五个PHP静态分析工具的性能。我们报告了他们通过使用软件保证参考数据集(SARD)测试套件检测五个常见漏洞的能力。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信