SECURITY
CONNECTING SAFELY IN
A SMART WORLD


How do you secure your devices and protect device credentials?
Securing the IoT devices and identity credentials, such as certificates, private keys, tokens, etc., is imperative throughout their entire lifecycle. It is essential to guarantee the authenticity of your IoT hardware by securely storing, managing, and controlling access to the identities used for cloud authentication. By prioritising device security and maintaining the safe storage of device credentials, you can significantly minimise the potential for unauthorised users to exploit these credentials.
1. Use a separate hardware or a secure area on your devices to store credentials
It is imperative to have a secure hardware feature that you can use to protect device credentials at rest. Using separate hardware or a secure area to store credentials is essential to device security for several reasons:
- Protecting Sensitive Information
- Mitigating Physical Attacks
- Preventing Unauthorised Access
- Reducing Vulnerabilities
- Compliance Requirements
Aspects that should be considered to keep on device credentials secure are:
- Hardware Security Module (HSM): Use a dedicated hardware security module or trusted platform module (TPM) to store and manage credentials. These modules are designed to be tamper-resistant and provide a secure environment for key storage.
- Secure Boot Process: Implement a secure boot process that verifies the integrity of the device's firmware and software before allowing access to stored credentials.
- Encryption: Encrypt credentials before storing them, and ensure that only authorised processes or individuals can decrypt and access the data.
- Access Controls: Employ strong access controls to manage who can access and modify the stored credentials. This includes user authentication, role-based access, and secure communication protocols.
- Regular Auditing and Monitoring: Continuously monitor the secure storage area for any suspicious activities or tampering attempts. Regularly audit access logs and update credentials as necessary.
By using a separate hardware module or secure area to store credentials, IoT devices can enhance their security posture, making it more challenging for attackers to compromise the sensitive information critical for their operation.
2. Use a trusted platform module (TPM) to implement cryptographic controls
Using a Trusted Platform Module (TPM) to implement cryptographic controls in an IoT device is a security measure that helps protect the confidentiality and integrity of data exchanged between IoT devices and cloud services. Here's how TPM can be integrated into an IoT device's security strategy:
What is TPM? A Trusted Platform Module (TPM) is a dedicated hardware component that provides secure cryptographic capabilities, including key generation, storage, and management. TPMs are designed to safeguard sensitive data and perform cryptographic operations in a secure and isolated environment.
- Device Identity and Authentication:
- Key Generation: The TPM can generate unique device identity keys. In the context of IoT, these keys are used to uniquely identify each IoT device.
- Key Storage: TPM securely stores these keys, protecting them from unauthorised access or tampering.
- Secure Device Bootstrapping:
- During the device's boot-up process, the TPM can ensure that only trusted firmware and software are loaded, preventing unauthorised code execution. This is critical for preventing malicious software from compromising the device.
- Secure Communication:
- Data Encryption: The device can use the keys stored in the TPM to encrypt data before sending it to AWS IoT Core or other AWS services. This ensures that data transmitted between the IoT device and the AWS cloud is confidential and protected from eavesdropping.
- Device Authentication: The TPM can also be used to authenticate the IoT device when connecting to AWS services, ensuring that only authorised devices can access cloud resources.
- Key Rotation and Management:
- TPMs can be used to facilitate secure key rotation, which is essential for maintaining the long-term security of IoT devices. When necessary, new keys can be generated and securely stored in the TPM.
- AWS IoT Core Integration:
- AWS IoT Core supports the use of X.509 certificates for device authentication. These certificates can be generated and signed using the keys stored in the TPM.
- IoT devices with TPMs can use these certificates to establish secure MQTT connections with AWS IoT Core, ensuring that data communication is authenticated and encrypted.
- Secure OTA Updates:
- The TPM can be used to verify the authenticity and integrity of over-the-air (OTA) updates. Before applying updates, the device can use the TPM to confirm that the firmware or software being installed is from a trusted source.
- Root of Trust:
- The TPM serves as a "root of trust" in the device's security architecture, anchoring the device's trust in a hardware-based security module.
- Security Monitoring:
- The TPM can keep logs of security events and operations, aiding in the detection of security breaches or suspicious activities.
By implementing a TPM in an IoT device and integrating it with AWS services, you can significantly enhance the security of your IoT solution. This combination ensures the confidentiality, integrity, and authenticity of data transmitted between devices and the AWS cloud while also providing a robust foundation for secure device management and updates.
3. Use protected boot and persistent storage encryption
Enforcing essential security measures, such as the adoption of protected boot and persistent storage encryption, is pivotal in upholding the security of your devices. By implementing these safeguards, you fortify your IoT devices against potential threats and unauthorised access. The combination of a secure boot process and robust data encryption significantly bolsters the integrity of your device's software and data. Embracing this proactive approach is paramount for the sustained security and dependability of your IoT devices, rendering them more impervious to potential vulnerabilities.