Hybrid analysis of vulnerable information flows
First Claim
1. A system comprising:
- a hardware processor programmed to initiate executable operations comprising;
performing a black-box scan of an application;
based on the black-box scan, recording a call-tree representation of a plurality of call stacks arising in the application due to test inputs provided during the black-box scans the call tree representation indicating paths between the plurality of call stacks;
performing, for each of the paths in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, a static analysis, and by the static analysis determining at least one parameter value that, when abstracted, drives execution of the application, via the path in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, to flow to the at least one security sink; and
generating a security report identifying at least one of the paths in the call-tree representation that does not constitute the vulnerable information flow during the black-box scan, but flows to the at least one security sink when the at least one parameter value is abstracted.
1 Assignment
0 Petitions
Accused Products
Abstract
Arrangements described herein relate to analyzing vulnerable information flows in an application. A black-box scan of the application can be performed to record a call-tree representation of call stacks arising in the application due to test inputs provided during the black-box scan. For each path in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, a static analysis can be performed to determine at least one parameter value that, when abstracted, drives execution of the application, via the path, to flow to the at least one security sink. A security report can be generated identifying at least one of the paths in the call-tree representation that does not constitute the vulnerable information flow during the black-box scan, but flows to the at least one security sink when the at least one parameter value is abstracted.
-
Citations
16 Claims
-
1. A system comprising:
-
a hardware processor programmed to initiate executable operations comprising; performing a black-box scan of an application; based on the black-box scan, recording a call-tree representation of a plurality of call stacks arising in the application due to test inputs provided during the black-box scans the call tree representation indicating paths between the plurality of call stacks; performing, for each of the paths in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, a static analysis, and by the static analysis determining at least one parameter value that, when abstracted, drives execution of the application, via the path in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, to flow to the at least one security sink; and generating a security report identifying at least one of the paths in the call-tree representation that does not constitute the vulnerable information flow during the black-box scan, but flows to the at least one security sink when the at least one parameter value is abstracted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product for analyzing vulnerable information flows in an application, the computer program product comprising a computer readable storage device, wherein the computer readable storage device is not a transitory, propagating signal per se, having program code or stored thereon, the program code executable by a processor to perform a method comprising:
-
performing, by the processor, a black-box scan of the application; based on the black-box scan, recording, by the processor, a call-tree representation of a plurality of call stacks arising in the application due to test inputs provided during the black-box scan, the call tree representation indicating paths between the plurality of call stacks; performing, by the processor, for each of the paths in the call-tree that does not constitute a vulnerable information flow during the black-box scan, a static analysis, and by the static analysis determining at least one parameter value that, when abstracted, drives execution of the application, via the path in the call-tree representation that does not constitute a vulnerable information flow during the black-box scan, to flow to the at least one security sink; and generating, by the processor, a security report identifying at least one of the paths in the call-tree representation that does not constitute the vulnerable information flow during the black-box scan, but flows to the at least one security sink when the at least one parameter value is abstracted. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification