SlideShare a Scribd company logo
1 of 15
Security Ops, Engineering, and Intelligence
Integration through the power of Graph(DB)!
Christopher Clark - Director, Cyber Security Intelligence
cclark@verisign.com
Talk Overview
*WARNING: This talk will use Neo4j for simplicity
• Introduction to Graph Databases
• Normalization of Inputs ((NODES) and -[RELATIONSHIPS]->)
• Deducing Maliciousness from -[RELATIONSHIPS]->
• And Then, And Then, And … (Forever Extensible!)
• Let’s Ask Questions! (of the Graph..A/K/A: Use Cases!)
• Tools of The Trade
2
Introduction to Graph Databases
3
“Graph Databases are a way of storing data in the form of nodes, edges
and relationships which provide index-free adjacency. “
• DATA = NODES
• (NODES) are Fully Featured JSON Objects, Indexable to ensure uniqueness
• These are the population of your Graph Nation
• If it is an immutable thing, if you can anthropomorphize it, it should be a
(NODE)(Computer, Email, Hash, Service Ticket, IDS Rule, Domain, Threat Actor)
• JOINS = EDGES
• Every (NODE) must connect to at least one more… as must we all, else why exist?
• Individual –EDGES-> are directional: (Chris)-->(You) or (You)-->(Chris)
• EDGES + CONTEXT = RELATIONSHIPS
• -[:RELATIONSHIPS]-> are Fully Featured JSON Objects!
• -[:RELATIONSHIPS]-> give context to the connections between (NODES)
• If it is an action or you can’t imagine holding it, it should be a -[:RELATIONSHIP]->
• (Chris) -[:TALKS]->(You) , but are (You)-[:LISTEN]->(Chris) ?
RELATIONSHIPS + NODES =
Normalization of Inputs
4
mantech.blackcake.net
{Blocked out: “true”,
Sinkholed: “true
Whitelisted: “false”}
-[:RESOLVES]->
{time:20131010}
<-[:HOSTS]-
{time:20131010}
212.215.200.204
{Blocked out: “true”,
Blocked in: “true
Whitelisted: “false”}
Security data is the perfect application of a graph database, as we must construct
a digital world which properly resembles our schemaless physical one.
–[:RELATIONSHIPS]-> are as important as (NODES) in Cyber space.
Deducing Maliciousness Through -[:RELATIONSHIPS]->
5
03557...f1
8
{"filename":"dro
pped.exe”… -[:C2]->
{port:443}
Mantech.
blac…{Bloc
ked out:
“true”,…
-[:RESOLVES]->
{time:2013101
0}
<-[:HOSTS]-
{time:20131010}
212.125…{
Blocked out:
“true”,
…
To effectively leverage the graph, let it paint the threat picture for you. One (NODE) at a time.
A domain is just a domain, only by its -[:RELATIONSHIPS]-> can it be deemed malicious
And Then, And Then… (Forever Extensible!)
6
As a Graph lacks a formal schema and closely maps to the real world,
we can extend our model nearly infinitely.
• Add in (Incidents) and (Threat Intelligence Products):
• Track (Signatures) and (Security Tools)
And Then, And Then, And Then… (Forever Extensible!)
7
• Let’s add in (Users) , (Machines) , (Organizations) , and (Offices):
• And of course we need to reach out to external resources like the iDefense (intelGraph)
Let’s ask questions?! (Of the Graph)
8
How do we talk to the graph? “Graph-centric databases emphasize navigation.”
1. Forget SQL and the need to know where everything lives (or data replication)
Graph is queried by matching patterns, and then traversing to the destination.
2. Forget MongoDB & Maltego Application layer joins
Relationships in the Graph are not a temporal construct
3. Simply tell the Graph what you want to find, not where it is
Even unknown distance recursive searches are near instantaneous.
4. Profit!
Lets identify the victims of a Phishing attack.
MATCH (a)-[:TARGET]->(b)
RETURN a.subject, b.email
Let’s ask more questions?! (Of the Graph)
9
Now we will do a variable length path recursive search (*scary!*) to see which of
our (Users) a (Threat_Group) has targeted, their titles, and (Department)
MATCH (a)-[:ATTRIBUTION]-()-[*1..4]->()-[:TARGET]->(b)-[:MEMBER_OF]->(c)
RETURN a.threat_group, b.first_name, b.title, c.department
We just traversed ALL of this! Just by asking a simple question!
Let’s ask even more questions?! (Of the Graph)
10
If you already know where you wish to start, it’s even easier. Let’s find out what our
(correlation_malicious_ips) IDS rule alerts for and when it was last updated.
MATCH (a)-[:DETECTS]->(b)
WHERE a.signature="correlation_malicious_ips"
RETURN a.date, b.ip, b.asn, b.blocked_out
BONUS: Tell me what this little modification will do?
MATCH (a)-[:DETECTS]->(b)<-[*1..5]-()-[:ATTRIBUTION]->(c)
WHERE a.signature="correlation_malicious_ips"
RETURN c.threat_group, a.date, b.ip, b.asn
Use Case: Unknown Distance Queries!
Has WebC2 targeted the CSOs office lately? LETS ASK!
1. Start with (WebC2)
2. Scan All Paths out from (WebC2) for -[:TARGET{date:2013*}]->
3. Then tell us if the recipient
is a -[:MEMBER_OF]->
(Office of CSO)
4. Return the COUNT of
attacks, date, and names
of recipients for each.
11
WebC2 has Targeted the
OCSO once in 2013
Attack Date: 10-08-2013
Targets:
Brian Hayes (VIP)
Leo Massey
Dorothy Daniels
Use Case: Targeted Countermeasures
Do we have Countermeasures in place for this Campaign? LETS ASK!
1. Start with our previous results and query.
2. Find each related
(IOC)
<-[:DETECTS]-
(Countermeasure)
3. Find undetected (IOC)
4. Return a list of each:
(IOC)
(Countermeasure)
it’s {deploy_date}
(Toolset)
12
Use Case: Targeted Countermeasures Cont.
Countermeasure Gap Analysis for WebC2 Campaign Targeting OCSO
13
Indicator Type Countermeasure Deploy Date Toolset
Phish Sender correlation_malicious_senders 10-07-2013 Nitro SIEM
Phish Subject
Attachment File cf_rtf_cve_2012_0158_var1_objocx 10-07-2013 FireEye
Attachment Hash
Exploit cf_rtf_cve_2012_0158_var1_objocx 10-07-2013 FireEye
Dropped Hash mirscan_malicious_files 10-08-2013 MIR
Dropped File win_troj_apt_greencat_c2 10-08-2013 SourceFire
C2 IP correlation_malicious_ips 10-07-2013 Nitro SIEM
C2 Domain correlation_malicious_domains 10-07-2013 Nitro SIEM
C2 SubDomain APT DNS Sinkhole (Ticket SNK111) 10-08-2013 Sinkhole
C2 SubDomain correlation_malicious_domains 10-08-2013 Nitro SIEM
Resources
• http://www.slideshare.net/jexp/intro-to-graphs-and-neo4j
• http://www.neo4j.org/learn/cypher
• http://docs.neo4j.org/refcard/2.0/
• http://docs.neo4j.org/chunked/milestone/cypher-query-lang.html
• http://thinkaurelius.github.io/titan/
• http://www.tinkerpop.com/
• http://www.odbms.org/blog/2013/04/graphs-vs-sql-interview-with-michael-blaha/
• Security Graph DB Test Code (Neo4j / Py2Neo):
http://github.com/Xen0ph0n/Security_Graph_Demo
14
© 2014 VeriSign, Inc. All rights reserved. VERISIGN and other trademarks, service marks, and designs are registered or unregistered trademarks of
VeriSign, Inc. and its subsidiaries in the United States and in foreign countries. All other trademarks are property of their respective owners.

More Related Content

Viewers also liked

Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...
Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...
Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...CODECNetworks
 
Speak Up! Salary Negotiation for Women in Tech
Speak Up! Salary Negotiation for Women in TechSpeak Up! Salary Negotiation for Women in Tech
Speak Up! Salary Negotiation for Women in Techaubrey bach
 
Using Data to Help First Job Salary Negotiations
Using Data to Help First Job Salary NegotiationsUsing Data to Help First Job Salary Negotiations
Using Data to Help First Job Salary NegotiationsPayScale, Inc.
 
2014 - KSU - So You Want to Be in Cyber Security?
2014 - KSU - So You Want to Be in Cyber Security?2014 - KSU - So You Want to Be in Cyber Security?
2014 - KSU - So You Want to Be in Cyber Security?Phil Agcaoili
 
WE16 - Go for the Hot Career Field - Cybersecurity
WE16 - Go for the Hot Career Field - CybersecurityWE16 - Go for the Hot Career Field - Cybersecurity
WE16 - Go for the Hot Career Field - CybersecuritySociety of Women Engineers
 
Cyber Security Career Advice
Cyber Security Career AdviceCyber Security Career Advice
Cyber Security Career AdviceDonald E. Hester
 
Navigating Your Career in Cyber Security - Steve Santini & Drew Fearson
Navigating Your Career in Cyber Security - Steve Santini & Drew FearsonNavigating Your Career in Cyber Security - Steve Santini & Drew Fearson
Navigating Your Career in Cyber Security - Steve Santini & Drew FearsonChristopher Clark
 
Fti trends 2017_final.compressed5
Fti trends 2017_final.compressed5Fti trends 2017_final.compressed5
Fti trends 2017_final.compressed5InfoShell
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesNeo4j
 
Best cyber security certifications 2017
Best cyber security certifications 2017Best cyber security certifications 2017
Best cyber security certifications 2017Koenig Solutions Ltd.
 
Gartner TOP 10 Strategic Technology Trends 2017
Gartner TOP 10 Strategic Technology Trends 2017Gartner TOP 10 Strategic Technology Trends 2017
Gartner TOP 10 Strategic Technology Trends 2017Den Reymer
 

Viewers also liked (14)

Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...
Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...
Career Counselling Program on Cyber Security @ K.R.Mangalam University Conduc...
 
Speak Up! Salary Negotiation for Women in Tech
Speak Up! Salary Negotiation for Women in TechSpeak Up! Salary Negotiation for Women in Tech
Speak Up! Salary Negotiation for Women in Tech
 
Using Data to Help First Job Salary Negotiations
Using Data to Help First Job Salary NegotiationsUsing Data to Help First Job Salary Negotiations
Using Data to Help First Job Salary Negotiations
 
2014 - KSU - So You Want to Be in Cyber Security?
2014 - KSU - So You Want to Be in Cyber Security?2014 - KSU - So You Want to Be in Cyber Security?
2014 - KSU - So You Want to Be in Cyber Security?
 
WE16 - Go for the Hot Career Field - Cybersecurity
WE16 - Go for the Hot Career Field - CybersecurityWE16 - Go for the Hot Career Field - Cybersecurity
WE16 - Go for the Hot Career Field - Cybersecurity
 
Cyber Security Career Advice
Cyber Security Career AdviceCyber Security Career Advice
Cyber Security Career Advice
 
Navigating Your Career in Cyber Security - Steve Santini & Drew Fearson
Navigating Your Career in Cyber Security - Steve Santini & Drew FearsonNavigating Your Career in Cyber Security - Steve Santini & Drew Fearson
Navigating Your Career in Cyber Security - Steve Santini & Drew Fearson
 
BSides Manchester
BSides ManchesterBSides Manchester
BSides Manchester
 
WE16 - How to Lead a Double Life
WE16 - How to Lead a Double LifeWE16 - How to Lead a Double Life
WE16 - How to Lead a Double Life
 
WE16 - The State of Women in Engineering
WE16 - The State of Women in EngineeringWE16 - The State of Women in Engineering
WE16 - The State of Women in Engineering
 
Fti trends 2017_final.compressed5
Fti trends 2017_final.compressed5Fti trends 2017_final.compressed5
Fti trends 2017_final.compressed5
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases
 
Best cyber security certifications 2017
Best cyber security certifications 2017Best cyber security certifications 2017
Best cyber security certifications 2017
 
Gartner TOP 10 Strategic Technology Trends 2017
Gartner TOP 10 Strategic Technology Trends 2017Gartner TOP 10 Strategic Technology Trends 2017
Gartner TOP 10 Strategic Technology Trends 2017
 

Similar to Security Operations, Engineering, and Intelligence Integration through the power of Graph(DB)!

Jump Start into Apache® Spark™ and Databricks
Jump Start into Apache® Spark™ and DatabricksJump Start into Apache® Spark™ and Databricks
Jump Start into Apache® Spark™ and DatabricksDatabricks
 
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...Extreme Apache Spark: how in 3 months we created a pipeline that can process ...
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...Josef A. Habdank
 
Scalding big ADta
Scalding big ADtaScalding big ADta
Scalding big ADtab0ris_1
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use CasesMax De Marzi
 
Graph Database Use Cases - StampedeCon 2015
Graph Database Use Cases - StampedeCon 2015Graph Database Use Cases - StampedeCon 2015
Graph Database Use Cases - StampedeCon 2015StampedeCon
 
High-Performance Graph Analysis and Modeling
High-Performance Graph Analysis and ModelingHigh-Performance Graph Analysis and Modeling
High-Performance Graph Analysis and ModelingNesreen K. Ahmed
 
Family tree of data – provenance and neo4j
Family tree of data – provenance and neo4jFamily tree of data – provenance and neo4j
Family tree of data – provenance and neo4jM. David Allen
 
Graphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jGraphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jNeo4j
 
Boston Spark Meetup event Slides Update
Boston Spark Meetup event Slides UpdateBoston Spark Meetup event Slides Update
Boston Spark Meetup event Slides Updatevithakur
 
Data Privacy with Apache Spark: Defensive and Offensive Approaches
Data Privacy with Apache Spark: Defensive and Offensive ApproachesData Privacy with Apache Spark: Defensive and Offensive Approaches
Data Privacy with Apache Spark: Defensive and Offensive ApproachesDatabricks
 
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017StampedeCon
 
STIX Patterning: Viva la revolución!
STIX Patterning: Viva la revolución!STIX Patterning: Viva la revolución!
STIX Patterning: Viva la revolución!treyka
 
CIKB - Software Architecture Analysis Design
CIKB - Software Architecture Analysis DesignCIKB - Software Architecture Analysis Design
CIKB - Software Architecture Analysis DesignAntonio Castellon
 
Multiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier DominguezMultiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier DominguezBig Data Spain
 
Druid Adoption Tips and Tricks
Druid Adoption Tips and TricksDruid Adoption Tips and Tricks
Druid Adoption Tips and TricksImply
 
EnrichmentWeek Binus Computer Vision
EnrichmentWeek Binus Computer VisionEnrichmentWeek Binus Computer Vision
EnrichmentWeek Binus Computer Visiongiamuhammad
 
Supercharged graph visualization for cyber security
Supercharged graph visualization for cyber securitySupercharged graph visualization for cyber security
Supercharged graph visualization for cyber securityCambridge Intelligence
 

Similar to Security Operations, Engineering, and Intelligence Integration through the power of Graph(DB)! (20)

Jump Start into Apache® Spark™ and Databricks
Jump Start into Apache® Spark™ and DatabricksJump Start into Apache® Spark™ and Databricks
Jump Start into Apache® Spark™ and Databricks
 
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...Extreme Apache Spark: how in 3 months we created a pipeline that can process ...
Extreme Apache Spark: how in 3 months we created a pipeline that can process ...
 
Scalding big ADta
Scalding big ADtaScalding big ADta
Scalding big ADta
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use Cases
 
Graph Database Use Cases - StampedeCon 2015
Graph Database Use Cases - StampedeCon 2015Graph Database Use Cases - StampedeCon 2015
Graph Database Use Cases - StampedeCon 2015
 
High-Performance Graph Analysis and Modeling
High-Performance Graph Analysis and ModelingHigh-Performance Graph Analysis and Modeling
High-Performance Graph Analysis and Modeling
 
Family tree of data – provenance and neo4j
Family tree of data – provenance and neo4jFamily tree of data – provenance and neo4j
Family tree of data – provenance and neo4j
 
Graphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4jGraphs for AI & ML, Jim Webber, Neo4j
Graphs for AI & ML, Jim Webber, Neo4j
 
Boston Spark Meetup event Slides Update
Boston Spark Meetup event Slides UpdateBoston Spark Meetup event Slides Update
Boston Spark Meetup event Slides Update
 
Data Privacy with Apache Spark: Defensive and Offensive Approaches
Data Privacy with Apache Spark: Defensive and Offensive ApproachesData Privacy with Apache Spark: Defensive and Offensive Approaches
Data Privacy with Apache Spark: Defensive and Offensive Approaches
 
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
 
STIX Patterning: Viva la revolución!
STIX Patterning: Viva la revolución!STIX Patterning: Viva la revolución!
STIX Patterning: Viva la revolución!
 
CIKB - Software Architecture Analysis Design
CIKB - Software Architecture Analysis DesignCIKB - Software Architecture Analysis Design
CIKB - Software Architecture Analysis Design
 
SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home. SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home.
 
Multiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier DominguezMultiplatform Spark solution for Graph datasources by Javier Dominguez
Multiplatform Spark solution for Graph datasources by Javier Dominguez
 
Druid Adoption Tips and Tricks
Druid Adoption Tips and TricksDruid Adoption Tips and Tricks
Druid Adoption Tips and Tricks
 
EnrichmentWeek Binus Computer Vision
EnrichmentWeek Binus Computer VisionEnrichmentWeek Binus Computer Vision
EnrichmentWeek Binus Computer Vision
 
Introduction to threat_modeling
Introduction to threat_modelingIntroduction to threat_modeling
Introduction to threat_modeling
 
Supercharged graph visualization for cyber security
Supercharged graph visualization for cyber securitySupercharged graph visualization for cyber security
Supercharged graph visualization for cyber security
 
Bids talk 9.18
Bids talk 9.18Bids talk 9.18
Bids talk 9.18
 

Recently uploaded

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

Security Operations, Engineering, and Intelligence Integration through the power of Graph(DB)!

  • 1. Security Ops, Engineering, and Intelligence Integration through the power of Graph(DB)! Christopher Clark - Director, Cyber Security Intelligence cclark@verisign.com
  • 2. Talk Overview *WARNING: This talk will use Neo4j for simplicity • Introduction to Graph Databases • Normalization of Inputs ((NODES) and -[RELATIONSHIPS]->) • Deducing Maliciousness from -[RELATIONSHIPS]-> • And Then, And Then, And … (Forever Extensible!) • Let’s Ask Questions! (of the Graph..A/K/A: Use Cases!) • Tools of The Trade 2
  • 3. Introduction to Graph Databases 3 “Graph Databases are a way of storing data in the form of nodes, edges and relationships which provide index-free adjacency. “ • DATA = NODES • (NODES) are Fully Featured JSON Objects, Indexable to ensure uniqueness • These are the population of your Graph Nation • If it is an immutable thing, if you can anthropomorphize it, it should be a (NODE)(Computer, Email, Hash, Service Ticket, IDS Rule, Domain, Threat Actor) • JOINS = EDGES • Every (NODE) must connect to at least one more… as must we all, else why exist? • Individual –EDGES-> are directional: (Chris)-->(You) or (You)-->(Chris) • EDGES + CONTEXT = RELATIONSHIPS • -[:RELATIONSHIPS]-> are Fully Featured JSON Objects! • -[:RELATIONSHIPS]-> give context to the connections between (NODES) • If it is an action or you can’t imagine holding it, it should be a -[:RELATIONSHIP]-> • (Chris) -[:TALKS]->(You) , but are (You)-[:LISTEN]->(Chris) ? RELATIONSHIPS + NODES =
  • 4. Normalization of Inputs 4 mantech.blackcake.net {Blocked out: “true”, Sinkholed: “true Whitelisted: “false”} -[:RESOLVES]-> {time:20131010} <-[:HOSTS]- {time:20131010} 212.215.200.204 {Blocked out: “true”, Blocked in: “true Whitelisted: “false”} Security data is the perfect application of a graph database, as we must construct a digital world which properly resembles our schemaless physical one. –[:RELATIONSHIPS]-> are as important as (NODES) in Cyber space.
  • 5. Deducing Maliciousness Through -[:RELATIONSHIPS]-> 5 03557...f1 8 {"filename":"dro pped.exe”… -[:C2]-> {port:443} Mantech. blac…{Bloc ked out: “true”,… -[:RESOLVES]-> {time:2013101 0} <-[:HOSTS]- {time:20131010} 212.125…{ Blocked out: “true”, … To effectively leverage the graph, let it paint the threat picture for you. One (NODE) at a time. A domain is just a domain, only by its -[:RELATIONSHIPS]-> can it be deemed malicious
  • 6. And Then, And Then… (Forever Extensible!) 6 As a Graph lacks a formal schema and closely maps to the real world, we can extend our model nearly infinitely. • Add in (Incidents) and (Threat Intelligence Products): • Track (Signatures) and (Security Tools)
  • 7. And Then, And Then, And Then… (Forever Extensible!) 7 • Let’s add in (Users) , (Machines) , (Organizations) , and (Offices): • And of course we need to reach out to external resources like the iDefense (intelGraph)
  • 8. Let’s ask questions?! (Of the Graph) 8 How do we talk to the graph? “Graph-centric databases emphasize navigation.” 1. Forget SQL and the need to know where everything lives (or data replication) Graph is queried by matching patterns, and then traversing to the destination. 2. Forget MongoDB & Maltego Application layer joins Relationships in the Graph are not a temporal construct 3. Simply tell the Graph what you want to find, not where it is Even unknown distance recursive searches are near instantaneous. 4. Profit! Lets identify the victims of a Phishing attack. MATCH (a)-[:TARGET]->(b) RETURN a.subject, b.email
  • 9. Let’s ask more questions?! (Of the Graph) 9 Now we will do a variable length path recursive search (*scary!*) to see which of our (Users) a (Threat_Group) has targeted, their titles, and (Department) MATCH (a)-[:ATTRIBUTION]-()-[*1..4]->()-[:TARGET]->(b)-[:MEMBER_OF]->(c) RETURN a.threat_group, b.first_name, b.title, c.department We just traversed ALL of this! Just by asking a simple question!
  • 10. Let’s ask even more questions?! (Of the Graph) 10 If you already know where you wish to start, it’s even easier. Let’s find out what our (correlation_malicious_ips) IDS rule alerts for and when it was last updated. MATCH (a)-[:DETECTS]->(b) WHERE a.signature="correlation_malicious_ips" RETURN a.date, b.ip, b.asn, b.blocked_out BONUS: Tell me what this little modification will do? MATCH (a)-[:DETECTS]->(b)<-[*1..5]-()-[:ATTRIBUTION]->(c) WHERE a.signature="correlation_malicious_ips" RETURN c.threat_group, a.date, b.ip, b.asn
  • 11. Use Case: Unknown Distance Queries! Has WebC2 targeted the CSOs office lately? LETS ASK! 1. Start with (WebC2) 2. Scan All Paths out from (WebC2) for -[:TARGET{date:2013*}]-> 3. Then tell us if the recipient is a -[:MEMBER_OF]-> (Office of CSO) 4. Return the COUNT of attacks, date, and names of recipients for each. 11 WebC2 has Targeted the OCSO once in 2013 Attack Date: 10-08-2013 Targets: Brian Hayes (VIP) Leo Massey Dorothy Daniels
  • 12. Use Case: Targeted Countermeasures Do we have Countermeasures in place for this Campaign? LETS ASK! 1. Start with our previous results and query. 2. Find each related (IOC) <-[:DETECTS]- (Countermeasure) 3. Find undetected (IOC) 4. Return a list of each: (IOC) (Countermeasure) it’s {deploy_date} (Toolset) 12
  • 13. Use Case: Targeted Countermeasures Cont. Countermeasure Gap Analysis for WebC2 Campaign Targeting OCSO 13 Indicator Type Countermeasure Deploy Date Toolset Phish Sender correlation_malicious_senders 10-07-2013 Nitro SIEM Phish Subject Attachment File cf_rtf_cve_2012_0158_var1_objocx 10-07-2013 FireEye Attachment Hash Exploit cf_rtf_cve_2012_0158_var1_objocx 10-07-2013 FireEye Dropped Hash mirscan_malicious_files 10-08-2013 MIR Dropped File win_troj_apt_greencat_c2 10-08-2013 SourceFire C2 IP correlation_malicious_ips 10-07-2013 Nitro SIEM C2 Domain correlation_malicious_domains 10-07-2013 Nitro SIEM C2 SubDomain APT DNS Sinkhole (Ticket SNK111) 10-08-2013 Sinkhole C2 SubDomain correlation_malicious_domains 10-08-2013 Nitro SIEM
  • 14. Resources • http://www.slideshare.net/jexp/intro-to-graphs-and-neo4j • http://www.neo4j.org/learn/cypher • http://docs.neo4j.org/refcard/2.0/ • http://docs.neo4j.org/chunked/milestone/cypher-query-lang.html • http://thinkaurelius.github.io/titan/ • http://www.tinkerpop.com/ • http://www.odbms.org/blog/2013/04/graphs-vs-sql-interview-with-michael-blaha/ • Security Graph DB Test Code (Neo4j / Py2Neo): http://github.com/Xen0ph0n/Security_Graph_Demo 14
  • 15. © 2014 VeriSign, Inc. All rights reserved. VERISIGN and other trademarks, service marks, and designs are registered or unregistered trademarks of VeriSign, Inc. and its subsidiaries in the United States and in foreign countries. All other trademarks are property of their respective owners.