9. Risks & Technical Depths

Use of undocumented API parts

Description

To achieve some of its goals fotoobo makes use of undocumented API calls. This is due to missing functionality in the official Fortinet APIs.

Risk

Undocumented API parts are subject to be changed at any time by Fortinet without notification or any deprecation process. This will possibly break the respective fotoobo functionality.

Mitigation

Any part of fotoobo is tested regularly against real Fortinet devices so we will get to know, when some API calls break and break the respective fotoobo part.

Note: This is done using a best-effort approach of the maintainers and is mostly based on the regular use of the current fotoobo features using cron-jobs and alike.

Use of unencrypted inventory including credentials

Description

Currently fotoobo may use only its own inventory format which is entirely unencrypted. The required login data (tokens, username & password) need to be part of the inventory.

Risk

Because of the supported functionality of fotoobo these credentials usually have admin rights on the respective Fortinet devices. So loss of this information may pose a big security threat to the company using fotoobo.

Mitigation

There are several things done to mitigate this risk:

  • fotoobo by default uses only encrypted and verified connections to communicate with the Fortinet devices and other backend systems. Lowering the security bar is in the user’s hands and not the first suggestion in the documentation.

  • The risk of exposing the inventory and how to minimize this risk is clearly stated in the documentation at The fotoobo inventory.

  • To make the handling of sensitive data a bit safer you may store such data in a Hashicorp Vault service which is documented here: Hashicorp Vault Service.