From 2c7eff4a5659e8b7cbe7026b09beb9a2d2147f2d Mon Sep 17 00:00:00 2001 From: Christophe Vandeplas Date: Fri, 24 Dec 2021 08:01:23 +0100 Subject: [PATCH] chg: [new] Home page modules --- data/carousel/art.yaml | 7 +++ data/carousel/threat_sharing.yaml | 4 ++ data/features/automation.yaml | 6 ++ data/features/giving.yaml | 5 ++ data/features/intelligence.yaml | 5 ++ data/features/open.yaml | 5 ++ data/features/threats.yaml | 5 ++ data/features/visualization.yaml | 5 ++ data/testimonials/1.yaml | 4 ++ data/testimonials/2.yaml | 4 ++ data/testimonials/3.yaml | 4 ++ data/testimonials/4.yaml | 4 ++ data/testimonials/5.yaml | 4 ++ data/testimonials/6.yaml | 4 ++ data/testimonials/7.yaml | 4 ++ layouts/_default/single.html | 90 ++++++++++++++++++++++++++++++ static/img/x-isac-logo-small.png | Bin 0 -> 9922 bytes 17 files changed, 160 insertions(+) create mode 100644 data/carousel/art.yaml create mode 100644 data/carousel/threat_sharing.yaml create mode 100644 data/features/automation.yaml create mode 100644 data/features/giving.yaml create mode 100644 data/features/intelligence.yaml create mode 100644 data/features/open.yaml create mode 100644 data/features/threats.yaml create mode 100644 data/features/visualization.yaml create mode 100644 data/testimonials/1.yaml create mode 100644 data/testimonials/2.yaml create mode 100644 data/testimonials/3.yaml create mode 100644 data/testimonials/4.yaml create mode 100644 data/testimonials/5.yaml create mode 100644 data/testimonials/6.yaml create mode 100644 data/testimonials/7.yaml create mode 100644 layouts/_default/single.html create mode 100755 static/img/x-isac-logo-small.png diff --git a/data/carousel/art.yaml b/data/carousel/art.yaml new file mode 100644 index 0000000..27daeb1 --- /dev/null +++ b/data/carousel/art.yaml @@ -0,0 +1,7 @@ +weight: 2 +title: "The art of information sharing" +description: "

is to +share more, smarter and faster
+with your friends and allies
+than your adversaries would like to.

" +image: "img/carousel/art.png" diff --git a/data/carousel/threat_sharing.yaml b/data/carousel/threat_sharing.yaml new file mode 100644 index 0000000..45500f7 --- /dev/null +++ b/data/carousel/threat_sharing.yaml @@ -0,0 +1,4 @@ +weight: 1 +title: "Open Source Threat Intelligence and Sharing Platform" +description: "

Share.Store.Correlate.Analyse.
Targeted attacks.Financial Fraud.Counter-terrorism.

" +image: "img/carousel/computer-website.png" diff --git a/data/features/automation.yaml b/data/features/automation.yaml new file mode 100644 index 0000000..cc54b75 --- /dev/null +++ b/data/features/automation.yaml @@ -0,0 +1,6 @@ +weight: 1 +name: "The key is Automation" +icon: "fas fa-share-alt" +url: "" +description: "Isn't it sad to have a lot of data and not use it because it's too much work? Thanks to MISP you can store your IOCs in a structured manner, and thus enjoy the correlation, automated exports for IDS, or SIEM, in STIX or OpenIOC and synchronize to other MISPs. You can now leverage the value of your data without effort and in an automated manner. +[Check out MISP features](features)." diff --git a/data/features/giving.yaml b/data/features/giving.yaml new file mode 100644 index 0000000..db06174 --- /dev/null +++ b/data/features/giving.yaml @@ -0,0 +1,5 @@ +weight: 3 +name: "By giving you will receive" +icon: "fas fa-users" +url: "" +description: "Sharing is key to fast and effective detection of attacks. Quite often similar organizations are targeted by the same Threat Actor, in the same or different Campaign. MISP will make it easier for you to share with, but also to receive from trusted partners and trust-groups. Sharing also enabled collaborative analysis and prevents you from doing the work someone else already did before. \n [Join one of the existing MISP communities](communities)." diff --git a/data/features/intelligence.yaml b/data/features/intelligence.yaml new file mode 100644 index 0000000..7c61785 --- /dev/null +++ b/data/features/intelligence.yaml @@ -0,0 +1,5 @@ +weight: 4 +name: "Threat Intelligence" +icon: "fas fa-brain" +url: "" +description: "TODO integration with other tools, analysis, .. " diff --git a/data/features/open.yaml b/data/features/open.yaml new file mode 100644 index 0000000..6ee5343 --- /dev/null +++ b/data/features/open.yaml @@ -0,0 +1,5 @@ +weight: 6 +name: "Open & Free" +icon: "fas fa-lock-open" +url: "" +description: "TODO no license cost, commercial support available, open model, open format, open API, interoperability blablabla." diff --git a/data/features/threats.yaml b/data/features/threats.yaml new file mode 100644 index 0000000..561fb3a --- /dev/null +++ b/data/features/threats.yaml @@ -0,0 +1,5 @@ +weight: 2 +name: "Simply Threats" +icon: "fas fa-thumbs-up" +url: "" +description: "The primary goal of MISP is to be used. This is why simplicity is the driving force behind the project. Storing and especially using information about threats and malware should not be difficult. MISP is there to help you get the maximum out of your data without unmanageable complexity." diff --git a/data/features/visualization.yaml b/data/features/visualization.yaml new file mode 100644 index 0000000..ff34cae --- /dev/null +++ b/data/features/visualization.yaml @@ -0,0 +1,5 @@ +weight: 5 +name: "Visualization" +icon: "fas fa-project-diagram" +url: "" +description: "TODO " diff --git a/data/testimonials/1.yaml b/data/testimonials/1.yaml new file mode 100644 index 0000000..e90132a --- /dev/null +++ b/data/testimonials/1.yaml @@ -0,0 +1,4 @@ +text: "" +name: "MISP Portal" +position: "" +avatar: "img/testimonials/misp.png" diff --git a/data/testimonials/2.yaml b/data/testimonials/2.yaml new file mode 100644 index 0000000..351f48c --- /dev/null +++ b/data/testimonials/2.yaml @@ -0,0 +1,4 @@ +text: "Many MISP galaxy clusters are already available like MITRE ATT&CK, Exploit-Kit, Microsoft Activity Group actor, Preventive Measure, Ransomware, TDS, Threat actor or Tool used by adversaries. \n\nTaxonomies provide a set of already defined classifications modeling estimative language, CSIRTs/CERTs classifications, national classifications or threat model classification." +name: "MISP Galaxies & Taxonomies" +position: "" +avatar: "img/testimonials/galaxy.png" diff --git a/data/testimonials/3.yaml b/data/testimonials/3.yaml new file mode 100644 index 0000000..69bcda2 --- /dev/null +++ b/data/testimonials/3.yaml @@ -0,0 +1,4 @@ +text: "TODO balblabla training, education, learning, best practices, ... Free & paid courses available" +name: "MISP Docu & Trainings" +position: "" +avatar: "img/testimonials/book.png" diff --git a/data/testimonials/4.yaml b/data/testimonials/4.yaml new file mode 100644 index 0000000..c2308a3 --- /dev/null +++ b/data/testimonials/4.yaml @@ -0,0 +1,4 @@ +text: "" +name: "PyMISP" +position: "" +avatar: "img/testimonials/pymisp.png" diff --git a/data/testimonials/5.yaml b/data/testimonials/5.yaml new file mode 100644 index 0000000..0784615 --- /dev/null +++ b/data/testimonials/5.yaml @@ -0,0 +1,4 @@ +text: "TODO" +name: "MISP Modules" +position: "" +avatar: "img/testimonials/modules.png" diff --git a/data/testimonials/6.yaml b/data/testimonials/6.yaml new file mode 100644 index 0000000..c52f278 --- /dev/null +++ b/data/testimonials/6.yaml @@ -0,0 +1,4 @@ +text: "TODO https://github.com/MISP/misp-stix" +name: "STIX & TAXII" +position: "" +avatar: "img/testimonials/stix.png" diff --git a/data/testimonials/7.yaml b/data/testimonials/7.yaml new file mode 100644 index 0000000..b1c212c --- /dev/null +++ b/data/testimonials/7.yaml @@ -0,0 +1,4 @@ +text: "TODO" +name: "MITRE ATT&CK" +position: "" +avatar: "img/testimonials/mitre_attack.png" diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..4d9ae80 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,90 @@ + + + + + {{ partial "headers.html" . }} + {{ partial "custom_headers.html" . }} + + + + +
+ + {{ partial "nav.html" . }} + + {{ partial "breadcrumbs.html" . }} + +
+
+ +
+ + + +
+ + {{ if or .Params.author .Params.date }} +

+ {{ if isset .Params "authors" }} + {{ i18n "authorBy" }} {{ range $index, $author := .Params.authors }}{{ if $index }}, {{ end }}{{ $author }}{{ end }} + {{ end }} + {{ if and .Params.author .Params.date }} | {{ end }} + {{ if .Params.date }} + {{ $createdAt := .Date.Format .Site.Params.date_format }} + {{ range $index, $month := slice "January" "February" "March" "April" "May" "June" "July" "August" "September" "October" "November" "December" }} + {{ $createdAt = replace $createdAt $month (i18n $month) }} + {{ end }} + {{ $createdAt }} + {{ end }} +

+ {{ end }} + {{ if isset .Params "banner" }} + + {{ end }} +
+ {{ .Content }} +
+ + {{ if .Site.DisqusShortname }} +
+ {{ template "_internal/disqus.html" . }} +
+ {{ end }} + +
+ + + + + + +
+ + + + {{ partial "sidebar.html" . }} + + + +
+ + + + +
+ + +
+ +
+ + + {{ partial "footer.html" . }} + +
+ + + {{ partial "scripts.html" . }} + + + diff --git a/static/img/x-isac-logo-small.png b/static/img/x-isac-logo-small.png new file mode 100755 index 0000000000000000000000000000000000000000..44c85ce910507534e86137cdce93bcbd8588715c GIT binary patch literal 9922 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