Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
About Security Innovation
• Authority in Software Security
• 18+ years research on software vulnerabilities
• Security testing methodology adopted by SAP,
Symantec, Microsoft and McAfee
• Authors of 18 books
• Helping organizations minimize risk
• Assessment: Show me the gaps
• Education: Guide me to the right decisions
• Standards: Set goals and make it easy and natural
• Tech-enabled services for both breadth and depth
Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
Simple!
Just think about…
Authentication
Authorization
Scale
DDOS
SQLi
Architecture
Data Storage
Data Transit
Passwords
Load balancing
CDNs
GDPR
Data Warehousing
Compliance
Cookie Policies
Intranet/Internet
User Education
Frameworks
Futureproofing
Browser compat
… and literally 100s of
other things
Never mind!
I’m leaving this piece of
crap app as an installer
from the 90’s
No, No, we will do this, together, securely.
We will make a plan and execute it!
Break it down
• Migrating to modern web technologies
is analogous to building from scratch
• But you get great use, abuse,
mis-use, and dis-use cases
• This gives you a great roadmap of
what you want to build
• Don’t duplicate the old app, build
something better
• Use good defaults, policies, wrappers,
guidance to build securely and quickly
The tale of two cities apps
App #1 – Colin Powell
“Help! We have a great
architect, but don’t know about
security. We haven’t written a
line of code, and need guidance
on what to look out for.”
App #2 – Leeroy Jenkins!
“Help! We ship in three weeks!
Everything’s done, but our CISO
says we need a security audit
before we launch. Can you push
this through?”
My high-level roadmap
Minimizing the risk of
a data breach
They can’t steal what you don’t have
• Minimizing the risk of a data
breach starts with a
commitment to privacy
• Set goals for data
collection
• Gather only what data is
necessary
• Create a clear and
concise data
classification policy
But what about Machine Learning?!
“If I collect all the data now,
we’ll give it to the Data
Scientists and they’ll give
us insights”
More data == more risk
Data Classification Domains
Restricted
• Access – Only by limited individuals
• Consequences – termination, possibly legal
• Example – Financial data, Healthcare data
Highly Confidential
• Access - Individuals, Groups, or Senior Management and above
• Consequences – Investigation, reprimand, or termination
• Example – Sensitive IP, Client Lists, Billing Details
Confidential
• Access – Relevant or related teams
• Consequences – HR reprimand
• Example – Any internal company information
Unrestricted
• Access - Public
• Consequences –N/A
• Example- Public information
There is no universally accepted data classification tiers, these are examples
Make privacy a priority
• Privacy is a market differentiator
• Agree that user privacy is important
• Set goals for data collection
• Set a high bar for new trackers
• Gather only necessary data
Again, More data == more risk
Developing Secure Code
Make this
as easy as possible,
Like falling into a
“Pit of success”
Training
•Identify good/bad
patterns early
Assessment
•Verify
•Detect
Automation
•Infrastructure as Code
•Security as Code
Training
• Our goals in training are twofold
• Help the team develop a sense of what is right
• Give them the ability to identify what doesn’t feel right
• Security ”Code Smells”
• Recurring coding patterns that are indicative of security
weakness and can potentially lead to security breaches
Learning/Following Doing/Practice Leading/Teaching
Automation
The developers are taking over
• Security/Infrastructure as Code
• Ensures the same issue doesn’t
get into production again
• Automate monotonous,
problematic tasks
Write Code
Code review
Check into repository
Perform unit and
integration tests
Find issues in
dev/test/production
Remediate issues in
code
Assessment &
Detection
• Testing is the backstop of good
training, design, and automation
• Detect when developers have
bypassed security guidance
• Rollback
• Remediate
• Train
• Vulnerabilities in…
• Deployment/Infrastructure
• Code
• Architecture
• Process
Defaults
• Creating a system in which it is difficult to
make mistakes is one of the best
investments you can make
• Provide developers:
• Libraries that protect them
• Frameworks that include security controls
• Templating engines that minimize injection
issues
• Defaults that follow best practices
• Wrappers for common libraries protect from
mistakes
Where are we and what
do we look out for?
Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
Now we have this?!
How did we get here?
We want to sell stuff!
• These literally hooked
something like perl to a
web interface
• Maybe you got a database
or some flat text files
• Security was unknown
We can do so
much more
Exceptionally Dynamic
Location aware
data from multiple sources
Advertising
User Tracking
SSO and more
Much greater code reuse
Libraries and frameworks
Templates
More clients connect to same API
Web
iOS/Android
Desktop
API
iOS
Android
WebDesktop
Integrations
API Based issues
JSON/XML injection Authorization Attacks
IDOR - Insecure Direct Object
Reference
Exposing Sensitive Data Client Side Data
filtering
Just because you can’t see it, doesn’t mean it’s protected
Authorization Attacks
IDOR – Insecure Direct Object Reference
Authorization Attacks
Exposing Sensitive Data & Client-Side Data Filtering
JSON/XML Injection and Manipulation
• Inject data, manipulate logic, or execute code
• User: JoeBasirico
{
"action":"create",
"user":"JoeBasirico",
"pass":"$3cre7"
}
Creates a user named JoeBasirico
JSON/XML Injection and Manipulation
• Inject data, manipulate logic, or execute code
• User: JoeBasirico", "account":”administrator
{
"action":"create",
"user":"JoeBasirico", "account":"administrator",
"pass":"$3cre7"
}
Creates an Administrator named JoeBasirico
Don’t expose your data store
https://blog.shodan.io/its-the-data-stupid/
Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar
Always Force TLS
• It’s 2020, TLS is free, easy, fast. There is no reason not to
• Redirect to TLS v 1.2 or greater by default.
• Do not serve data over http or SSL
APIs and Modern WebApps are powerful!
• They can’t steal what you don’t collect
• Make an early commitment to security and privacy
• Let that drive your decision making from here on out
• Create secure defaults, libraries, wrappers and guidance for your
developers.
• Make it difficult to make decisiosn
• Make it easy to fall into a pit of success
• Use automation to ”learn” from your mistakes
• Detect when controls are bypassed, use it as a learning opportunity
SI Community - https://community.securityinnovation.com/
Questions? Thoughts?
jbasirico@securityinnovation.com
linkedin.com/in/joebasirico
twitter.com/joespikey
Joe Basirico
Security Innovation
SVP Engineering

More Related Content

PPTX
How to Test for The OWASP Top Ten
PPTX
Owasp first5 presentation
PDF
OWASP Top Ten in Practice
PDF
Web App Security Presentation by Ryan Holland - 05-31-2017
PDF
The New OWASP Top Ten: Let's Cut to the Chase
PPTX
OWASP Top Ten 2017
PDF
Web security and OWASP
PPTX
Beyond the OWASP Top 10
How to Test for The OWASP Top Ten
Owasp first5 presentation
OWASP Top Ten in Practice
Web App Security Presentation by Ryan Holland - 05-31-2017
The New OWASP Top Ten: Let's Cut to the Chase
OWASP Top Ten 2017
Web security and OWASP
Beyond the OWASP Top 10

What's hot (20)

PPTX
Owasp top 10 2017
PPTX
Security Testing Training With Examples
PDF
Introduction to Security Testing
PPS
Security testing
PPTX
OWASP Top 10 - 2017 Top 10 web application security risks
PDF
OWASP Top 10 - The Ten Most Critical Web Application Security Risks
PPTX
Secure coding guidelines
PPT
Web attacks
PPTX
Application Security-Understanding The Horizon
PPTX
Owasp top 10 vulnerabilities
PDF
Owasp top 10
PPTX
Owasp 2017 oveview
PDF
OWASP Top 10 - 2017
PDF
Security testing presentation
PPTX
Security Testing
PPT
Secure code practices
PPTX
Secure coding practices
PPT
Step by step guide for web application security testing
PPTX
Security testing fundamentals
PPTX
Security testing
Owasp top 10 2017
Security Testing Training With Examples
Introduction to Security Testing
Security testing
OWASP Top 10 - 2017 Top 10 web application security risks
OWASP Top 10 - The Ten Most Critical Web Application Security Risks
Secure coding guidelines
Web attacks
Application Security-Understanding The Horizon
Owasp top 10 vulnerabilities
Owasp top 10
Owasp 2017 oveview
OWASP Top 10 - 2017
Security testing presentation
Security Testing
Secure code practices
Secure coding practices
Step by step guide for web application security testing
Security testing fundamentals
Security testing
Ad

Similar to Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar (20)

PPT
Software Security in the Real World
PDF
Wfh security risks - Ed Adams, President, Security Innovation
PDF
Secure Coding principles by example: Build Security In from the start - Carlo...
PDF
New Era of Software with modern Application Security v1.0
PPTX
Security in an Interconnected and Complex World of Software
PPTX
Forget cyber, it's all about AppSec
PDF
Agile Application Security Enabling Security in a Continuous Delivery Pipelin...
PPT
Intro to-ssdl--lone-star-php-2013
PDF
Application Security - Your Success Depends on it
PPTX
Demystifying Web Application Security - JSFoo 2018
PDF
The Principles of Secure Development - BSides Las Vegas 2009
PDF
The Future of Software Security Assurance
PDF
Injecting simplicity not SQL RSA Europe 2010
PPTX
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
PPT
Security Testing for Mobile and Web Apps
PPTX
00. introduction to app sec v3
PDF
Failing and Failing Fast in AppDev – How Do We Keep up in AppSec?
PDF
Streamlining AppSec Policy Definition.pptx
PPT
Software Security Engineering
Software Security in the Real World
Wfh security risks - Ed Adams, President, Security Innovation
Secure Coding principles by example: Build Security In from the start - Carlo...
New Era of Software with modern Application Security v1.0
Security in an Interconnected and Complex World of Software
Forget cyber, it's all about AppSec
Agile Application Security Enabling Security in a Continuous Delivery Pipelin...
Intro to-ssdl--lone-star-php-2013
Application Security - Your Success Depends on it
Demystifying Web Application Security - JSFoo 2018
The Principles of Secure Development - BSides Las Vegas 2009
The Future of Software Security Assurance
Injecting simplicity not SQL RSA Europe 2010
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Security Testing for Mobile and Web Apps
00. introduction to app sec v3
Failing and Failing Fast in AppDev – How Do We Keep up in AppSec?
Streamlining AppSec Policy Definition.pptx
Software Security Engineering
Ad

More from Security Innovation (20)

PPTX
Securing Applications in the Cloud
PPTX
Develop, Test & Maintain Secure Systems (While Being PCI Compliant)
PPTX
Protecting Sensitive Data (and be PCI Compliant too!)
PDF
5 Ways To Train Security Champions
PPTX
Aligning Application Security to Compliance
PPTX
How to Hijack a Pizza Delivery Robot with Injection Flaws
PPTX
How an Attacker "Audits" Your Software Systems
PPTX
Opening the Talent Spigot to Securing our Digital Future
PPTX
Assessing System Risk the Smart Way
PDF
Slashing Your Cloud Risk: 3 Must-Do's
PPTX
A Fresh, New Look for CMD+CTRL Cyber Range
PPTX
Security Testing for IoT Systems
PPTX
Cyber Ranges: A New Approach to Security
PPTX
Is Blockchain Right for You? The Million Dollar Question
PPTX
Privacy: The New Software Development Dilemma
PPTX
Privacy Secrets Your Systems May Be Telling
PPTX
Secure DevOps - Evolution or Revolution?
PPTX
IoT Security: Debunking the "We Aren't THAT Connected" Myth
PPTX
Threat Modeling - Locking the Door to Vulnerabilities
PDF
GDPR: The Application Security Twist
Securing Applications in the Cloud
Develop, Test & Maintain Secure Systems (While Being PCI Compliant)
Protecting Sensitive Data (and be PCI Compliant too!)
5 Ways To Train Security Champions
Aligning Application Security to Compliance
How to Hijack a Pizza Delivery Robot with Injection Flaws
How an Attacker "Audits" Your Software Systems
Opening the Talent Spigot to Securing our Digital Future
Assessing System Risk the Smart Way
Slashing Your Cloud Risk: 3 Must-Do's
A Fresh, New Look for CMD+CTRL Cyber Range
Security Testing for IoT Systems
Cyber Ranges: A New Approach to Security
Is Blockchain Right for You? The Million Dollar Question
Privacy: The New Software Development Dilemma
Privacy Secrets Your Systems May Be Telling
Secure DevOps - Evolution or Revolution?
IoT Security: Debunking the "We Aren't THAT Connected" Myth
Threat Modeling - Locking the Door to Vulnerabilities
GDPR: The Application Security Twist

Recently uploaded (20)

PDF
The AI Revolution in Customer Service - 2025
PDF
Rapid Prototyping: A lecture on prototyping techniques for interface design
PPTX
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
PDF
Streamline Vulnerability Management From Minimal Images to SBOMs
PDF
Connector Corner: Transform Unstructured Documents with Agentic Automation
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
substrate PowerPoint Presentation basic one
PDF
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
PPTX
AQUEEL MUSHTAQUE FAKIH COMPUTER CENTER .
PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
Human Computer Interaction Miterm Lesson
PPTX
How to Convert Tickets Into Sales Opportunity in Odoo 18
PPTX
Rise of the Digital Control Grid Zeee Media and Hope and Tivon FTWProject.com
PDF
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
PDF
Altius execution marketplace concept.pdf
PDF
Decision Optimization - From Theory to Practice
PPTX
Information-Technology-in-Human-Society.pptx
PDF
CCUS-as-the-Missing-Link-to-Net-Zero_AksCurious.pdf
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
Introduction to MCP and A2A Protocols: Enabling Agent Communication
The AI Revolution in Customer Service - 2025
Rapid Prototyping: A lecture on prototyping techniques for interface design
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
Streamline Vulnerability Management From Minimal Images to SBOMs
Connector Corner: Transform Unstructured Documents with Agentic Automation
Co-training pseudo-labeling for text classification with support vector machi...
substrate PowerPoint Presentation basic one
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
AQUEEL MUSHTAQUE FAKIH COMPUTER CENTER .
Data Virtualization in Action: Scaling APIs and Apps with FME
Human Computer Interaction Miterm Lesson
How to Convert Tickets Into Sales Opportunity in Odoo 18
Rise of the Digital Control Grid Zeee Media and Hope and Tivon FTWProject.com
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
Altius execution marketplace concept.pdf
Decision Optimization - From Theory to Practice
Information-Technology-in-Human-Society.pptx
CCUS-as-the-Missing-Link-to-Net-Zero_AksCurious.pdf
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
Introduction to MCP and A2A Protocols: Enabling Agent Communication

Modernizing, Migrating & Mitigating - Moving to Modern Cloud & API Web Apps Webinar

  • 2. About Security Innovation • Authority in Software Security • 18+ years research on software vulnerabilities • Security testing methodology adopted by SAP, Symantec, Microsoft and McAfee • Authors of 18 books • Helping organizations minimize risk • Assessment: Show me the gaps • Education: Guide me to the right decisions • Standards: Set goals and make it easy and natural • Tech-enabled services for both breadth and depth
  • 10. SQLi
  • 16. CDNs
  • 17. GDPR
  • 26. … and literally 100s of other things
  • 27. Never mind! I’m leaving this piece of crap app as an installer from the 90’s
  • 28. No, No, we will do this, together, securely. We will make a plan and execute it!
  • 29. Break it down • Migrating to modern web technologies is analogous to building from scratch • But you get great use, abuse, mis-use, and dis-use cases • This gives you a great roadmap of what you want to build • Don’t duplicate the old app, build something better • Use good defaults, policies, wrappers, guidance to build securely and quickly
  • 30. The tale of two cities apps App #1 – Colin Powell “Help! We have a great architect, but don’t know about security. We haven’t written a line of code, and need guidance on what to look out for.” App #2 – Leeroy Jenkins! “Help! We ship in three weeks! Everything’s done, but our CISO says we need a security audit before we launch. Can you push this through?”
  • 32. Minimizing the risk of a data breach
  • 33. They can’t steal what you don’t have • Minimizing the risk of a data breach starts with a commitment to privacy • Set goals for data collection • Gather only what data is necessary • Create a clear and concise data classification policy
  • 34. But what about Machine Learning?! “If I collect all the data now, we’ll give it to the Data Scientists and they’ll give us insights” More data == more risk
  • 35. Data Classification Domains Restricted • Access – Only by limited individuals • Consequences – termination, possibly legal • Example – Financial data, Healthcare data Highly Confidential • Access - Individuals, Groups, or Senior Management and above • Consequences – Investigation, reprimand, or termination • Example – Sensitive IP, Client Lists, Billing Details Confidential • Access – Relevant or related teams • Consequences – HR reprimand • Example – Any internal company information Unrestricted • Access - Public • Consequences –N/A • Example- Public information There is no universally accepted data classification tiers, these are examples
  • 36. Make privacy a priority • Privacy is a market differentiator • Agree that user privacy is important • Set goals for data collection • Set a high bar for new trackers • Gather only necessary data Again, More data == more risk
  • 37. Developing Secure Code Make this as easy as possible, Like falling into a “Pit of success” Training •Identify good/bad patterns early Assessment •Verify •Detect Automation •Infrastructure as Code •Security as Code
  • 38. Training • Our goals in training are twofold • Help the team develop a sense of what is right • Give them the ability to identify what doesn’t feel right • Security ”Code Smells” • Recurring coding patterns that are indicative of security weakness and can potentially lead to security breaches Learning/Following Doing/Practice Leading/Teaching
  • 39. Automation The developers are taking over • Security/Infrastructure as Code • Ensures the same issue doesn’t get into production again • Automate monotonous, problematic tasks Write Code Code review Check into repository Perform unit and integration tests Find issues in dev/test/production Remediate issues in code
  • 40. Assessment & Detection • Testing is the backstop of good training, design, and automation • Detect when developers have bypassed security guidance • Rollback • Remediate • Train • Vulnerabilities in… • Deployment/Infrastructure • Code • Architecture • Process
  • 41. Defaults • Creating a system in which it is difficult to make mistakes is one of the best investments you can make • Provide developers: • Libraries that protect them • Frameworks that include security controls • Templating engines that minimize injection issues • Defaults that follow best practices • Wrappers for common libraries protect from mistakes
  • 42. Where are we and what do we look out for?
  • 46. Now we have this?!
  • 47. How did we get here?
  • 48. We want to sell stuff! • These literally hooked something like perl to a web interface • Maybe you got a database or some flat text files • Security was unknown
  • 49. We can do so much more Exceptionally Dynamic Location aware data from multiple sources Advertising User Tracking SSO and more Much greater code reuse Libraries and frameworks Templates More clients connect to same API Web iOS/Android Desktop API iOS Android WebDesktop Integrations
  • 50. API Based issues JSON/XML injection Authorization Attacks IDOR - Insecure Direct Object Reference Exposing Sensitive Data Client Side Data filtering Just because you can’t see it, doesn’t mean it’s protected
  • 51. Authorization Attacks IDOR – Insecure Direct Object Reference
  • 52. Authorization Attacks Exposing Sensitive Data & Client-Side Data Filtering
  • 53. JSON/XML Injection and Manipulation • Inject data, manipulate logic, or execute code • User: JoeBasirico { "action":"create", "user":"JoeBasirico", "pass":"$3cre7" } Creates a user named JoeBasirico
  • 54. JSON/XML Injection and Manipulation • Inject data, manipulate logic, or execute code • User: JoeBasirico", "account":”administrator { "action":"create", "user":"JoeBasirico", "account":"administrator", "pass":"$3cre7" } Creates an Administrator named JoeBasirico
  • 55. Don’t expose your data store https://blog.shodan.io/its-the-data-stupid/
  • 57. Always Force TLS • It’s 2020, TLS is free, easy, fast. There is no reason not to • Redirect to TLS v 1.2 or greater by default. • Do not serve data over http or SSL
  • 58. APIs and Modern WebApps are powerful! • They can’t steal what you don’t collect • Make an early commitment to security and privacy • Let that drive your decision making from here on out • Create secure defaults, libraries, wrappers and guidance for your developers. • Make it difficult to make decisiosn • Make it easy to fall into a pit of success • Use automation to ”learn” from your mistakes • Detect when controls are bypassed, use it as a learning opportunity SI Community - https://community.securityinnovation.com/

Editor's Notes

  • #3: Speaking of SI, I’d be remiss if I didn’t talk a little bit about us and what we do. Security innovation is a company dedicated to helping our customers with hard application and data security problems. We’ve spent years researching security vulnerabilities, why they occur, what they look like in production code and how to find and fix them. We have experience working with some of the largest companies in a variety of industries - from software companies such as Microsoft to e-commerce companies such as amazon, financial companies and many more. We offer solutions for all phases of the SDLC including instructor led training, computer based eLearning courses, on-site consulting and security assessments as well as technology to help secure sensitive data over the network or at rest. Over the years we’ve analyzed more than 10,000 vulnerabilities both in the course of research studies and through the assessments of software for our customers We got our start as a security testing company, grew to a products and services company that focused on breaking systems (code review, pen test, etc) and then helping fix the problems through secure design and implementation. We acquired NTRU in 2009 to expand our data protection services focused on data in transit as well as data at rest with best in class, high performance cryptography.
  • #31: Colin Powell a great general and architect, does the work necessary to understand the threat landscape before jumping in.
  • #38: Assessment verifies what you’ve built Automation improves reliability. Infrastructure and Security as Code
  • #41: You don’t expect the ball to hit the back stop every time. Similarly most issues should be caught much, much earlier. However, this remains a critical part of a mature security process.
  • #44: Remember when our architecture looked like this?
  • #45: Then we got complicated and added an application and a database
  • #46: Did somebody say security?
  • #47: Now we have this?!
  • #49: XSS in Barns and Nobel.com
  • #50: We came from https://web.archive.org/web/20031117100331/https://www.sisecure.com/ To https://yelp.com
  • #51: https://spanning.com/blog/insecure-direct-object-reference-web-based-application-security-part-6/
  • #52: https://52-53-234-118-letsee.vulnerablesites.net/account/1
  • #55: https://md5.gromweb.com/ Register View Somebody Else's Account Add an "email" field to the JSON request body with a new email address. Change the "mac" param to MD5 hash of "userX" where X is the ID of the user being edited. Forward request. 03aa1a0b0375b0461c1b8f35b234e67a
  • #56: Quick shodan demo