SlideShare a Scribd company logo
Introduction to HTML5 security

          Speaker :luke
Outline
• What is HTML5

• Web Security related to HTML5

• Conclusion & looking forward
HTML5
HTML5
• New protocol of HTML
        HTML5 + CSS3+ JavaScript
        Compare to XML and XHTML

• Protocol design
      WHATWG (Apple Mozilla Google Opera) in 2004
      W3C
      IETF
• Still in progress
     http://www.html5test.com/
HTML5
What’s in HTML5
•   New Tag: <button> <canvas> <audio> <video>
•   New Tag attribute: autocomplete ,autofocus ,regex
•   New form controls for date ,time, email
•   Geolocation(demo: http://html5demos.com/geo)
•   Client-side storge localStorge sessionStorge and WebSQL
    (demo:http://html5demos.com/database-rollback)

• WebSockets new way of communication
• WebWorkers allow multithread javascript in the background
What’s out in HTML5
• Present element <font><center>
• Present attribute<align><border><frame><frame set>
• Old special effects<marquee>,<bgsound>

    Follow the rule :
    Presentation and content are divided
Security Issues in HTML5
Basic ideas about the new vulnerability
New security problem because of new method
brought into web application

the security issues in web application has not been
changed

New security has been found worth to investigate
Security concern 1                        client
Attack surface : client-side

     • client-side and offline storage

     • allows greater amount of data to be stored
Security concern 2                       web sql
• Bring SQL to the client-side
• Core methods:
  – openDatabase(“Database”,”Database
    version”,”Database Description”,”Estimated Size”)
  – Transaction (“SQL statement”)
• The usual attack : XSS,SQL injection can be
  used here.
Security concern 3                                          Application cache
• Useful for offline browsing speed and reduce
  server load
• The size limit for cached data for site :5MB
• Example 1 enabling application cache:
  <html manfest=“example.manifest”>
  …..
  </html>
• Example 2 update applicaton cache:
  applicationCache.addEventListener(‘checking’,updateCacheStatus,false);

• Poisoning the Application cache
         • Any website can create a cache in the client
         • Any file can be cached even in the /root directory
Security concern 4                          html5 sandbox
• Sandbox is used to protect website from 3-
  party software
 <iframe src="untrusted.html" sandbox></iframe>

• can be used to clickjacking attack
  <iframe sandbox=“allow-same-origin allow-form allow-scripts”>
Security concern 5                                           CROS
• Cros (Cross Origin Resource Sharing )
• Allow cross domain AJAX
   var xhr = new XMLHttpRequset()
   xhr.open(“post”,http://victim, ture )
   xhr.setRequsetHeader(“Content-Type ”,”text/plain”);
   xhr.withCredentials = “ture”;//send cookies
   Xhr.send(Anything I want )



• Silent file upload
     Fuction fileUpload(url,filedata,fileName){
     Var fileSize = fileData.length,
     Boundary =‘xxxxxxxxxxxx’
     xhr = new XMLHttpRequest();
     xhr.open(“POST”,url,true);
     Xhr.withCredentials(“Content-Type”,”multipart/form-data”,boundary=“+boundary)
     Xhr.setRequestHeader(“cotent-Length”,fileSize);}
Demo
Allow cross domain AJAX
http://victim.kotowicz.net/crossdomain-upload/vuln/index.php
http://attacker.kotowicz.net/crossdomain-upload/evil/upload.html



Silent file upload
http://kotowicz.net/wu/
http://attacker.kotowicz.net/wu/evil.html
Security concern 5                                      clickjacking
Clickjacking also called UI redressing
 <iframe src=outer.html width=20 height=20 scrolling=nostyle="opacity:0;"></iframe>


 <!-- outer.html -->
 <iframe src="//victim" width=5000 height=5000 style="position: absolute; top:-
 300px; left: -350px;"></iframe>
Security concern 5                             clickjacking
Most Alexa top 500 website use frame busting
to protect from clickjackng
         If (top!=self)
         If (top.location != self.location)

Can be easy bypassed by in HTML5

    <iframe sandbox src="//victim"></iframe>
Security concern 5                                                  XSS
New Tag and new Attribute cause XSS

   <video onerror=“javascript:alert(1)”><source>
   <audio onerror=“javascript:alert(1)”><source>




Before HTML5:
<input type=ʺtextʺ value=ʺ‐‐>Injecting hereʺ onmouseover=ʺalert(ʹInjected valueʹ)ʺ>
With HTML5:
<input type=ʺtextʺ value=ʺ‐‐>Injecting hereʺ onfocus=ʺalert(ʹInjected valueʹ)ʺ
autofocus>
Security concern 5 Drag and Drop API




<div draggable=ʺtrueʺ
ondragstart=ʺevent.dataTransfer.setData(ʹtext/plainʹ, ʹEvil dataʹ)ʺ>
<h3>DRAG ME!!</h3>
</div>
Security concern 6                                                 html5 shell
                         GET http://www.google.com                        Send request to
                                                                          the web server
   Pentester’s browser


                                                           Proxy
                         Send Google home page to
                           Pentester’s browser           Send the
                                                     response body to
                                                         he proxy


                                                                          Web server


                                       Send the response body
                                        to the shell of the
                                             web server
                      Google web server                                      Send the request
                      responds with the                                      to the victim’s
                    HTML fot its homepage                                        browser


                                                       Victim’s browser
       www.google.com

                            Request the google web
                                  server for
                             http://www.google.c
Security concern 7 network reconnaissance
Cross domain XMLHttpRequests and WebSockets

       Port Status           WebSocket    COR

    Open (application type     <100ms    <100ms
            1&2)
           Closed             ~1000ms    ~1000ms
           Filtered           >30000ms   >30000ms
Security concern 8                          HTML5 Botnets
Webworkers is a threading model for javascript
               Background JavaScript threads that were started using
Botnet creation:
             WebWorkers can send cross domain XMLHttpRequests even
                         though the remote website does not support it.
       •   Reaching out testvictimsthat around
                        A to showed
       •   Extending execution lifetimehas 600 zombies can send around
                   If you a small botnet just

Html5 botnets based attack
       • Application –level DDos attacks
       • Email Spam
       • Distributed password cracking
Distributed password cracking
easy to launch a password cracker under HTML5
http://www.andlabs.org/tools/ravan.html that one browser possible
                                 Test show
                                                can observe password guessing rates
                           Submit hash          of 100,000 MD5/second in JavaScript
                                                    Ravan
        Ravan Mater                            100-115 times slower than that native
                                                     Web
                          Manage Cracking          Backend
                                                code (like LC5),but if you control 100
                                               zombies.it has the same cracking rate.

                                          rk
                                         Wo




                                                          lt
                                      t




                                                         su
                                    Ge




                                                     Re
                                                    it
                                                bm
                                               Su
                             Work farm
Top10 Risks in html5
1.    ClickJacking & Phishing by mixing layers and iframe
2.    CSRF and leveraging CORS to bypasses SOP
3.    Attacking WebSQL and client side SQL injection
4.    Stealing information from Storage and Global variables
5.    HTML5 tag abuse and XSS
6.    HTML5 and DOM based XSS and redirects
7.    DOM injections and Hijacking with HTML 5
8.    Abusing thick client features
9.    Using WebSockets for stealth attacks
10.   Abusing WebWorker functionality
Conclusion
• HTML5 &DOM-level3 &XHR-level2 via javascript are
  involved in creating the next generation application

• As the people heavily use web browser .More
  features will bring into HTML5

• More enhanced features in HTML5 will bring threat
  and challenges

• More security issues will be discovered in the future
Reference
[1]HTML5 Security CheatSheet ‐ http://code.google.com/p/html5security/
[2]Shell of the Future ‐ http://www.andlabs.org/tools.html#sotf
[3] Next Generation Clickjacking ‐
http://www.contextis.co.uk/resources/white‐papers/clickjacking/Context‐Clic
kjacking_white_paper.pdf
[4]OWASP ClickJacking Guide ‐ http://www.owasp.org/index.php/Clickjacking
[5]http://html5sec.org/
[6]Hacking Facebook with HTML5 ‐ http://m‐austin.com/blog/?p=19
[7]http://html5demos.com
[8] https://www.owasp.org/index.php/Clickjacking
[9] http://www.andlabs.org/
Thanks for listening

             any suggestion and comment

More Related Content

What's hot

Building Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSocketsBuilding Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSockets
Sergi Almar i Graupera
 
Service-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMixService-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMixBruce Snyder
 
Nginx Scalable Stack
Nginx Scalable StackNginx Scalable Stack
Nginx Scalable Stack
Bruno Paiuca
 
Asynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and JavaAsynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and Java
James Falkner
 
0-60 with Goliath: Building High Performance Ruby Web-Services
0-60 with Goliath: Building High Performance Ruby Web-Services0-60 with Goliath: Building High Performance Ruby Web-Services
0-60 with Goliath: Building High Performance Ruby Web-ServicesIlya Grigorik
 
The Atmosphere Framework
The Atmosphere FrameworkThe Atmosphere Framework
The Atmosphere Framework
jfarcand
 
Real-Time with Flowdock
Real-Time with FlowdockReal-Time with Flowdock
Real-Time with Flowdock
Flowdock
 
0-60 with Goliath: High performance web services
0-60 with Goliath: High performance web services0-60 with Goliath: High performance web services
0-60 with Goliath: High performance web servicesIlya Grigorik
 
Pushing the web — WebSockets
Pushing the web — WebSocketsPushing the web — WebSockets
Pushing the web — WebSocketsRoland M
 
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
Jim Jagielski
 
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.comRuby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
Ilya Grigorik
 
Writing highly scalable WebSocket using the Atmosphere Framework and Scala
Writing highly scalable WebSocket using the Atmosphere Framework and ScalaWriting highly scalable WebSocket using the Atmosphere Framework and Scala
Writing highly scalable WebSocket using the Atmosphere Framework and Scala
jfarcand
 
Service Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMixService Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMix
Bruce Snyder
 
WebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! FrameworkWebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! Framework
Fabio Tiriticco
 
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
Rob Tweed
 
WebSockets in JEE 7
WebSockets in JEE 7WebSockets in JEE 7
WebSockets in JEE 7
Shahzad Badar
 
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - EuropeThe Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
Joshua Long
 
Reverse ajax in 2014
Reverse ajax in 2014Reverse ajax in 2014
Reverse ajax in 2014
Nenad Pecanac
 
Websocket protocol overview
Websocket protocol overviewWebsocket protocol overview
Websocket protocol overview
allenmeng
 

What's hot (20)

Building Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSocketsBuilding Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSockets
 
Service-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMixService-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMix
 
Nginx Scalable Stack
Nginx Scalable StackNginx Scalable Stack
Nginx Scalable Stack
 
Asynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and JavaAsynchronous Web Programming with HTML5 WebSockets and Java
Asynchronous Web Programming with HTML5 WebSockets and Java
 
0-60 with Goliath: Building High Performance Ruby Web-Services
0-60 with Goliath: Building High Performance Ruby Web-Services0-60 with Goliath: Building High Performance Ruby Web-Services
0-60 with Goliath: Building High Performance Ruby Web-Services
 
The Atmosphere Framework
The Atmosphere FrameworkThe Atmosphere Framework
The Atmosphere Framework
 
Real-Time with Flowdock
Real-Time with FlowdockReal-Time with Flowdock
Real-Time with Flowdock
 
0-60 with Goliath: High performance web services
0-60 with Goliath: High performance web services0-60 with Goliath: High performance web services
0-60 with Goliath: High performance web services
 
Pushing the web — WebSockets
Pushing the web — WebSocketsPushing the web — WebSockets
Pushing the web — WebSockets
 
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
 
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.comRuby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
Ruby Proxies for Scale, Performance, and Monitoring - GoGaRuCo - igvita.com
 
Writing highly scalable WebSocket using the Atmosphere Framework and Scala
Writing highly scalable WebSocket using the Atmosphere Framework and ScalaWriting highly scalable WebSocket using the Atmosphere Framework and Scala
Writing highly scalable WebSocket using the Atmosphere Framework and Scala
 
Service Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMixService Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMix
 
WebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! FrameworkWebSockets wiith Scala and Play! Framework
WebSockets wiith Scala and Play! Framework
 
Cometdの紹介
Cometdの紹介Cometdの紹介
Cometdの紹介
 
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
EWD 3 Training Course Part 38: Building a React.js application with QEWD, Part 2
 
WebSockets in JEE 7
WebSockets in JEE 7WebSockets in JEE 7
WebSockets in JEE 7
 
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - EuropeThe Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
The Cloud Foundry bootcamp talk from SpringOne On The Road - Europe
 
Reverse ajax in 2014
Reverse ajax in 2014Reverse ajax in 2014
Reverse ajax in 2014
 
Websocket protocol overview
Websocket protocol overviewWebsocket protocol overview
Websocket protocol overview
 

Similar to Html5 security

Browser Internals-Same Origin Policy
Browser Internals-Same Origin PolicyBrowser Internals-Same Origin Policy
Browser Internals-Same Origin Policy
Krishna T
 
Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5DefconRussia
 
W3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesW3 conf hill-html5-security-realities
W3 conf hill-html5-security-realities
Brad Hill
 
Browser Security
Browser SecurityBrowser Security
Browser Security
Roberto Suggi Liverani
 
Building Client-Side Attacks with HTML5 Features
Building Client-Side Attacks with HTML5 FeaturesBuilding Client-Side Attacks with HTML5 Features
Building Client-Side Attacks with HTML5 Features
Conviso Application Security
 
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersWebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersViktor Gamov
 
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
Divyanshu
 
DVWA BruCON Workshop
DVWA BruCON WorkshopDVWA BruCON Workshop
DVWA BruCON Workshop
testuser1223
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Cyber Security Alliance
 
Hacking HTML5 offensive course (Zeronights edition)
Hacking HTML5 offensive course (Zeronights edition)Hacking HTML5 offensive course (Zeronights edition)
Hacking HTML5 offensive course (Zeronights edition)Krzysztof Kotowicz
 
Flash And Dom
Flash And DomFlash And Dom
Flash And Dom
Mike Wilcox
 
Sanjeev ghai 12
Sanjeev ghai 12Sanjeev ghai 12
Sanjeev ghai 12
Praveen kumar
 
Comet from JavaOne 2008
Comet from JavaOne 2008Comet from JavaOne 2008
Comet from JavaOne 2008
Joe Walker
 
HTML5 Real-Time and Connectivity
HTML5 Real-Time and ConnectivityHTML5 Real-Time and Connectivity
HTML5 Real-Time and Connectivity
Peter Lubbers
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud Developers
Brian Huff
 
Everybody loves html5,h4ck3rs too
Everybody loves html5,h4ck3rs tooEverybody loves html5,h4ck3rs too
Everybody loves html5,h4ck3rs too
Nahidul Kibria
 
Html5 hacking
Html5 hackingHtml5 hacking
Html5 hacking
Iftach Ian Amit
 
Rich Web App Security - Keeping your application safe
Rich Web App Security - Keeping your application safeRich Web App Security - Keeping your application safe
Rich Web App Security - Keeping your application safeJeremiah Grossman
 
14. html 5 security considerations
14. html 5 security considerations14. html 5 security considerations
14. html 5 security considerations
Eoin Keary
 
Secure web messaging in HTML5
Secure web messaging in HTML5Secure web messaging in HTML5
Secure web messaging in HTML5Krishna T
 

Similar to Html5 security (20)

Browser Internals-Same Origin Policy
Browser Internals-Same Origin PolicyBrowser Internals-Same Origin Policy
Browser Internals-Same Origin Policy
 
Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5Krzysztof Kotowicz - Hacking HTML5
Krzysztof Kotowicz - Hacking HTML5
 
W3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesW3 conf hill-html5-security-realities
W3 conf hill-html5-security-realities
 
Browser Security
Browser SecurityBrowser Security
Browser Security
 
Building Client-Side Attacks with HTML5 Features
Building Client-Side Attacks with HTML5 FeaturesBuilding Client-Side Attacks with HTML5 Features
Building Client-Side Attacks with HTML5 Features
 
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java DevelopersWebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
WebSockets: The Current State of the Most Valuable HTML5 API for Java Developers
 
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
Browser Hacking For Fun and Profit | Null Bangalore Meetup 2019 | Divyanshu S...
 
DVWA BruCON Workshop
DVWA BruCON WorkshopDVWA BruCON Workshop
DVWA BruCON Workshop
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
 
Hacking HTML5 offensive course (Zeronights edition)
Hacking HTML5 offensive course (Zeronights edition)Hacking HTML5 offensive course (Zeronights edition)
Hacking HTML5 offensive course (Zeronights edition)
 
Flash And Dom
Flash And DomFlash And Dom
Flash And Dom
 
Sanjeev ghai 12
Sanjeev ghai 12Sanjeev ghai 12
Sanjeev ghai 12
 
Comet from JavaOne 2008
Comet from JavaOne 2008Comet from JavaOne 2008
Comet from JavaOne 2008
 
HTML5 Real-Time and Connectivity
HTML5 Real-Time and ConnectivityHTML5 Real-Time and Connectivity
HTML5 Real-Time and Connectivity
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud Developers
 
Everybody loves html5,h4ck3rs too
Everybody loves html5,h4ck3rs tooEverybody loves html5,h4ck3rs too
Everybody loves html5,h4ck3rs too
 
Html5 hacking
Html5 hackingHtml5 hacking
Html5 hacking
 
Rich Web App Security - Keeping your application safe
Rich Web App Security - Keeping your application safeRich Web App Security - Keeping your application safe
Rich Web App Security - Keeping your application safe
 
14. html 5 security considerations
14. html 5 security considerations14. html 5 security considerations
14. html 5 security considerations
 
Secure web messaging in HTML5
Secure web messaging in HTML5Secure web messaging in HTML5
Secure web messaging in HTML5
 

Recently uploaded

Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 

Recently uploaded (20)

Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 

Html5 security

  • 1. Introduction to HTML5 security Speaker :luke
  • 2. Outline • What is HTML5 • Web Security related to HTML5 • Conclusion & looking forward
  • 4. HTML5 • New protocol of HTML HTML5 + CSS3+ JavaScript Compare to XML and XHTML • Protocol design  WHATWG (Apple Mozilla Google Opera) in 2004  W3C  IETF • Still in progress http://www.html5test.com/
  • 6. What’s in HTML5 • New Tag: <button> <canvas> <audio> <video> • New Tag attribute: autocomplete ,autofocus ,regex • New form controls for date ,time, email • Geolocation(demo: http://html5demos.com/geo) • Client-side storge localStorge sessionStorge and WebSQL (demo:http://html5demos.com/database-rollback) • WebSockets new way of communication • WebWorkers allow multithread javascript in the background
  • 7. What’s out in HTML5 • Present element <font><center> • Present attribute<align><border><frame><frame set> • Old special effects<marquee>,<bgsound> Follow the rule : Presentation and content are divided
  • 9. Basic ideas about the new vulnerability New security problem because of new method brought into web application the security issues in web application has not been changed New security has been found worth to investigate
  • 10. Security concern 1 client Attack surface : client-side • client-side and offline storage • allows greater amount of data to be stored
  • 11. Security concern 2 web sql • Bring SQL to the client-side • Core methods: – openDatabase(“Database”,”Database version”,”Database Description”,”Estimated Size”) – Transaction (“SQL statement”) • The usual attack : XSS,SQL injection can be used here.
  • 12. Security concern 3 Application cache • Useful for offline browsing speed and reduce server load • The size limit for cached data for site :5MB • Example 1 enabling application cache: <html manfest=“example.manifest”> ….. </html> • Example 2 update applicaton cache: applicationCache.addEventListener(‘checking’,updateCacheStatus,false); • Poisoning the Application cache • Any website can create a cache in the client • Any file can be cached even in the /root directory
  • 13. Security concern 4 html5 sandbox • Sandbox is used to protect website from 3- party software <iframe src="untrusted.html" sandbox></iframe> • can be used to clickjacking attack <iframe sandbox=“allow-same-origin allow-form allow-scripts”>
  • 14. Security concern 5 CROS • Cros (Cross Origin Resource Sharing ) • Allow cross domain AJAX var xhr = new XMLHttpRequset() xhr.open(“post”,http://victim, ture ) xhr.setRequsetHeader(“Content-Type ”,”text/plain”); xhr.withCredentials = “ture”;//send cookies Xhr.send(Anything I want ) • Silent file upload Fuction fileUpload(url,filedata,fileName){ Var fileSize = fileData.length, Boundary =‘xxxxxxxxxxxx’ xhr = new XMLHttpRequest(); xhr.open(“POST”,url,true); Xhr.withCredentials(“Content-Type”,”multipart/form-data”,boundary=“+boundary) Xhr.setRequestHeader(“cotent-Length”,fileSize);}
  • 15. Demo Allow cross domain AJAX http://victim.kotowicz.net/crossdomain-upload/vuln/index.php http://attacker.kotowicz.net/crossdomain-upload/evil/upload.html Silent file upload http://kotowicz.net/wu/ http://attacker.kotowicz.net/wu/evil.html
  • 16. Security concern 5 clickjacking Clickjacking also called UI redressing <iframe src=outer.html width=20 height=20 scrolling=nostyle="opacity:0;"></iframe> <!-- outer.html --> <iframe src="//victim" width=5000 height=5000 style="position: absolute; top:- 300px; left: -350px;"></iframe>
  • 17. Security concern 5 clickjacking Most Alexa top 500 website use frame busting to protect from clickjackng If (top!=self) If (top.location != self.location) Can be easy bypassed by in HTML5 <iframe sandbox src="//victim"></iframe>
  • 18. Security concern 5 XSS New Tag and new Attribute cause XSS <video onerror=“javascript:alert(1)”><source> <audio onerror=“javascript:alert(1)”><source> Before HTML5: <input type=ʺtextʺ value=ʺ‐‐>Injecting hereʺ onmouseover=ʺalert(ʹInjected valueʹ)ʺ> With HTML5: <input type=ʺtextʺ value=ʺ‐‐>Injecting hereʺ onfocus=ʺalert(ʹInjected valueʹ)ʺ autofocus>
  • 19. Security concern 5 Drag and Drop API <div draggable=ʺtrueʺ ondragstart=ʺevent.dataTransfer.setData(ʹtext/plainʹ, ʹEvil dataʹ)ʺ> <h3>DRAG ME!!</h3> </div>
  • 20. Security concern 6 html5 shell GET http://www.google.com Send request to the web server Pentester’s browser Proxy Send Google home page to Pentester’s browser Send the response body to he proxy Web server Send the response body to the shell of the web server Google web server Send the request responds with the to the victim’s HTML fot its homepage browser Victim’s browser www.google.com Request the google web server for http://www.google.c
  • 21. Security concern 7 network reconnaissance Cross domain XMLHttpRequests and WebSockets Port Status WebSocket COR Open (application type <100ms <100ms 1&2) Closed ~1000ms ~1000ms Filtered >30000ms >30000ms
  • 22. Security concern 8 HTML5 Botnets Webworkers is a threading model for javascript Background JavaScript threads that were started using Botnet creation: WebWorkers can send cross domain XMLHttpRequests even though the remote website does not support it. • Reaching out testvictimsthat around A to showed • Extending execution lifetimehas 600 zombies can send around If you a small botnet just Html5 botnets based attack • Application –level DDos attacks • Email Spam • Distributed password cracking
  • 23. Distributed password cracking easy to launch a password cracker under HTML5 http://www.andlabs.org/tools/ravan.html that one browser possible Test show can observe password guessing rates Submit hash of 100,000 MD5/second in JavaScript Ravan Ravan Mater 100-115 times slower than that native Web Manage Cracking Backend code (like LC5),but if you control 100 zombies.it has the same cracking rate. rk Wo lt t su Ge Re it bm Su Work farm
  • 24. Top10 Risks in html5 1. ClickJacking & Phishing by mixing layers and iframe 2. CSRF and leveraging CORS to bypasses SOP 3. Attacking WebSQL and client side SQL injection 4. Stealing information from Storage and Global variables 5. HTML5 tag abuse and XSS 6. HTML5 and DOM based XSS and redirects 7. DOM injections and Hijacking with HTML 5 8. Abusing thick client features 9. Using WebSockets for stealth attacks 10. Abusing WebWorker functionality
  • 25. Conclusion • HTML5 &DOM-level3 &XHR-level2 via javascript are involved in creating the next generation application • As the people heavily use web browser .More features will bring into HTML5 • More enhanced features in HTML5 will bring threat and challenges • More security issues will be discovered in the future
  • 26. Reference [1]HTML5 Security CheatSheet ‐ http://code.google.com/p/html5security/ [2]Shell of the Future ‐ http://www.andlabs.org/tools.html#sotf [3] Next Generation Clickjacking ‐ http://www.contextis.co.uk/resources/white‐papers/clickjacking/Context‐Clic kjacking_white_paper.pdf [4]OWASP ClickJacking Guide ‐ http://www.owasp.org/index.php/Clickjacking [5]http://html5sec.org/ [6]Hacking Facebook with HTML5 ‐ http://m‐austin.com/blog/?p=19 [7]http://html5demos.com [8] https://www.owasp.org/index.php/Clickjacking [9] http://www.andlabs.org/
  • 27. Thanks for listening any suggestion and comment