Performing Threat Intelligence Sharing with MISP
Overview
MISP (Malware Information Sharing Platform) is an open-source threat intelligence platform designed for collecting, storing, distributing, and sharing cybersecurity indicators and threat information. PyMISP is the official Python library for interacting with MISP instances via the REST API, enabling programmatic event creation, attribute management, tag assignment, galaxy cluster attachment, and feed synchronization. This skill covers using PyMISP to create events with structured IOCs (IP addresses, domains, file hashes, URLs), enrich events with MITRE ATT&CK tags, manage sharing groups and distribution levels, search for existing intelligence, and export in STIX 2.1 format for interoperability with other platforms.
When to Use
- When conducting security assessments that involve performing threat intelligence sharing with misp
- When following incident response procedures for related security events
- When performing scheduled security testing or auditing activities
- When validating security controls through hands-on testing
Prerequisites
- MISP instance (v2.4+) with API access enabled
- Python 3.9+ with
pymisp (pip install pymisp)
- MISP API key (Settings > Auth Keys)
- Understanding of MISP data model (Events, Attributes, Objects, Tags, Galaxies)
- Knowledge of TLP marking and sharing protocols
Steps
- Install PyMISP:
pip install pymisp
- Initialize
ExpandedPyMISP(url, key, ssl=True) connection
- Create a
MISPEvent with info, distribution level, threat level, and analysis status
- Add attributes via
event.add_attribute(type, value) for IPs, domains, hashes
- Apply TLP tags and MITRE ATT&CK technique tags
- Publish the event with
misp.publish(event)
- Search existing events with
misp.search(controller='events', value=..., type_attribute=...)
- Enable and configure threat feeds for automatic IOC ingestion
- Export events in STIX 2.1 format for cross-platform sharing
- Validate sharing group configuration and sync server settings
Expected Output
A JSON report summarizing events created, attributes added, tags applied, feed sync status, and any correlation hits against existing intelligence, with event IDs and distribution metadata.
1---2name: threat-intel-sharing-mis3description: Use PyMISP to create, enrich, and share threat intelligence events on a MISP platform, including IOC management, feed integration, STIX export, and community sharing workflows.4license: Apache-2.05---6# Performing Threat Intelligence Sharing with MISP78## Overview910MISP (Malware Information Sharing Platform) is an open-source threat intelligence platform designed for collecting, storing, distributing, and sharing cybersecurity indicators and threat information. PyMISP is the official Python library for interacting with MISP instances via the REST API, enabling programmatic event creation, attribute management, tag assignment, galaxy cluster attachment, and feed synchronization. This skill covers using PyMISP to create events with structured IOCs (IP addresses, domains, file hashes, URLs), enrich events with MITRE ATT&CK tags, manage sharing groups and distribution levels, search for existing intelligence, and export in STIX 2.1 format for interoperability with other platforms.111213## When to Use1415- When conducting security assessments that involve performing threat intelligence sharing with misp16- When following incident response procedures for related security events17- When performing scheduled security testing or auditing activities18- When validating security controls through hands-on testing1920## Prerequisites2122- MISP instance (v2.4+) with API access enabled23- Python 3.9+ with `pymisp` (`pip install pymisp`)24- MISP API key (Settings > Auth Keys)25- Understanding of MISP data model (Events, Attributes, Objects, Tags, Galaxies)26- Knowledge of TLP marking and sharing protocols2728## Steps29301. Install PyMISP: `pip install pymisp`312. Initialize `ExpandedPyMISP(url, key, ssl=True)` connection323. Create a `MISPEvent` with info, distribution level, threat level, and analysis status334. Add attributes via `event.add_attribute(type, value)` for IPs, domains, hashes345. Apply TLP tags and MITRE ATT&CK technique tags356. Publish the event with `misp.publish(event)`367. Search existing events with `misp.search(controller='events', value=..., type_attribute=...)`378. Enable and configure threat feeds for automatic IOC ingestion389. Export events in STIX 2.1 format for cross-platform sharing3910. Validate sharing group configuration and sync server settings4041## Expected Output4243A JSON report summarizing events created, attributes added, tags applied, feed sync status, and any correlation hits against existing intelligence, with event IDs and distribution metadata.