280 likes | 288 Views
This article explores TLS vulnerabilities in web applications & proposes an automated analysis platform using attack trees to assess security impact. It discusses common attacks against TLS, potential risks, and emphasizes the importance of addressing server-side vulnerabilities. The research involves experiments on Alexa's top 10,000 websites, revealing exploitable TLS vulnerabilities in 5.5% of hosts. Key security aspects evaluated include compromised pages, host integrity, blockable requests, low confidentiality, and web tracking profiles.
E N D
Postcards from the Post-HTTP World: Amplification of HTTPS Vulnerabilities in the Web Ecosystem Xiuli Fang Article Source: Calzavara, S., Focardi, R., Nemec, M., Rabitti, A., & Squarcina, M. (2019). Postcards from the Post-HTTP World: Amplification of HTTPS Vulnerabilities in the Web Ecosystem. In Postcards from the Post-HTTP World: Amplification of HTTPS Vulnerabilities in the Web Ecosystem (p. 0). IEEE.Retrieved from: https://pdfs.semanticscholar.org/752c/c249cd9b80f5537ebda6723761ffb4b9811f.pdf
CONTENTS Introduction Solution Criticism
1 • Introduction
BACKGROUND • will replace HTTP • bases on the SSL/TLS protocol • is useful for web application security • could be unsecure because • the bad practice (the lack of adoption of HSTS) • flaws of low version TLS (1.0 or 1.2)
Attacks against TLS • Protocol version downgrade • RSA decryption oracles • Advanced RSA padding oracles- DROWN and key reuse • CBC mode padding oracles • Heartbleed • …… TLS vulnerabilities could harm to the web applications security, so many studies focus on it.
It is still unclear • which attacks are effective on web applications • what is the actual impact on web application security Reasons: Previous studies just focused on how much vulnerabilities in HTTPS implementation • Only focus on the server-side vulnerabilities • Only focus on the application layer attacks
to quantitatively evaluate the insecurity of web applications due to TLS vulnerabilities
2 • Solution
establish attack trees, automatedly collect and analyse the targeted websites • Main Idea
Analysis Platform Attack Tree Experiment Experiment
ATTACK TREE is used to describe TLS vulnerabilities 1 To categorize known attacks in terms of the security properties they break 2 Insecure Channels 3 Partially leaky channel selected secrets could be compromised (partially compromise confidentiality) Leaky channel all messages could be decrypted (fully compromise confidentiality) Tainted channel all messages could be decrypted and modified (fully compromise confidentiality and integrity)
ATTACK TREE • How to build attack trees? Review known attacks against TLS Characterize attacks to identify conditions that break security properties of TLS protocol Map the conditions to the corresponding insecure channels
ATTACK TREE For partially leaky channels For leaky channels For tainted channels
ATTACK TREE LEGEND: An Example OR AND Goal Partial decryption of messages sent by Client 1. CBC padding oracle on the server 1. POODLE-TLS padding oracle 2. CBC padding oracle – OpenSSL AES-NI bug 2. A ciphersuite with AES in CBC mode is used 2. Any vulnerable CBC mode ciphersuite is used 1. Server is vulnerable to CVE-2016-2017 1. Server checks TLS padding as in SSLv3 1. AES in CBC mode is preferred in the highest supported TLS version 2. Downgrade is possible to a TLS version where AES in CBC mode is prefered 2. Any vulnerable CBC mode ciphersuite is used 1. Server checks TLS padding as in SSLv3 • The attack tree is a logical tree • The title is a main goal • Each line is a sub-goal, but the leave of attack tree is a condition of vulnerability • There is a logical relationship between lines • If the whole tree is evaluated to TRUE, which means the title is TRUE.
Analysis Platform Attack Tree Experiment Experiment
ANALYSIS PLATFORM • can auto collect data from websites • can check the conditions defined in the attack trees to identify which websites are insecure due to the TLS vulnerabilities • depends on existing analysis tool: testssl.sh, TLS-attacker, Nmap
ANALYSIS STEP • Access the target websites • Collect the DOM of the page (cookies, sub-resources…) • Enumerate the sub-domains • Run existing tools to identify vulnerabilities on target websites and sub-domain hosts • Map the output to the conditions of the attack trees
Analysis Platform Attack Tree Experiment Experiment
EXPERIMENT Collecting data from the Alexa top 10,000 websites served over HTTPS. • The results show that exploitable TLS vulnerabilities in 5.5% hosts. • The results of three insecure channels It is still unclear that the actual impact on web applications.
EXPERIMENT Selecting three security aspects to evaluate the actual impact on web applications Security Aspects Security Issues Conditions • Condition 1: …… • Definition 1: Compromisable Page • Condition 2: …… Page Integrity Definition 2: Compromisable Host • Condition 1: …… Definition 3: Blockable Request tainted channels Definition 4: Low Integrity Page …… • Definition 5: Low Confidentiality Password Authentication Credential Definition 6: Low Confidentiality Cookie Definition 7: Low Integrity Cookie partially leaky, leaky, tainted channels Web Tracking • Condition 1: …… Definition 8: Profiling • Condition 2: …… leaky and tainted channels
Results The actual impact on each security aspect Page Integrity • 9.8% websites present low integrity pages that the attacker can tamper with, most of them are fully compromisable Authentication Credential • 10% of the detected login forms have confidentiality issues Web Tracking • 142 websites include content from vulnerable hosts of the popular tracker PubMatic • Up to 968 websites could be affected because their external resources they referenced may compromise
FINDINGS Conclusion: • TLS flaws have a huge practical impact on otherwise secure websites that depend on or are related to the vulnerable hosts • Limited number TLS vulnerabilities were amplificated by the web ecosystem.
3 • Criticism
ISSUES & IMPROVEMENT (1) Attack tree based on known attacks of previous studies Issues: • If new attacks occur, attack tree will miss some conditions of new attacks. This may lead to statistical limitations. Possible solution: • New conditions of attacks should be extended to attack tree
ISSUES & IMPROVEMENT (2) Attack testing based on existing tools, such as testssl.sh, TLS-attacker Issues: • Bugs and issues of these tools may lead to inaccurate statistics. Possible solution: • Regularly upgrade these existing tools
ISSUES & IMPROVEMENT (3) Analysis platform accessed websites by using Headless Chrome with Puppeteer Issues: • Using Puppeteer equals to using Chrome as web browser, but different browsers use different rules, which may lead to statistical biase. Possible solution: • Use the tool Selenium instead of Puppeteer • Selenium can work with Chrome, Firefox, Safari, Internet Explorer and Edge
Image Credits • TLS 1.0 and 1.1 deprecation [Photograph] Retrieved from https://images.app.goo.gl/5S5mcN9FRfK683Vd6 • Majority of the world’s top million websites now use HTTPS [Photograph] Retrieved from https://images.app.goo.gl/5qegB9emW4BZhwh78 • Big data [Photograph] Retrieved from http://bigdata.idcquan.com/news/156838.shtml • DROWN attack [Photograph] Retrieved from https://en.wikipedia.org/wiki/DROWN_attack • Problem Key Means Difficulty Or Trouble [Photograph] Retrieved from https://www.storyblocks.com/stock-image/problem-key-means-difficulty-or-trouble-rv6vfjsm_zj6gn20ou • 8 books guaranteed to help you discover your motivation [Photograph] Retrieved from https://admissionsadvantage.net/2018/10/23/8-books-guaranteed-to-help-you-discover-your-motivation/ • Data Analytics and the Benefits of Ignoring Gut Instincts (Part 2) [Photograph] Retrieved from https://www.tibco.com/blog/2014/01/07/the-benefits-of-ignoring-gut-instincts-part-2/