Dynamic breadcrumbs and lures are honey values that get dynamically generated by an agent on the host, during the actual execution of a malicious code path. When the agent on the infected host determines that the process is malicious, it provides honey values to the API calls made by the process, which in turn ensures that the ongoing threat gets diverted to the deceptive host.
Let us use an example to explain where the dynamic breadcrumbs will get activated on the infected host to divert the threat to the deceptive host. Figure 3.0 shows code from the Petya worm. Credentials for spreading via WMI are obtained via CredEnumerate API calls (as shown in figure 3.0), which are scraped from memory. Credentials are then stored in a global object, accessed by the spreading WMI function as shown in figure 4.0.
In case of Petya, after confirming a process is malicious, honey user and passwords will be provided to the API call CredEnumerateW. Honey username and passwords will ensure that Petya can only log on to deceptive hosts on the network and the actual hosts on the networks are protected. In this case, we are assuming that Petya is executing in an environment which is patched for vulnerabilities MS17-010 and using WMI with stolen credentials for spreading.
Since dynamic breadcrumbs are provided during execution of malicious code, it is a deterministic model of diverting an attack to deceptive hosts.