SlideShare a Scribd company logo
Using the Cloud to Improve
AppSec
Phillip Marlow
SANS CloudSecNext Summit 2021
Approved for Public Release; Distribution Unlimited. Case Number 21-1574
Disclaimers
Approved for Public Release; Distribution Unlimited. Case Number 21-1574
©2021 The MITRE Corporation. ALL RIGHTS RESERVED. The author's affiliation
with The MITRE Corporation is provided for identification purposes only, and
is not intended to convey or imply MITRE's concurrence with, or support for,
the positions, opinions, or viewpoints expressed by the author.
Too Long; Didn’t Listen
• Designing applications and services for the cloud helps achieve
security improvements – even if the application is never deployed to
the cloud
• This makes applications more resilient against technical and
environmental failures as well as attacks
• It also improves the business’ ability to deliver on their mission
> iam list-roles
• Developer
• Systems Engineer
• DevOps Engineer
• Cloud Engineer
• Security Engineer
• Advisor
• Manager
• Architect
• Hacker
• Builder of Things
Why AppSec?
• Everything is an application
• Applications are core to the business, so their security should be too
• Bad application security beats good add-on defenses
Typical Application Promotion Process
Development.env Test.env Production.env
Application v1.0 Application v1.0
Application v1.0
Application Development Process
Development Test Production
Application v1.0-katherine
Application v1.0-jenny
Application v1.1
Application v1.0-katherine
Application v1.0-jenny
Application v1.1 Application v1.1
Mature Application Deployment Process
Development
Test
Production
Application v1.0-katherine
Application v1.0-jenny
Application v1.1
Application v1.0-katherine
Application v1.0-jenny
Application v1.1 –
instance 1
Application v1.1
Application v1.1 –
instance N
Test
App2 v2.1
App2 v2.1 App2 v2.1
The Big Problem
• Can multiple versions of an application be hosted in each
environment?
• This design creates choke points on work at each environment
Designing for the Cloud is Better
• The Twelve-Factor App, developed by Adam
Wiggins & Heroku
• https://12factor.net/
Apps that:
• Use declarative formats for setup
automation, to minimize time and cost for
new developers joining the project;
• Have a clean contract with the underlying
operating system, offering maximum
portability between execution
environments;
• Are suitable for deployment on modern
cloud platforms, obviating the need for
servers and systems administration;
• Minimize divergence between
development and production, enabling
continuous deployment for maximum
agility;
• And can scale up without significant
changes to tooling, architecture, or
development practices.
Twelve-Factor Alternatives
• Microservices Reference Architecture from NGINX
• https://www.nginx.com/blog/introducing-the-nginx-
microservices-reference-architecture/
• Beyond the Twelve-Factor App by Kevin Hoffman
• https://www.oreilly.com/library/view/beyond-the-twelve-
factor/9781492042631/
I. Codebase
• Partially solves the big problem of multiple deploys in an environment
One codebase tracked in revision control, many deploys
II. Dependencies
• Known dependencies are a start to supply chain risk management
• No reliance on dependencies installed in the deployment
environment makes it possible to scale the number of deployments
and environments as needed
Explicitly declare and isolate dependencies
X. Dev/Prod Parity
• Independent tests results are applicable to the final deployment
Keep development, staging, and production as similar as possible
XI. Logs
• Integrate with cloud logging (e.g., CloudWatch) and SIEMs
Treat logs as event streams
XII. Admin Processes
• Reduced attack surface
• Easier to monitor these risky events
Run admin/management tasks as one-off processes
Wins
• Tests can be run simultaneously AND independently
• It’s easy to add another instance of an app or a whole environment
• Applications are designed for easy integration with other tools,
including cloud security platforms
• Common operational patterns can be used to make the application
more resilient against a variety of failures and attacks
Thank You!
Phillip Marlow
@wolramp

More Related Content

PPTX
Testing 12-Factor Apps
PPTX
Top10 Characteristics of Awesome Apps
PDF
Cloud-Native Workshop - Santa Monica
PDF
15-factor-apps.pdf
PPTX
12 factor app an introduction
PDF
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
PDF
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
PDF
Adopting the Cloud
Testing 12-Factor Apps
Top10 Characteristics of Awesome Apps
Cloud-Native Workshop - Santa Monica
15-factor-apps.pdf
12 factor app an introduction
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
Adopting the Cloud

Similar to Using Cloud to Improve AppSec (20)

PPTX
The twelve factor app
PDF
Evolving to Cloud-Native - Anand Rao
PPTX
The Twelve-Factor App
PDF
The Twelve Factor App
PDF
Beyond the Twelve-Factor App
PPTX
BuildStuffConf Going beyond the 12 factors
PDF
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
PDF
Evolving to Cloud-Native - Nate Schutta 1/2
PPTX
Microservices
PDF
MS Cloud Design Patterns Infographic 2015
PDF
Ms cloud design patterns infographic 2015
PPTX
Microsoft Cloud-Native Workshop Slides
PPTX
Intro to Cloud Native _ v1.0en (2021/01)
PDF
Evolving to Cloud-Native - Nate Schutta (1/2)
PPT
Cloud Computing Security Issues
PPTX
Kube con china_2019_7 missing factors for your production-quality 12-factor apps
PDF
Testing the Migration of Monolithic Applications to Microservices on the Cloud
PDF
GIDS_15FactorWorkshop.pdf
PPTX
Devoxx Ukraine - Going beyond the 12 factors
PPTX
SwissJUG_15_factor_app.pptx
The twelve factor app
Evolving to Cloud-Native - Anand Rao
The Twelve-Factor App
The Twelve Factor App
Beyond the Twelve-Factor App
BuildStuffConf Going beyond the 12 factors
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
Evolving to Cloud-Native - Nate Schutta 1/2
Microservices
MS Cloud Design Patterns Infographic 2015
Ms cloud design patterns infographic 2015
Microsoft Cloud-Native Workshop Slides
Intro to Cloud Native _ v1.0en (2021/01)
Evolving to Cloud-Native - Nate Schutta (1/2)
Cloud Computing Security Issues
Kube con china_2019_7 missing factors for your production-quality 12-factor apps
Testing the Migration of Monolithic Applications to Microservices on the Cloud
GIDS_15FactorWorkshop.pdf
Devoxx Ukraine - Going beyond the 12 factors
SwissJUG_15_factor_app.pptx

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
cuic standard and advanced reporting.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Machine learning based COVID-19 study performance prediction
Network Security Unit 5.pdf for BCA BBA.
Building Integrated photovoltaic BIPV_UPV.pdf
Understanding_Digital_Forensics_Presentation.pptx
Unlocking AI with Model Context Protocol (MCP)
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
NewMind AI Weekly Chronicles - August'25 Week I
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
“AI and Expert System Decision Support & Business Intelligence Systems”
cuic standard and advanced reporting.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Reach Out and Touch Someone: Haptics and Empathic Computing

Using Cloud to Improve AppSec

  • 1. Using the Cloud to Improve AppSec Phillip Marlow SANS CloudSecNext Summit 2021 Approved for Public Release; Distribution Unlimited. Case Number 21-1574
  • 2. Disclaimers Approved for Public Release; Distribution Unlimited. Case Number 21-1574 ©2021 The MITRE Corporation. ALL RIGHTS RESERVED. The author's affiliation with The MITRE Corporation is provided for identification purposes only, and is not intended to convey or imply MITRE's concurrence with, or support for, the positions, opinions, or viewpoints expressed by the author.
  • 3. Too Long; Didn’t Listen • Designing applications and services for the cloud helps achieve security improvements – even if the application is never deployed to the cloud • This makes applications more resilient against technical and environmental failures as well as attacks • It also improves the business’ ability to deliver on their mission
  • 4. > iam list-roles • Developer • Systems Engineer • DevOps Engineer • Cloud Engineer • Security Engineer • Advisor • Manager • Architect • Hacker • Builder of Things
  • 5. Why AppSec? • Everything is an application • Applications are core to the business, so their security should be too • Bad application security beats good add-on defenses
  • 6. Typical Application Promotion Process Development.env Test.env Production.env Application v1.0 Application v1.0 Application v1.0
  • 7. Application Development Process Development Test Production Application v1.0-katherine Application v1.0-jenny Application v1.1 Application v1.0-katherine Application v1.0-jenny Application v1.1 Application v1.1
  • 8. Mature Application Deployment Process Development Test Production Application v1.0-katherine Application v1.0-jenny Application v1.1 Application v1.0-katherine Application v1.0-jenny Application v1.1 – instance 1 Application v1.1 Application v1.1 – instance N Test App2 v2.1 App2 v2.1 App2 v2.1
  • 9. The Big Problem • Can multiple versions of an application be hosted in each environment? • This design creates choke points on work at each environment
  • 10. Designing for the Cloud is Better • The Twelve-Factor App, developed by Adam Wiggins & Heroku • https://12factor.net/ Apps that: • Use declarative formats for setup automation, to minimize time and cost for new developers joining the project; • Have a clean contract with the underlying operating system, offering maximum portability between execution environments; • Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration; • Minimize divergence between development and production, enabling continuous deployment for maximum agility; • And can scale up without significant changes to tooling, architecture, or development practices.
  • 11. Twelve-Factor Alternatives • Microservices Reference Architecture from NGINX • https://www.nginx.com/blog/introducing-the-nginx- microservices-reference-architecture/ • Beyond the Twelve-Factor App by Kevin Hoffman • https://www.oreilly.com/library/view/beyond-the-twelve- factor/9781492042631/
  • 12. I. Codebase • Partially solves the big problem of multiple deploys in an environment One codebase tracked in revision control, many deploys
  • 13. II. Dependencies • Known dependencies are a start to supply chain risk management • No reliance on dependencies installed in the deployment environment makes it possible to scale the number of deployments and environments as needed Explicitly declare and isolate dependencies
  • 14. X. Dev/Prod Parity • Independent tests results are applicable to the final deployment Keep development, staging, and production as similar as possible
  • 15. XI. Logs • Integrate with cloud logging (e.g., CloudWatch) and SIEMs Treat logs as event streams
  • 16. XII. Admin Processes • Reduced attack surface • Easier to monitor these risky events Run admin/management tasks as one-off processes
  • 17. Wins • Tests can be run simultaneously AND independently • It’s easy to add another instance of an app or a whole environment • Applications are designed for easy integration with other tools, including cloud security platforms • Common operational patterns can be used to make the application more resilient against a variety of failures and attacks