How Secure is the Future of Communication?
By Apurva Peri, Redpine Signals
Although the foundations for secure communication have been laid down, the prevailing vulnerabilities are a major cause for concern. With a forecast of over tens of billions of connected devices, security is a complex but imperative responsibility that all device makers must take on.
The world is at the brink of a new digital era. The concepts of a connected world, artificial intelligence, virtual reality, and disruptive speeds of communicationare on the rise. No matter how advanced the technology, matters of security and privacy are fundamental and of unconditional priority. Security is not one of those components that can be left for a later date, or categorized as a ‘coming soon’ feature. It is an intrinsic element of communication, be it at the device level, wireless level or the cloud level. This article outlines some current methods for security through different layers of communication, pointing out some loopholes and possible areas improving robustness.
Typical home networks are only as secure as the passwords their owners choose. Regrettably, many homeowners either do not secure their networks or choose easily decipherable passwords that a seasoned attacker can crack open effortlessly.
Home networks usually employ personal security, which authenticates client devices using a Passphrase and encrypts data using the Advanced Encryption Standard (AES) and Counter Cipher Mode with Block Chaining Message Authentication Code Protocol (CCMP) as defined by IEEE 802.11i. While AES by itself is a robust standard, AES-CCMP ensures privacy and integrity of data by using a 128-bit key to iteratively encrypt and authenticate 128-bit clocks of data to generate ciphertext.
When a device connects to a home access point, a four-way handshake takes place between the two to determine the authenticity of the client and to establish the aforementioned security keys for encryption. Packets generated by the device would be encrypted with unique keys, which are periodically changed, making it hard for eavesdropping intruders to use the network.
The primary flaw in this method is the possibility that a sniffer sniffs the entire four-way handshake and uses brute-force to decipher the security key. The security of a WLAN depends heavily on the complexity of a chosen PSK.
To overcome the susceptibility of personal security, office networks employ Enterprise security, which uses per-user authentication to tighten security.
Enterprise security makes use of AES-CCMP for encryption and IEEE 802.1X for authentication. The 802.1X supports a variety of Extensible Authentication Protocol (EAP) types. The EAP framework allows for mutual authentication between a client device and an authentication server via an authenticator, which use the RADIUS protocol to communicate.
EAP supports numerous authentication methods such as one-time passwords, certificates, public key authentication and smart cards, and the 802.1Xspecifies how EAP should be encapsulated in LAN frames.
Most EAP methods include two types of exchanges, the inner and the outer methods. As part of the outer methods, Advanced EAP types (TLS, TTLS, LEAP and PEAP) provide mutual authentication by authenticating the server to the client, in addition to authenticating the client to the server. They also create an encrypted tunnel for all exchanges henceforth. This helps tackle man-in-the-middle attacks. As part of the inner methods, the tunneled mechanisms of EAP-TTLS and EAP-PEAP provide mutual authentication to other methods that utilize the familiar user ID/password methods, (EAP-MD5, EAP-MSCHAP V2) in order to authenticate the client to the server.
Albeit more resilient than a personal network, the Enterprise network too can be breached if the authentication attempt is captured. An attacker can perform an ‘Evil twin’ attack that captures the authentication details and use it to crack the network. Figure 1 demonstrates this.
An Evil Twin attack
Most secure web servers make use of Transport layer security (TLS/SSL) to protect the communication from a client to the server and vice versa. Called public key cryptography, it employs a trusted third party to verify the identity of a server and assist clients in corroborating this for every new connection with the server. SSL uses a pair of public and private keys, where data encrypted by a universally accessible public key, can only be decrypted by the corresponding private key and vice versa. Although it is a sturdy mechanism, encryption/decryption with the public/private key pair for every exchange is computationally intensive and expensive. The public and private keys are therefore widely used only for the initial handshake phase to create a session key that is used for all encryption thereon.
When one enters an ‘https:’ prepended URL into a browser, the browser requests that the server identify itself. The server sends a “hello “message to the browser that includes a copy of its SSL certificate and its public key. The browser checks to confirm that the certificate comes from a trusted party, that it is currently valid, and that the certificate has a relationship with the site. If all of the above check out, the browser trusts the server and sends back a symmetric session key encrypted using the server’s public key, which the server decrypts using its private key. All communication thereafter is carried out using the session key.
Web servers make for a popular attack zone due to the widespread disruption they cause and are relatively easy to crack if not taken seriously by their organizations. They are especially prone to spoofing, phishing, and data leak attacks that compromise the organization’s intellectual property and cause damage in the millions. The hack of HBO’s servers during an actively aired season of the popular show Game of Thrones is one such example. It jeopardized its position and caused huge monetary and property losses. Figure 2 details the man in the middle attack, commonly used on servers.
On the short-range side, The Bluetooth standard offers multiple levels of security (security modes, encryption modes, and service levels) for authentication, confidentiality and encryption and allows the device manufacturers to choose a method best suited to the type of device and service.
Security modes vary from zero through four. Security mode 0 is a non-secure mode and does not adopt any mechanism to authenticate or encrypt data. Devices are exposed to threats and attacks in this mode. Security mode 2 employs a security manager that checks and regulates access to services and devices. Security mode 3 mandates authentication and encryption mechanisms for all data to and from a device. It also institutes security procedures before the establishment of the physical link. Security mode 4 also employs service level security wherein security procedures are made use of after a link is set up.
Encryption modes define the type of encryption and provide data security from eavesdroppers. Encryption mode 1 is a no-encryption mode and does not offer any security. Encryption mode 2 allows unicast data to be encrypted using link keys but leaves broadcast data unencrypted. All data is encrypted using a master link key when using encryption mode 4.
Bluetooth also allows two levels of trust and three levels of service security. The trusted and untrusted levels determine whether a device has a fixed relationship with another device with full access to all services or does not have an established relationship with another Bluetooth device. In an untrusted relationship, the devices can utilize a service level to afford regulated access to services. Service Level 1 requires authorization and authentication with automatic access to trusted devices. Service Level 2 requires only authentication and Service Level 3 is an Open to all devices service.
Despite multiple layers of seemingly strong security, a recent discovery uncovered a new Bluetooth vulnerability that could potentially expose millions of devices to remote attack on the most ubiquitous operating systems of iOS, Android, Windows, and Linux.
All Android devices (phones, tablets, and wearables) of all versions were found to be affected by four vulnerabilities found in the Android operating system, two of which allowed remote code execution, one resulted in information leaks, and the last allowed an attacker to perform a man-in-the-middle attack.
Linux is the elemental operating system for a wide range of devices. All Linux devices running BlueZ were also found to be affected by the information leak vulnerability and some with the by the remote code execution vulnerability. Although patches to fix these issues were pushed for android and Linux subsequently, they were simply acting as a cure to what easily could have caused a devastating loss to information across the world.
With the burgeoning cloud storage market, Cloud Security simply adds to the list of information security risks.
Cloud Security must integrate confidentiality, data integrity and access controllability.
Some methods Cloud Service Providers’ (CSPs) adopt to ensure confidentiality are advanced authentication and encryption protocols. For authentication, a popularly used protocol is OAuth, an HTTPS-based protocol, which enables an end-user using a user-agent like a browser, to access a protected resource on a server using credentials stored on an authorization server. Advanced encryption mechanisms, among others, include complex and computationally intensive homomorphic encryption methods, which process encrypted data without exposing the plaintext but are not suitable for larger data and are very expensive.
Most “Giant” CSPs expect their customers to simply trust that their data is secure and private but have the option to access user data, if required. The concept of Zero Knowledge encryption offers users the guarantee of airtight security because only the user holds the keys to decrypt their own data. This accords a user with ultimate control over their data and the flexibility to use cloud based services with highest security.
Even if data is encrypted in a failsafe manner, it is still prone to suffer from corruption and integrity issues, either, at the time of outsourcing to the cloud, while in the cloud or when downloaded locally. Message authentication code algorithms are typically used to check the integrity of data. The data owner computes the MAC on his data and stores it. He then compares it every time thereafter with the newly computed MAC values. This allows accidental and intentional changes to be detected.
Access control ensures that users can only access data they are permitted to use by the owner. In enterprises, this is handled by maintaining distinct domains, user identity and role management. For personal data, a majority of the providers allow users to share their data with intended users and set permissions on the data. Intended users can use username/password based authentication to access this data. For Zero Knowledge security, sharing data with other users creates a backdoor entry for the cloud provider when they supply other users with access to shared data. Figure 3 illustrates the concept of Zero Knowledge security.
Zero Knowledge Encryption
Apurva Peri is an Associate Product Manager at Redpine Signals, where she plays an active role in the development and marketing of the company’s multifarious product lines. She specializes in emerging wireless technologies, wireless security, and IoT, which she believes can change the world as we know it today. She holds a Masters degree in Electrical and Computer Engineering from the National University of Singapore and a Bachelors degree in Telecommunications Engineering from R.V.C.E. Bangalore.