cakefest
| After Width: | Height: | Size: 147 KiB | 
| After Width: | Height: | Size: 53 KiB | 
| After Width: | Height: | Size: 115 KiB | 
| After Width: | Height: | Size: 152 KiB | 
| After Width: | Height: | Size: 9.5 KiB | 
|  | @ -0,0 +1,245 @@ | |||
| % DO NOT COMPILE THIS FILE DIRECTLY! | ||||
| % This is included by the other .tex files. | ||||
| 
 | ||||
| \begin{frame}[t,plain] | ||||
| \titlepage | ||||
| \end{frame} | ||||
| 
 | ||||
| \section{MISP} | ||||
| 
 | ||||
| \begin{frame} | ||||
|     \frametitle{about CIRCL and MISP} | ||||
|     \begin{itemize} | ||||
|         \item CIRCL | ||||
|         \begin{itemize} | ||||
|             \item National CERT for the private sector, communes, non-govermental entities in Luxembourg | ||||
|             \item Government-driven initiative, funded by the Ministry of Economy | ||||
|             \item Mission is to provide a systematic response to computer security threats and incidents | ||||
|             \item Open Source toolsmiths | ||||
|         \end{itemize} | ||||
|         \item Our relationship with MISP has two sides | ||||
|         \begin{itemize} | ||||
|             \item We {\bf lead the development} of the MISP platform | ||||
|             \item We are also involved with and {\bf run several communities} | ||||
|         \end{itemize} | ||||
|     \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{What is MISP?} | ||||
| \begin{itemize} | ||||
|        \item MISP is a {\bf threat information sharing} platform (TISP) built using CakePHP | ||||
|        \item A tool used and deployed by CSIRTs, SOCs, Cyber threat researchers around the world | ||||
|        \item Users can either deploy their own MISPs or can become users of an existing MISP instance hosted by someone else | ||||
|        \item MISP instances can be interconnected, creating large exchange networks with different topologies (mesh, hub/spoke, hybrid) | ||||
| \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{What is the MISP-project?} | ||||
| \begin{itemize} | ||||
|         \item Besides being a a web application, the MISP-project also contains the following: | ||||
|         \begin{itemize} | ||||
|             \item A set of {\bf open standards} (implemented by MISP and other tools) | ||||
|             \item An {\bf ecosystem} of libraries, supporting tools | ||||
|             \item A collection of guidance and best practice documentation by practitioners | ||||
|         \end{itemize} | ||||
|         \item All of these are free \& open source | ||||
| \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{What are the objectives of a modern TISP?}       | ||||
| \begin{itemize} | ||||
|        \item A tool that {\bf collects threat information} from partners, your analysts, your tools, sensors, feeds | ||||
|        \item Normalises, {\bf correlates}, {\bf enriches} the data | ||||
|        \item Manages your processes and automates tasks such as {\bf notifications}, {\bf data flow management}, {\bf triaging} and so on | ||||
|        \item Allows teams and communities to {\bf collaborate} and rapidly {\bf exchange knowledge} | ||||
|        \item {\bf Feeds} automated protective tools and analyst tools with the output | ||||
|        \item {\bf Presents} both individualised and community centric facts, trends, reports of the intelligence | ||||
| \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| 
 | ||||
| \begin{frame} | ||||
|  \frametitle{MISP: Started from a practical use-case} | ||||
|  \begin{itemize} | ||||
|          \item During a malware analysis workgroup in 2012, we discovered that we worked on the analysis of the same malware. | ||||
|          \item We wanted to share information in an easy and automated way {\bf to avoid duplication of work}. | ||||
|          \item Christophe Vandeplas (then working at the CERT for the Belgian MoD) showed us his work on a platform that later became MISP. | ||||
|          \item A first version of the MISP Platform was used by the MALWG and {\bf the increasing feedback of users} helped us to build an improved platform. | ||||
|          \item MISP is now {\bf a community-driven development} supporting different intelligence communities. | ||||
|  \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Development based on practical user feedback} | ||||
| \begin{itemize} | ||||
|     \item Organic growth over time within security teams: | ||||
|         \begin{itemize} | ||||
|                 \item {\bf Malware reversers}: share indicators of analysis with colleagues. | ||||
|                 \item {\bf Security analysts} searching, validating and using indicators in ops. | ||||
|                 \item {\bf Intelligence analysts} researching adversary groups. | ||||
|                 \item {\bf Risk analysis teams} monitoring trends, threats, remediations. | ||||
|         \end{itemize} | ||||
|     \item Some examples of other communities picking up MISP: | ||||
|         \begin{itemize} | ||||
|                 \item {\bf Financial sector}: sharing financial indicators, fraud information. | ||||
|                 \item {\bf Law-enforcement}: bootstrapping DFIR cases, non-cyber-threats, border control, etc | ||||
|                 \item {\bf Military} sharing highly specialised information. | ||||
|                 \item {\bf Disinformation research}: Election interference, disinfo campaigns, etc. | ||||
|         \end{itemize} | ||||
| \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
|          | ||||
| \begin{frame} | ||||
| \frametitle{Why do we develop all of this?}       | ||||
| \begin{itemize} | ||||
|    \item {\bf Main goal}: Make our own lives and the lives of our constituency easier | ||||
|    \begin{itemize} | ||||
|        \item Our central tool for ingesting, storing and disseminating information... | ||||
|        \item ...as well as to interact with organisations | ||||
|        \item By solving issues of other communities, we already have them prepared for information sharing with us when needed | ||||
|    \end{itemize} | ||||
|    \item {\bf Secondary}: Democratise threat intelligence for all | ||||
|    \item {\bf Stretch goal}: Build a full open-source tool-chain for CSIRTs / SoCs / etc | ||||
| \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
|  \frametitle{Communities using MISP} | ||||
|  \begin{itemize} | ||||
| 	 \item Communities are groups of users sharing within a set of common objectives/values. | ||||
| 	 \item CIRCL operates multiple MISP instances with a significant user base (more than 2k organizations with close to 5k users). | ||||
|          \item {\bf Trust groups} running MISP communities in island mode (air gapped system) or partially connected mode. | ||||
| 	 \item {\bf Financial sector} (banks, ISACs, payment processing organizations) use MISP as a sharing mechanism. | ||||
| 	 \item {\bf Military and international organizations} (NATO, military CSIRTs, n/g CERTs,...). | ||||
| 	 \item {\bf Security vendors} running their own communities. | ||||
| 	 \item {\bf Sectorial communities} Telcoes, ISPs, Medical, ATF, ... | ||||
|          \item {\bf Topical communities} set up to tackle individual specific issues (disinformation, SIGINT, COVID-19, ...) | ||||
|  \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Information pipeline} | ||||
|     \includegraphics[width=0.75\linewidth]{misp_data_flow.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| 
 | ||||
| \section{How can this be relevant to you?} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Why should you care?} | ||||
|     \begin{itemize} | ||||
|         \item Due to Security | ||||
|         \begin{itemize} | ||||
|             \item If you have a security team / operations team looking for threat intel | ||||
|             \item If you would like to automate your security processes | ||||
|             \item If you are dealing with security incidents and would like to collaborate | ||||
|         \end{itemize} | ||||
|         \item If you're looking for ways to overcome development challenges | ||||
|         \begin{itemize} | ||||
|             \item We've been building this by now rather complex application since 2012 | ||||
|             \item Long list of libraries, techniques, ideas that can be reused | ||||
|         \end{itemize} | ||||
|         \item Let's dive a bit into the second option and what you'd find in the codebase | ||||
|     \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Our tech stack} | ||||
|     \begin{itemize} | ||||
|         \item Based on CakePHP 2.x, currently being ported to 4.x (5.x once it's out) | ||||
|         \begin{itemize} | ||||
|             \item We have a sister project called Cerebrate, which prepared the grounds | ||||
|             \item CakePHP 4.x based contact management and orchestration platform | ||||
|         \end{itemize} | ||||
|         \item MySQL + Redis back-end | ||||
|         \item Custom front-end using a variety of JS libraries | ||||
|         \item Different interconnection libraries (Custom, ZMQ, Kafka) | ||||
|         \item Python module micro-service system built on tornado | ||||
|         \item Background processing based on Supervisord (previously CakeResque) | ||||
|     \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Looking for solutions? Some of the issues tackled by MISP:} | ||||
|     \begin{itemize} | ||||
|         \item Reusable {\bf libraries} to ease the development (ACL, CRUD, Correlation, etc) | ||||
|         \item Extensible / customisable data model | ||||
|         \item Visualisation solutions and dashboarding | ||||
|     \end{itemize} | ||||
|     \includegraphics[width=1.00\linewidth]{dashboard.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Looking for solutions? Some of the issues tackled by MISP:} | ||||
|     \begin{itemize} | ||||
|         \item {\bf UI/API parity} across the entire application | ||||
|         \item Tight {\bf access control over both data and functionalities} | ||||
|         \item {\bf Secure information exchange} in adversial conditions | ||||
|         \begin{itemize} | ||||
|             \item Cross instance {\bf distribution model} | ||||
|             \item {\bf Trust group management} | ||||
|             \item Optional {\bf cryptographic tamper proofing} of data in large mesh networks | ||||
|         \end{itemize} | ||||
|     \end{itemize} | ||||
|     \includegraphics[width=1.00\linewidth]{signed-sync.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Looking for solutions? Some of the issues tackled by MISP:} | ||||
|     \begin{itemize} | ||||
|         \item Heavy {\bf background processing} and its management | ||||
|         \item {\bf Communication} via different channels (mailing, different MQs, APIs) | ||||
|         \item Interactive workflow management | ||||
|     \end{itemize} | ||||
|     \includegraphics[width=1.00\linewidth]{workflow.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Looking for solutions? Some of the issues tackled by MISP:} | ||||
|     \begin{itemize} | ||||
|         \item Modular design | ||||
|         \item Data quality management | ||||
|         \begin{itemize} | ||||
|             \item User defined decaying model | ||||
|             \item False positive management | ||||
|         \end{itemize} | ||||
|     \end{itemize} | ||||
|     \includegraphics[width=1.00\linewidth]{decaying.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| \begin{frame} | ||||
| \frametitle{Quick note about Cerebrate} | ||||
|     \begin{itemize} | ||||
|         \item Our CakePHP 4.x based Contact management and Orchestration tool | ||||
|         \item Large code overlap with MISP (same modular libraries) | ||||
|         \item Similar design principles | ||||
|         \item Currently in use at the European CSIRT-Network | ||||
|         \item Similarly to MISP, OSS | ||||
|     \end{itemize} | ||||
|     \includegraphics[width=1.00\linewidth]{cerebrate.png} | ||||
| \end{frame} | ||||
| 
 | ||||
| 
 | ||||
| \begin{frame} | ||||
|   \frametitle{Get in touch if you have any questions} | ||||
|   \begin{itemize} | ||||
|     \item Contact me: | ||||
|     \begin{itemize} | ||||
|       \item andras.iklody@circl.lu \url{https://twitter.com/iglocska} \url{https://infosec.exchange/@iglocska} | ||||
|     \end{itemize}     | ||||
|     \item Contact us: | ||||
|     \begin{itemize} | ||||
|       \item info@circl.lu \url{https://twitter.com/circl_lu} \url{https://www.circl.lu/} | ||||
|       \item \url{https://github.com/MISP} \url{https://www.misp-project.org/} | ||||
|       \item \url{https://twitter.com/MISPProject} \url{https://misp-community.org/@misp} | ||||
|       \item \url{https://github.com/cerebrate-project} \url{https://www.cerebrate-project.org/} | ||||
|     \end{itemize} | ||||
|   \end{itemize} | ||||
| \end{frame} | ||||
| 
 | ||||
| After Width: | Height: | Size: 11 KiB | 
| After Width: | Height: | Size: 289 KiB | 
| After Width: | Height: | Size: 358 KiB | 
| After Width: | Height: | Size: 119 KiB | 
| After Width: | Height: | Size: 155 KiB | 
| After Width: | Height: | Size: 98 KiB | 
| After Width: | Height: | Size: 148 KiB | 
| After Width: | Height: | Size: 166 KiB | 
| After Width: | Height: | Size: 12 KiB | 
| After Width: | Height: | Size: 23 KiB | 
| After Width: | Height: | Size: 31 KiB | 
| After Width: | Height: | Size: 71 KiB | 
|  | @ -0,0 +1,50 @@ | |||
| What is MISP? | ||||
| 
 | ||||
| # SUBSECTION 1: intro | ||||
| 
 | ||||
| ## what is MISP? | ||||
| - tisp | ||||
| - oss | ||||
| - ecosystem of tools and libraries | ||||
| - a set of formats | ||||
| 
 | ||||
| ## Who are we and why does CIRCL develop it? | ||||
| - national CSIRT | ||||
| - central tool for our activities | ||||
|   - information dissemination | ||||
|   - incident handling | ||||
|   - collaboration | ||||
|   - data fusion | ||||
| 
 | ||||
| ## How does a TISP such as MISP do? | ||||
| - graph showing the main functionalities | ||||
| 
 | ||||
| 
 | ||||
| # SUBSECTION 2: ingestion | ||||
| 
 | ||||
| ## Manual data creation | ||||
| 
 | ||||
| ## Synchronisation from other communities | ||||
| 
 | ||||
| ## Feed ingestion | ||||
| 
 | ||||
| ## Ingestion from tools / sensors | ||||
| 
 | ||||
| 
 | ||||
| # SUBSECTION 3: managing data and collaboration | ||||
| 
 | ||||
| ##  | ||||
| 
 | ||||
| 
 | ||||
| # SUBSECTION 4: Dissemination | ||||
| 
 | ||||
| ## Synchronisation | ||||
| ## Feed generation | ||||
| ## Automation | ||||
| ## dashboarding | ||||
| ## Reporting | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| #  | ||||
| After Width: | Height: | Size: 85 KiB | 
|  | @ -0,0 +1,31 @@ | |||
| ```mermaid | ||||
| flowchart | ||||
|     A[Analysts] --> MI[(MISP ingestion)] | ||||
|     S[Sensors] --> MI | ||||
|     OM[Other Communities] --> MI | ||||
|     F[Feeds] --> MI | ||||
|     IT[Internal tools] --> MI | ||||
|     MI --> IF[Input filters] | ||||
|     IF --> MP[(MISP processing)] | ||||
|     MP <--> E[Enrichment] | ||||
|     MP <--> Col[Collaboration] | ||||
|     MP --> MD[(MISP dissemination)] | ||||
|     MP <--> C[Correlation] | ||||
|     MP <--> Wo[Workflows] | ||||
|     MD --> W[Warninglists] | ||||
|     W --> APIs | ||||
|     W --> Ex[Export tools] | ||||
|     MD --> SF[Sync filtering] | ||||
|     SF --> MG[MISP Guard] | ||||
|     MG --> OM2[Other Communities]  | ||||
|     MD ---> Analyst[Analyst tools] | ||||
|     MD --> UF[User filters] | ||||
|     UF --> Dashboard | ||||
|     UF --> Reporting | ||||
|      | ||||
|      | ||||
|      | ||||
|     style MI fill:#00a1e0,stroke:#333,stroke-width:1px,color:#fff | ||||
|     style MP fill:#00a1e0,stroke:#333,stroke-width:1px,color:#fff | ||||
|     style MD fill:#00a1e0,stroke:#333,stroke-width:1px,color:#fff | ||||
| ``` | ||||
| After Width: | Height: | Size: 15 KiB | 
| After Width: | Height: | Size: 14 KiB | 
| After Width: | Height: | Size: 147 KiB | 
| After Width: | Height: | Size: 53 KiB | 
| After Width: | Height: | Size: 115 KiB | 
| After Width: | Height: | Size: 76 KiB | 
| After Width: | Height: | Size: 137 KiB | 
| After Width: | Height: | Size: 13 KiB | 
| After Width: | Height: | Size: 22 KiB | 
| After Width: | Height: | Size: 24 KiB | 
| After Width: | Height: | Size: 25 KiB | 
| After Width: | Height: | Size: 8.0 KiB | 
| After Width: | Height: | Size: 26 KiB | 
| After Width: | Height: | Size: 40 KiB | 
| After Width: | Height: | Size: 25 KiB | 
| After Width: | Height: | Size: 31 KiB | 
| After Width: | Height: | Size: 40 KiB | 
| After Width: | Height: | Size: 15 KiB | 
| After Width: | Height: | Size: 15 KiB | 
| After Width: | Height: | Size: 120 KiB | 
|  | @ -0,0 +1,23 @@ | |||
| \documentclass{beamer} | ||||
| \usetheme[numbering=progressbar]{focus} | ||||
| \definecolor{main}{RGB}{47, 161, 219} | ||||
| \definecolor{textcolor}{RGB}{128, 128, 128} | ||||
| \definecolor{background}{RGB}{240, 247, 255} | ||||
| 
 | ||||
| \usepackage[utf8]{inputenc} | ||||
| \usepackage{tikz} | ||||
| \usepackage{listings} | ||||
| \usetikzlibrary{positioning} | ||||
| \usetikzlibrary{shapes,arrows} | ||||
| 
 | ||||
| 
 | ||||
| \title{Open Source Threat Intelligence @ MISP using CakePHP} | ||||
| \author{\small{\input{../includes/authors.txt}}} | ||||
| \date{\input{../includes/location.txt}} | ||||
| \titlegraphic{\includegraphics[scale=0.85]{misp.pdf}} | ||||
| \institute{MISP Project \\ \url{https://www.misp-project.org/}} | ||||
| 
 | ||||
| \begin{document} | ||||
| \include{content} | ||||
| \end{document} | ||||
| 
 | ||||
| After Width: | Height: | Size: 102 KiB | 
| After Width: | Height: | Size: 22 KiB | 
| After Width: | Height: | Size: 146 KiB | 
| After Width: | Height: | Size: 8.9 KiB | 
| After Width: | Height: | Size: 27 KiB | 
| After Width: | Height: | Size: 16 KiB | 
| After Width: | Height: | Size: 20 KiB | 
| After Width: | Height: | Size: 39 KiB | 
 iglocska
						iglocska