SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Rich Web applications 2011
   Crashing in the cloud

   Danny Lieberman
   dannyl@software.co.il
   http://www.software.co.il/wordpress/ 


   Copyright Creative Commons Attribution License by Danny Lieberman
Course Content

   Preface
   Security
   Performance
   The future
   Summary
Preface

Cloud computing
  is fashionable.




                    Ralf Lauren Fall 2010
Preface

But what about
 performance &
 security?




                 Coco Chanel circa 1920
Cloud and the “security problem”

 Why is security so hard to sell today?
    Complex
    Hard to understand
    Economic benefit to business unclear
Cloud and the “security problem”

 Computing as a utility
   – Simple
   – Easy to measure economic benefit
   – Security is built-in
Cloud and the “security problem”

 The good news
     –   The Tier 1 providers are better at security
         than you or me
 The bad news
     –   You still have application software
     –   Just with a bigger threat surface
The cloud threat surface




 CIO mistakes
 Application software
The top 3 mistakes CIOS make

 No knowing how much your assets are worth
   asset.val()== undefined
 Writing procedures while attackers exploit
  your software
   $p != security.software
 Confusing compliance with
  data security
   $c != security.data
Rich Web 2.0 applications 2011



                                    2-5 languages
                     Server stack   Message passing in the UI




PC      Browser                           Smartphone   Device
                  3-5 languages
                  Message passing in the UI
Message passing in the UI?

Very bad idea.




                      Worst dressed at BET Awards 2010
Rich Web 2.0 entry points



                                 DB Servers
                                 Interfaces
                Server stack     PHP, C#, Ruby, J2EE
                                 HTML/Javascript/CSS
                                 Web servers




                    HTML
                    XML
 PC                 CSS
      Browser                     Smartphone   Device
                    Javascript
                    Java
                    Flash
Rich Web 2.0 attack scenarios
 Any kind of code injection
 Server or client returns invalid HTML
 Pages contain dead links
 HTML forms don't match field types expected by controllers
 Client side makes bad assumptions about AJAX services
 Server may attempt to execute invalid SQL queries
 Improper marshaling/un-marshaling
   – DB server to Web server
    – DB server to application tier
    – Web server to browser
Rich Web 2.0 vulnerabilities

 Heterogeneous stacks
       –   Too much chewing gum
 PHP, Ruby, Python
       –    Flexibility, no static type guarantees
 C#, Java
       –   Static typed, but only at Web server
       –   Code complexity increases threat surface
 Redundant code on servers and clients
 Redundant data on servers and clients
 Client-server latency
       –    Slow HTTP POST attacks
Cloud security reference model
Security summary


    Security Control model looks great
    
        But doesn't mitigate core vulnerabilities
         
              Typing issues
         
              Interface issues
         
              Redundant code, data and tiers
         
              Client-server latency
Performance - time is money

   Amazon.com
       100 ms of latency costs Amazon 1% of sales
        (http://highscalability.com)


   Google.com
       500ms delay in delivery is a 20% drop in
        traffic
        (Google VP Marissa Mayer)


    Competing stock trading platforms
       5ms delay is $4M in losses / ms.
Web servers 2011

Browser opens
  connection.

Server forks a thread
  for each connection,
  using blocking IO.

Ajax latency:
  200-600ms
Hardware 2011


    What about multiple-processor
    concurrency?

    
         Threads don't scale well with multi-cores

    
         Processes are necessary to scale to multi-
         core computers, not memory-sharing
         threads.
Threads are a bad idea


    The mixture of threads and modern multi-
    core systems add up to some serious race
    condition potential.
    http://blogs.msdn.com/b/david_leblanc/archive/2007/04/19/why-threads-are-a-bad-idea.aspx




    Thread-based networking is inefficient and
    very difficult to use.
    http://www.kegel.com/c10k.html and http://bulk.fefe.de/scalable-networking.pdf
The future of apps in the cloud




  The fundamentals of scalable systems are
  fast networking and non-blocking design—
    .The fundamentals of scalable systems are fast networking and non-blocking design—the rest is message passing



         the rest is message passing.

                    3 technologies will be game changers,I think...
                    ●
                         Web sockets
                    ●
                         Node JS
                    ●
                         Couch DB
The future of apps in the cloud

Web sockets

     Open a connection to Web
     server

     It stays open

     Pass messages

     Eliminates at least 2
     processes for every
     connection.
     (Browser-Server &
      Server-Database)

     Low Latency:
     20-60ms instead of
     200-600ms
The future of apps in the cloud

Node.js

    Javascript on
    client and server

    No threads

    No blocks or locks

    UI is HTML & CSS

    Asynchronous
    message passing
    with Web sockets
The future of apps in the cloud

CouchDB

    Application served out of CouchDB

    CouchApp lives in the browser.

    No middle tier

    Javascript on client and server

    UI is HTML & CSS

    CouchDB uses Ajax to shove
    JSON back and forth.

    CouchDB replicates on smart phones
Summary

    Application vulnerabilities are expensive
    
         100x more expensive to fix after implementation
    
         Potential data loss in the cloud
    
         Security controls don't come cheap
   Time is money
    
         High latency applications less responsive
    
         Your cloud provider charges per CPU cycle
    
         Your costs go up, revenue goes down

    Promising new technologies
    
         No middle/data tiers, reduced threat surface
    
         10x lower latency
    
         Your costs go down, revenue goes up.

Contenu connexe

Similaire à Will Web 2.0 applications break the cloud?

Practical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter SvenssonPractical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter Svensson
rajivmordani
 
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
Practical Thin Server Architecture With Dojo Sapo Codebits 2008Practical Thin Server Architecture With Dojo Sapo Codebits 2008
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
codebits
 
Scalable And Usable Web Applications
Scalable And Usable Web ApplicationsScalable And Usable Web Applications
Scalable And Usable Web Applications
Clint Edmonson
 
Secure web messaging in HTML5
Secure web messaging in HTML5Secure web messaging in HTML5
Secure web messaging in HTML5
Krishna T
 
Ajax World Oct2008 Jrd
Ajax World Oct2008 JrdAjax World Oct2008 Jrd
Ajax World Oct2008 Jrd
rajivmordani
 
ArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web ApplicationsArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5
James Pearce
 

Similaire à Will Web 2.0 applications break the cloud? (20)

Practical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter SvenssonPractical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter Svensson
 
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
Practical Thin Server Architecture With Dojo Sapo Codebits 2008Practical Thin Server Architecture With Dojo Sapo Codebits 2008
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
 
HTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applicationsHTML5 and the dawn of rich mobile web applications
HTML5 and the dawn of rich mobile web applications
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
Pentesting With Web Services in 2012
Pentesting With Web Services in 2012Pentesting With Web Services in 2012
Pentesting With Web Services in 2012
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 
Reasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScriptReasons to migrate to modern web development with JavaScript
Reasons to migrate to modern web development with JavaScript
 
Azure Introduction
Azure IntroductionAzure Introduction
Azure Introduction
 
Scalable And Usable Web Applications
Scalable And Usable Web ApplicationsScalable And Usable Web Applications
Scalable And Usable Web Applications
 
HTTP and Website Architecture and Middleware
HTTP and Website Architecture and MiddlewareHTTP and Website Architecture and Middleware
HTTP and Website Architecture and Middleware
 
Jeffrey Richter
Jeffrey RichterJeffrey Richter
Jeffrey Richter
 
Secure web messaging in HTML5
Secure web messaging in HTML5Secure web messaging in HTML5
Secure web messaging in HTML5
 
Ajax World Oct2008 Jrd
Ajax World Oct2008 JrdAjax World Oct2008 Jrd
Ajax World Oct2008 Jrd
 
Layer 7 Technologies: Web Services Hacking And Hardening
Layer 7 Technologies: Web Services Hacking And HardeningLayer 7 Technologies: Web Services Hacking And Hardening
Layer 7 Technologies: Web Services Hacking And Hardening
 
Lightbend Fast Data Platform
Lightbend Fast Data PlatformLightbend Fast Data Platform
Lightbend Fast Data Platform
 
ArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web ApplicationsArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web Applications
 
InduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration WebinarInduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration Webinar
 
InduSoft Remote Production Monitoring Webinar
InduSoft Remote Production Monitoring WebinarInduSoft Remote Production Monitoring Webinar
InduSoft Remote Production Monitoring Webinar
 
An Intro to Mobile HTML5
An Intro to Mobile HTML5An Intro to Mobile HTML5
An Intro to Mobile HTML5
 
Web 2.0 and LiveQuotes Presentation
Web 2.0 and LiveQuotes PresentationWeb 2.0 and LiveQuotes Presentation
Web 2.0 and LiveQuotes Presentation
 

Plus de Flaskdata.io

Plus de Flaskdata.io (19)

Flaskdata - Observability for clinical data
Flaskdata - Observability for clinical dataFlaskdata - Observability for clinical data
Flaskdata - Observability for clinical data
 
The travel industry does real-time. Why doesn't clinical research?
The travel industry does real-time. Why doesn't clinical research?The travel industry does real-time. Why doesn't clinical research?
The travel industry does real-time. Why doesn't clinical research?
 
Flaskdata.io automated monitoring for clinical trials
Flaskdata.io automated monitoring for clinical trialsFlaskdata.io automated monitoring for clinical trials
Flaskdata.io automated monitoring for clinical trials
 
How to write secure code
How to write secure codeHow to write secure code
How to write secure code
 
The insights that will help your medtech clinical trial succeed
The insights that will help your medtech clinical trial succeedThe insights that will help your medtech clinical trial succeed
The insights that will help your medtech clinical trial succeed
 
2017 02-05 en-eu-data-security_v2
2017 02-05 en-eu-data-security_v22017 02-05 en-eu-data-security_v2
2017 02-05 en-eu-data-security_v2
 
Quick user guide to the Clear Clinica Cloud EDC system
Quick user guide to the Clear Clinica Cloud EDC systemQuick user guide to the Clear Clinica Cloud EDC system
Quick user guide to the Clear Clinica Cloud EDC system
 
Killed by code 2015
Killed by code 2015Killed by code 2015
Killed by code 2015
 
Killed by code 2015
Killed by code 2015Killed by code 2015
Killed by code 2015
 
Pathcare: Patient-issue oriented healthcare
Pathcare: Patient-issue oriented healthcarePathcare: Patient-issue oriented healthcare
Pathcare: Patient-issue oriented healthcare
 
The Tao of GRC
The Tao of GRCThe Tao of GRC
The Tao of GRC
 
Killed by code - mobile medical devices
Killed by code - mobile medical devicesKilled by code - mobile medical devices
Killed by code - mobile medical devices
 
Grc tao.4
Grc tao.4Grc tao.4
Grc tao.4
 
Data Security For Compliance 2
Data Security For Compliance 2Data Security For Compliance 2
Data Security For Compliance 2
 
Data Security For SMB - Fly first class on a budget
Data Security For SMB - Fly first class on a budgetData Security For SMB - Fly first class on a budget
Data Security For SMB - Fly first class on a budget
 
Data Security Metricsa Value Based Approach
Data Security Metricsa Value Based ApproachData Security Metricsa Value Based Approach
Data Security Metricsa Value Based Approach
 
Homeland Security - strengthening the weakest link
Homeland Security - strengthening the weakest linkHomeland Security - strengthening the weakest link
Homeland Security - strengthening the weakest link
 
Selling Data Security Technology
Selling Data Security TechnologySelling Data Security Technology
Selling Data Security Technology
 
Writing An Effective Security Procedure in 2 pages or less and make it stick
Writing An Effective Security Procedure in 2 pages or less and make it stickWriting An Effective Security Procedure in 2 pages or less and make it stick
Writing An Effective Security Procedure in 2 pages or less and make it stick
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 

Will Web 2.0 applications break the cloud?

  • 1. Rich Web applications 2011 Crashing in the cloud Danny Lieberman dannyl@software.co.il http://www.software.co.il/wordpress/  Copyright Creative Commons Attribution License by Danny Lieberman
  • 2. Course Content  Preface  Security  Performance  The future  Summary
  • 3. Preface Cloud computing is fashionable. Ralf Lauren Fall 2010
  • 4. Preface But what about performance & security? Coco Chanel circa 1920
  • 5. Cloud and the “security problem”  Why is security so hard to sell today?  Complex  Hard to understand  Economic benefit to business unclear
  • 6. Cloud and the “security problem”  Computing as a utility – Simple – Easy to measure economic benefit – Security is built-in
  • 7. Cloud and the “security problem”  The good news – The Tier 1 providers are better at security than you or me  The bad news – You still have application software – Just with a bigger threat surface
  • 8. The cloud threat surface  CIO mistakes  Application software
  • 9. The top 3 mistakes CIOS make  No knowing how much your assets are worth  asset.val()== undefined  Writing procedures while attackers exploit your software  $p != security.software  Confusing compliance with data security  $c != security.data
  • 10. Rich Web 2.0 applications 2011 2-5 languages Server stack Message passing in the UI PC Browser Smartphone Device 3-5 languages Message passing in the UI
  • 11. Message passing in the UI? Very bad idea. Worst dressed at BET Awards 2010
  • 12. Rich Web 2.0 entry points DB Servers Interfaces Server stack PHP, C#, Ruby, J2EE HTML/Javascript/CSS Web servers HTML XML PC CSS Browser Smartphone Device Javascript Java Flash
  • 13. Rich Web 2.0 attack scenarios  Any kind of code injection  Server or client returns invalid HTML  Pages contain dead links  HTML forms don't match field types expected by controllers  Client side makes bad assumptions about AJAX services  Server may attempt to execute invalid SQL queries  Improper marshaling/un-marshaling – DB server to Web server – DB server to application tier – Web server to browser
  • 14. Rich Web 2.0 vulnerabilities  Heterogeneous stacks – Too much chewing gum  PHP, Ruby, Python – Flexibility, no static type guarantees  C#, Java – Static typed, but only at Web server – Code complexity increases threat surface  Redundant code on servers and clients  Redundant data on servers and clients  Client-server latency – Slow HTTP POST attacks
  • 16. Security summary  Security Control model looks great  But doesn't mitigate core vulnerabilities  Typing issues  Interface issues  Redundant code, data and tiers  Client-server latency
  • 17. Performance - time is money  Amazon.com  100 ms of latency costs Amazon 1% of sales (http://highscalability.com)  Google.com  500ms delay in delivery is a 20% drop in traffic (Google VP Marissa Mayer)  Competing stock trading platforms  5ms delay is $4M in losses / ms.
  • 18. Web servers 2011 Browser opens connection. Server forks a thread for each connection, using blocking IO. Ajax latency: 200-600ms
  • 19. Hardware 2011  What about multiple-processor concurrency?  Threads don't scale well with multi-cores  Processes are necessary to scale to multi- core computers, not memory-sharing threads.
  • 20. Threads are a bad idea  The mixture of threads and modern multi- core systems add up to some serious race condition potential. http://blogs.msdn.com/b/david_leblanc/archive/2007/04/19/why-threads-are-a-bad-idea.aspx  Thread-based networking is inefficient and very difficult to use. http://www.kegel.com/c10k.html and http://bulk.fefe.de/scalable-networking.pdf
  • 21. The future of apps in the cloud The fundamentals of scalable systems are fast networking and non-blocking design— .The fundamentals of scalable systems are fast networking and non-blocking design—the rest is message passing the rest is message passing. 3 technologies will be game changers,I think... ● Web sockets ● Node JS ● Couch DB
  • 22. The future of apps in the cloud Web sockets  Open a connection to Web server  It stays open  Pass messages  Eliminates at least 2 processes for every connection. (Browser-Server & Server-Database)  Low Latency: 20-60ms instead of 200-600ms
  • 23. The future of apps in the cloud Node.js  Javascript on client and server  No threads  No blocks or locks  UI is HTML & CSS  Asynchronous message passing with Web sockets
  • 24. The future of apps in the cloud CouchDB  Application served out of CouchDB  CouchApp lives in the browser.  No middle tier  Javascript on client and server  UI is HTML & CSS  CouchDB uses Ajax to shove JSON back and forth.  CouchDB replicates on smart phones
  • 25. Summary  Application vulnerabilities are expensive  100x more expensive to fix after implementation  Potential data loss in the cloud  Security controls don't come cheap  Time is money  High latency applications less responsive  Your cloud provider charges per CPU cycle  Your costs go up, revenue goes down  Promising new technologies  No middle/data tiers, reduced threat surface  10x lower latency  Your costs go down, revenue goes up.