Custom Modules

The modules that perform Core Impact’s security tests are constantly being updated with the latest threats. The power to create these modules is accessible to all users through Core Impact's open, standard Python language interface. The New Module Wizard makes this even easier by guiding the user through the process of creating module templates, which they then simply populate with Python script.

This process requires a working knowledge of the Python Programming Language. See http://www.python.org for more information.

Creating a Custom Module

To create a new module:

  1. Navigate in Core Impact's menu bar to Modules -> New Module...
  2. The New Module Wizard will open. Click the Next button to proceed.
  3. Complete the first form with the following details:

    Name: The name of the module as it will appear in the modules list.

    File name: The Python (.py) file where the module will be written and stored in the file system.

    Category: The location in the Modules list where the new module will reside. By default, custom modules are saved in the My Modules folder, but you can change this by clicking on the ellipsis button () and selecting a new location.

    Brief description: Optional description of the module. This description cannot contain special characters or carriage returns.

    New Module Wizard - Module Name and Description

    Click the Next button after the form is complete.

  4. In the Module Parameters box, click the plus sign () icon to add a new parameter to the module. To subsequently remove a parameter, select it and click the delete () icon.

    New Module Wizard - Module Parameters

  5. For each parameter, enter the following attributes:

    Type: The category of parameter. For example, ip_range, string, ports, os, etc.

    Name: The name of the parameter. For example, TARGET, Operating System, Port Numbers, etc.

    Default Value: The default value of the parameter when the module is executed.

    Description: A brief description of the parameter.

    When all parameters are established, click the Next button.

  6. On the final page of the wizard, you will see confirmation that you have provided all the required information.

    Click the Finish button and the Module will be created.

    You can view the progress of the generation process by selecting the New Module Generator module in the Executed Modules panel, then clicking on the Module Log tab.

    Module Log from New Module Generator

  7. Once it is created, the new .py file will open automatically in your default text editor.

    At this point, the module is not complete. It is only a template that still needs to be customized before it will be functional.

    Inside of the .py file, you will find commented guidance on how to edit and complete your new module.

    Modify your .py file as needed, then save and close the file. Your new module can then be managed just as any other module in Core Impact.