Cirrent takes security very seriously. The WCM has been designed with security in mind, to ensure that your connected product works exactly as intended and does not open your users or their networks to any security risks.
Most security concerns are taken care of by the WCM, but there are a few areas where you need to be mindful of how you install the WCM in your connected product, to avoid opening up any security vulnerabilities:
- Device keystore - the device id and secret must be protected so they cannot be retrieved for use outside of the WCM. In the wrong hands, the device id and secret can be used to spoof a device and retrieve the user's private network credentials.
- On Linux, the keystore must be readable by root, not readable by any other users. You can also implement your own library to access the device keystore so that the device id and secret need not be written to the file system at all.
- On RTOS - should be in protected memory.
- Both the wcm_agent and wcm_cli binaries must be protected (i.e. need root privileges to execute): otherwise there is a possibility for a non-root user to execute scripts as root.