Step 3 Adding a Custom Tool With Uleska: Configure Uleska to Pick Up Docker


Step 1: Create a script

Step 2: Wrap Script into Docker

Step 3: Configure Uleska to pick up Docker

Go to the Uleska UI. We want to put the docker information into Uleska so it can have the custom tool and be able to run it through any CI/CD pipelines.

Select Custom Tools on left hand menu

Go to Add new custom tool tab

Step 3

Enter information into these fields:

  • Name

  • Tool description

  • Upload Custom Tool Icon - for reference on the Uleska platform

  • Source Code - the ‘requirements’ and ‘python’ file you previously put in a zip file

  • XML File Location - This is the way in which Uleska checks and verifies whether any vulnerabilities have been found. We need to make sure that it's always the same location. We also need to make sure this is the same as the ‘output’ part of the Command

  • Docker File - this is the docker we created in Step 2

  • Command - same command as before, but change URL to a dynamic URL to the Uleska can pass it dynamically. Finally, ensure that the —output directory and file location is that as that specified


python3 /usr/src/app/ --url --url <<SCHEMA>>://<<HOST>> --output /usr/src/app/output.html

Choose your Tool Type

  • Static - only used when you have a costing tool that is analysing a source code, configured git repository will be cloned onto that docker

  • Dynamic - when not using code
Parameters - configured as part of tool kit whenever a project is set up. In this example we're going to use the 'debug' parameter defined in the script to show additional information.
  • Name - Debug

  • Flag - In this case we want to pass the —debug flag

  • Required - Yes or No. In this case it's not required.

  • Type - In this example we'll set as a STRING. The options are BOOLEAN, INTEGER, OPTION or STRING.

  • Description - A friendly and useful description of the parameter for others

  • Options/Values - This allows you to specify options or value that can be later passed in. For example, the various flags that might need to change and be set for NMap.

  • Default Value - The default value for the option/value

Uleska now has all the information to create the custom tool

Click Back

You will see your new tool in the full list

The Status will say ‘INCOMPLETE’, you will need to Request Approval, and the administrator will then review and approve the source code to be used within Uleska.

Step 31

After the admin has approved your custom tool, the status will say ‘PROCESSING’. Uleska will begin process of creating docker image for your custom tool, which can take a few minutes depending on size

When Uleska has finished creating the docker for your custom tool, the tool will say ‘APPROVED’ and be able to be used in your projects.