Skip to content

Mimecast Email Security

Overview

A secure email gateway to block spam, viruses, and malware.

  • Vendor: Mimecast
  • Supported environment: Cloud
  • Detection based on: Telemetry
  • Supported application or feature: Email gateway

Warning

Important note - This format is currently in beta. We highly value your feedback to improve its performance.

High-Level Architecture Diagram

  • Type of integration: PULL by Sekoia.io
  • Schema

mimecast_es_architecture

Specification

Prerequisites

  • Permissions:
    • The Mimecast administrator must be assigned a Role with the following criteria.
      • Read and Edit API Application Permissions under the Service Menu.
      • Security Permissions setting must permit the Management of Application Roles.
    • The generated API key must be a Mimecast Administrator with at least the Security Events and Data Retrieval | Threat and Security Events (SIEM) and Threat and security statistics | Read permission.

Transport Protocol/Method

  • Direct HTTP

Logs details

  • Supported functionalities: See section Overview
  • Supported type(s) of structure: JSON
  • Supported verbosity level: Informational

Note

Log levels are based on the taxonomy of RFC5424. Adapt according to the terminology used by the editor.

Step-by-Step Configuration Procedure

Instructions on the 3rd Party Solution

Create API credentials

  1. Login to Mimecast Administration Console
  2. Navigate to Account > Roles > New Role
  3. Name the role as you wish, for instance "Sekoia"
  4. Add the following roles under the section called Security Events and Data Retrieval:
    • Threat and security svents (SIEM) with READ permission,
    • Threat and security statistics with READ permission.
  5. Navigate to Services | API and Platform Integrations
  6. Locate the following Mimecast API 2.0 tile and click on Generate Keys.
  7. After reading the Terms & Conditions, complete the I accept check box to enable the Next button to progress onto the next step.
  8. Complete the Application Details section by providing:
    • Application Name: Select SIEM Integration,
    • Description (Optional),
    • Integration Partner (Optional),
    • Products: Select all products,
    • Role: Select the "Sekoia" role created above.
  9. Complete the Notifications section by providing:
    • Technical Point of Contact: Write the name of the administrator to be contacted if you encounter any issue with the API,
    • Email : Write the administrator's email.
  10. Validate the form and Click on Add and Generate Keys
  11. The wizard completes and displays a pop-up window including your Client ID and Client Secret key data.

Instruction on Sekoia

Create your intake

  1. Go to the intake page and create a new intake from the Mimecast Email Security.
  2. Copy the associated Intake key

Pull your logs on Sekoia.io

Go to the Sekoia.io playbook page, and follow these steps:

  • Click on + PLAYBOOK button to create a new one
  • Select Create a playbook from scratch
  • Give it a name in the field Name
  • Open the left panel, click Mimecast then select the trigger [BETA] Fetch new email events from Mimecast
  • Click on Create

  • Create a Module configuration using your Client ID and Client Secret created on the How to create API credentials step. Name the module configuration as you wish

  • Create a Trigger configuration and Type the Intake key created on the previous step
  • Click on the Save button
  • Activate the playbook with the toggle button on the top right corner of the page

Enjoy your events on the Events page

Raw Events Samples

In this section, you will find examples of raw logs as generated natively by the source. These examples are provided to help integrators understand the data format before ingestion into Sekoia.io. It is crucial for setting up the correct parsing stages and ensuring that all relevant information is captured.

{
    "aggregateId": "vC80NNxvOWKkBPnzSs04FA_1715699686",
    "processingId": "PGZfGuxEAu_kE-nGy1sjThBr5EYbm1ZcDKg-vXbRHLA_1715699686",
    "accountId": "CDE22A102",
    "timestamp": 1715699697146,
    "senderEnvelope": "newsletter@stub.com",
    "recipients": "neo@gmail.fr",
    "direction": "Inbound",
    "type": "journal",
    "subtype": null,
    "_offset": 105760,
    "_partition": 137
}
{
    "aggregateId": "J5JwSy0HNvG7AvCg1sgDvQ_1715708284",
    "processingId": "hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284",
    "accountId": "CDE22A102",
    "action": "Hld",
    "timestamp": 1715708287466,
    "senderEnvelope": "john.doe015@gmail.com",
    "messageId": "<CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAEirX4MRZRJX+esw@mail.gmail.com>",
    "subject": "Moderate",
    "holdReason": "Spm",
    "totalSizeAttachments": "0",
    "numberAttachments": "0",
    "attachments": null,
    "emailSize": "3466",
    "type": "process",
    "subtype": "Hld",
    "_offset": 105825,
    "_partition": 137
}
{
    "processingId": "processingId",
    "aggregateId": "aggregateId",
    "numberAttachments": "2",
    "attachments": "tpsreport.doc",
    "subject": "siem_process - email subject line",
    "senderEnvelope": "auser@mimecast.com",
    "messageId": "messageId",
    "eventType": "process",
    "accountId": "C0A0",
    "action": "Allow",
    "holdReason": null,
    "subType": "Allow",
    "totalSizeAttachments": "642",
    "timestamp": 1689685338609,
    "emailSize": "56422"
}
{
    "aggregateId": "J5JwSy0HNvG7AvCg1sgDvQ_1715708284",
    "processingId": "hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284",
    "accountId": "CDE22A102",
    "timestamp": 1715708286579,
    "action": "Acc",
    "senderEnvelope": "john.doe@gmail.com",
    "messageId": "<CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAAarX4MRZRJX+esw@mail.gmail.com>",
    "subject": "Moderate",
    "recipients": "admin@mcfr2.pro",
    "senderIp": "209.123.123.123",
    "rejectionType": null,
    "rejectionCode": null,
    "direction": "Inbound",
    "numberAttachments": "0",
    "senderHeader": "john.doe@gmail.com",
    "rejectionInfo": null,
    "tlsVersion": "TLSv1.3",
    "tlsCipher": "TLS_AES_256_GCM_SHA384",
    "spamInfo": "[]",
    "spamProcessingDetail": "{\"spf\":{\"allow\":true,\"info\":\"ALLOW\"},\"dkim\":{\"allow\":true,\"info\":\"ALLOW\"},\"dmarc\":{\"allow\":true,\"info\":\"ALLOW\"}}",
    "virusFound": null,
    "type": "receipt",
    "subtype": "Acc",
    "_offset": 105826,
    "_partition": 137
}

Detection section

The following section provides information for those who wish to learn more about the detection capabilities enabled by collecting this intake. It includes details about the built-in rule catalog, event categories, and ECS fields extracted from raw events. This is essential for users aiming to create custom detection rules, perform hunting activities, or pivot in the events page.

The following Sekoia.io built-in rules match the intake Mimecast Email Security [BETA]. This documentation is updated automatically and is based solely on the fields used by the intake which are checked against our rules. This means that some rules will be listed but might not be relevant with the intake.

SEKOIA.IO x Mimecast Email Security [BETA] on ATT&CK Navigator

Cryptomining

Detection of domain names potentially related to cryptomining activities.

  • Effort: master
Dynamic DNS Contacted

Detect communication with dynamic dns domain. This kind of domain is often used by attackers. This rule can trigger false positive in non-controlled environment because dynamic dns is not always malicious.

  • Effort: master
Exfiltration Domain

Detects traffic toward a domain flagged as a possible exfiltration vector.

  • Effort: master
Remote Access Tool Domain

Detects traffic toward a domain flagged as a Remote Administration Tool (RAT).

  • Effort: master
SEKOIA.IO Intelligence Feed

Detect threats based on indicators of compromise (IOCs) collected by SEKOIA's Threat and Detection Research team.

  • Effort: elementary
Sekoia.io EICAR Detection

Detects observables in Sekoia.io CTI tagged as EICAR, which are fake samples meant to test detection.

  • Effort: master
TOR Usage Generic Rule

Detects TOR usage globally, whether the IP is a destination or source. TOR is short for The Onion Router, and it gets its name from how it works. TOR intercepts the network traffic from one or more apps on user’s computer, usually the user web browser, and shuffles it through a number of randomly-chosen computers before passing it on to its destination. This disguises user location, and makes it harder for servers to pick him/her out on repeat visits, or to tie together separate visits to different sites, this making tracking and surveillance more difficult. Before a network packet starts its journey, user’s computer chooses a random list of relays and repeatedly encrypts the data in multiple layers, like an onion. Each relay knows only enough to strip off the outermost layer of encryption, before passing what’s left on to the next relay in the list.

  • Effort: master

Event Categories

The following table lists the data source offered by this integration.

Data Source Description
Email gateway Inbound, outbound and internal logs for messages

In details, the following table denotes the type of events produced by this integration.

Name Values
Kind ``
Category email
Type denied, info

Transformed Events Samples after Ingestion

This section demonstrates how the raw logs will be transformed by our parsers. It shows the extracted fields that will be available for use in the built-in detection rules and hunting activities in the events page. Understanding these transformations is essential for analysts to create effective detection mechanisms with custom detection rules and to leverage the full potential of the collected data.

{
    "message": "{\"aggregateId\": \"vC80NNxvOWKkBPnzSs04FA_1715699686\", \"processingId\": \"PGZfGuxEAu_kE-nGy1sjThBr5EYbm1ZcDKg-vXbRHLA_1715699686\", \"accountId\": \"CDE22A102\", \"timestamp\": 1715699697146, \"senderEnvelope\": \"newsletter@stub.com\", \"recipients\": \"neo@gmail.fr\", \"direction\": \"Inbound\", \"type\": \"journal\", \"subtype\": null, \"_offset\": 105760, \"_partition\": 137}",
    "event": {
        "category": [
            "email"
        ],
        "dataset": "journal",
        "provider": "Mimecast",
        "type": [
            "info"
        ]
    },
    "@timestamp": "2024-05-14T15:14:57.146000Z",
    "email": {
        "direction": "Inbound",
        "from": {
            "address": [
                "newsletter@stub.com"
            ]
        },
        "to": {
            "address": [
                "neo@gmail.fr"
            ]
        }
    },
    "mimecast": {
        "siem": {
            "aggregate_id": "vC80NNxvOWKkBPnzSs04FA_1715699686",
            "processing_id": "PGZfGuxEAu_kE-nGy1sjThBr5EYbm1ZcDKg-vXbRHLA_1715699686"
        }
    }
}
{
    "message": "{\"aggregateId\": \"J5JwSy0HNvG7AvCg1sgDvQ_1715708284\", \"processingId\": \"hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284\", \"accountId\": \"CDE22A102\", \"action\": \"Hld\", \"timestamp\": 1715708287466, \"senderEnvelope\": \"john.doe015@gmail.com\", \"messageId\": \"<CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAEirX4MRZRJX+esw@mail.gmail.com>\", \"subject\": \"Moderate\", \"holdReason\": \"Spm\", \"totalSizeAttachments\": \"0\", \"numberAttachments\": \"0\", \"attachments\": null, \"emailSize\": \"3466\", \"type\": \"process\", \"subtype\": \"Hld\", \"_offset\": 105825, \"_partition\": 137}",
    "event": {
        "action": "Hld",
        "category": [
            "email"
        ],
        "dataset": "process",
        "provider": "Mimecast",
        "type": [
            "info"
        ]
    },
    "@timestamp": "2024-05-14T17:38:07.466000Z",
    "email": {
        "from": {
            "address": [
                "john.doe015@gmail.com"
            ]
        },
        "message_id": "CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAEirX4MRZRJX+esw@mail.gmail.com",
        "to": {
            "address": [
                "null"
            ]
        }
    },
    "mimecast": {
        "siem": {
            "aggregate_id": "J5JwSy0HNvG7AvCg1sgDvQ_1715708284",
            "hold_reason": "Spm",
            "processing_id": "hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284"
        }
    }
}
{
    "message": "{\"processingId\": \"processingId\", \"aggregateId\": \"aggregateId\", \"numberAttachments\": \"2\", \"attachments\": \"tpsreport.doc\", \"subject\": \"siem_process - email subject line\", \"senderEnvelope\": \"auser@mimecast.com\", \"messageId\": \"messageId\", \"eventType\": \"process\", \"accountId\": \"C0A0\", \"action\": \"Allow\", \"holdReason\": null, \"subType\": \"Allow\", \"totalSizeAttachments\": \"642\", \"timestamp\": 1689685338609, \"emailSize\": \"56422\"}",
    "event": {
        "action": "Allow",
        "category": [
            "email"
        ],
        "dataset": "process",
        "provider": "Mimecast",
        "type": [
            "info"
        ]
    },
    "@timestamp": "2023-07-18T13:02:18.609000Z",
    "email": {
        "attachments": [
            {
                "file": {
                    "name": "tpsreport.doc"
                }
            }
        ],
        "from": {
            "address": [
                "auser@mimecast.com"
            ]
        },
        "message_id": "messageId",
        "to": {
            "address": [
                "null"
            ]
        }
    },
    "mimecast": {
        "siem": {
            "aggregate_id": "aggregateId",
            "processing_id": "processingId"
        }
    }
}
{
    "message": "{\"aggregateId\": \"J5JwSy0HNvG7AvCg1sgDvQ_1715708284\", \"processingId\": \"hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284\", \"accountId\": \"CDE22A102\", \"timestamp\": 1715708286579, \"action\": \"Acc\", \"senderEnvelope\": \"john.doe@gmail.com\", \"messageId\": \"<CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAAarX4MRZRJX+esw@mail.gmail.com>\", \"subject\": \"Moderate\", \"recipients\": \"admin@mcfr2.pro\", \"senderIp\": \"209.123.123.123\", \"rejectionType\": null, \"rejectionCode\": null, \"direction\": \"Inbound\", \"numberAttachments\": \"0\", \"senderHeader\": \"john.doe@gmail.com\", \"rejectionInfo\": null, \"tlsVersion\": \"TLSv1.3\", \"tlsCipher\": \"TLS_AES_256_GCM_SHA384\", \"spamInfo\": \"[]\", \"spamProcessingDetail\": \"{\\\"spf\\\":{\\\"allow\\\":true,\\\"info\\\":\\\"ALLOW\\\"},\\\"dkim\\\":{\\\"allow\\\":true,\\\"info\\\":\\\"ALLOW\\\"},\\\"dmarc\\\":{\\\"allow\\\":true,\\\"info\\\":\\\"ALLOW\\\"}}\", \"virusFound\": null, \"type\": \"receipt\", \"subtype\": \"Acc\", \"_offset\": 105826, \"_partition\": 137}",
    "event": {
        "action": "Acc",
        "category": [
            "email"
        ],
        "dataset": "receipt",
        "provider": "Mimecast",
        "type": [
            "info"
        ]
    },
    "@timestamp": "2024-05-14T17:38:06.579000Z",
    "email": {
        "direction": "Inbound",
        "from": {
            "address": [
                "john.doe@gmail.com"
            ]
        },
        "message_id": "CAF7=BmDb+6qHo+J5EB9oH+S4ncJOfEMsUYAAarX4MRZRJX+esw@mail.gmail.com",
        "to": {
            "address": [
                "admin@mcfr2.pro"
            ]
        }
    },
    "mimecast": {
        "siem": {
            "aggregate_id": "J5JwSy0HNvG7AvCg1sgDvQ_1715708284",
            "processing_id": "hP5f7mBanAVkWJWfh4vYvca3zOi9I3jROBmH3Z_Kysk_1715708284"
        }
    },
    "related": {
        "ip": [
            "209.123.123.123"
        ]
    },
    "source": {
        "address": "209.123.123.123",
        "ip": "209.123.123.123"
    }
}

Extracted Fields

The following table lists the fields that are extracted, normalized under the ECS format, analyzed and indexed by the parser. It should be noted that infered fields are not listed.

Name Type Description
@timestamp date Date/time when the event originated.
destination.ip ip IP address of the destination.
email.attachments nested List of objects describing the attachments.
email.direction keyword Direction of the message.
email.from.address keyword The sender's email address.
email.message_id wildcard Value from the Message-ID header.
email.to.address keyword Email address of recipient
event.action keyword The action captured by the event.
event.category keyword Event category. The second categorization field in the hierarchy.
event.dataset keyword Name of the dataset.
event.provider keyword Source of the event.
event.type keyword Event type. The third categorization field in the hierarchy.
mimecast.siem.aggregate_id keyword Unique identifier that allows you to correlate/group related events.
mimecast.siem.delivered boolean If the email was delivered successfully or not.
mimecast.siem.delivery_errors keyword Information about any errors that occurred on the delivery attempt.
mimecast.siem.hold_reason keyword The reason the email was held for review (quarantined), if applicable.
mimecast.siem.processing_id keyword Unique identifier that allows you to correlate/group related events.
mimecast.siem.rejection.code number The rejection code issued if the email was rejected at the receipt stage.
mimecast.siem.rejection.info keyword The rejection information if the email was rejected at the receipt stage.
mimecast.siem.rejection.type keyword The rejection type if the email was rejected at the receipt stage.
mimecast.siem.virus_found keyword The name of the virus found on the email, if applicable.
source.ip ip IP address of the source.

For more information on the Intake Format, please find the code of the Parser, Smart Descriptions, and Supported Events here.

Further Readings