Computer software application self-testing

US9256511B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9256511-B2
Application numberUS-201213602559-A
CountryUS
Kind codeB2
Filing dateSep 4, 2012
Priority dateSep 4, 2012
Publication dateFeb 9, 2016
Grant dateFeb 9, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Testing a computer software application by detecting an arrival of input data provided as input to a computer software application from a source external to the computer software application, modifying the detected input data to include test data configured to test the computer software application in accordance with a predefined test, thereby creating a modified version of the detected input data, and processing the modified version of the detected input data, thereby performing the predefined test on the computer software application using the test data.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for testing a computer software application, the method comprising: instrumenting the computer software application to detect an arrival of input data provided as input to the computer software application from a source external to the computer software application; modifying the detected input data using a processor to include test data configured to perform a test for a known type of security vulnerability on the computer software application, thereby creating a modified version of the detected input data; and processing the modified version of the detected input data, to perform the test on the computer software application using the test data; and, wherein the detecting, modifying, and processing are performed by the computer software application analyzing results of the test responsive to the computer software application performing the test using the test data, wherein, the detected input data is modified a plurality of instance with each instance including different test data, and the processing is performed on each of the plurality of instances. 2. The method according to claim 1 and further comprising instrumenting the computer software application to perform the modifying. 3. The method according to claim 1 wherein the detecting comprises detecting wherein the computer software application is a web application and wherein the detected input data is an HTTP request. 4. The method according to claim 1 wherein the modifying comprises modifying wherein the test is designed to test for a known type of security vulnerability, and wherein the test data includes a malicious payload designed to exploit the security vulnerability. 5. The method according to claim 1 and further comprising: performing the modifying a plurality of times using different test data during each of the times, thereby creating a plurality of modified versions of the detected input data; and performing the processing for each of the modified versions of the detected input data. 6. A method for testing a computer software application, the method comprising: instrumenting a computer software application using a processor to detect an arrival of input data provided as input to the computer software application from a source external to the computer software application, modify the detected input data to include test data configured to perform a test for a known type of security vulnerability on the computer software application, thereby creating a modified version of the detected input data, and process the modified version of the detected input data, to perform the test on the computer software application using the test data; and analyzing results of the test responsive to the computer software application performing the predefined test using the test data, wherein the detected input data is modified a plurality of instances with each instance including different test data, and the process is performed on each of the plurality of instance. 7. The method according to claim 6 wherein the instrumenting comprises instrumenting wherein the computer software application is a web application and wherein the detected input data is an HTTP request. 8. The method according to claim 6 wherein the instrumenting comprises instrumenting the computer software application to modify the detected input data wherein the predefined test is designed to test for a known type of security vulnerability, and wherein the test data includes a malicious payload designed to exploit the security vulnerability. 9. The method according to claim 6 wherein the instrumenting comprises instrumenting the computer software application to modify the detected input data a plurality of times using different test data during each of the times, thereby creating a plurality of modified versions of the detected input data, and process each of the modified versions of the detected input data. 10. A system for testing a computer software application, the system comprising: a processor configured to initiate executable operations comprising: instrumenting the computer software application to detect an arrival of input data provided as input to the computer software application from a source external to the computer software application; modifying the detected input data using a processor to include test data configured to perform a test for a known type of security vulnerability on the computer software application, thereby creating a modified version of the detected input data; and processing the modified version of the detected input data, to perform the test on the computer software application using the test data, wherein the detecting, modifying, and processing are performed by the computer software application; analyzing results of the test response to the computer software application performing the test using the test data, wherein the detected input data is modified a plurality of instances with each instance including different test data, and the processing is performed on each of the plurality of instances. 11. The system according to claim 10 wherein the computer software application is instrumented to perform the modifying. 12. The system according to claim 10 wherein the computer software application is a web application and wherein the detected input data is an HTTP request. 13. The system according to claim 10 wherein the test is designed to test for a known type of security vulnerability, and wherein the test data includes a malicious payload designed to exploit the security vulnerability. 14. The system according to claim 10 wherein the processor is further configured to initiate executable operations comprising: performing the modifying a plurality of times using different test data during each of the times, thereby creating a plurality of modified versions of the detected input data; and performing the processing for each of the modified versions of the detected input data. 15. A system for testing a computer software application, the system comprising: a processor configured to initiate executable operations comprising: instrumenting the computer software application to detect an arrival of input data provided as input to the computer software application from a source external to the computer software application, modifying the detected input data to include test data configured to perform a test for a known type of security vulnerability one the computer software application, thereby creating a modified version of the detected input data, and processing the modified version of the detected input data, to perform the predefined test on the computer software application using the test data; and analyzing results of the test responsive to the computer software application performing the test using the test data, wherein the detected input data is modified a plurality of instance with each instance including different test data, and the processing is performed on each of the plurality of instances. 16. The system according to claim 15 wherein the computer software application is a web application and wherein the detected input data is an HTTP request. 17. The system according to claim 15 wherein the test is designed to test for a known type of security vulnerability, and wherein the test data includes a malicious payload designed to exploit the security vulnerability. 18. The system according to claim 15 wherein the processor is further configured to initiate an executable operation comprising instru

Assignees

Inventors

Classifications

  • for test design, e.g. generating new test cases · CPC title

  • by tracing the execution of the program · CPC title

  • for detecting or protecting against malicious traffic · CPC title

  • during program execution, e.g. stack integrity {; Preventing unwanted data erasure; Buffer overflow} · CPC title

  • Vulnerability analysis · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9256511B2 cover?
Testing a computer software application by detecting an arrival of input data provided as input to a computer software application from a source external to the computer software application, modifying the detected input data to include test data configured to test the computer software application in accordance with a predefined test, thereby creating a modified version of the detected input d…
Who is the assignee on this patent?
Saltzman Roi, Segal Ory, IBM
What technology area does this patent fall under?
Primary CPC classification G06F11/3684. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 09 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).