SlideShare a Scribd company logo
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.

More Related Content

PDF
Decoupled cms sunshinephp 2014
Lukas Smith
 
PPT
Server side programming
Sayed Ahmed
 
PDF
Web Fundamental
SiliconExpert Technologies
 
PDF
Metadata describes about data
Dev Sanskriti Vishwavidyalaya (University)
 
PPTX
Server Side Programming
Milan Thapa
 
PDF
Beginning Microservices with .NET & RabbitMQ
Paul Mooney
 
DOCX
Anchal_5Jan_New
anchal aggarwal
 
PPT
Ims soa tm and db solutions evgeni oct 2011
evgeni77
 
Decoupled cms sunshinephp 2014
Lukas Smith
 
Server side programming
Sayed Ahmed
 
Metadata describes about data
Dev Sanskriti Vishwavidyalaya (University)
 
Server Side Programming
Milan Thapa
 
Beginning Microservices with .NET & RabbitMQ
Paul Mooney
 
Anchal_5Jan_New
anchal aggarwal
 
Ims soa tm and db solutions evgeni oct 2011
evgeni77
 

Similar to Will Web 2.0 applications break the cloud? (20)

PDF
Practical Thin Server Architecture With Dojo Peter Svensson
rajivmordani
 
PDF
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
codebits
 
PDF
HTML5 and the dawn of rich mobile web applications
James Pearce
 
PDF
Web Development Presentation
TurnToTech
 
PPTX
Pentesting With Web Services in 2012
Ishan Girdhar
 
PPTX
Introduction To Cloud Computing
Rinat Shagisultanov
 
PDF
Reasons to migrate to modern web development with JavaScript
David Amend
 
PPTX
Azure Introduction
brunoterkaly
 
PPT
Scalable And Usable Web Applications
Clint Edmonson
 
PPT
HTTP and Website Architecture and Middleware
Abdul Jalil Tamjid
 
PPTX
Jeffrey Richter
CodeFest
 
PPTX
Secure web messaging in HTML5
Krishna T
 
PDF
Ajax World Oct2008 Jrd
rajivmordani
 
PPT
Layer 7 Technologies: Web Services Hacking And Hardening
CA API Management
 
PDF
Lightbend Fast Data Platform
Lightbend
 
PPT
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
PPTX
InduSoft Web Studio and DCS Conversion and Integration Webinar
AVEVA
 
PPTX
InduSoft Remote Production Monitoring Webinar
AVEVA
 
PDF
An Intro to Mobile HTML5
James Pearce
 
PPT
Web 2.0 and LiveQuotes Presentation
Jamie Thingelstad
 
Practical Thin Server Architecture With Dojo Peter Svensson
rajivmordani
 
Practical Thin Server Architecture With Dojo Sapo Codebits 2008
codebits
 
HTML5 and the dawn of rich mobile web applications
James Pearce
 
Web Development Presentation
TurnToTech
 
Pentesting With Web Services in 2012
Ishan Girdhar
 
Introduction To Cloud Computing
Rinat Shagisultanov
 
Reasons to migrate to modern web development with JavaScript
David Amend
 
Azure Introduction
brunoterkaly
 
Scalable And Usable Web Applications
Clint Edmonson
 
HTTP and Website Architecture and Middleware
Abdul Jalil Tamjid
 
Jeffrey Richter
CodeFest
 
Secure web messaging in HTML5
Krishna T
 
Ajax World Oct2008 Jrd
rajivmordani
 
Layer 7 Technologies: Web Services Hacking And Hardening
CA API Management
 
Lightbend Fast Data Platform
Lightbend
 
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
InduSoft Web Studio and DCS Conversion and Integration Webinar
AVEVA
 
InduSoft Remote Production Monitoring Webinar
AVEVA
 
An Intro to Mobile HTML5
James Pearce
 
Web 2.0 and LiveQuotes Presentation
Jamie Thingelstad
 
Ad

More from Flaskdata.io (19)

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

Recently uploaded (20)

PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 

Will Web 2.0 applications break the cloud?

  • 1. Rich Web applications 2011 Crashing in the cloud Danny Lieberman [email protected] 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.