From 2c7d79b240c0ceaa4165eddee6ae64cd9c3a35d3 Mon Sep 17 00:00:00 2001 From: nicolas pelletier Date: Tue, 25 Apr 2023 16:50:17 +0200 Subject: [PATCH 1/2] What-misp-can-do: MISP features list that you might want to find in a threat intelligence platform --- what-misp-can-do/README.md | 296 +++++++++++++++++++++++++++++++++++++ 1 file changed, 296 insertions(+) create mode 100644 what-misp-can-do/README.md diff --git a/what-misp-can-do/README.md b/what-misp-can-do/README.md new file mode 100644 index 0000000..bd1f0b8 --- /dev/null +++ b/what-misp-can-do/README.md @@ -0,0 +1,296 @@ +# What misp can do +Here are some interesting features you might want to find in a threat intelligence platform. +Some of these features are fully supported by MISP (~ 80% of it). Each feature is introduced as a question `Is MISP capable of ...` +The answers will try to both say if it's currently supported and then describe how in practice this feature is available (how to proceed to get things up). +The list is not exhaustive of course but it's a good start and should be filled out as new features is added. +Everyone can [contribute] (https://github.com/MISP/misp-book) by proposing new features, or add additional info on an existing feature. + +_Answers labbeled with_ [**NOT DONE**] _tag need to be completed as they do not give much detail about the way in practice to get this feature up. After the label, there are complementary informations/suggestions to precise what other infos should be added to make the process clearer._ + +> Is MISP capable of applying custom taxonomies to threat data in a predefined or manual way? + +Yes, MISP has already [144](https://www.misp-project.org/taxonomies.html "144") different [taxonomies](https://www.circl.lu/doc/misp/GLOSSARY.html#misp-taxonomies "taxonomies") that gathered 951 [predicates](https://github.com/MISP/misp-taxonomies). But if none of them suit you, you can add your own: Just read [this guide](https://www.circl.lu/doc/misp/taxonomy/#adding-taxonomy-in-misp) or [this one](https://www.circl.lu/assets/files/misp-training/first2016/2-MISP-Taxonomies.pdf). It explains you step by step how to create your own. + +Once you have defined a set of tags to use, you can attach them to MISP entities ([Events/Objects/Attributes](https://www.misp-project.org/misp-training/handout/a.11-misp-data-model_handout.pdf)) in a predefined way through [MISP Workflow](https://www.misp-project.org/misp-training/a.12-misp-workflows.pdf): + +This feature enables you to add tags when specific events are triggered such as: +- _After an Attribute/Event has been saved to the database_ +- _After an Event has been pulled/published_ +- _After enrichement process has been done_ +- _Full list of trigger module is available [here](https://localhost/workflows/triggers)_ + +You can as well attach tags to sepecific set of data such as (specfic attribute type/category/value/etc...) + +All worflow modules and triggers are available at the MISP_URL/Workflow/triggers ou MISP_URL/Workflow/modules. + +> Can theses taxonomies remain local and not shared? + +Yes, + +Firstly, you can restrict the way information is being shared by applying [distribution setting](https://www.circl.lu/doc/misp/sharing/#distribution-settings) + +Secondly, you can apply synchronisation [filtering rules](https://www.circl.lu/doc/misp/sharing/#rules) that block certain event/attribute pushed if they got sepcific tag or belong to specific organisation. + +Finally, you can use the MISP workflow feature to block certain tags to be published by combining the Event publish trigger module with a IF :: Tag filtering module blocking module and see (e.g: [Blueprints examples](https://github.com/MISP/misp-workflow-blueprints)). + +> Is MISP capable of providing automatic classification of information? + +Depends on your definition of automatic. We script it using MISP APIs normally. + +[**NOT DONE**] +==> **Need to be developp with some high level examples in order to be more understandable. (What MISP API query or PyMISP fuction enable us to make classification of information in a automative way. How to use them in order to classify information in an automative way ? Give few examples) +** + +> Does MISP have the capability to manage marking and confidence information, e.g. TLP? + +Yes, it can manage marking information through the [tlp]( https://www.misp-project.org/taxonomies.html#_tlp_2) and [pap]( https://www.misp-project.org/taxonomies.html#_pap) taxonomies. If other tags exist regarding marking information just check on [taxonomies]( https://www.misp-project.org/taxonomies.html) + +For confidence information... + +> Does MISP have the capability to apply marking, tagging and confidence at event, attribute, feed and source levels in a predefined way? + +Yes, this can be done in a predifined way through [MISP worflow](https://www.misp-project.org/misp-training/misp-worflows-first-cti.pdf). +A rich set of taxonomies exist to characterize and contextualize informations. Thus, Marking (TLP, PAP) and confidence can be express through tags. These tags can be attach at the Event/Attribute/Feed/Source level in the following way: + +- **Attribute level**: +By choosing the ***Attribut After Save*** trigger (is called after an Attribute has been saved in the database) or ***Event After Save*** trigger (is called after an Event or any of its elements has been saved in the database) you can then use the ***Tag operation*** module that allows you to ***Add or remove tags on Event or Attributes***. +- **Event level**: +By choosing the ***Event After Save New*** trigger (is called after a new Event has been saved in the database) you can then ***Add or remove tags on Event or Attributes*** . +- **Feed level**: When you add a new feed via the GUI you can set a default tag that would labelled all event that came up from that feed. +- **Source level**: Tags exists (e.g [admiralty-scale:source-reliability](https://www.misp-project.org/taxonomies.html#_source_reliability), enisa:unintentional-damage="using-information-from-an-unreliable-source") that precise the degree of trust we place in the information source. + +All worflow modules and triggers are available at the MISP_URL/Workflow/triggers ou MISP_URL/Workflow/modules. + +Furthermore there is a `default_event_tag_collection` settings that you can set in order to have all event created with a specific tag id. +`sudo -Hu www-data /var/www/MISP/app/Console/cake Admin setSetting "MISP.default_event_tag_collection" tag_id` + + +> Does MISP have the capability to match and link imported intelligence against custom rules and signatures (e.g. regular expressions, whitelists, blacklists, Yara rules, etc.) and apply subsequent predefined actions (e.g. identify internal IP addresses and do not tag them as indicators)? + +Yes with whitelists and maybe other signature types. + You can create [warninglists](https://github.com/MISP/misp-warninglists) (lists of well-known indicators that can be associated to potential false positives, errors or mistakes) containing all the IPs you want to ignore/get notified. Doing so will allow you to: + - Filter out these IPs if they are contained in an event by passing the [enforceWarninglist]( https://www.circl.lu/doc/misp/warninglists/#warninglists-and-data-export) parameter + - Get a UI notification if these IPs are contained in an event and have the to_ids flag set +Note that it will not prevent you to add these IPs to an event. + +You could extend the whitelist to other types of signatures (regular expressions, blacklists, Yara rules) by creating your own action modules that integrate/import a custom signature list. + +You can define predefined actions with [MISP worflow](https://www.misp-project.org/misp-training/misp-worflows-first-cti.pdf) feature. +*** +these actions are triggered when specific events comming (pull event, save attributes in an event, save a new event, feed fetch and so on). These events are called triggered. the full available list is available to this url: MISP_URL/workflows/triggers. the triggers are not customized and you cannot add new ones but you have action and logic modules that can be customized (this [video](https://youtu.be/OyLE2g4zii0?t=1599) show you how to do it) [worflow training slides](https://www.misp-project.org/misp-training/handout/a.12-misp-workflows_handout.pdf). You can handle specific items from the one being manipulated (trigger) by using [filtering module](https://youtu.be/OyLE2g4zii0?t=3285) +*** +> Taking into account the complexity of the cyber domain, Is MISP able to (automatically) link brand new data to already existing data via complex bindings such as aggregation, composition, generalization or realization? + +The linking happens via something we call correlation, but it's not nearly that complex. the correlation can be complete (1-to-1 value matches) or partial (fuzzy hashing, CIDR block matching). An important work has be done lately (2022-08-22) to improve the correlation engine. [correlation engine changement](https://github.com/MISP/MISP/blob/2.4/docs/correlations.rework.md). You can astablish investigation pivot to the events correlated. + +> Is MISP able to generate warnings based on custom signatures and rules, before and after data enrichment? + +Yes, warnings are expressed basicaly through email or chat message format. +**Before MISP workflow**: it was possible to trigger email notification through auto-alerts feature. This one if enable for a user allow the system to send e-mail notifications about any new public events entered into the system by other users and private events added by members of your organisation. To turn this on, navigate to the Edit profile view (My profile on the left navigation menu -> Edit profile in the top right corner). Tick the auto-alert checkbox and click submit to enable this feature. +**With MISP workflow**: It's possible to send email/teams/chat message that could be personnalized with MISP workflow. (see above question to see links to know how it works) + +> Does MISP have the capability to determine provenance and confidence information from different perspectives? + +There is specific taxonomies that indicate **the provenance**: (example: [information security data source](https://www.misp-project.org/taxonomies.html#_information_security_data_source), [cssa-origin](https://www.misp-project.org/taxonomies.html#_cssa), [osint-source-type:](https://www.misp-project.org/taxonomies.html#_osint), [phishing: report origin](https://www.misp-project.org/taxonomies.html#_report_origin), ect) + +For **confindance information** as well, we can characterize them with the following taxonomies: [estimative language taxonomie](https://www.misp-project.org/taxonomies.html#_estimative_language), [admiralty-scale](https://www.misp-project.org/taxonomies.html#_source_reliability), [misp confidence level](https://www.misp-project.org/taxonomies.html#_confidence_level) +that associate a score to the data. + +The tools exist to convey and label the information, but external tools are used in the decision process. +[**NOT DONE**] +==> **Need to be more specific which internal/external tools (give some examples)?** + + +> Does MISP allow analysts building custom workflows? + +Yes, through misp workflow (see above answers to know more about it) + +> Does MISP can have custom workflows that will enable multi-step approval for actions affecting sensitive data? e.g: information sharing of sensitive data. + +No +MISP worflow can trigger actions based on very precise information filtering. Basicaly (thanks to [hash extract](https://book.cakephp.org/3/fr/core-libraries/hash.html)) all informations contains in an object/attribute/event can be used to convey a certain action to happend. In addition, within an object, several pieces of information can indicate a sensitive data. (Tags, ...). I'm not sure about (multi-step approval), i don't think there is rules that if condition are met on the object handled (meaning sensitive data), another user can interfere in the action process. +But you can prevent an action from happening based on specific criteria, but no action that bring another user in the process... + +> Does MISP have the capability and tools to enable collaboration with internal and external stakeholders on threat triage, analysis and response? Iterative processes should also be able to be established so that each individual can provide his/her perspective and feedback. + +Yes, We have specifically separated the publishing duties from information creation duties for this reason. +[**NOT DONE**] +==> **I'm not convinced with the answer given if you could develop that would be really appreciated** + + +> Does MISP have the tasking capability, alerting on task deadline and logging analysts’ activities (so that changes can be tracked). + + +No, this is currently not in scope, MISP is hovered linked with case management (IRIS, The Hive) and ticketing systems (RTIR). + + +> Does MISP provide a human interface that will be customizable for data visualisations (visual graph-based representation). + +Data embedded in the format of event/object/attributes can be represent graphically through different interfaces: + +- event graph: each object (event attributes or event objects) in MISP can **reference** another object in order to outline a logical link between these 2 objects. these links can be observed graphically. In addition we have access to the componants (attributes) of each objects that compose the event. The event graph view is customizable through multiple aspect like filtering on Attribute/Tag Presence/Value. + + +- Timeline graph: This is the view of the attribute lifetime based on firstseen and lastseen attribute settings. + +- Correlation graph: Visual links between events that got similar attribute values. + +- Custom Dashboarding: See next question answer to get more info about this topic. + +> Does MISP have the provide the capability to visualise trend information over the data and other characteristics via data exploration. +MISP propose different interface to see data charachteristics: + +MISP propose different interfaces to have an overview of trends about threat information stored: + +- **2 Dashboards**: + - [Built-in dashboard](https://www.misp-project.org/misp-training/a.a-widget-dev.pdf): + -- **Pros**: + 1) Allows to actively search the full historic datasets + 2) Use all the functionalities / advantages of the MISP internals + 3) ACL aware, all members of the community can use it + 4) Additionally allows for a lot of visualisation of non-data metrics (logs, users, system health, etc) + 5) Highly customisable / user, saveable templating, etc + + -- **Cons**: + 1) One dashoard for each instance + 2) Can be more resource intensive + - [ZMQ dashboard](https://github.com/MISP/misp-dashboard) (Some [ slides](https://www.misp-project.org/misp-training/6.0-misp-dashboard.pdf)): + -- **Pros:** + + 1) Passively feeds on the dataset, no strain on misp's load (need more info) + 2) Allows the aggregation of multiple instances + + -- **Cons:** + 1) No ACL means it's for internal dashboards only + 2) Only sees what comes down the ZMQ pipe (outages, historic data, data out of scope for ZMQ are missed) + + +- **User statistics trends** (https://Nolink): + - Mitre Attack galaxy techniques heathmap that can be filtered per organisation/time-window/Framework/etc... + **URL**: _MISP_URL/users/statistics/galaxyMatrix_ + - Heatmap showing user activity for each day during this month and the 4 months that preceded it. Use the buttons below to only show the heatmap of a specific organisation. + **URL**: _MISP_URL/users/statistics/data_ + - Attributes types per organisation render through a colorized histogramm. **URL**: _MISP_URL/users/statistics/attributehistogram_ + - A treemap of the currently used event tags. (Very ugly <=> no color) + **URL**: _MISP_URL/users/statistics/tags_ + +**These informations can also get retrieve [through API](https://github.com/MISP/MISP/issues/670) in order to set up your own dashboard** +- **Periodic review** (https://NoLink): + - Top 10 MItre ATT&CK techniques see in the event with their respective occurence number + - Top attribute type used with their respective occurence number + - Top object type used with their respective occurence number + - Top 10 tags used with their respective occurence number + - extract of event list + - Tag trendings dashboard (1 week period) + - Context summary: All the tags and taxonomies observed through events + - Galaxy used, ...) + **URL**: MISP_URL/users/viewPeriodicSummary/weekly + +Yes, via the dashboarding, heatmap visualisations, etc + +> Does MISP provide the capability of effective tactical indicator management with assurance that information is of relevant quality and fit for purpose. + +Yes, via the decaying system which is a customizable model that attach a reliability score of the data. This model is very flexible You can customize the way the reliability score decrease with time, set a treshold score where the data is not reliable anymore, set an expiration time, set customize base score based on tags/taxonomies/attribute type. There is as well the possibility to simulate the decaying model. +([training link 1](https://www.misp-project.org/misp-training/a.5-decaying-indicators.pdf) | [training link 2](https://www.misp-project.org/2019/09/12/Decaying-Of-Indicators.html/)) +**URL**: MISP_URL/decayingModel/decayingTool + +> Does MISP allows analysts to prioritize IoCs and threats by helping them determine intelligence relevance based on technical constructs and organizational input. This could be achieved via rule-based or heuristics-based recommendation engines for threat information processing. + +Yes, via the [decaying / scoring system](https://www.misp-project.org/2019/09/12/Decaying-Of-Indicators.html/) + +[**NOT DONE**] +==> **Need to be more precise (with examples), i can see how decaying model can help determine the intelligence revelance of indicators. However, I don't see how decaying/scoring system is based on technical construct and organizational input... And what about the rule-based or heuristics-based recommendation engines for threat information processing ?** + +> Does MISP have the Capability to automate or semi-automated threat triage. + +Yes by connecting it to external tools via the enrichment system. +[**NOT DONE**] +==> **Need to be more precise (with examples), i don't see how enrichement modules can lead to the triage of threat** + + +> Does MISP have the capability to enrich the data with confidence scores, ratings, tags, prioritizations, annotations, etc. + +- MISP directly no. However, via enrichment modules and external reputation services. + +[**NOT DONE**] +==> **Can you site which external reputation service enable that ? And how the confidence is establish (by score/tags/annotation/ratings ? Does MISP has integration available with this external reputation service ?)** + + +> Does MISP provide the capability for analysts to easily maintain their watchlists (e.g. domain resolution watchlist) and provide alerting based on predefined criteria. + +Alerting can be done through MISP workflow (Email module action/ Teams module action) +Only in very basic ways with warning list. + +> Does MISP use statistics methods and present them to the analysts so that trends can be identified and data analysis would be simplified. + +There is the following API Get requests that enable to retrieve some general statistics: +- https:///users/statistics/tags.json +- https:///users/statistics.json +- https:///users/statistics/attributehistogram.json +- https:///users/statistics/orgs.json +- https:///attributes/attributeStatistics/[context]/[percentage] + +An example of statistics obtained from the above API request: +- attribute categories/types percentage or count. +- Event/Attribut count per month, Correlation count, User count, etc... + +Some PyMISP script (`stats.py`,`tagstatistics.py`, `attribute_treemap.py`, `tags_*`) exist to retrieve these information. +Full list is available in [MISP Book](https://www.circl.lu/doc/misp/book.pdf#page=249) at page 247. + +> Is MISP able to collect metrics on usage of threat data to enable ranking of feeds and sources. +MISP can collect the data but it will not use it to rank feeds/sources based on usage. However, the information can be made available for external aggregation. + +No +Only within the platform, since MISP networks can be large peer to peer networks the audit trail ends once the data leaves the instance. + +> Is MISP able to sanitize and anonymize information before being shared with the rest of the stakeholders where appropriate. + +Sanitise, Anonymise, only partially. + +Sanitization might be done with [Regex Input filters](): "Site administrators can define regular expression replacements and blocklists for certain values in addition to blocking certain values from being exportable." This can be used to replace sensitive value that have a specific pattern like ... + +MISP has also a functionality called [delegation request](https://www.circl.lu/doc/misp/delegation/) which completely remove the binding between the information shared and its organisation. If you want to publish an event without you or your organisation being tied to it, you can delegate the publication to an other organisation. + + +In addition, you can create your own Action Module in misp workflow that maybe can + +Furthermore you can prevent specific attribute that can hold sensitive information (such as passeport-number attribute) from being shared. +This is made possible with [misp-guard](https://www.misp-project.org/2022/09/13/misp-guard.html/) which is a mitmproxy addon that inspects and blocks outgoing events to external MISP instances via sync mechanisms (PULL/PUSH) based on a set of customizable block rules. + + +> Does MISP provide the mechanisms for the organisation to identify sensitive data and replace them with privacy protected label before being shared. + +It has a subsystem that allows organisations to build rules for detecting sensitive data and warning the users about the impact of sharing them, the labelling is then up to the user / automation scripts. +This feature is called [noticelist](https://www.circl.lu/doc/misp/noticelists/) and got an example with [GDPR conformity](https://github.com/MISP/misp-noticelist/blob/main/lists/gdpr/list.json). + +> Does MISP have the capability to provide granular access policies e.g. an intelligence product can have different parts that are TLP RED while the other parts may be TLP Amber. + +Yes, +MISP Sharing/Access policies can be expressed through the marking tags TLP/PAP. +These tags and all the possible tags can be attach at any level of the MISP data model (Attributes/Object/Events). +Thus an event can have different objects/attributes that doesn't have the same marking. + +> What MISP propose for being legal and policy compliant? + +Yes, a set of legal and policy compliance analyses are available to ensure compliance while using the software, documents or libraries contained within the MISP project. You will find [here](https://www.misp-project.org/compliance/) all the ressources about this topic + + +> Can MISP incorporate collaboration, iteration, and feedback between threat intelligence analysts. + +Collaboration and feedback can be done in multiple ways: +- Discussion: There are forum threads where you can discuss with other user of the community about non-event related topics +- [Shadow Attributes/Proposal](https://www.circl.lu/doc/misp/general-concepts/#proposals): suggestions made by users to modify/create an event components (attributes/object). +- [Sightings](https://www.circl.lu/doc/misp/sightings/): They are a means to convey that a data point has been seen under a given set of conditions. The sighting can include the organisation who sighted the attribute or can be anonymised. Different type exist: + - Sighting type 0, the default sighting type using the default STIX interpretation of a sighting. + - Sighting type 1, a false-positive sighting which means this sighting has been interpreted as a false-positive by the organisation. + - Sighting type 2, an expiration sighting which defines when the sighted attributes is to be expired. + - Sighting type 3, TTPs from the ATT&CK framework that have been identified. ([ATT&CK sightings](https://attack.mitre.org/resources/sightings/)) + +You can as well tag your events with taxonomies to specify what analysis step are you into, what are the actions to be performed by one or process a step during the threat analysis: +- [Workflow](https://www.misp-project.org/taxonomies.html#_workflow): Common language to support intelligence analysts to perform their analysis on data and information. Allow +- [CTI](https://www.misp-project.org/taxonomies.html#_cti), +- [Incident_disposition](https://www.misp-project.org/taxonomies.html#_incident_disposition): Define how an incident is classified in its process to be resolved. +- [MISP workflow](https://www.misp-project.org/taxonomies.html#_misp_workflow) + +If you want to know more about how you can use MISP to callaborate, have feedback and iterate over analysis process, have a look at the [user personas](https://www.circl.lu/doc/misp/user-personas/). + From ebc6cdae0bb0b888cd1a84ea87abc973da064c95 Mon Sep 17 00:00:00 2001 From: nicolas pelletier Date: Wed, 26 Apr 2023 11:47:27 +0200 Subject: [PATCH 2/2] split the work in two parts (questions, Answers) + fix some syntax errors --- what-misp-can-do/README.md | 22 +- what-misp-can-do/light-bulb.jpg | Bin 0 -> 70910 bytes what-misp-can-do/link-symbol.svg | 356 +++++++++++++++++++++++++++++++ what-misp-can-do/link_icon.svg | 1 + 4 files changed, 373 insertions(+), 6 deletions(-) create mode 100644 what-misp-can-do/light-bulb.jpg create mode 100644 what-misp-can-do/link-symbol.svg create mode 100644 what-misp-can-do/link_icon.svg diff --git a/what-misp-can-do/README.md b/what-misp-can-do/README.md index bd1f0b8..dd6093f 100644 --- a/what-misp-can-do/README.md +++ b/what-misp-can-do/README.md @@ -1,13 +1,24 @@ # What misp can do Here are some interesting features you might want to find in a threat intelligence platform. -Some of these features are fully supported by MISP (~ 80% of it). Each feature is introduced as a question `Is MISP capable of ...` +Some of these features are fully supported by MISP (~ 80% of it). Each feature is introduced as a question `Is MISP capable of ...` The answers will try to both say if it's currently supported and then describe how in practice this feature is available (how to proceed to get things up). The list is not exhaustive of course but it's a good start and should be filled out as new features is added. -Everyone can [contribute] (https://github.com/MISP/misp-book) by proposing new features, or add additional info on an existing feature. +Everyone can [contribute] (https://github.com/MISP/misp-book) by proposing new features, or add additional info on an existing feature. _Answers labbeled with_ [**NOT DONE**] _tag need to be completed as they do not give much detail about the way in practice to get this feature up. After the label, there are complementary informations/suggestions to precise what other infos should be added to make the process clearer._ -> Is MISP capable of applying custom taxonomies to threat data in a predefined or manual way? +## MISP Capabilities Question list + +> Is MISP capable of applying custom taxonomies to threat data in a predefined or manual way? + +> Can theses taxonomies remain local and not shared? + +> Is MISP capable of providing automatic classification of information? + +> Does MISP have the capability to apply marking, tagging and confidence at event, attribute, feed and source levels in a predefined way? + + +> Is MISP capable of applying custom taxonomies to threat data in a predefined or manual way? Yes, MISP has already [144](https://www.misp-project.org/taxonomies.html "144") different [taxonomies](https://www.circl.lu/doc/misp/GLOSSARY.html#misp-taxonomies "taxonomies") that gathered 951 [predicates](https://github.com/MISP/misp-taxonomies). But if none of them suit you, you can add your own: Just read [this guide](https://www.circl.lu/doc/misp/taxonomy/#adding-taxonomy-in-misp) or [this one](https://www.circl.lu/assets/files/misp-training/first2016/2-MISP-Taxonomies.pdf). It explains you step by step how to create your own. @@ -19,7 +30,7 @@ This feature enables you to add tags when specific events are triggered such as: - _After enrichement process has been done_ - _Full list of trigger module is available [here](https://localhost/workflows/triggers)_ -You can as well attach tags to sepecific set of data such as (specfic attribute type/category/value/etc...) +You can as well attach tags to specific set of data such as specfic attribute type, category, value [...] All worflow modules and triggers are available at the MISP_URL/Workflow/triggers ou MISP_URL/Workflow/modules. @@ -38,8 +49,7 @@ Finally, you can use the MISP workflow feature to block certain tags to be publi Depends on your definition of automatic. We script it using MISP APIs normally. [**NOT DONE**] -==> **Need to be developp with some high level examples in order to be more understandable. (What MISP API query or PyMISP fuction enable us to make classification of information in a automative way. How to use them in order to classify information in an automative way ? Give few examples) -** +==> **Need to be developp with some high level examples in order to be more understandable. (What MISP API query or PyMISP fuction enable us to make classification of information in a automative way. How to use them in order to classify information in an automative way ? Give few examples)** > Does MISP have the capability to manage marking and confidence information, e.g. TLP? diff --git a/what-misp-can-do/light-bulb.jpg b/what-misp-can-do/light-bulb.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c2220d7abee102374cec88757b3c55d4e09e1f9c GIT binary patch literal 70910 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�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 + + + +Fichier:Simpleicons Interface link-symbol.svg — Wikipédia + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + +
+
+ + +
+ + +
+ +
+
+
+ + +
+
+

Fichier:Simpleicons Interface link-symbol.svg

+
+
+ + +
+
+
+
+

Fichier d’origine(Fichier SVG, nominalement de 457 × 457 pixels, taille : 2 kio) +

+
+ + + + + + +

+

+
+

Description

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Description +Simpleicon Interface by SimpleIcon
Date +u
Source +http://www.flaticon.com/packs/simpleicon-interface
Auteur +SimpleIcon http://www.simpleicon.com/
+
+

Conditions d’utilisation

+
w:fr:Creative Commons
+paternité
Ce fichier est disponible selon les termes de la licence Creative Commons Attribution 3.0 (non transposée).
+
Vous êtes libre : +
  • de partager – de copier, distribuer et transmettre cette œuvre
  • +
  • d’adapter – de modifier cette œuvre
+
Sous les conditions suivantes : +
  • paternité – Vous devez donner les informations appropriées concernant l'auteur, fournir un lien vers la licence et indiquer si des modifications ont été faites. Vous pouvez faire cela par tout moyen raisonnable, mais en aucune façon suggérant que l’auteur vous soutient ou approuve l’utilisation que vous en faites.
+

Légendes

Ajoutez en une ligne la description de ce que représente ce fichier

Éléments décrits dans ce fichier

dépeint

+ + + + +
+

Historique du fichier

+
+

Cliquer sur une date et heure pour voir le fichier tel qu'il était à ce moment-là. +

+ + + +
Date et heureVignetteDimensionsUtilisateurCommentaire
actuel7 mars 2016 à 15:17Vignette pour la version du 7 mars 2016 à 15:17457 × 457 (2 kio)CFCF
+ +
+ +
+

Les 2 pages suivantes utilisent ce fichier : +

+
+

Usage global du fichier

+

Les autres wikis suivants utilisent ce fichier : +

+

Métadonnées

+ +
+ +
+
+
+
+ +
+
+
+ + + + + \ No newline at end of file diff --git a/what-misp-can-do/link_icon.svg b/what-misp-can-do/link_icon.svg new file mode 100644 index 0000000..f73855f --- /dev/null +++ b/what-misp-can-do/link_icon.svg @@ -0,0 +1 @@ + \ No newline at end of file