Package burp
Interface IScannerCheck
-
public interface IScannerCheckExtensions can implement this interface and then callIBurpExtenderCallbacks.registerScannerCheck()to register a custom Scanner check. When performing scanning, Burp will ask the check to perform active or passive scanning on the base request, and report any Scanner issues that are identified.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description intconsolidateDuplicateIssues(IScanIssue existingIssue, IScanIssue newIssue)The Scanner invokes this method when the custom Scanner check has reported multiple issues for the same URL path.java.util.List<IScanIssue>doActiveScan(IHttpRequestResponse baseRequestResponse, IScannerInsertionPoint insertionPoint)The Scanner invokes this method for each insertion point that is actively scanned.java.util.List<IScanIssue>doPassiveScan(IHttpRequestResponse baseRequestResponse)The Scanner invokes this method for each base request / response that is passively scanned.
-
-
-
Method Detail
-
doPassiveScan
java.util.List<IScanIssue> doPassiveScan(IHttpRequestResponse baseRequestResponse)
The Scanner invokes this method for each base request / response that is passively scanned. Note: Extensions should only analyze the HTTP messages provided during passive scanning, and should not make any new HTTP requests of their own.- Parameters:
baseRequestResponse- The base HTTP request / response that should be passively scanned.- Returns:
- A list of
IScanIssueobjects, ornullif no issues are identified.
-
doActiveScan
java.util.List<IScanIssue> doActiveScan(IHttpRequestResponse baseRequestResponse, IScannerInsertionPoint insertionPoint)
The Scanner invokes this method for each insertion point that is actively scanned. Extensions may issue HTTP requests as required to carry out active scanning, and should use theIScannerInsertionPointobject provided to build scan requests for particular payloads. Note: Scan checks should submit raw non-encoded payloads to insertion points, and the insertion point has responsibility for performing any data encoding that is necessary given the nature and location of the insertion point.- Parameters:
baseRequestResponse- The base HTTP request / response that should be actively scanned.insertionPoint- AnIScannerInsertionPointobject that can be queried to obtain details of the insertion point being tested, and can be used to build scan requests for particular payloads.- Returns:
- A list of
IScanIssueobjects, ornullif no issues are identified.
-
consolidateDuplicateIssues
int consolidateDuplicateIssues(IScanIssue existingIssue, IScanIssue newIssue)
The Scanner invokes this method when the custom Scanner check has reported multiple issues for the same URL path. This can arise either because there are multiple distinct vulnerabilities, or because the same (or a similar) request has been scanned more than once. The custom check should determine whether the issues are duplicates. In most cases, where a check uses distinct issue names or descriptions for distinct issues, the consolidation process will simply be a matter of comparing these features for the two issues.- Parameters:
existingIssue- An issue that was previously reported by this Scanner check.newIssue- An issue at the same URL path that has been newly reported by this Scanner check.- Returns:
- An indication of which issue(s) should be reported in the main
Scanner results. The method should return
-1to report the existing issue only,0to report both issues, and1to report the new issue only.
-
-