A year ago, a botnet of 100,000-plus compromised Internet of Things (IoT) devices was used to bring down domain name service provider Dyn -- taking with it Facebook, Twitter, CNN and thousands of other companies across the US and Europe. The event brought to light the inherent weaknesses of IoT devices, many of which can't be readily hidden behind a firewall.
At present, much of IoT security is based on a classic security architecture in which the organization sets up a perimeter and secures it. Whatever is inside is trusted, and anyone trying to enter has to go through careful tests. A key principle of this approach is to limit the potential attack surface by putting everything, except few hardened APIs behind a firewall.
However, IoT implementations are ill-suited for a classic security architecture. The perimeter is too big. It is hard to hide all devices behind a firewall, particularly when many of them are in the field, where attackers can access them physically. Moreover, a variety of devices are on the market, and more are being introduced each day.
The issues with IoT security are not new, and many experts have warned about potential dangers. Clearly, we need a different approach. Interestingly, centuries-old castles provide some valuable ways of rethinking how we implement security.
Let's start by noting how the perimeter model mirrors the approach used by European medieval castles for protection. These structures feature a wall, a moat, and guard towers. All access is provided through a few doors, each are strongly built, include security devices, and are carefully guarded and watched to stop invaders from getting in.
However, the Himeji Castle, which was built in Japan 700 years ago and still stands, employs a different strategy. It is not very hard to enter the structure. However, the castle is a maze. It is difficult for attackers to get to where they want to go, and it is not easy for them to get out. Moreover, the castle is full of traps and places where defenders can hide and attack.
We can bring similar ideas back to IoT security, where it is no longer practical to rely on the perimeter for system security. Instead, we should find and respond to infiltrators, limit the damage they can do, and add traps to catch them. Let's call this new approach the Security+ model. In applying this model, we can add our types of safeguards.
Multi-level action and logins
The Security+ model partitions the actions that users can carry out into multiple levels based on the severity of a potential compromise and requires corresponding login levels. In short, to take higher-level actions, a user needs to login with stronger methods. For example, to read a single row, password-based authentication could be enough, but to or add remove users, administrators must use at least three authentication factors. This would compartment-ize the system and limit the damage an attacker can do. Context-based rules and four eyes principles
The Security+ model also secures risky actions through the use of context rules and the "four eyes" principle. Context rules limit certain actions into specific situations. For example, some sensitive operations, such as deleting or exporting bulk data, is allowed only if you are connected with the organization or are connecting from a subset of specific workstations.
Meanwhile, the four eyes principle, which is widely used by banks and other organizations with mission-critical apps, states that critical operations must be approved by two people. A lighter variation might let the user pick the approver while in the stronger version, the system randomly picks another user (e.g. administrator) to approve the action. This will complicate attackers' lives by increasing the variables they need to handle to attack the system.
A Security+ model detects suspicious activities that are outside the scope of normal activities. For example, if a user trying to moving a build of the data to an external machine at 2 a.m. it might be the act of an attacker, or baby monitors sold by a company are suddenly reaching out to a different website. Anomaly detection can be accomplished using both static rules built by domain experts and machine-learning models that learn normal behavior from historical data. This will help to detect infiltrators early and limit the damage they can do. Random challenges and context-based questions
In a Security+ model context-based questions and random challenges are two methods that enhance security by increasing the unknowns an attacker has to deal with. The idea of context-sensitive questions is to use as security questions the things a user would naturally know. Such questions might include, "When did you last login?" and "From which device did you log in last night?" Such questions can be part of the login process.
Similarly, random challenges involve asking users to pass additional checks either on an ad-hoc basis or when attempting to perform a sensitive operation. The challenge might be to look at a code or set of images and then type in what the user sees, or it may take the form of other context-based questions. For example, a simple random challenge may be applied if an IoT device owner continues to use the default password and wants to connect to a network.
The security maze
The perimeter control behind most classic security architectures is not designed to effectively protect IoT systems featuring very large attack surfaces with tens or even hundreds of thousands of geographically distributed devices. Instead, by moving beyond the classic security architecture influenced by the perimeter protection model of medieval moats to the Security+ model inspired by the Himeji Castle maze, organizations can find and respond to infiltrators and limit the damage they can do to IoT systems. In doing so, we can safeguard critical computer systems and networks while providing trusted devices that will serve to accelerate adoption among consumers and business users, alike.
— Srinath Perera, Ph.D, is vice president of research at WSO2.