SlideShare a Scribd company logo
KB6
(You’re all connected)
Or why history matters
Agenda
• Problem Statement
• Proposed Solution
• Challenges
• Results
• Future work
Problem Statement
• We evaluate new vulnerabilities constantly
but only in isolation
• When a new vulnerability is announced,
we have no way of knowing whether it
makes an older vulnerability more useable
– Or Vise versa
• It is impossible for a human to perform
that analysis manually
Illustrated Example
Attacker
Target
Goal: Compromise the target
Illustrated Example
Attacker
Target
Vuln 1
Vuln 1
Requires:
HTTP
Provides:
File Drop
Priority Low
Who Cares
Illustrated Example
Attacker
Target
Vuln 2Vuln 2
Requires:
HTTP + File Name
Provides:
Location for File Name
Priority Low
WhoCares
Illustrated Example
Attacker
Target
Vuln 3
Vuln 3
Requires:
HTTP + File Name
+ File Location
Provides:
File Execution
Priority Low
Who
Cares
Illustrated Example
Attacker
Target
Vuln 1
Vuln 2
Vuln 3
Goal Achieved:
Compromise the target
Compromise!
Proposed Solution
• Create a standard taxonomy to describe
all vulnerabilities in terms of “resources”
– Allows automated matching of requirements
and results for vulnerabilities
• Use graphing algorithms to find pathways
through the vulnerabilities
– Think mapquest for vulnerabilities and
systems
Taxonomy Examples
• Major buckets:
– Access, Authorization, Confidentiality, Availability,
Encryption, Middleware and Defense
• Access Resources
– Direct access to Disk / network / output devices / input devices / memorory
– Network Read / Network Write
– Can send mail / Can recieve mail / Can send messages / Can receive messages
– Configure application options
– Macro Creation / Macro Deletion / Run macros
– Configure Application
– Create directory / Delete directory / Change permissions on directory
– Create symbolic link / Delete symbolic link / Create hard link / Delete hard link
– Create shortcut / Delete shortcut
– Can write to file / Create file / Gain file location / Make file executable / Can read file / Delete files / Change
permissions on file
– Send Signal / Recieve Signal / Send Event / Recieve Event
– Create user environment Variable / Change user environment Variable / Read user environment Variable /
Delete user environment Variable
– Cause user to execute remote commands / Causes application to execute arbitrary file / Cause application
to execute code / Manipulate/Inject server commands
– Gives Access to a Shell
– Can Print
– Can configure printer
– can create cron job
– create dump file
More Taxonomy Examples
• Authorization Resources
– Priv change
– Bypass authorization
– Silly default password
– Spoof Credentials
– Anonymously execute
– Spoof Packets
– Receives bad packets
– Proxy Authorization
– Gain printer rights
– Login Granted
Our 3->6 Tier Architecture
DJANGO ClusterDJANGO Cluster
PGSQLPGSQL
LibghttpdLibghttpd
II
NN
TT
EE
RR
NN
EE
TT
Database CacheDatabase Cache MemCachedMemCached
Squid WebCacheSquid WebCache
MGVT
Model Graph View TemplateModel Graph View Template
Solution Workflow
• Data gets inserted
• Data gets described/”connected” by
analyst
• Graphs are generated by query
Example of how the solution works
• Microsoft Excel Unspecified Remote Code
Execution Vulnerability
– If you can get someone to execute your excel file, then
you can execute arbitrary commands.
– Therefore its requirements are send a message or
email
– And its results are command execution
Screen exampleScreen example
Example of Views and Graphing
support
• Focusing in on understanding a problem.
Screen exampleScreen example
Challenges
• Creating a taxonomy that is appropriately detailed
• Graphing complexities
• HCI (usability) issues
• Loading/describing all the vulnerabilities into the system
• We need a way of distinguishing between redundant paths and
partial paths that must be combined
• We need a way to distinguish between the primary path choice and
alternate
• How to add a new resource and apply it to all previously analyzed
vulnerabilities efficiently
• Handling application specific resources without spiraling into
unmanageable complexity
Results
• This allows us:
– To better prioritize valuable IT resources
– Asses the value of defensive technology
Questions Answered by solution
– Does this new vuln make any previously
impossible attacks possible?
– Do any previous vulns make this vuln more
useful?
Future work
• Deal with all the challenges
• Try other algorithms
– Graphing
– Dynamic routing
• Look at mapping onto AppArmor or SELinux privilege models
• Integrate with assessment tools & vulnerability databases
– CVSS
– OVAL
– OSVDB
• Implement proper handling of mitigations
• Integrate with vulnerability scanning tools/reports
• Integrate with static analysis tools

More Related Content

PPTX
Reactive programming
PDF
Infinite Topic Backlogs with Apache Pulsar
PDF
Introduction to Apache Heron
PDF
Kafka - Messaging System
PDF
CNIT 129S Ch 9: Attacking Data Stores (Part 2 of 2)
PPTX
Being RDBMS Free -- Alternate Approaches to Data Persistence
PDF
NoSQL, no SQL injections?
PPT
Building large scale, job processing systems with Scala Akka Actor framework
Reactive programming
Infinite Topic Backlogs with Apache Pulsar
Introduction to Apache Heron
Kafka - Messaging System
CNIT 129S Ch 9: Attacking Data Stores (Part 2 of 2)
Being RDBMS Free -- Alternate Approaches to Data Persistence
NoSQL, no SQL injections?
Building large scale, job processing systems with Scala Akka Actor framework

What's hot (11)

PPTX
SNAPL Network Verification
PDF
NoSQL, no security?
PPTX
Scalable load testing using jmeter in cloud
PDF
NoSQL - No Security?
PDF
VxClass for Incident Response
PDF
Take a Look at Akka+Java (English version)
PPTX
Message queue architecture
PDF
Using JMeter for Performance Testing Live Streaming Applications
PPTX
QA. Load Testing
PDF
CNIT 127: L9: Web Templates and .NET
PPTX
SNAPL Network Verification
NoSQL, no security?
Scalable load testing using jmeter in cloud
NoSQL - No Security?
VxClass for Incident Response
Take a Look at Akka+Java (English version)
Message queue architecture
Using JMeter for Performance Testing Live Streaming Applications
QA. Load Testing
CNIT 127: L9: Web Templates and .NET
Ad

Similar to Vulnerability Chaining; it’s all connected (20)

PDF
C19013010 the tutorial to build shared ai services session 2
PDF
Attack All the Layers: What's Working during Pentests (OWASP NYC)
PDF
Attack All the Layers - What's Working in Penetration Testing
PDF
Attack All The Layers - What's Working in Penetration Testing
PDF
Design (Cloud systems) for Failures
PPTX
Application and Website Security -- Designer Edition: Using Formal Specificat...
PDF
Real World Application Threat Modelling By Example
PPTX
Load-testing 101 for Startups with Artillery.io
PDF
Thick Application Penetration Testing - A Crash Course
PDF
Thick Application Penetration Testing: Crash Course
PDF
Spring Roo Add-On Development & Distribution
PDF
Nemesis - SAINTCON.pdf
PPTX
L06 Using Design Patterns
PPT
526_topic12_13.ppt
PPTX
Continuous Validation at Scale
PDF
How to adapt the SDLC to the era of DevSecOps
PPTX
Sept 24 NISO Virtual Conference: Library Data in the Cloud
PDF
Illuminate - Performance Analystics driven by Machine Learning
PDF
Hadoop Ecosystem and Low Latency Streaming Architecture
PDF
OSC2023_security_automation_data.pdf
C19013010 the tutorial to build shared ai services session 2
Attack All the Layers: What's Working during Pentests (OWASP NYC)
Attack All the Layers - What's Working in Penetration Testing
Attack All The Layers - What's Working in Penetration Testing
Design (Cloud systems) for Failures
Application and Website Security -- Designer Edition: Using Formal Specificat...
Real World Application Threat Modelling By Example
Load-testing 101 for Startups with Artillery.io
Thick Application Penetration Testing - A Crash Course
Thick Application Penetration Testing: Crash Course
Spring Roo Add-On Development & Distribution
Nemesis - SAINTCON.pdf
L06 Using Design Patterns
526_topic12_13.ppt
Continuous Validation at Scale
How to adapt the SDLC to the era of DevSecOps
Sept 24 NISO Virtual Conference: Library Data in the Cloud
Illuminate - Performance Analystics driven by Machine Learning
Hadoop Ecosystem and Low Latency Streaming Architecture
OSC2023_security_automation_data.pdf
Ad

Recently uploaded (20)

PPTX
Slides PPTX World Game (s) Eco Economic Epochs.pptx
PDF
Automated vs Manual WooCommerce to Shopify Migration_ Pros & Cons.pdf
PPTX
Digital Literacy And Online Safety on internet
PDF
WebRTC in SignalWire - troubleshooting media negotiation
PDF
Paper PDF World Game (s) Great Redesign.pdf
PDF
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
PDF
Cloud-Scale Log Monitoring _ Datadog.pdf
PPTX
Funds Management Learning Material for Beg
PPTX
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
PPTX
E -tech empowerment technologies PowerPoint
PPTX
Job_Card_System_Styled_lorem_ipsum_.pptx
PDF
Smart Home Technology for Health Monitoring (www.kiu.ac.ug)
PPTX
Module 1 - Cyber Law and Ethics 101.pptx
PPT
Ethics in Information System - Management Information System
PPT
Design_with_Watersergyerge45hrbgre4top (1).ppt
PPT
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt
PPTX
innovation process that make everything different.pptx
PDF
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
PDF
Introduction to the IoT system, how the IoT system works
DOCX
Unit-3 cyber security network security of internet system
Slides PPTX World Game (s) Eco Economic Epochs.pptx
Automated vs Manual WooCommerce to Shopify Migration_ Pros & Cons.pdf
Digital Literacy And Online Safety on internet
WebRTC in SignalWire - troubleshooting media negotiation
Paper PDF World Game (s) Great Redesign.pdf
FINAL CALL-6th International Conference on Networks & IOT (NeTIOT 2025)
Cloud-Scale Log Monitoring _ Datadog.pdf
Funds Management Learning Material for Beg
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
E -tech empowerment technologies PowerPoint
Job_Card_System_Styled_lorem_ipsum_.pptx
Smart Home Technology for Health Monitoring (www.kiu.ac.ug)
Module 1 - Cyber Law and Ethics 101.pptx
Ethics in Information System - Management Information System
Design_with_Watersergyerge45hrbgre4top (1).ppt
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt
innovation process that make everything different.pptx
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
Introduction to the IoT system, how the IoT system works
Unit-3 cyber security network security of internet system

Vulnerability Chaining; it’s all connected

  • 1. KB6 (You’re all connected) Or why history matters
  • 2. Agenda • Problem Statement • Proposed Solution • Challenges • Results • Future work
  • 3. Problem Statement • We evaluate new vulnerabilities constantly but only in isolation • When a new vulnerability is announced, we have no way of knowing whether it makes an older vulnerability more useable – Or Vise versa • It is impossible for a human to perform that analysis manually
  • 5. Illustrated Example Attacker Target Vuln 1 Vuln 1 Requires: HTTP Provides: File Drop Priority Low Who Cares
  • 6. Illustrated Example Attacker Target Vuln 2Vuln 2 Requires: HTTP + File Name Provides: Location for File Name Priority Low WhoCares
  • 7. Illustrated Example Attacker Target Vuln 3 Vuln 3 Requires: HTTP + File Name + File Location Provides: File Execution Priority Low Who Cares
  • 8. Illustrated Example Attacker Target Vuln 1 Vuln 2 Vuln 3 Goal Achieved: Compromise the target Compromise!
  • 9. Proposed Solution • Create a standard taxonomy to describe all vulnerabilities in terms of “resources” – Allows automated matching of requirements and results for vulnerabilities • Use graphing algorithms to find pathways through the vulnerabilities – Think mapquest for vulnerabilities and systems
  • 10. Taxonomy Examples • Major buckets: – Access, Authorization, Confidentiality, Availability, Encryption, Middleware and Defense • Access Resources – Direct access to Disk / network / output devices / input devices / memorory – Network Read / Network Write – Can send mail / Can recieve mail / Can send messages / Can receive messages – Configure application options – Macro Creation / Macro Deletion / Run macros – Configure Application – Create directory / Delete directory / Change permissions on directory – Create symbolic link / Delete symbolic link / Create hard link / Delete hard link – Create shortcut / Delete shortcut – Can write to file / Create file / Gain file location / Make file executable / Can read file / Delete files / Change permissions on file – Send Signal / Recieve Signal / Send Event / Recieve Event – Create user environment Variable / Change user environment Variable / Read user environment Variable / Delete user environment Variable – Cause user to execute remote commands / Causes application to execute arbitrary file / Cause application to execute code / Manipulate/Inject server commands – Gives Access to a Shell – Can Print – Can configure printer – can create cron job – create dump file
  • 11. More Taxonomy Examples • Authorization Resources – Priv change – Bypass authorization – Silly default password – Spoof Credentials – Anonymously execute – Spoof Packets – Receives bad packets – Proxy Authorization – Gain printer rights – Login Granted
  • 12. Our 3->6 Tier Architecture DJANGO ClusterDJANGO Cluster PGSQLPGSQL LibghttpdLibghttpd II NN TT EE RR NN EE TT Database CacheDatabase Cache MemCachedMemCached Squid WebCacheSquid WebCache
  • 13. MGVT Model Graph View TemplateModel Graph View Template
  • 14. Solution Workflow • Data gets inserted • Data gets described/”connected” by analyst • Graphs are generated by query
  • 15. Example of how the solution works • Microsoft Excel Unspecified Remote Code Execution Vulnerability – If you can get someone to execute your excel file, then you can execute arbitrary commands. – Therefore its requirements are send a message or email – And its results are command execution Screen exampleScreen example
  • 16. Example of Views and Graphing support • Focusing in on understanding a problem. Screen exampleScreen example
  • 17. Challenges • Creating a taxonomy that is appropriately detailed • Graphing complexities • HCI (usability) issues • Loading/describing all the vulnerabilities into the system • We need a way of distinguishing between redundant paths and partial paths that must be combined • We need a way to distinguish between the primary path choice and alternate • How to add a new resource and apply it to all previously analyzed vulnerabilities efficiently • Handling application specific resources without spiraling into unmanageable complexity
  • 18. Results • This allows us: – To better prioritize valuable IT resources – Asses the value of defensive technology Questions Answered by solution – Does this new vuln make any previously impossible attacks possible? – Do any previous vulns make this vuln more useful?
  • 19. Future work • Deal with all the challenges • Try other algorithms – Graphing – Dynamic routing • Look at mapping onto AppArmor or SELinux privilege models • Integrate with assessment tools & vulnerability databases – CVSS – OVAL – OSVDB • Implement proper handling of mitigations • Integrate with vulnerability scanning tools/reports • Integrate with static analysis tools

Editor's Notes

  • #13: Although we chose PGSQl MySQL can be used in a production environment Also Libghttpd can be replaced by apache in which case Django can also be run in mod_python instead of seperated tiers with FastCGI. For development One can use sqlite/apache+mod_python for a 1 tier architecture. We have a vmware development image available.
  • #14: A modification to the MVC/MTV architecture. The interesting points are in the View and Graph side.