The Main Objective for Artificial Intelligence Is to Defend the Enterprise
The purpose of using artificial intelligence is to defend networks against attacks that grows in frequency as legacy security technologies have lower effectiveness against new attacks. Attacks such as WannaCry and Not Petya can come again and resurrect with a worse behavior, the urgency for automated defense has increased. It is not possible to defend against adversaries that work with the speed of machines if anyone can fight them with human timing and human capabilities only.
Against this increasingly sophisticated threats, new artificial intelligence promises to overcome technological challenges with legacy signature-based technologies. It is not surprising that adversaries are developing their own artificial intelligence techniques.
Adversarial artificial intelligence is often used in two scenarios: (1) using defensive AI techniques that find and exploit weaknesses or blind spots or (2) using AI for offensive cyber operations. In this article it is going to be reviewed strongly on the second one. AI and offensive cyber operations. With all of that, developers of defensive AI solutions need to be especially aware of failure modes in their approaches such as catastrophic failures due to homogeneous training sets or simply because a large number of states where many pedestrian attacks will past the machine learning approaches, that is because most of them are simply statistical estimators of a function, that is not a hard and fast rule.
Cyber adversaries have already automatization in several stages of attacks, it includes target discovery and malware generation and deployment. These developments have made that defending against attacks is a more challenging for legacy security systems. However, artificial intelligence now gives adversaries new tools to automate even more parts of the adversary TTP (tactics, techniques and protocols).
Adversaries are currently employing artificial intelligence in:
- Phishing campaigns
- Vulnerability discovery
- Exploit generation
- Workflow automation
Some academic studies have shown that you can achieve higher click through rates on phishing emails and tweets using machine learning algorithms over human-generated phishing campaigns. This should not be surprising if you consider the advances in chat bots that deal with human queries. From an adversarial perspective, it is not necessary to take time and effort to handcraft a phishing campaign when a machine learning algorithm can do it better, cheaper and in larger volumes. Traditional ways of phishing detection trained by humans will likely fail in higher rates in noticing machine-generated phishing campaigns simply because they often look for human errors.
To detect vulnerabilities in programs is what makes advances in machine learning so special. Automatic fuzzing tools such as AFL have enabled smarted feedback based on fuzzing using only results from prior fuzzing runs in brute force manner. Automated algorithms that can crash dump logs can be used to optimize the generation of better fuzz test that can induce bigger crashes. While software vendors could use this to find vulnerabilities in their software before releasing it, adversaries are motivated to find and exploit that system.
Zero-days are useful only if they can be exploited. One area that is promising for automation is the development of exploits for heap-based overflows and underflows. The process of developing and exploit for a memory allocation vulnerability, traditionally it required tedious manual work in positioning exploit code relative to the memory stack. A recent talk by Sean Heelan at Black Hat US demonstrates advances in algorithms that can automate this in black-box fashion, which in production can lead to automatic exploit generation from vulnerability discovery.
Finding zero-days is not the only way to discover compromise in systems. When it comes to embedded systems and loT type devices, failure modes and effects from adversarial actions are not very well understood and those are few times designed for malicious actions. The single fault hypothesis is used for simulation for most embedded and safety critical systems. Simultaneous failures in different components are not usually modeled and there is little action in order to defend against adversarial attacks. The analysis of fault trees with automated reasoning can identify optimal points of a system to attack it simultaneously. That is to create a failure mode that can mask it to sensors and operators. You can expect these techniques to be used in self-driving cars and industrial control systems.
Finally, the stages of attack that are associated with adversary TTPs, sometimes called the cyber killchain, it is a repeatable workflow where the variation is due to particular individual target networks. Considering all those things, it means that defenders will have to move faster to automate defenses that can operate at machine speed in order to counter attack offensive AI algorithms. The battle has to be AI against AI.
Defending against AI-based attacks
Machine learning algorithms are being incorporated in products to detect unknown malware. Like adversary’s software is vulnerable, AI can attack that by attacking TTPs like adversaries do. The learning of all of this is that AI needs to be strongly adopted by defense systems.