MISP is not only a software but also a series of data models created by the MISP community. MISP includes a simple and practical information sharing format expressed in JSON that can be used with MISP software or by any other software.
The MISP core format is a simple JSON format used by MISP and other tools to exchange events and attributes. The JSON schema 2.4 is described on the MISP core software and many sample files are available in the OSINT feed.
The MISP format is described as Internet-Draft in [misp-rfc](https://github.com/MISP/MISP-rfc). The MISP format are described to support the developer or organisation willing to build your own tool supporting the MISP format (as import or export). The standard is built from practical use-cases and the implementation references within the MISP project. The standard is quickly evolving following the MISP implementation.
***Internal reference**: Reference used by the publishing party (e.g. ticket number)
***Targeting data**: Targeting information to include recipient email, infected machines, department, and or locations.
***Antivirus detection**: List of anti-virus vendors detecting the malware or information on detection performance (e.g. 13/43 or 67%). Attachment with list of detection or link to VirusTotal could be placed here as well.
***Payload delivery**: Information about the way the malware payload is initially delivered, for example information about the email or web-site, vulnerability used, originating IP etc. Malware sample itself should be attached here.
***Artifacts dropped**: Any artifact (files, registry keys etc.) dropped by the malware or other modifications to the system
***Payload installation**: Location where the payload was placed in the system and the way it was installed. For example, a filename|md5 type attribute can be added here like this: c:\windows\system32\malicious.exe|41d8cd98f00b204e9800998ecf8427e.
***Persistence mechanism**: Mechanisms used by the malware to start at boot. This could be a registry key, legitimate driver modification, LNK file in startup
***Network activity**: Information about network traffic generated by the malware
***Payload type**: Information about the final payload(s). Can contain a function of the payload, e.g. keylogger, RAT, or a name if identified, such as Poison Ivy.
***Attribution**: Identification of the group, organisation, or country behind the attack
***External analysis**: Any other result from additional analysis of the malware like tools output Examples: pdf-parser output, automated sandbox analysis, reverse engineering report.
***Financial fraud**: Financial Fraud indicators, for example: IBAN Numbers, BIC codes, Credit card numbers, etc.
***ip-dst**: A destination IP address of the attacker or C&C server. Also set the IDS flag on when this IP is hardcoded in malware
***hostname**: A full host/dnsname of an attacker. Also set the IDS flag on when this hostname is hardcoded in malware
***domain**: A domain name used in the malware. Use this instead of hostname when the upper domain is important or can be used to create links between events.
***authentihash**: You are encouraged to use filename|authentihash instead. Authenticode executable signature hash, only use this if you don't know the correct filename
***ssdeep**: You are encouraged to use filename|ssdeep instead. A checksum in the SSDeep format, only use this if you don't know the correct filename
***imphash**: You are encouraged to use filename|imphash instead. A hash created based on the imports in the sample, only use this if you don't know the correct filename
***pehash**: PEhash - a hash calculated based of certain pieces of a PE executable file
***impfuzzy**: You are encouraged to use filename|impfuzzy instead. A fuzzy hash created based on the imports in the sample, only use this if you don't know the correct filename
***sha224**: You are encouraged to use filename|sha224 instead. A checksum in sha224 format, only use this if you don't know the correct filename
***sha384**: You are encouraged to use filename|sha384 instead. A checksum in sha384 format, only use this if you don't know the correct filename
***sha512**: You are encouraged to use filename|sha512 instead. A checksum in sha512 format, only use this if you don't know the correct filename
***sha512/224**: You are encouraged to use filename|sha512/224 instead. A checksum in sha512/224 format, only use this if you don't know the correct filename
***sha512/256**: You are encouraged to use filename|sha512/256 instead. A checksum in sha512/256 format, only use this if you don't know the correct filename
***tlsh**: You are encouraged to use filename|tlsh instead. A checksum in the Trend Micro Locality Sensitive Hash format, only use this if you don't know the correct filename
***windows-scheduled-task**: A scheduled task in windows
***windows-service-name**: A windows service name. This is the name used internally by windows. Not to be confused with the windows-service-displayname.
***windows-service-displayname**: A windows service's displayname, not to be confused with the windows-service-name. This is the name that applications will generally display as the service's name in applications.
***whois-registrant-email**: The e-mail of a domain's registrant, obtained from the WHOIS information.
***whois-registrant-phone**: The phone number of a domain's registrant, obtained from the WHOIS information.
***whois-registrant-name**: The name of a domain's registrant, obtained from the WHOIS information.
***dns-soa-email**: RFC1035 mandates that DNS zones should have a SOA (Statement Of Authority) record that contains an email address where a PoC for the domain could be contacted. This can sometimes be used for attribution/linkage between different domains even if protected by whois privacy
***size-in-bytes**: Size expressed in bytes
***counter**: An integer counter, generally to be used in objects
***datetime**: Datetime in the ISO 8601 format
***cpe**: Common platform enumeration
***port**: Port number
***ip-dst|port**: IP destination and port number seperated by a |
***ip-src|port**: IP source and port number seperated by a |
***hostname|port**: Hostname and port number seperated by a |
***date-of-birth**: Date of birth of a natural person (in YYYY-MM-DD format)
***place-of-birth**: Place of birth of a natural person
***gender**: The gender of a natural person (Male, Female, Other, Prefer not to say)
***passport-number**: The passport number of a natural person
***passport-country**: The country in which the passport was issued
***passport-expiration**: The expiration date of a passport
***redress-number**: The Redress Control Number is the record identifier for people who apply for redress through the DHS Travel Redress Inquiry Program (DHS TRIP). DHS TRIP is for travelers who have been repeatedly identified for additional screening and who want to file an inquiry to have erroneous information corrected in DHS systems
***nationality**: The nationality of a natural person
***visa-number**: Visa number
***issue-date-of-the-visa**: The date on which the visa was issued
***primary-residence**: The primary residence of a natural person
***country-of-residence**: The country of residence of a natural person
***special-service-request**: A Special Service Request is a function to an airline to provide a particular facility for A Passenger or passengers.
***frequent-flyer-number**: The frequent flyer number of a passenger
***travel-details**: Travel details
***payment-details**: Payment details
***place-port-of-original-embarkation**: The orignal port of embarkation
***place-port-of-clearance**: The port of clearance
***place-port-of-onward-foreign-destination**: A Port where the passenger is transiting to
***passenger-name-record-locator-number**: The Passenger Name Record Locator is a key under which the reservation for a trip is stored in the system. The PNR contains, among other data, the name, flight segments and address of the passenger. It is defined by a combination of five or six letters and numbers.
***mobile-application-id**: The application id of a mobile application
Along with the core format, [MISP taxonomies](https://www.github.com/MISP/misp-taxonomies/) provide a set of already defined classifications modeling estimative language, CSIRTs/CERTs classifications, national classifications or threat model classification. The fixed taxonomies provide a practical method to tag efficiently events and attributes within a set of MISP instances where taxonomies can be easily cherry-picked or extended to meet the local requirements of an organization or a specific sharing community. When using MISP, the MISP taxonomies are available and can be freely used based on the community practises.
- [Information Security Marking Metadata](https://github.com/MISP/misp-taxonomies/tree/master/dni-ism) from DNI (Director of National Intelligence - US)
- [Malware](https://github.com/MISP/misp-taxonomies/tree/master/malware) classification based on a SANS document
- [ms-caro-malware](https://github.com/MISP/misp-taxonomies/tree/master/ms-caro-malware) Malware Type and Platform classification based on Microsoft's implementation of the Computer Antivirus Research Organiza
- [OSINT Open Source Intelligence - Classification](https://github.com/MISP/misp-taxonomies/tree/master/osint)
- [The Permissible Actions Protocol - or short: PAP - was designed to indicate how the received information can be used.](https://github.com/MISP/misp-taxonomies/tree/master/pap)
MISP galaxy is a simple method to express a large object called cluster that can be attached to MISP events or attributes. A cluster can be composed of one or more elements. Elements are expressed as key-values. There are default vocabularies available in MISP galaxy but those can be overwritten, replaced or updated as you wish. Existing clusters and vocabularies can be used as-is or as a template. MISP distribution can be applied to each cluster to permit a limited or broader distribution scheme. Many MISP galaxy clusters are already available like Exploit-Kit, Microsoft Activity Group actor, Preventive Measure,
Ransomware, TDS, Threat actor or Tool used by adversaries.