|

5 tools to deal with attack security of systems

Attack security

The word "safety" has two meanings in systems engineering. The first is operational safety (or functional safety), which means that no damage - whether physical, financial or otherwise - is caused by the operation of the system. Classic elements of functional safety are emergency stop switches or devices that prevent an appliance from operating when the hood is open. Operational safety is well understood these days.

But then there is security in the sense of attack security, i.e. that the system cannot be infiltrated and misused. This is a very big issue these days, as digitalization and networking with the physical world means there are more and more potential targets for attack.

In English, there are two different terms for the two types of security, namely safety (operational security) and security (attack security). The two types of security can be easily distinguished by the direction of protection: In operational safety, the environment is protected from the system, and in attack security, the system is protected from the environment.

The following describes why it is so difficult to protect yourself against attacks. But it is possible, and five solutions are presented.

Why attack security is more relevant today than ever before

As already mentioned, attack security is about protecting the system from its environment. The system is separated from the environment via interfaces. Interfaces can be defined explicitly (e.g. access to a tank) or implicitly (e.g. the housing of a device). In order to achieve attack security, the interfaces must be sufficiently protected, and it is important to also examine the implicit interfaces.

The perpetrators drilled a hole in the casing and inserted a USB stick into the ATM's PC [tweetthis]The perpetrators drilled a hole in the casing and inserted a USB stick into the ATM's PC[/tweetthis]

An interesting example of this problem is a system with which ATMs can be emptied. can be stolen. To do this, the thieves drill a hole in the ATM housing, through which a USB stick is then inserted. Of course, the hack exploits the weakness of the ATM's operating system (Windows XP). But the break-in in this form would not have been possible if it had not been so easy to reach the USB port by drilling a single hole through the thin housing.

However, this story also makes it clear why the topic is more relevant today than ever before: after all, the hole was not the end of the story. Without the weakness in the operating system, the configuration of the computer and the bank software, the break-in would not have been possible either. After all, software has weaknesses that can be exploited.

All software has bugs that can be used for attacks

Windows XP already has 45 million lines of code - no wonder there are vulnerabilities to be found. This is perhaps not entirely fair, as it is, after all, an old operating system that was developed at a time when computer security was not yet a major issue. But even today, the situation has not improved: The use of software in all areas of life is increasing year on year. Although much more attention is now paid to computer security, this does not change the fact that there are bugs in all software that can be used for attacks.

Typical programs have between 10 and 50 errors per 1000 lines of code [tweetthis]Typical programs have between 10 and 50 errors per 1000 lines of code[/tweetthis]

It is impossible to produce bug-free software. Dozens of bugs per 1000 lines of code is not uncommon, and even with thorough checking at best 0.5 errors per 1000 lines of code achieve. This means that even smaller programs are very likely to contain errors.

Computer security is broken from the ground up

Much of the software used today is decades old and dates back to a time when computer security was hardly an issue. This is particularly true of the software used to operate the Internet. What is even worse is that some approaches to security were actively suppressed. For example Vint Cerfan Internet pioneer, wanted to build cryptography directly into the Internet infrastructure, which was prevented by the US security authorities. Instead, another layer of security was developed, making the infrastructure even more complex and adding a lot of new code, which undoubtedly created new bugs and therefore security vulnerabilities.

It is one thing for a website to be damaged or blocked, which can also cause considerable damage. But with the Internet of Things (IoT), the problem suddenly becomes acute: with IoT, devices in the physical world are permanently connected to the internet. This could be an electricity meter or a coffee machine, but the most hotly debated device at the moment is the car. It's hard to imagine the danger that a targeted attack on networked cars could pose. This is not a theoretical problem Jeep has already been hacked - fortunately by security researchers.

What now?

Fortunately, the problem is being taken very seriously and solutions are being sought. Here are some of the approaches that are being pursued and some of which are already being practiced.

Sandbox 1: Keeping the damage in check

With a Sandbox a sealed-off environment is created in which the software is operated. The advantage: this environment only needs to be programmed once and should therefore be checked carefully. Even if an attacker manages to infiltrate the actual software, the damage is limited to the sandbox. Even vulnerabilities found in the sandbox only need to be corrected once, regardless of how many programs the sandbox is used for.

2. bounties: putting people on the mistakes

In the past, security researchers who pointed out vulnerabilities to software manufacturers were often ignored and sometimes even threatened with legal action. This has changed. The larger manufacturers have started to offer rewards for finding security vulnerabilities. There are now even competitions.

3. secure hardware: security built into the core

At critical points, security-relevant functions are no longer implemented in software, but in hardware. Apple, in particular, has made security a central marketing feature. A lot of research is also being carried out in this area. The research project CHERI aims to realize various security functions, such as memory protection, directly in a generic chip.

4 Formal methods: Proving security

If systems are described using formal specifications, certain properties can be mathematically verified on this basis. This approach has been used for some time in the area of functional safety, but is also effective for attack security, even if it is unfortunately very time-consuming. This approach was used in the research project SMACCM developed software for controlling flying drones. The generated source code has been disclosed and no vulnerabilities have been found to date.

5. insurance: minimize the risk

Despite all these developments, one thing is clear: there is no sustainable solution for computer security, nor will there be any time soon. But we humans have long since found a way to deal with risks: In the meantime, risks relating to attack security are increasingly being covered by insurance. This is also supported by the legislator. On the one hand, more and more countries are demanding that security problems and attacks be made public; on the other hand, the previously rather lax liability issues are being tightened up. Both of these factors are encouraging interest in solutions for minimizing business risks, and insurance is a tried and tested tool.

Conclusion

The issue of attack security is more acute than ever before, especially due to the Internet of Things. I sincerely hope that the industry takes a proactive approach to the issue, especially the automotive industry at the moment. If it waits too long and there are too many security-related disasters, then the industry will have missed the opportunity to regulate itself and legislators will do so.

Image: Lewis Ngugi / Unsplash

Similar Posts

Leave a Reply