TheHive is a great incident response platform whichÂ has the wind in its sails for a while. More and more organization are already using it or are strongly considering to deploy it in a near future. TheHive is tightly integrated with MISP to push/pull IOC’s. Such tool must be fed with useful information to be processed by security analysts. TheHive is using other tools from the same team:Â HippocampeÂ parsesÂ text-based feeds and store. Cortex is a tool to enrich observables by querying multiple services in parallel. AnotherÂ source ofÂ information is, by example, a Splunk instance. There is a Splunk app to generate alerts directly intoÂ TheHive. And what about emails?
TheHive a nice REST API that allows performing all kind of actions, the perfect companion is the Python module TheHive4py. So it’s easy to poll a mailbox at regular interval to populate a TheHive instance with collected emails. I write a tool called imap4thehive.py to achieve this:
# ./imap2thehive.py -h usage: imap2thehive.py [-h] [-v] [-c CONFIG] Process an IMAP folder to create TheHive alerts/cased. optional arguments: -h, --help show this help message and exit -v, --verbose verbose output -c CONFIG, --config CONFIG configuration file (default: /etc/imap2thehive.conf)
The configuration file is easy to understand! How does it work? The IMAP mailbox is polled for new (“unread”) messages. If the email subject contains “[ALERT]”, an alert is created, otherwise, it will be a case with a set of predefined tasks. There is a Docker file to build a container that runs a crontab to automatically poll the mailbox every 5 mins.
The script is available here.