Bad Outlook: Malicious Outlook Reader

Bad Outlook

Bad Outlook

A simple PoC which leverages the Outlook Application Interface (COM Interface) to execute shellcode on a system based on a specific trigger subject line.

By utilizing Microsoft.Office.Interop.Outlook namespace, developers can represent the entire Outlook Application (or at least according to Microsoft). This means that the new application should be able to do anything from reading emails (yes this also includes archives, trash, etc.) to sending them out.

Building on the millions of pre-existing C# shellcode loaders, an email with a trigger subject line and base64 encoded shellcode in the body can be sent to the host with a weaponized instance of this program. The program will then read the email and execute the shellcode embedded in the email.

Additional Notes:

  • This can be used to build an Entire C2 Framework that relies on E-Mails as a mean of communication (Where the Implant never speaks to the internet directly)
  • There does appear to be a security warning which informs the user of an application attempting to access Outlook data
    • This can be turned off when an administrator modifies the registry as shown here.
    • Minor testing showed that Injecting this process into an Outlook client does not cause the alert to appear (Additional testing would be much appreciated <3)

PoC

Application Polling Outlook for Trigger

 

Trigger Email With Shellcode Creation

Bad Outlook

 

Email Recived By Outlook Client

Bad Outlook

 

Shellcode Execution by BadOutlook Application

Download