Intel471 Malware Feed Deprecated

Deprecated. Use Intel471 Malware Indicator Feed instead.

Data Enrichment & Threat Intelligence · Intel471 Feed · Feed

Details

IDIntel471 Malware Feed
ProviderIntel 471
CategoryData Enrichment & Threat Intelligence
From Version5.5.0
Docker Imagedemisto/py3-tools:1.0.0.47433
Supported ModulesAgentix XSIAM

README

“Intel471’s Malware Intelligence is focused on the provisioning of a high fidelity and timely indicators feed with rich context, TTP information, and malware intelligence reports.
This feed allows customers to block and gain an understanding of the latest crimeware campaigns and is for those that value timeliness, confidence (little to no false positives), and seek rich context and insight around the attacks they are seeing.”

Configure Intel471 Malware Feed in Cortex

Parameter Description Required
feed Fetch indicators False
credentials Username False
feedReputation Indicator Reputation False
feedReliability Source Reliability True
tlp_color Traffic Light Protocol Color False
feedExpirationPolicy   False
feedExpirationInterval   False
feedFetchInterval Feed Fetch Interval False
indicator_type Indicator Type True
threat_type Search by Threat Type False
malware_family Malware Family False
confidence Search by confidence False
indicator Free text indicator search (all fields included) False
fetch_time First fetch timestamp (<number> <time unit>, e.g., 12 hours, 7 days) False
feedTags Tags False
feedBypassExclusionList Bypass exclusion list False
proxy Use system proxy settings False
insecure Trust any certificate (not secure) False

Commands

You can execute these commands from the CLI, as part of an automation, or in a playbook.
After you successfully execute a command, a DBot message appears in the War Room with the command details.

intel471-malware-get-indicators


Gets the feed indicators.

Base Command

intel471-malware-get-indicators

Input

Argument Name Description Required
limit The maximum number of results to return. Default is 50. Optional

Context Output

There is no context output for this command.

Configuration parameters

  • feed — Fetch indicators
  • credentials — Username
  • feedReputation — Indicator Reputation
  • feedReliability — Source Reliability (required)
  • tlp_color — Traffic Light Protocol Color
  • feedExpirationPolicy
  • feedExpirationInterval
  • feedFetchInterval — Feed Fetch Interval
  • indicator_type — Indicator Type (required)
  • threat_type — Search by Threat Type
  • malware_family — Malware Family
  • confidence — Search by confidence
  • indicator — Free text indicator search (all fields included)
  • fetch_time — First fetch timestamp (<number> <time unit>, e.g., 12 hours, 7 days)
  • feedTags — Tags
  • feedBypassExclusionList — Bypass exclusion list
  • proxy — Use system proxy settings
  • insecure — Trust any certificate (not secure)

Commands (1)

  • intel471-malware-get-indicators

    Gets the feed indicators.

import pytest
import Intel471Malware as feed

BUILD_PARAM_DICT_DATA = [
    (
        {
            "credentials": {"identifier": "username", "password": "apikey"},
            "insecure": True,
            "search_indicator_type": "ipv4",
            "confidence": "high",
            "auto_detect_type": False,
            "proxy": True,
        },  # input
        {"confidence": "high"},  # expected
    ),
    (
        {
            "credentials": {"identifier": "username", "password": "apikey"},
            "insecure": True,
            "auto_detect_type": False,
            "proxy": True,
        },  # input
        {},  # expected
    ),
    (
        {
            "credentials": {"identifier": "username", "password": "apikey"},
            "insecure": True,
            "search_indicator_type": "ipv4",
            "threat_type": "malware",
            "confidence": "high",
            "auto_detect_type": False,
            "proxy": True,
        },  # input
        {"confidence": "high", "threatType": "malware"},  # expected
    ),
]


@pytest.mark.parametrize("input,expected_results", BUILD_PARAM_DICT_DATA)
def test_build_url_parameter_dict(mocker, input, expected_results):
    """
    Given:
        - set of parameters from demisto.

    When:
        - create an instance and on every run.

    Then:
        - Returns a dictionary of relevant params only.

    """
    params_dict = feed._build_url_parameter_dict(**input)
    assert params_dict == expected_results


BUILD_URL_DATA = [
    (
        {"confidence": "high", "indicatorType": "ipv4"},  # input
        "https://api.intel471.com/v1/indicators/stream?confidence=high&indicatorType=ipv4",  # expected
    ),
    (
        {},  # input
        "https://api.intel471.com/v1/indicators/stream?",  # expected
    ),
]


@pytest.mark.parametrize("input,expected_results", BUILD_URL_DATA)
def test_create_url(mocker, input, expected_results):
    """
    Given:
        - set of parameters from demisto.

    When:
        - create an instance and on every run.

    Then:
        - Returns a url for a get request.

    """
    url = feed._create_url(**input)
    assert url == expected_results