2021
DOI: 10.1145/3418461
|View full text |Cite
|
Sign up to set email alerts
|

Beyond Tests

Abstract: Automated program repair is an emerging technology that seeks to automatically rectify program errors and vulnerabilities. Repair techniques are driven by a correctness criterion that is often in the form of a test suite. Such test-based repair may produce overfitting patches, where the patches produced fail on tests outside the test suite driving the repair. In this work, we present a repair method that fixes program vulnerabilities without the need for a voluminous test suite. Given a vulnerability as eviden… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
6
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
6

Relationship

1
5

Authors

Journals

citations
Cited by 42 publications
(6 citation statements)
references
References 46 publications
0
6
0
Order By: Relevance
“…For example, semantics-based repair approaches usually sort the patches by their complexity and prefer simpler ones. 7,15,37 F I G U R E 2 The example of a patch representation.…”
Section: Fitness Functionmentioning
confidence: 99%
See 3 more Smart Citations
“…For example, semantics-based repair approaches usually sort the patches by their complexity and prefer simpler ones. 7,15,37 F I G U R E 2 The example of a patch representation.…”
Section: Fitness Functionmentioning
confidence: 99%
“…Please note that although this objective reduces the possibility of generating complex patches, it meets existing repair practices. For example, semantics‐based repair approaches usually sort the patches by their complexity and prefer simpler ones 7,15,37 …”
Section: Approachmentioning
confidence: 99%
See 2 more Smart Citations
“…Such vulnerability hunters only help security experts to detect and localize the location of security vulnerabilities. However, it is incredibly time-consuming and labor-intensive for security experts to repair such security vulnerabilities manually due to the strikingly increasing number of detected vulnerabilities and the complexity of modern software systems [14], [15]. For example, previous studies report that the average time for repairing severe vulnerabilities is 256 days [16] and the life spans of 50% of vulnerabilities even exceed 438 days [17].…”
Section: Introductionmentioning
confidence: 99%