跳到正文
cccskills
免费在 GitHub 公开

collecting-threat-intelligence-with-misp

MISP (Malware Information Sharing Platform) is an open-source threat intelligence platform for gathering, sharing, storing, and correlating Indicators of Compromise (IOCs) of targeted attacks, threat

中文简介正在准备中。当前显示原文说明。

集成工具Docker
查看安装方法

包含的文件(8)

  • SKILL.md5.8 KB
  • assets/template.md3.0 KB
  • LICENSE11.0 KB
  • references/api-reference.md1.8 KB
  • references/standards.md2.3 KB
  • references/workflows.md4.8 KB
  • scripts/agent.py5.6 KB
  • scripts/process.py11.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Collecting Threat Intelligence with MISP

Overview

MISP (Malware Information Sharing Platform) is an open-source threat intelligence platform for gathering, sharing, storing, and correlating Indicators of Compromise (IOCs) of targeted attacks, threat intelligence, financial fraud information, vulnerability information, or counter-terrorism information. This skill covers deploying MISP, configuring threat feeds, using the PyMISP API for programmatic access, and building automated collection pipelines that aggregate IOCs from multiple community and commercial sources.

When to Use

  • When managing security operations that require collecting threat intelligence with misp
  • When improving security program maturity and operational processes
  • When establishing standardized procedures for security team workflows
  • When integrating threat intelligence or vulnerability data into operations

Prerequisites

  • Python 3.9+ with pymisp library installed
  • Docker and Docker Compose for MISP deployment
  • Understanding of STIX 2.1 and TAXII 2.1 protocols
  • Familiarity with IOC types: hashes, IP addresses, domains, URLs, email addresses
  • Network access to MISP community feeds (circl.lu, botvrij.eu)

Key Concepts

MISP Architecture

MISP operates on an event-based model where threat intelligence is organized into events containing attributes (IOCs), objects (structured groupings of attributes), galaxies (threat actor/malware clusters linked to MITRE ATT&CK), and tags for classification. Synchronization between MISP instances uses a pull/push model over HTTPS with API key authentication.

Feed Types

  • MISP Feeds: Native JSON/CSV feeds from MISP community (CIRCL OSINT, botvrij.eu)
  • Freetext Feeds: Unstructured text feeds parsed for IOCs (abuse.ch, Feodo Tracker)
  • TAXII Feeds: STIX/TAXII 2.1 compatible feeds from commercial and government sources
  • CSV Feeds: Structured CSV feeds with configurable column mapping

PyMISP API

PyMISP is the official Python library to access MISP platforms via their REST API. It supports fetching events, adding/updating events and attributes, uploading samples, and searching across the entire MISP dataset. Authentication uses an API key passed in the Authorization header.

Workflow

Step 1: Deploy MISP with Docker

git clone https://github.com/MISP/misp-docker.git
cd misp-docker
cp template.env .env
# Edit .env to set MISP_BASEURL, MISP_ADMIN_EMAIL, MISP_ADMIN_PASSPHRASE
docker compose up -d

Step 2: Configure Default Feeds

Enable built-in MISP feeds via the web UI or API:

from pymisp import PyMISP

misp = PyMISP('https://misp.local', 'YOUR_API_KEY', ssl=False)

# List available feeds
feeds = misp.feeds()
for feed in feeds:
    print(f"{feed['Feed']['id']}: {feed['Feed']['name']} - Enabled: {feed['Feed']['enabled']}")

# Enable CIRCL OSINT Feed
misp.enable_feed(feed_id=1)
misp.cache_feed(feed_id=1)
misp.fetch_feed(feed_id=1)

Step 3: Add Custom Threat Feeds

# Add abuse.ch URLhaus feed
feed_data = {
    'name': 'URLhaus Recent URLs',
    'provider': 'abuse.ch',
    'url': 'https://urlhaus.abuse.ch/downloads/csv_recent/',
    'source_format': 'csv',
    'input_source': 'network',
    'publish': False,
    'enabled': True,
    'headers': '',
    'distribution': 0,
    'sharing_group_id': 0,
    'tag_id': 0,
    'default': False,
    'lookup_visible': True
}
result = misp.add_feed(feed_data)
print(f"Feed added: {result}")

Step 4: Programmatic Event Search and Retrieval

from pymisp import PyMISP, MISPEvent
from datetime import datetime, timedelta

misp = PyMISP('https://misp.local', 'YOUR_API_KEY', ssl=False)

# Search for events from the last 7 days
result = misp.search(
    controller='events',
    date_from=(datetime.now() - timedelta(days=7)).strftime('%Y-%m-%d'),
    type_attribute='ip-dst',
    to_ids=True,
    pythonify=True
)

for event in result:
    print(f"Event {event.id}: {event.info}")
    for attr in event.attributes:
        if attr.type == 'ip-dst' and attr.to_ids:
            print(f"  IOC: {attr.value} (category: {attr.category})")

Step 5: Export IOCs for Downstream Tools

# Export as STIX 2.1 bundle
stix_output = misp.search(
    controller='events',
    return_format='stix2',
    tags=['tlp:white'],
    published=True
)

# Export IDS-flagged attributes as Suricata rules
suricata_rules = misp.search(
    controller='attributes',
    return_format='suricata',
    to_ids=True,
    type_attribute=['ip-dst', 'domain', 'url']
)

# Export as CSV for SIEM ingestion
csv_output = misp.search(
    controller='attributes',
    return_format='csv',
    type_attribute='ip-dst',
    to_ids=True
)

Validation Criteria

  • MISP instance is deployed and accessible via HTTPS
  • At least 3 community feeds are enabled and fetching data successfully
  • PyMISP script can authenticate, search events, and retrieve IOCs
  • Events contain properly tagged and categorized attributes
  • Export to STIX 2.1 produces valid STIX bundles
  • Automated feed fetch runs on schedule (cron or MISP scheduler)

References

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Create forensically sound bit-for-bit disk images using dd and dcfldd while preserving evidence integrity through hash verification.

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

Detect dangerous ACL misconfigurations in Active Directory using ldap3 to identify GenericAll, WriteDACL, and WriteOwner abuse paths

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

Perform static analysis of Android APK malware samples using apktool for decompilation, jadx for Java source recovery, and androguard for permission analysis, manifest inspection, and suspicious API call detection.

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

Parses API Gateway access logs (AWS API Gateway, Kong, Nginx) to detect BOLA/IDOR attacks, rate limit bypass, credential scanning, and injection attempts. Uses pandas for statistical analysis of request patterns and anomaly detection. Use when investigating API abuse or building API-specific threat detection rules.

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

Analyze advanced persistent threat (APT) group techniques using MITRE ATT&CK Navigator to create layered heatmaps of adversary TTPs for detection gap analysis and threat-informed defense.

中文简介正在准备中。当前显示原文说明。

micsapp/micstec-skills42026年3月20日 更新

查看 micsapp 的全部技能

报告此技能的问题