goTenna Pro X and Pro X2
The goTenna Pro series uses a weak password for the QR broadcast message. If the QR broadcast message is captured over RF it is possible to decrypt it and use it to decrypt all future and past messages sent via encrypted broadcast. In the goTenna Pro application, the encryption keys are stored along with a static IV on the device. This allows for complete decryption of keys stored on the device. This allows an attacker to decrypt all encrypted communications that include P2P, Group, and broadcast messages that use these keys. The goTenna Pro series use AES CTR mode for short, encrypted messages without any additional integrity checking mechanisms. This leaves messages malleable to any attacker that can access the message. The goTenna pro series does not encrypt the callsigns of its users. These callsigns reveal information about the users and can also be leveraged for other vulnerabilities. The goTenna Pro series does not authenticate public keys which allows an unauthenticated attacker to intercept and manipulate messages.  The goTenna Pro series does not use SecureRandom when generating its cryptographic keys. The random function in use is not suitable for cryptographic use. In the goTenna Pro there is a vulnerability that makes it possible to inject any custom message with any GID and Callsign using a software defined radio in existing gotenna mesh networks. This vulnerability can be exploited if the device is being used in a unencrypted environment or if the cryptography  has already been compromised. The goTenna Pro broadcast key name is always sent unencrypted and could reveal the location of operation. The goTenna Pro has a payload length vulnerability that makes it possible to tell the length of the payload regardless of the encryption used. The goTenna Pro series allows unauthenticated attackers to remotely update the local public keys used for P2P and Group messages.