SaTC: CORE: Small: Machine Learning for Effective Fuzz Testing

SaTC:核心:小型:用于有效模糊测试的机器学习

基本信息

  • 批准号:
    1817122
  • 负责人:
  • 金额:
    $ 50万
  • 依托单位:
  • 依托单位国家:
    美国
  • 项目类别:
    Standard Grant
  • 财政年份:
    2018
  • 资助国家:
    美国
  • 起止时间:
    2018-10-01 至 2022-09-30
  • 项目状态:
    已结题

项目摘要

In recent years, fuzz testing has evolved as one of the most effective testing techniques for finding security vulnerabilities and correctness bugs in real-world software systems. It has been used successfully by major software companies for security testing and quality assurance. State-of-the-art fuzz testing tools have found numerous security vulnerabilities and bugs in widely used software such as Web browsers, network tools, image processors, popular system libraries, C compilers, and interpreters.Fuzz testing works by generating random input data for a program under test. A key reason behind its huge popularity is that it has low computation overhead compared to other sophisticated techniques such as dynamic symbolic execution. While fuzz testing has been highly successful in practice, it has been mostly implemented in ad-hoc ways by incorporating a collection of hacks and best practices. As such, fuzz testing techniques usually generate many redundant test inputs and take several days to weeks to find bugs. For complex input formats, such as for random C program inputs for a C compiler, a huge amount of manual tuning is required to make fuzz testing generate valid test inputs. This project proposes to make fuzz testing smarter and more effective by applying machine learning with customizable testing objectives. The proposed techniques will use probabilistic machine learning models, such as n-grams, recurrent neural networks (RNN), recursive neural networks, or multi-armed bandits, to generate inputs from scratch or to mutate a set of seed inputs. The model will be trained in such a way that the inputs generated by it will maximize the custom testing objective. We expect that such a model will generate fewer redundant inputs and can be customized to user-provided testing objectives. This project aims to contribute to the development of reliable, secure, and trustworthy software. The tools and techniques developed in this project will make it easier for programmers to write correct and secure programs.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
近年来,模糊测试已发展为在现实世界软件系统中找到安全漏洞和正确性错误的最有效测试技术之一。 主要软件公司成功使用了它来进行安全测试和质量保证。 最先进的绒毛测试工具在广泛使用的软件中发现了许多安全漏洞和错误,例如Web浏览器,网络工具,图像处理器,流行的系统库,C编译器和口译员。通过为正在测试的程序生成随机输入数据,可以通过生成随机输入数据。 与其他复杂技术(例如动态符号执行)相比,其巨大受欢迎程度背后的关键原因是,它的计算开销较低。 虽然模糊测试在实践中取得了非常成功的效果,但它主要通过纳入骇客和最佳实践来以临时的方式实施。因此,模糊测试技术通常会产生许多冗余测试输入,并需要几天到几周才能找到错误。对于复杂的输入格式,例如用于C编译器的随机C程序输入,需要大量的手动调整才能使模糊测试生成有效的测试输入。 该项目建议通过使用可自定义的测试目标应用机器学习,使模糊测试更聪明,更有效。所提出的技术将使用概率的机器学习模型,例如N-Gram,复发性神经网络(RNN),递归神经网络或多臂匪徒,从划痕或突变一组种子输入来生成输入。 该模型的培训方式将以使其生成的输入将最大化自定义测试目标。我们希望这样的模型会产生更少的冗余输入,并且可以自定义为用户提供的测试目标。该项目旨在为可靠,安全和值得信赖的软件的开发做出贡献。 该项目中开发的工具和技术将使程序员更容易编写正确且安全的程序。该奖项反映了NSF的法定任务,并被认为是值得通过基金会的知识分子优点和更广泛的影响评估标准通过评估来支持的。

项目成果

期刊论文数量(12)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Quickly Generating Diverse Valid Test Inputs with Reinforcement Learning ICSE 2020
使用强化学习快速生成多样化的有效测试输入 ICSE 2020
JQF: coverage-guided property-based testing in Java
FUZZFACTORY: Domain-Specific Fuzzing with Waypoints
VizSmith: Automated Visualization Synthesis by Mining Data-Science Notebooks
Growing a Test Corpus with Bonsai Fuzzing
{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Koushik Sen其他文献

Multiversion Hindsight Logging for Continuous Training
用于持续培训的多版本事后日志记录
  • DOI:
    10.48550/arxiv.2310.07898
  • 发表时间:
    2023
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Rolando Garcia;Anusha Dandamudi;Gabriel Matute;Lehan Wan;Joseph Gonzalez;J. M. Hellerstein;Koushik Sen
  • 通讯作者:
    Koushik Sen
DSPy Assertions: Computational Constraints for Self-Refining Language Model Pipelines
DSPy 断言:自精炼语言模型管道的计算约束
  • DOI:
  • 发表时间:
    2023
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Arnav Singhvi;Manish Shetty;Shangyin Tan;Christopher Potts;Koushik Sen;Matei Zaharia;O. Khattab
  • 通讯作者:
    O. Khattab
Automated Test Generation Using Concolic Testing
使用 Concolic 测试自动生成测试
Zoomie: A Software-like Debugging Tool for FPGAs
Zoomie:一款类似软件的 FPGA 调试工具
TesMa and CATG: Automated Test Generation Tools for Models of Enterprise Applications
TesMa 和 CATG:企业应用程序模型的自动测试生成工具

Koushik Sen的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Koushik Sen', 18)}}的其他基金

SHF: Small: Automatic Exploration and Analysis of Software Performance Responses
SHF:小型:软件性能响应的自动探索和分析
  • 批准号:
    1908870
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Medium: Collaborative Research: HUGS: Human-Guided Software Testing and Analysis for Scalable Bug Detection and Repair
SHF:中:协作研究:HUGS:用于可扩展错误检测和修复的人工引导软件测试和分析
  • 批准号:
    1900968
  • 财政年份:
    2019
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
SHF: Medium: Automated Graphical User Interface Testing with Learning
SHF:中:自动化图形用户界面测试与学习
  • 批准号:
    1409872
  • 财政年份:
    2014
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small: A Dynamic Analysis and Test Generation Framework for JavaScript and Web Applications
SHF:小型:JavaScript 和 Web 应用程序的动态分析和测试生成框架
  • 批准号:
    1423645
  • 财政年份:
    2014
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small: Directed Testing and Debugging of Concurrent Programs
SHF:小型:并发程序的定向测试和调试
  • 批准号:
    1018729
  • 财政年份:
    2010
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
SHF: Small: Specifying and Verifying Essential Deterministic Behavior of Concurrent Programs
SHF:小:指定和验证并发程序的基本确定性行为
  • 批准号:
    1018730
  • 财政年份:
    2010
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
CAREER: Scalable Automated Software Testing and Repair
职业:可扩展的自动化软件测试和修复
  • 批准号:
    0747390
  • 财政年份:
    2008
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
CSR --- SMA: Predictive Testing of System Software
CSR --- SMA:系统软件的预测测试
  • 批准号:
    0720906
  • 财政年份:
    2007
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant

相似国自然基金

基于NRF2调控KPNB1促进PD-L1核转位介导非小细胞肺癌免疫治疗耐药的机制研究
  • 批准号:
    82303969
  • 批准年份:
    2023
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
小胶质细胞调控外侧隔核-腹侧被盖区神经环路介导社交奖赏障碍的机制研究
  • 批准号:
    82304474
  • 批准年份:
    2023
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
肾去交感神经术促进下丘脑室旁核小胶质细胞M2型极化减轻心衰损伤的机制研究
  • 批准号:
    82370387
  • 批准年份:
    2023
  • 资助金额:
    49 万元
  • 项目类别:
    面上项目
空间邻近标记技术研究莱茵衣藻蛋白核小管与碳浓缩机制的潜在关系
  • 批准号:
    32300220
  • 批准年份:
    2023
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目
polyG蛋白聚集体诱导小胶质细胞活化在神经元核内包涵体病中的作用及机制研究
  • 批准号:
    82301603
  • 批准年份:
    2023
  • 资助金额:
    30 万元
  • 项目类别:
    青年科学基金项目

相似海外基金

SaTC: CORE: Small: An evaluation framework and methodology to streamline Hardware Performance Counters as the next-generation malware detection system
SaTC:核心:小型:简化硬件性能计数器作为下一代恶意软件检测系统的评估框架和方法
  • 批准号:
    2327427
  • 财政年份:
    2024
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
  • 批准号:
    2338301
  • 财政年份:
    2024
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
  • 批准号:
    2338302
  • 财政年份:
    2024
  • 资助金额:
    $ 50万
  • 项目类别:
    Continuing Grant
SaTC: CORE: Small: NSF-DST: Understanding Network Structure and Communication for Supporting Information Authenticity
SaTC:核心:小型:NSF-DST:了解支持信息真实性的网络结构和通信
  • 批准号:
    2343387
  • 财政年份:
    2024
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
NSF-NSERC: SaTC: CORE: Small: Managing Risks of AI-generated Code in the Software Supply Chain
NSF-NSERC:SaTC:核心:小型:管理软件供应链中人工智能生成代码的风险
  • 批准号:
    2341206
  • 财政年份:
    2024
  • 资助金额:
    $ 50万
  • 项目类别:
    Standard Grant
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了