IP Enrichment Documentation

This page will help you get started with IP Enrichment.

The IP enrichment API that allows users to submit an IP address and enrich it with detailed information about observed activity. Enrichment covers information such as certificates, malware command and control (C2), jarm signatures, HTTP data and any observed open directories.

The enrichment API can be accessed via GET requests to https://api.hunt.io/v1/enrich/ip/{ip}

Details on submitting to the IP enrichment API can be found here.


Enrichment Databases

IP Enrichment will enrich a submitted IP address with the following Hunt databases.

FeatureDescription
certificatesSSL certificates fields and related hashes to them
malwareMalware details of Hunt signatures hits
jarmJARM hashes
protocolProtocol payloads detected on the IP
httpDetails about any HTTP data returned
opendirOpen Directories detected on IP (any port, http protocol)

Sample IPs

IPHighlights
13.212.254.64Protocols/SSL/JARM
18.117.190.112Honeypot
172.66.45.33Phishing
8.131.50.94Malware
1.15.175.83Open Directory

Certificate Enrichment

Certificate enrichment data contains information about SSL and TLS certificates observed on the enriched IP.

This includes detailed information regarding subjects, issuers, JA4X and other hashes.

An example of certificate enrichment via the IP enrichment API can be seen below. The example uses a Cobalt Strike IP of 120.24.23[.]212, which is linked to a certificate with common Cobalt Strike values.

Example

[
        {
            "HashHexedSha256": "56A06A233BD30F693DE25EF12CC19E8B2C92D3EB97DD969A2578DF084C376478",
            "UUIDHexed": "4CAD2CD861FC27659F3F2D0B3D900F1746EA56BC443C3A83E200B5269CBFE45B",
            "HashHexedSha1": "FE1416BA041BAFB4D9BA736089253AF2C71A9C5F",
            "HashHexedMd5": "C93DF8087725EC694FB59E7A77947161",
            "JA4X": "2166164053c1_2166164053c1_30d204a01551",
            "SeenFirst": "2022-09-14T08:04:33",
            "SeenLast": "2024-09-08T23:14:58",
            "Serial": "659754494",
            "NotBefore": "2022-08-30T14:15:08",
            "NotAfter": "2022-11-28T14:15:08",
            "SubjectCommonName": "Major Cobalt Strike",
            "SubjectCountry": [
                "Earth"
            ],
            "SubjectOrganization": [
                "cobaltstrike"
            ],
            "SubjectOrganizationalUnit": [
                "AdvancedPenTesting"
            ],
            "SubjectLocality": [
                "Somewhere"
            ],
            "SubjectProvince": [
                "Cyberspace"
            ],
            "SubjectStreetAddress": [],
            "SubjectPostalCode": [],
            "SubjectSubjectSerialNumber": "",
            "IssuerCommonName": "Major Cobalt Strike",
            "IssuerCountry": [
                "Earth"
            ],
            "IssuerOrganization": [
                "cobaltstrike"
            ],
            "IssuerOrganizationalUnit": [
                "AdvancedPenTesting"
            ],
            "IssuerLocality": [
                "Somewhere"
            ],
            "IssuerProvince": [
                "Cyberspace"
            ],
            "IssuerStreetAddress": [],
            "IssuerPostalCode": [],
            "IssuerSubjectSerialNumber": "",
            "PolicyIdentifiers": "",
            "SignatureAlgorithm": "SHA256-RSA",
            "PrivateKey_BitLength": "256",
            "PrivateKey_Type": "RSA",
            "KeyUsage": "0",
            "ExtKeyUsage": "[]",
            "DNSNames": [],
            "EmailAddresses": [],
            "IPAddresses": [],
            "URIs": [],
            "IssuingCertificateURL": [],
            "IsCA": "0",
            "MaxPathLen": "0",
            "MaxPathLenZero": "0",
            "OCSPServer": [],
            "Hostnames": ""
        }
    ]



Fields

The following fields are available in the Certificate component of IP enrichment.


FieldValue
HashHexedSha256SHA256 Hash of Certificate Content
UUIDHexedCertificate UUID in Hex Format
HashHexedSha1SHA1 Hash of Certificate Content
HashHexedMd5MD5 Hash of Certificate Content
JA4X2166164053c1_2166164053c1_30d204a01551
SeenFirstTImestamp When Certificate was First Observed
SeenLastTImestamp When Certificate was Last Observed
SerialSerial Number of The Certificate
NotBefore2024-03-11T08:16:35
NotAfter2024-06-09T08:16:35
SubjectCommonNameCommon Name of Certificate Subject
SubjectCountryCountry of Certificate Subject
SubjectOrganizationOrganization of Certificate Subject
SubjectOrganizationalUnitOrganizational Unit of Certificate Subject
SubjectLocalityLocality of Certificate Subject
SubjectProvinceProvince of Certificate Subject
SubjectStreetAddressStreet Address of Certificate Subject
SubjectPostalCodePostal Code of Certificate Subject
SubjectSerialNumberSerial Number of Certificate Subject
IssuerCommonNameCommon Name of Certificate Issuer
IssuerCountryCountry of Issuer
IssuerOrganizationOrganization of Issuer
IssuerOrganizationalUnitOrganizational Unit of Issuer
IssuerLocalityLocality of Issuer
IssuerProvinceProvince of Issuer
IssuerStreetAddressStreet Address of Issuer
IssuerPostalCodePostal Code of Issuer
IssuerSerialNumberSerial Number of Issuer
PolicyIdentifiers

Malware Enrichment

IP Enrichment returns Command and Control (C2) servers associated with the submitted IP address.

The output returns the name, port, date and confidence of the Malware C2 associated.

Example

[
    {
        "MalwareName": "Cobalt Strike",
        "IP": "120.24.23.212",
        "Port": 80,
        "Confidence": 100,
        "MalwareSubsystem": "C2",
        "SeenFirst": "2024-08-28T09:03:55",
        "SeenLast": "2024-09-02T05:29:27"
    },
    {
        "MalwareName": "Cobalt Strike",
        "IP": "120.24.23.212",
        "Port": 50050,
        "Confidence": 80,
        "MalwareSubsystem": "Team Server",
        "SeenFirst": "2024-08-11T08:20:31",
        "SeenLast": "2024-09-02T05:10:21"
    },
    {
        "MalwareName": "Cobalt Strike",
        "IP": "120.24.23.212",
        "Port": 81,
        "Confidence": 100,
        "MalwareSubsystem": "C2",
        "SeenFirst": "2024-09-03T21:01:11",
        "SeenLast": "2024-09-04T01:28:14"
    }
]

Fields

The following fields are available in the Malware component of IP enrichment.


FieldDescription
MalwareNameName of the Associated Malware Family
IPIP of the Command and Control Server
PortPort where Malware C2 was Observed
ConfidenceHunt Confidence Level
MalwareSubsystemSubcategory of the Malware Type
SeenFirstTime that the C2 was first seen
SeenLastTime that the C2 was last seen

Protocol Enrichment

IP Enrichment returns information about ports and protocols observed on the requested IP address.

This includes information on the running service, port and dates when the protocol was first and last observed on the submitted IP.

Below is a subset of the returned protocol data for 120.24.23[.]212. The data shows protocol information for observed ports 22,50050.

[
    {
        "IP": "120.24.23.212",
        "Port": 22,
        "Fingerprint": [
            "ssh"
        ],
        "SeenFirst": "2024-07-08T12:33:53",
        "SeenLast": "2024-08-21T12:31:44",
        "AllFingerprints": [
            "ssh"
        ]
    },
    {
        "IP": "120.24.23.212",
        "Port": 50050,
        "Fingerprint": [
            "tls"
        ],
        "SeenFirst": "2024-08-05T09:07:28",
        "SeenLast": "2024-08-15T09:02:09",
        "AllFingerprints": [
            "unknown",
            "tls"
        ]
    }
]

Fields

The following fields are available in the Protocol component of IP enrichment.


FieldDescription
IPIP where protocol was observed
PortPort where protocol was observed
FingerprintPrimary Protocol observed on the port
SeenFirstTime that the protocol was first seen
SeenLastTime that the protocol was last seen
AllFingerprintsOther matching protocols and fingerprints

SSH Enrichment

If an SSH service was observed on the submitted IP, associated information will be returned in the SSH component of the returned json data.

[
    {
        "IP": "120.24.23.212",
        "Port": 22,
        "SeenFirst": "2024-07-08T12:16:26",
        "SeenLast": "2024-09-09T06:13:31",
        "Keys": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855,C91B37580192204F6403219C45BBAB57E8C8A7C82EC38806CA6E248C8B34FC1E,B7BAEEB13B6375CF66E57C1FF8E8137AF54671D32E6F454B0DB63B0A9098AAAF"
    }
]

Fields

The following fields are available in the SSH component of IP enrichment.


FieldDescription
IPIP where SSH was observed
PortPort where SSH was observed
SeenFirstTime that SSH was first seen
SeenLastTime that SSH was last seen
KeysSSH keys of the SSH service

HTTP Enrichment

IP enrichment returns data on HTTP services observed on a submitted IP.

This will show information regarding the associated HTTP service, including ports, body hashes and header values.


Fields

The following fields are available in the HTTP component of IP enrichment.

FieldValue
IPIP where HTTP was observed
PortPort where HTTP was observed
SeenFirstTime that HTTP was first seen
SeenLastTime that HTTP was last seen
BodySHA256SHA256 of HTTP body
HeaderRawRaw Header of HTTP response

OpenDir Enrichment

If an open directory has been observed on the submitted IP, then this will be displayed in the opendir component of the returned data.

This contains information about the port where the open directory was observed, and dates when the open directory was first or last seen.

Example

[
    {
        "IP": "13.212.254.64",
        "Hostname": "http://13.212.254.64:8000",
        "SeenFirst": "2024-04-27T11:42:09",
        "SeenLast": "2024-05-07T09:40:19"
    }
]

Fields

The following fields are available in the opendir component of IP enrichment.


FieldDescription
IPIP Address of The Open Directory
HostnameHostname and Port Number of the Open Directory
SeenFirstTime that Open Directory was First Seen
SeenLastTime that Open Directory was Last Seen

HoneyPot Enrichment

If a submitted IP has been observed scanning the Hunt honeypots, then this information will be displayed in the honeypots component of the returned data.

The data shows ports where the activity occurred, the types of scanning that took place, and also links any associated threat actors and timeframes via the SeenFirst and SeenLast fields.

Example

[
    {
        "Ports": [
            37215
        ],
        "Tags": [
            "HTTP crawler",
            "Port scanner",
            "CVE-2017-17215 exploit"
        ],
        "Actor": "0",
        "SeenFirst": "2023-11-02T01:01:54",
        "SeenLast": "2023-12-06T09:03:45"
    }
]

Fields

The following fields are available in the honeypot component of IP enrichment.

FieldDescription
PortsPort Where Honeypot was Observed
TagsAssociated Scanning Activity
ActorAssociated Threat Actor ID
SeenFirstDate that Honeypot was First Seen
SeenLastDate that Honeypot was Last Seen



Phishing Enrichment

IP's linked to Phishing activity are displayed in the phishing component of the IP enrichment output.

This will return data where an IP has been associated with phishing pages. URL data, HTTP Titles and Signatures are returned.

[
    {
        "URL": "http://linkedln-c3de3165fd-aead92fdea-ba798b.pages.dev/",
        "SeenFirst": "2024-08-27T05:10:47",
        "SeenLast": "2024-08-27T05:10:47",
        "Status": "200",
        "Title": "LinkedIn 로그인 | LinkedIn",
        "MatchedSignatures": [
            "new-injection",
            "url-email-getting",
            "LinkedIn"
        ]
    },
    {
        "URL": "https://july-13th.pages.dev/?user-agent=Mozilla/5.0WindowsNT10.0;Win64;x64AppleWebKit/537.36KHTML,likeGeckoChrome/86.0.4240.75Safari/537.36",
        "SeenFirst": "2024-06-25T06:08:20",
        "SeenLast": "2024-06-25T06:08:20",
        "Status": "200",
        "Title": "Webmail Portal Login",
        "MatchedSignatures": [
            "new-injection",
            "js-dot-download"
        ]
    }
]

Fields

The following fields are available in the phishing component of IP enrichment.

FieldDescription
URLURL of Phishing Page
SeenFirstTime that Phishing Page was First Seen
SeenLastTime that Phishing Page was Last Seen
StatusHTTP Status Code of Phishing page
TitleHTTP Title of Phishing Page
MatchedSignaturesSignatures that matched on Phishing Page