SlideShare a Scribd company logo
1 of 22
Download to read offline
An Attacker Looks At Docker
Approaching Multi-Container Applications
Wesley McGrew, Ph.D.
Director of Cyber Operations
HORNE Cyber
wesley.mcgrew@hornecyber.com @mcgrewsecurity
My Background
• Ph.D. Computer Science – Mississippi State University
• Academia
• NSA CAE – Research, Education, Cyber Operations – MSU
• Industrial Control Systems – Human-Machine Interfaces
• Research & Education - Reverse Engineering & Malware Attribution
• Private
• Director of Cyber Operations – HORNE Cyber
• Computer Network Operations – CNO/CNE/CAN
• Penetration testing, red teaming, application security
• Operational security of testing engagements
Intentions
• …to make a strong point about the relationship between an attacker’s skill
set (and its development over time) vs. developer trends.
• How to leverage what you already know
• How to look at learning new technologies moving forward
• …to provide a hacker experienced in exploitation and post-exploitation of
networks of systems an exposure to applications composed of multiple
containers
• Exploring application internals
• …with concrete Docker examples that leverage common practices (those in
tutorials and intuitive/naïve usage)
• Inspiration concept/approach –
HD Moore/Valsmith DEF CON 15 Tactical Exploitation
• Target audience – Attackers – Pentest, Red Team, CNE, CNO
Prior Art in Docker
• David Mortman, Docker, Docker, Give Me the News, I Got a Bad Case of Securing
you, DEF CON 23
• Underlying implementation and architecture
• Aaron Grattafiori, Understanding and Hardening Linux Containers, DEF CON 23
• Kernel capabilities and advice for low-level security
• Docker documentation
• Current state: a lack of “default on”
• Anthony Bettini, Vulnerability Exploitation in Docker Containers, Black Hat Europe
2015
• Platform vulnerabilities
• Michael Cherney and Sagie Dulce, Well, That Escalated Quickly! How Abusing
Docker API Led to Remote Code Execution, Same Origin Bypass and Persistence in
The Hypervisor via Shadow Containers, Black Hat USA 2017
• Targeting developers
Containerization & Docker
• Operating-system-level virtualization
• As an attacker, you’re almost certainly already aware of hardware/platform
virtualization
• “Lighter” virtualization
• Shared kernel
• Multiple user-space
• Filesystems
• Libraries
• Networks
• Docker – Images, Containers, high level composition into applications
• Development
• Deployment
Vulnerabilities & Layers of Abstraction
• Vulnerability Life Cycle
• Doesn’t begin with discovery
• Begins with a mistake
• Everything is an abstraction on top of
physical properties of silicon
• Vulnerabilities are often a result of not
understanding the layer(s) underneath
you. Examples:
• Web application vulnerabilities
• Memory corruption and memory models
• …or the “magic box” itself is broken
The Magic Box
User Experience
Scripting Languages & OS services
High-level languages and OS APIs
Machine code and Virtual Memory
How Does a Hacker Keep Up?
• For your target, you don’t get to dictate the attack surface and
underlying environment:
• Language
• Protocols
• Platforms & Frameworks
• Two dimensions of gap in skills
• Layers of abstraction
• Specifics of technology (above)
Technologies
LayersofAbstraction
JavaScript
PHP Python
C/C++
Assembly/Machine Code
Microcode
Digital Logic
REST
HTTP
TCP
Physical medium
Ethernet WiFi
IPV4/V6
Movement and Abstraction in Development
• From lowest to highest-level abstraction in web application
development processes
CGI
Binaries
Scripts
Web-Specific
Languages
Frameworks
Client-side + APIs
Next-Level Abstraction - Containerization
CGI
Binaries
Scripts
Web-Specific
Languages
Frameworks
Client-side + APIs
CGI
Binaries
Scripts
Web-Specific
Languages
Frameworks
Client-side + APIs
CGI
Binaries
Scripts
Web-Specific
Languages
Frameworks
Client-side + APIs
Mindset after you learn “Hello World”…
What can I build with these language constructs?
vs
How does “Hello World” work?
Movement and Abstraction for Hackers
• As an individual or small team you’ll approach and become familiar
with an increasingly large number of software projects
• …with more developers than an average CNE/CNA team
• Abstraction allows for more efficient development
• Higher level technologies
• Layers that “take care” of things for you
• Lower-prerequisites for developers
• Building block containers of mixed-technology software combined to make an
application VS writing it in a monolithic style at a lower level
• What does this mean?
Movement and Abstraction for
Developers vs. Hackers
Average
Developer
Work
Typical Hacker
Skill
Development
Abstraction
Good news: Becomes more lucrative over time
Natural – “How does X work?”
More ‘interesting’ bugs
Becomes more important
New bug classes
Less-than-good news: Needs purposeful development/training
Application to Attacking Application Internals
• Control over execution – opportunity to turn code against itself
• Ex. – Malware analysis, ROP, Web API’s, CSRF
• Skillset – Penetration tester vs. Application security expert
• External vs. internal application attack surface
• Penetration tests less-often involve new “creative” control over
execution in monolithic binary applications
• Pentester training gap
• Basic understanding of memory corruption – introductory and conceptual
• Targeted on understanding tool use
• Not sufficient to target modern applications/environments
• vs. motivated, funded, organized attackers that have developed talent
A Useful Shift for Attackers
• Containerization allows for the design of applications
that are composed of many independent single-
purpose services.
• Democratizing post-exploitation manipulation and
instrumentation
• Observing and instrumenting program flow/data
• Monolithic - Language/platform-specific knowledge/tools
• Multi-container – Leveraging system/network-level post-
exploitation and sniffing tools
Taking Advantage of Abstraction
• Organization-wide attack
• Progression/change of compromising connected
systems
• Multi-container applications have their own
networks (possibly shared with other
applications)
• The test of an application becomes a microcosm of
an organization-wide test
• The same would happen with traditional
virtualization, but it’ll be more common with
containers: light and easy
Taking Advantage of Abstraction
• Exploitation of multi-container attack surface
will begin with specific software in one
container
• Post-initial-exploitation, access to an internal
network of the rest of the containers, services,
data, and protocols.
• Leveraged by the usual tools you already have
familiarity with as a penetration tester.
• Analogous to
hooking/examination/instrumentation of
monolithic application
Docker as a Target Application Platform
• Monolithic container applications
• Ease of deployment
• Multi-container applications
• Docker container networks
• Default shared between containers
• Configurations define which ports are “published” or shared to the
outside world through the host.
• Inside the network, containers may freely scan/connect/probe
Basic Exploration of Docker
Container Applications
Quick connectivity check from one container to another, without the
target container being explicitly configured to allow the connection
Implications
• Access through conventional exploits place attackers into an internal
network with opportunity to pivot
• Familiar territory for attackers with system/network-level attack
experience
• Limits: “Living off the land” is more challenging due to minimalistic
images
• Learn to identify – You may not realize you’re inside of a Docker
container network until you’ve exploited the external attack surface
of it.
Exploitation and Post-Exploitation of a
Multi-Container Application
Externally, with Kali & Metasploit:
Leveraging an older Joomla in the Docker Hub repositories
Pivoting to manipulation of multi-container voting application (from
Docker tutorials)
Take-Aways
• Existing offense skills become useful at a lower relative position of
abstraction relative to newer applications.
• Developers are moving up, the new “low level” moves up
• Important to update yourself. Work “up” the stack as well.
• New development practices such as multi-container application composition
• Chase a trendy technology and look at the attack surface
• Containerization represents an opportunity for attackers to leverage
existing network/system-level knowledge to explore the internals of
applications that are composed of multiple containers.
• Your existing skills are moving “down” the stack relative to where applications
are being developed, and you can take advantage of it.
Discussion &
Contact Information
Whitepaper available in conference materials, with
more references and resources.
Wesley McGrew
Director of Cyber Operations
HORNE Cyber
wesley.mcgrew@hornecyber.com
@mcgrewsecurity

More Related Content

Similar to An Attacker Looks at Docker: Approaching Multi-Container Applications

Understanding container security
Understanding container securityUnderstanding container security
Understanding container securityJohn Kinsella
 
Lacework | Top 10 Cloud Security Threats
Lacework | Top 10 Cloud Security ThreatsLacework | Top 10 Cloud Security Threats
Lacework | Top 10 Cloud Security ThreatsLacework
 
The How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementThe How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementTim Mackey
 
The How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementThe How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementBlack Duck by Synopsys
 
Understanding docker ecosystem and vulnerabilities points
Understanding docker ecosystem and vulnerabilities pointsUnderstanding docker ecosystem and vulnerabilities points
Understanding docker ecosystem and vulnerabilities pointsAbdul Khan
 
Immutable Infrastructure Security
Immutable Infrastructure SecurityImmutable Infrastructure Security
Immutable Infrastructure SecurityRicky Sanders
 
Protecting Against Web App Attacks
Protecting Against Web App AttacksProtecting Against Web App Attacks
Protecting Against Web App AttacksAlert Logic
 
Web App Security Presentation by Ryan Holland - 05-31-2017
Web App Security Presentation by Ryan Holland - 05-31-2017Web App Security Presentation by Ryan Holland - 05-31-2017
Web App Security Presentation by Ryan Holland - 05-31-2017TriNimbus
 
Protecting Against Web Attacks
Protecting Against Web AttacksProtecting Against Web Attacks
Protecting Against Web AttacksAlert Logic
 
Why kubernetes matters
Why kubernetes mattersWhy kubernetes matters
Why kubernetes mattersPlatform9
 
Finding Your Way in Container Security
Finding Your Way in Container SecurityFinding Your Way in Container Security
Finding Your Way in Container SecurityKsenia Peguero
 
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Denim Group
 
Top 10 Threats to Cloud Security
Top 10 Threats to Cloud SecurityTop 10 Threats to Cloud Security
Top 10 Threats to Cloud SecuritySBWebinars
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015Henry Huang
 
Contain your risk: Deploy secure containers with trust and confidence
Contain your risk: Deploy secure containers with trust and confidenceContain your risk: Deploy secure containers with trust and confidence
Contain your risk: Deploy secure containers with trust and confidenceBlack Duck by Synopsys
 
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...PranavPatil822557
 
Container intrusions Do You Even IDS
Container intrusions Do You Even IDSContainer intrusions Do You Even IDS
Container intrusions Do You Even IDSAlfredo Hickman
 

Similar to An Attacker Looks at Docker: Approaching Multi-Container Applications (20)

Understanding container security
Understanding container securityUnderstanding container security
Understanding container security
 
Lacework | Top 10 Cloud Security Threats
Lacework | Top 10 Cloud Security ThreatsLacework | Top 10 Cloud Security Threats
Lacework | Top 10 Cloud Security Threats
 
The How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementThe How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability Management
 
The How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementThe How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability Management
 
Understanding docker ecosystem and vulnerabilities points
Understanding docker ecosystem and vulnerabilities pointsUnderstanding docker ecosystem and vulnerabilities points
Understanding docker ecosystem and vulnerabilities points
 
Immutable Infrastructure Security
Immutable Infrastructure SecurityImmutable Infrastructure Security
Immutable Infrastructure Security
 
Protecting Against Web App Attacks
Protecting Against Web App AttacksProtecting Against Web App Attacks
Protecting Against Web App Attacks
 
Brief Tour about Android Security
Brief Tour about Android SecurityBrief Tour about Android Security
Brief Tour about Android Security
 
Web App Security Presentation by Ryan Holland - 05-31-2017
Web App Security Presentation by Ryan Holland - 05-31-2017Web App Security Presentation by Ryan Holland - 05-31-2017
Web App Security Presentation by Ryan Holland - 05-31-2017
 
Container DevOps in Azure
Container DevOps in AzureContainer DevOps in Azure
Container DevOps in Azure
 
Protecting Against Web Attacks
Protecting Against Web AttacksProtecting Against Web Attacks
Protecting Against Web Attacks
 
Why kubernetes matters
Why kubernetes mattersWhy kubernetes matters
Why kubernetes matters
 
Finding Your Way in Container Security
Finding Your Way in Container SecurityFinding Your Way in Container Security
Finding Your Way in Container Security
 
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
Threat Modeling the CI/CD Pipeline to Improve Software Supply Chain Security ...
 
Securing Docker Containers
Securing Docker ContainersSecuring Docker Containers
Securing Docker Containers
 
Top 10 Threats to Cloud Security
Top 10 Threats to Cloud SecurityTop 10 Threats to Cloud Security
Top 10 Threats to Cloud Security
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015
 
Contain your risk: Deploy secure containers with trust and confidence
Contain your risk: Deploy secure containers with trust and confidenceContain your risk: Deploy secure containers with trust and confidence
Contain your risk: Deploy secure containers with trust and confidence
 
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
Machine Learning , Analytics & Cyber Security the Next Level Threat Analytics...
 
Container intrusions Do You Even IDS
Container intrusions Do You Even IDSContainer intrusions Do You Even IDS
Container intrusions Do You Even IDS
 

More from Priyanka Aash

Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOsPriyanka Aash
 
Verizon Breach Investigation Report (VBIR).pdf
Verizon Breach Investigation Report (VBIR).pdfVerizon Breach Investigation Report (VBIR).pdf
Verizon Breach Investigation Report (VBIR).pdfPriyanka Aash
 
Top 10 Security Risks .pptx.pdf
Top 10 Security Risks .pptx.pdfTop 10 Security Risks .pptx.pdf
Top 10 Security Risks .pptx.pdfPriyanka Aash
 
Simplifying data privacy and protection.pdf
Simplifying data privacy and protection.pdfSimplifying data privacy and protection.pdf
Simplifying data privacy and protection.pdfPriyanka Aash
 
Generative AI and Security (1).pptx.pdf
Generative AI and Security (1).pptx.pdfGenerative AI and Security (1).pptx.pdf
Generative AI and Security (1).pptx.pdfPriyanka Aash
 
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdf
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdfEVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdf
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdfPriyanka Aash
 
Cyber Truths_Are you Prepared version 1.1.pptx.pdf
Cyber Truths_Are you Prepared version 1.1.pptx.pdfCyber Truths_Are you Prepared version 1.1.pptx.pdf
Cyber Truths_Are you Prepared version 1.1.pptx.pdfPriyanka Aash
 
Cyber Crisis Management.pdf
Cyber Crisis Management.pdfCyber Crisis Management.pdf
Cyber Crisis Management.pdfPriyanka Aash
 
CISOPlatform journey.pptx.pdf
CISOPlatform journey.pptx.pdfCISOPlatform journey.pptx.pdf
CISOPlatform journey.pptx.pdfPriyanka Aash
 
Chennai Chapter.pptx.pdf
Chennai Chapter.pptx.pdfChennai Chapter.pptx.pdf
Chennai Chapter.pptx.pdfPriyanka Aash
 
Cloud attack vectors_Moshe.pdf
Cloud attack vectors_Moshe.pdfCloud attack vectors_Moshe.pdf
Cloud attack vectors_Moshe.pdfPriyanka Aash
 
Stories From The Web 3 Battlefield
Stories From The Web 3 BattlefieldStories From The Web 3 Battlefield
Stories From The Web 3 BattlefieldPriyanka Aash
 
Lessons Learned From Ransomware Attacks
Lessons Learned From Ransomware AttacksLessons Learned From Ransomware Attacks
Lessons Learned From Ransomware AttacksPriyanka Aash
 
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)Emerging New Threats And Top CISO Priorities In 2022 (Chennai)
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)Priyanka Aash
 
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)Priyanka Aash
 
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)Priyanka Aash
 
Cloud Security: Limitations of Cloud Security Groups and Flow Logs
Cloud Security: Limitations of Cloud Security Groups and Flow LogsCloud Security: Limitations of Cloud Security Groups and Flow Logs
Cloud Security: Limitations of Cloud Security Groups and Flow LogsPriyanka Aash
 
Cyber Security Governance
Cyber Security GovernanceCyber Security Governance
Cyber Security GovernancePriyanka Aash
 

More from Priyanka Aash (20)

Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
 
Verizon Breach Investigation Report (VBIR).pdf
Verizon Breach Investigation Report (VBIR).pdfVerizon Breach Investigation Report (VBIR).pdf
Verizon Breach Investigation Report (VBIR).pdf
 
Top 10 Security Risks .pptx.pdf
Top 10 Security Risks .pptx.pdfTop 10 Security Risks .pptx.pdf
Top 10 Security Risks .pptx.pdf
 
Simplifying data privacy and protection.pdf
Simplifying data privacy and protection.pdfSimplifying data privacy and protection.pdf
Simplifying data privacy and protection.pdf
 
Generative AI and Security (1).pptx.pdf
Generative AI and Security (1).pptx.pdfGenerative AI and Security (1).pptx.pdf
Generative AI and Security (1).pptx.pdf
 
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdf
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdfEVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdf
EVERY ATTACK INVOLVES EXPLOITATION OF A WEAKNESS.pdf
 
DPDP Act 2023.pdf
DPDP Act 2023.pdfDPDP Act 2023.pdf
DPDP Act 2023.pdf
 
Cyber Truths_Are you Prepared version 1.1.pptx.pdf
Cyber Truths_Are you Prepared version 1.1.pptx.pdfCyber Truths_Are you Prepared version 1.1.pptx.pdf
Cyber Truths_Are you Prepared version 1.1.pptx.pdf
 
Cyber Crisis Management.pdf
Cyber Crisis Management.pdfCyber Crisis Management.pdf
Cyber Crisis Management.pdf
 
CISOPlatform journey.pptx.pdf
CISOPlatform journey.pptx.pdfCISOPlatform journey.pptx.pdf
CISOPlatform journey.pptx.pdf
 
Chennai Chapter.pptx.pdf
Chennai Chapter.pptx.pdfChennai Chapter.pptx.pdf
Chennai Chapter.pptx.pdf
 
Cloud attack vectors_Moshe.pdf
Cloud attack vectors_Moshe.pdfCloud attack vectors_Moshe.pdf
Cloud attack vectors_Moshe.pdf
 
Stories From The Web 3 Battlefield
Stories From The Web 3 BattlefieldStories From The Web 3 Battlefield
Stories From The Web 3 Battlefield
 
Lessons Learned From Ransomware Attacks
Lessons Learned From Ransomware AttacksLessons Learned From Ransomware Attacks
Lessons Learned From Ransomware Attacks
 
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)Emerging New Threats And Top CISO Priorities In 2022 (Chennai)
Emerging New Threats And Top CISO Priorities In 2022 (Chennai)
 
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)
Emerging New Threats And Top CISO Priorities In 2022 (Mumbai)
 
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)
Emerging New Threats And Top CISO Priorities in 2022 (Bangalore)
 
Cloud Security: Limitations of Cloud Security Groups and Flow Logs
Cloud Security: Limitations of Cloud Security Groups and Flow LogsCloud Security: Limitations of Cloud Security Groups and Flow Logs
Cloud Security: Limitations of Cloud Security Groups and Flow Logs
 
Cyber Security Governance
Cyber Security GovernanceCyber Security Governance
Cyber Security Governance
 
Ethical Hacking
Ethical HackingEthical Hacking
Ethical Hacking
 

Recently uploaded

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Recently uploaded (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

An Attacker Looks at Docker: Approaching Multi-Container Applications

  • 1. An Attacker Looks At Docker Approaching Multi-Container Applications Wesley McGrew, Ph.D. Director of Cyber Operations HORNE Cyber wesley.mcgrew@hornecyber.com @mcgrewsecurity
  • 2. My Background • Ph.D. Computer Science – Mississippi State University • Academia • NSA CAE – Research, Education, Cyber Operations – MSU • Industrial Control Systems – Human-Machine Interfaces • Research & Education - Reverse Engineering & Malware Attribution • Private • Director of Cyber Operations – HORNE Cyber • Computer Network Operations – CNO/CNE/CAN • Penetration testing, red teaming, application security • Operational security of testing engagements
  • 3. Intentions • …to make a strong point about the relationship between an attacker’s skill set (and its development over time) vs. developer trends. • How to leverage what you already know • How to look at learning new technologies moving forward • …to provide a hacker experienced in exploitation and post-exploitation of networks of systems an exposure to applications composed of multiple containers • Exploring application internals • …with concrete Docker examples that leverage common practices (those in tutorials and intuitive/naïve usage) • Inspiration concept/approach – HD Moore/Valsmith DEF CON 15 Tactical Exploitation • Target audience – Attackers – Pentest, Red Team, CNE, CNO
  • 4. Prior Art in Docker • David Mortman, Docker, Docker, Give Me the News, I Got a Bad Case of Securing you, DEF CON 23 • Underlying implementation and architecture • Aaron Grattafiori, Understanding and Hardening Linux Containers, DEF CON 23 • Kernel capabilities and advice for low-level security • Docker documentation • Current state: a lack of “default on” • Anthony Bettini, Vulnerability Exploitation in Docker Containers, Black Hat Europe 2015 • Platform vulnerabilities • Michael Cherney and Sagie Dulce, Well, That Escalated Quickly! How Abusing Docker API Led to Remote Code Execution, Same Origin Bypass and Persistence in The Hypervisor via Shadow Containers, Black Hat USA 2017 • Targeting developers
  • 5. Containerization & Docker • Operating-system-level virtualization • As an attacker, you’re almost certainly already aware of hardware/platform virtualization • “Lighter” virtualization • Shared kernel • Multiple user-space • Filesystems • Libraries • Networks • Docker – Images, Containers, high level composition into applications • Development • Deployment
  • 6. Vulnerabilities & Layers of Abstraction • Vulnerability Life Cycle • Doesn’t begin with discovery • Begins with a mistake • Everything is an abstraction on top of physical properties of silicon • Vulnerabilities are often a result of not understanding the layer(s) underneath you. Examples: • Web application vulnerabilities • Memory corruption and memory models • …or the “magic box” itself is broken The Magic Box User Experience Scripting Languages & OS services High-level languages and OS APIs Machine code and Virtual Memory
  • 7. How Does a Hacker Keep Up? • For your target, you don’t get to dictate the attack surface and underlying environment: • Language • Protocols • Platforms & Frameworks • Two dimensions of gap in skills • Layers of abstraction • Specifics of technology (above) Technologies LayersofAbstraction JavaScript PHP Python C/C++ Assembly/Machine Code Microcode Digital Logic REST HTTP TCP Physical medium Ethernet WiFi IPV4/V6
  • 8. Movement and Abstraction in Development • From lowest to highest-level abstraction in web application development processes CGI Binaries Scripts Web-Specific Languages Frameworks Client-side + APIs
  • 9. Next-Level Abstraction - Containerization CGI Binaries Scripts Web-Specific Languages Frameworks Client-side + APIs CGI Binaries Scripts Web-Specific Languages Frameworks Client-side + APIs CGI Binaries Scripts Web-Specific Languages Frameworks Client-side + APIs
  • 10. Mindset after you learn “Hello World”… What can I build with these language constructs? vs How does “Hello World” work?
  • 11. Movement and Abstraction for Hackers • As an individual or small team you’ll approach and become familiar with an increasingly large number of software projects • …with more developers than an average CNE/CNA team • Abstraction allows for more efficient development • Higher level technologies • Layers that “take care” of things for you • Lower-prerequisites for developers • Building block containers of mixed-technology software combined to make an application VS writing it in a monolithic style at a lower level • What does this mean?
  • 12. Movement and Abstraction for Developers vs. Hackers Average Developer Work Typical Hacker Skill Development Abstraction Good news: Becomes more lucrative over time Natural – “How does X work?” More ‘interesting’ bugs Becomes more important New bug classes Less-than-good news: Needs purposeful development/training
  • 13. Application to Attacking Application Internals • Control over execution – opportunity to turn code against itself • Ex. – Malware analysis, ROP, Web API’s, CSRF • Skillset – Penetration tester vs. Application security expert • External vs. internal application attack surface • Penetration tests less-often involve new “creative” control over execution in monolithic binary applications • Pentester training gap • Basic understanding of memory corruption – introductory and conceptual • Targeted on understanding tool use • Not sufficient to target modern applications/environments • vs. motivated, funded, organized attackers that have developed talent
  • 14. A Useful Shift for Attackers • Containerization allows for the design of applications that are composed of many independent single- purpose services. • Democratizing post-exploitation manipulation and instrumentation • Observing and instrumenting program flow/data • Monolithic - Language/platform-specific knowledge/tools • Multi-container – Leveraging system/network-level post- exploitation and sniffing tools
  • 15. Taking Advantage of Abstraction • Organization-wide attack • Progression/change of compromising connected systems • Multi-container applications have their own networks (possibly shared with other applications) • The test of an application becomes a microcosm of an organization-wide test • The same would happen with traditional virtualization, but it’ll be more common with containers: light and easy
  • 16. Taking Advantage of Abstraction • Exploitation of multi-container attack surface will begin with specific software in one container • Post-initial-exploitation, access to an internal network of the rest of the containers, services, data, and protocols. • Leveraged by the usual tools you already have familiarity with as a penetration tester. • Analogous to hooking/examination/instrumentation of monolithic application
  • 17. Docker as a Target Application Platform • Monolithic container applications • Ease of deployment • Multi-container applications • Docker container networks • Default shared between containers • Configurations define which ports are “published” or shared to the outside world through the host. • Inside the network, containers may freely scan/connect/probe
  • 18. Basic Exploration of Docker Container Applications Quick connectivity check from one container to another, without the target container being explicitly configured to allow the connection
  • 19. Implications • Access through conventional exploits place attackers into an internal network with opportunity to pivot • Familiar territory for attackers with system/network-level attack experience • Limits: “Living off the land” is more challenging due to minimalistic images • Learn to identify – You may not realize you’re inside of a Docker container network until you’ve exploited the external attack surface of it.
  • 20. Exploitation and Post-Exploitation of a Multi-Container Application Externally, with Kali & Metasploit: Leveraging an older Joomla in the Docker Hub repositories Pivoting to manipulation of multi-container voting application (from Docker tutorials)
  • 21. Take-Aways • Existing offense skills become useful at a lower relative position of abstraction relative to newer applications. • Developers are moving up, the new “low level” moves up • Important to update yourself. Work “up” the stack as well. • New development practices such as multi-container application composition • Chase a trendy technology and look at the attack surface • Containerization represents an opportunity for attackers to leverage existing network/system-level knowledge to explore the internals of applications that are composed of multiple containers. • Your existing skills are moving “down” the stack relative to where applications are being developed, and you can take advantage of it.
  • 22. Discussion & Contact Information Whitepaper available in conference materials, with more references and resources. Wesley McGrew Director of Cyber Operations HORNE Cyber wesley.mcgrew@hornecyber.com @mcgrewsecurity