rspec/rules/S5135/impact.adoc

50 lines
1.9 KiB
Plaintext

=== What is the potential impact?
In the context of a web application performing unsafe deserialization: +
After detecting the injection vector, attackers inject a carefully-crafted
payload into the application.
Below are some real-world scenarios that illustrate some impacts of an attacker
exploiting the vulnerability.
==== Application-specific attacks
In this scenario, the attackers succeed in injecting an object of the expected
class, but with malicious properties that affect the object's behavior.
If the application relies on the properties of the deserialized object,
attackers can modify the data structure or content to escalate privileges or
perform unwanted actions. +
In the context of an e-commerce application, this could be changing the number
of products or prices.
==== Full application compromise
In the worst-case scenario, the attackers succeed in injecting an object of a
completely different class than expected, triggering code execution.
Depending on the attacker, code execution can be used with different
intentions:
* Download the internal server's data, most likely to sell it.
* Modify data, install malware, for instance, malware that mines cryptocurrencies.
* Stop services or exhaust resources, for instance, with fork bombs.
This threat is particularly insidious if the attacked organization does not
maintain a Disaster Recovery Plan (DRP).
==== Root privilege escalation and pivot
In this scenario, the attacker can do everything described in the previous
section. The difference is that the attacker additionally manages to elevate
his privileges as an administrator and attack other servers.
Here, the impact depends on how much the target company focuses on its Defense
In Depth. For example, the entire infrastructure can be compromised through a
combination of unsafe deserialization and misconfiguration:
* Docker or Kubernetes clusters
* cloud services
* network firewalls and routing
* OS access control