I've found description of vulnerability here.

The kankun smart socket device and the mobile app use a hardcoded AES 256 bit key to encrypt the commands and responses between the device and the app. The communication happens over UDP. An attacker on the local network can use the same key to encrypt and send unsolicited commands to the device and hijack it.

Then how it should be done in a secure way, I mean how to encrypt communication without hard coding key in client?

1 Answer 1


You use a key exchange protocol, such as Diffie Hellman key exchange, which allows each side of the communication to generate a random number and derive a key from those numbers without an eavesdropper being able to find the result from the data actually exchanged.

In general, using a peer-reviewed protocol such as SSL/TLS avoids issues like this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.