You can create and import custom scan checks using BChecks. Burp Scanner runs these checks in addition to its built-in scanning routine, helping you to target your scans and make your testing workflow as efficient as possible.
BChecks are listed in a table in the Extensions > BChecks tab. Click on any BCheck in the table to preview the definition.
The table contains the following columns:
The Name, Author, and Tags columns are automatically populated from the BCheck definition. To modify these, edit the BCheck definition directly. For more information on editing BChecks definitions, see BCheck definition reference and BChecks worked examples.
You can perform the following actions on your BChecks:
.bcheck extension.
You can also import and export BChecks as part of a project file. For more information, see Project files.
You can test your BChecks using the BS Code editor's built-in test function. When you run a test, Burp Scanner runs the BCheck on a group of pre-selected HTTP messages and reports the results.
Alternatively, you can test multiple BChecks at once by running a scan with the Audit checks - BChecks only built-in scan configuration selected. This scan uses your enabled checks only.
If you're creating or editing a BCheck, you can use the BS Code Logger to help you to troubleshoot any unexpected behaviors:
Go to Extensions > BChecks and select a BCheck.
Click Edit. The BS Code window opens.
To send a message from anywhere in Burp to the BChecks editor, right-click the message and select Send to BChecks editor.
In the BS Code window, select the Logger tab and click Run test.
Select a message to see the request and response.
Requests generated by BChecks may be modified by session handling rules or extensions. If the message doesn't look as you expected, try disabling session handling rules or extensions, and run the test again.
You can prevent Burp from using BChecks when scanning. To do this:
You can also specify whether Burp should run BChecks for passive scans, active scans, or both. To do this: