Browser security
Browser security is the application of Internet security to web browsers in order to protect networked data and computer systems from breaches of privacy or malware. Security exploits of browsers often use JavaScript, sometimes with cross-site scripting (XSS)[1] with a secondary payload using Adobe Flash.[2] Security exploits can also take advantage of vulnerabilities (security holes) that are commonly exploited in all browsers (including Google Chrome,[3] Microsoft Internet Explorer,[4] Mozilla Firefox,[5] Opera,[6] and Safari[7]).
Security
[edit]Web browsers can be breached in one or more of the following ways:
- Operating system is breached and malware is reading/modifying the browser memory space in privilege mode[8]
- Operating system has a malware running as a background process, which is reading/modifying the browser memory space in privileged mode
- Main browser executable can be hacked
- Browser components may be hacked
- Browser plugins can be hacked
- Browser network communications could be intercepted outside the machine[9]
The browser may not be aware of any of the breaches above and may show the user a safe connection is made.
Whenever a browser communicates with a website, the website, as part of that communication, collects some information about the browser (in order to process the formatting of the page to be delivered, if nothing else).[10] If malicious code has been inserted into the website's content, or in a worst-case scenario, if that website has been specifically designed to host malicious code, then vulnerabilities specific to a particular browser can allow this malicious code to run processes within the browser application in unintended ways (and remember, one of the bits of information that a website collects from a browser communication is the browser's identity- allowing specific vulnerabilities to be exploited).[11] Once an attacker is able to run processes on the visitor's machine, then exploiting known security vulnerabilities can allow the attacker to gain privileged access (if the browser isn't already running with privileged access) to the "infected" system in order to perform an even greater variety of malicious processes and activities on the machine or even the victim's whole network.[12]
Breaches of web browser security are usually for the purpose of bypassing protections to display pop-up advertising[13] collecting personally identifiable information (PII) for either Internet marketing or identity theft, website tracking or web analytics about a user against their will using tools such as web bugs, Clickjacking, Likejacking (where Facebook's like button is targeted),[14][15][16][17] HTTP cookies, zombie cookies or Flash cookies (Local Shared Objects or LSOs);[2] installing adware, viruses, spyware such as Trojan horses (to gain access to users' personal computers via cracking) or other malware including online banking theft using man-in-the-browser attacks.
In depth study of vulnerabilities in Chromium web-browser indicates that, Improper Input Validation (CWE-20) and Improper Access Control (CWE-284) are the most occurring root causes for security vulnerabilities.[18] Furthermore, among vulnerabilities examined at the time of this study, 106 vulnerabilities occurred in Chromium because of reusing or importing vulnerable versions of third party libraries.
Vulnerabilities in the web browser software itself can be minimized by keeping browser software updated,[19] but will not be sufficient if the underlying operating system is compromised, for example, by a rootkit.[20] Some subcomponents of browsers such as scripting, add-ons, and cookies[21][22][23] are particularly vulnerable ("the confused deputy problem") and also need to be addressed.
Following the principle of defence in depth, a fully patched and correctly configured browser may not be sufficient to ensure that browser-related security issues cannot occur. For example, a rootkit can capture keystrokes while someone logs into a banking website, or carry out a man-in-the-middle attack by modifying network traffic to and from a web browser. DNS hijacking or DNS spoofing may be used to return false positives for mistyped website names, or to subvert search results for popular search engines. Malware such as RSPlug simply modifies a system's configuration to point at rogue DNS servers.
Browsers can use more secure methods of network communication to help prevent some of these attacks:
- DNS: DNSSec and DNSCrypt, for example with non-default DNS servers such as Google Public DNS or OpenDNS.
- HTTP: HTTP Secure and SPDY with digitally signed public key certificates or Extended Validation Certificates.
Perimeter defenses, typically through firewalls and the use of filtering proxy servers that block malicious websites and perform antivirus scans of any file downloads, are commonly implemented as a best practice in large organizations to block malicious network traffic before it reaches a browser.
The topic of browser security has grown to the point of spawning the creation of entire organizations, such as The Browser Exploitation Framework Project,[24] creating platforms to collect tools to breach browser security, ostensibly in order to test browsers and network systems for vulnerabilities.
Plugins and extensions
[edit]Although not part of the browser per se, browser plugins and extensions extend the attack surface, exposing vulnerabilities in Adobe Flash Player, Adobe (Acrobat) Reader, Java plugin, and ActiveX that are commonly exploited. Researchers[25] have extensively studied the security architecture of various web-browsers in particular those relying on plug-and-play designs. This study has identified 16 common vulnerability types, and 19 potential mitigations. Malware may also be implemented as a browser extension, such as a browser helper object in the case of Internet Explorer.[26] In various other exploits websites which were designed to look authentic and included rogue 'update Adobe Flash' popups designed as visual cues to download malware payloads in their place.[27] Some browsers like Google Chrome and Mozilla Firefox can block—or warn users of—insecure plugins.
Adobe Flash
[edit]An August 2009 study by the Social Science Research Network found that 50% of websites using Flash were also employing Flash cookies, yet privacy policies rarely disclosed them, and user controls for privacy preferences were lacking.[28] Most browsers' cache and history delete functions do not affect Flash Player's writing Local Shared Objects to its own cache, and the user community is much less aware of the existence and function of Flash cookies than HTTP cookies.[29] Thus, users having deleted HTTP cookies and purged browser history files and caches may believe that they have purged all tracking data from their computers while in fact Flash browsing history remains. As well as manual removal, the BetterPrivacy add-on for Firefox can remove Flash cookies.[2] Adblock Plus can be used to filter out specific threats[13] and Flashblock can be used to give an option before allowing content on otherwise trusted sites.[30]
Charlie Miller recommended "not to install Flash"[31] at the computer security conference CanSecWest. Several other security experts also recommend to either not install Adobe Flash Player or to block it.[32]
Password security model
[edit]The contents of a web page are arbitrary and controlled by the entity owning the domain named displayed in the address bar. If HTTPS is used, then encryption is used to secure against attackers with access to the network from changing the page contents en route. When presented with a password field on a web page, a user is supposed to look at the address bar to determine whether the domain name in the address bar is the correct place to send the password.[33] For example, for Google's single sign-on system (used on e.g. YouTube.com), the user should always check that the address bar says "https://accounts.google.com" before inputting their password.
An un-compromised browser guarantees that the address bar is correct. This guarantee is one reason why browsers will generally display a warning when entering fullscreen mode, on top of where the address bar would normally be, so that a fullscreen website cannot make a fake browser user interface with a fake address bar.[34]
Browser hardening
[edit]Browsing the Internet as a least-privilege user account (i.e. without administrator privileges) limits the ability of a security exploit in a web browser from compromising the whole operating system.[35]
Internet Explorer 4 and later allows the blocklisting[36][37][38] and allowlisting[39][40] of ActiveX controls, add-ons and browser extensions in various ways.
Internet Explorer 7 added "protected mode", a technology that hardens the browser through the application of a security sandboxing feature of Windows Vista called Mandatory Integrity Control.[41] Google Chrome provides a sandbox to limit web page access to the operating system.[42]
Suspected malware sites reported to Google,[43] and confirmed by Google, are flagged as hosting malware in certain browsers.[44]
There are third-party extensions and plugins available to harden even the latest browsers,[45] and some for older browsers and operating systems. Whitelist-based software such as NoScript can block JavaScript and Adobe Flash which is used for most attacks on privacy, allowing users to choose only sites they know are safe – AdBlock Plus also uses whitelist ad filtering rules subscriptions, though both the software itself and the filtering list maintainers have come under controversy for by-default allowing some sites to pass the pre-set filters.[46] The US-CERT recommends to block Flash using NoScript.[47]
Fuzzing
[edit]Modern web browsers undergo extensive fuzzing to uncover vulnerabilities. The Chromium code of Google Chrome is continuously fuzzed by the Chrome Security Team with 15,000 cores.[48] For Microsoft Edge and Internet Explorer, Microsoft performed fuzzed testing with 670 machine-years during product development, generating more than 400 billion DOM manipulations from 1 billion HTML files.[49][48]
See also
[edit]- Filter bubble
- Frame injection
- Identity driven networking
- Internet safety
- Network security policy
- Application security
References
[edit]- ^ Maone, Giorgio. "NoScript :: Add-ons for Firefox". Mozilla Add-ons. Mozilla Foundation.
- ^ a b c "BetterPrivacy :: Add-ons for Firefox". Mozilla Foundation.[permanent dead link ]
- ^ Messmer, Ellen and NetworkWorld. "Google Chrome Tops 'Dirty Dozen' Vulnerable Apps List"[permanent dead link ]. Retrieved 19 November 2010.
- ^ Bradly, Tony. "It's Time to Finally Drop Internet Explorer 6" Archived 15 October 2012 at the Wayback Machine. Retrieved 19 November 2010.
- ^ Keizer, Greg. Firefox 3.5 Vulnerability Confirmed Archived 28 October 2010 at the Wayback Machine. Retrieved 19 November 2010.
- ^ Skinner, Carrie-Ann. Opera Plugs "Severe" Browser Hole Archived 20 May 2009 at the Wayback Machine. Retrieved 19 November 2010.
- ^ "Browser". Mashable. Archived from the original on 2 September 2011. Retrieved 2 September 2011.
- ^ Smith, Dave (21 March 2013). "The Yontoo Trojan: New Mac OS X Malware Infects Google Chrome, Firefox And Safari Browsers Via Adware". IBT Media Inc. Archived from the original on 24 March 2013. Retrieved 21 March 2013.
- ^ Goodin, Dan. "MySQL.com breach leaves visitors exposed to malware". The Register. Archived from the original on 28 September 2011. Retrieved 26 September 2011.
- ^ Clinton Wong. "HTTP Transactions". O'Reilly. Archived from the original on 13 June 2013.
- ^ "9 Ways to Know Your PC is Infected with Malware". Archived from the original on 11 November 2013.
- ^ "Symantec Security Response Whitepapers". Archived from the original on 9 June 2013.
- ^ a b Palant, Wladimir. "Adblock Plus :: Add-ons for Firefox". Mozilla Add-ons. Mozilla Foundation.
- ^ "Facebook privacy probed over 'like,' invitations". CBC News. 23 September 2010. Archived from the original on 26 June 2012. Retrieved 24 August 2011.
- ^ Albanesius, Chloe (19 August 2011). "German Agencies Banned From Using Facebook, 'Like' Button". PC Magazine. Archived from the original on 29 March 2012. Retrieved 24 August 2011.
- ^ McCullagh, Declan (2 June 2010). "Facebook 'Like' button draws privacy scrutiny". CNET News. Archived from the original on 5 December 2011. Retrieved 19 December 2011.
- ^ Roosendaal, Arnold (30 November 2010). "Facebook Tracks and Traces Everyone: Like This!". SSRN 1717563.
- ^ Santos, J. C. S.; Peruma, A.; Mirakhorli, M.; Galstery, M.; Vidal, J. V.; Sejfia, A. (April 2017). "Understanding Software Vulnerabilities Related to Architectural Security Tactics: An Empirical Investigation of Chromium, PHP and Thunderbird". 2017 IEEE International Conference on Software Architecture (ICSA). pp. 69–78. doi:10.1109/ICSA.2017.39. ISBN 978-1-5090-5729-0. S2CID 29186731.
- ^ State of Vermont. "Web Browser Attacks". Archived from the original on 13 February 2012. Retrieved 11 April 2012.
- ^ "Windows Rootkit Overview" (PDF). Symantec. Archived from the original (PDF) on 16 May 2013. Retrieved 20 April 2013.
- ^ "Cross Site Scripting Attack". Archived from the original on 15 May 2013. Retrieved 20 May 2013.
- ^ Lenny Zeltser. "Mitigating Attacks on the Web Browser and Add-Ons". Archived from the original on 7 May 2013. Retrieved 20 May 2013.
- ^ Dan Goodin (14 March 2013). "Two new attacks on SSL decrypt authentication cookies". Archived from the original on 15 May 2013. Retrieved 20 May 2013.
- ^ "beefproject.com". Archived from the original on 11 August 2011.
- ^ Santos, Joanna C. S.; Sejfia, Adriana; Corrello, Taylor; Gadenkanahalli, Smruthi; Mirakhorli, Mehdi (2019). "Achilles' heel of plug-and-Play software architectures: A grounded theory based approach". Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. ESEC/FSE 2019. New York, NY, US: ACM. pp. 671–682. doi:10.1145/3338906.3338969. ISBN 978-1-4503-5572-8. S2CID 199501995.
- ^ "How to Create a Rule That Will Block or Log Browser Helper Objects in Symantec Endpoint Protection". Symantec.com. Archived from the original on 14 May 2013. Retrieved 12 April 2012.
- ^ Aggarwal, Varun (30 April 2021). "Breaking: Fake sites of 50 Indian News portals luring gullible readers". The Economic Times CIO. Archived from the original on 26 February 2023. Retrieved 26 February 2023.
- ^ Soltani, Ashkan; Canty, Shannon; Mayo, Quentin; Thomas, Lauren; Hoofnagle, Chris Jay (10 August 2009). "Soltani, Ashkan, Canty, Shannon, Mayo, Quentin, Thomas, Lauren and Hoofnagle, Chris Jay: Flash Cookies and Privacy". SSRN 1446862.
- ^ "Local Shared Objects -- "Flash Cookies"". Electronic Privacy Information Center. 21 July 2005. Archived from the original on 16 April 2010. Retrieved 8 March 2010.
- ^ Chee, Philip. "Flashblock :: Add-ons for Firefox". Mozilla Add-ons. Mozilla Foundation. Archived from the original on 15 April 2013.
- ^ "Pwn2Own 2010: interview with Charlie Miller". 1 March 2010. Archived from the original on 24 April 2011. Retrieved 27 March 2010.
- ^ "Expert says Adobe Flash policy is risky". 12 November 2009. Archived from the original on 26 April 2011. Retrieved 27 March 2010.
- ^ John C. Mitchell. "Browser Security Model" (PDF). Archived (PDF) from the original on 20 June 2015.
- ^ "Using the HTML5 Fullscreen API for Phishing Attacks » Feross.org". feross.org. Archived from the original on 25 December 2017. Retrieved 7 May 2018.
- ^ "Using a Least-Privileged User Account". Microsoft. 29 June 2009. Archived from the original on 6 March 2013. Retrieved 20 April 2013.
- ^ "How to Stop an ActiveX control from running in Internet Explorer". Microsoft. Archived from the original on 2 December 2014. Retrieved 22 November 2014.
- ^ "Internet Explorer security zones registry entries for advanced users". Microsoft. Archived from the original on 2 December 2014. Retrieved 22 November 2014.
- ^ "Out-of-date ActiveX control blocking". Microsoft. Archived from the original on 29 November 2014. Retrieved 22 November 2014.
- ^ "Internet Explorer Add-on Management and Crash Detection". Microsoft. 8 October 2009. Archived from the original on 29 November 2014. Retrieved 22 November 2014.
- ^ "How to Manage Internet Explorer Add-ons in Windows XP Service Pack 2". Microsoft. Archived from the original on 2 December 2014. Retrieved 22 November 2014.
- ^ Matthew Conover. "Analysis of the Windows Vista Security Model" (PDF). Symantec Corporation. Archived from the original (PDF) on 16 May 2008. Retrieved 8 October 2007.
- ^ "Browser Security: Lessons from Google Chrome". August 2009. Archived from the original on 11 November 2013.
- ^ "Report malicious software (URL) to Google". Archived from the original on 12 September 2014.
- ^ "Google Safe Browsing". Archived from the original on 14 September 2014.
- ^ "5 Ways to Secure Your Web Browser". ZoneAlarm. 8 May 2014. Archived from the original on 7 September 2014.
- ^ "Adblock Plus Will Soon Block Fewer Ads – SiliconFilter". Siliconfilter.com. 12 December 2011. Archived from the original on 30 January 2013. Retrieved 20 April 2013.
- ^ "Securing Your Web Browser". Archived from the original on 26 March 2010. Retrieved 27 March 2010.
- ^ a b Sesterhenn, Eric; Wever, Berend-Jan; Orrù, Michele; Vervier, Markus (19 September 2017). "Browser Security WhitePaper" (PDF). X41D SEC GmbH. Archived (PDF) from the original on 1 February 2022. Retrieved 31 August 2018.
- ^ "Security enhancements for Microsoft Edge (Microsoft Edge for IT Pros)". Microsoft. 15 October 2017. Archived from the original on 1 September 2018. Retrieved 31 August 2018.
Further reading
[edit]- Sesterhenn, Eric; Wever, Berend-Jan; Orrù, Michele; Vervier, Markus (19 September 2017). "Browser Security White Paper" (PDF). X41D SEC GmbH.
- Heiderich, Mario; Inführ, Alex; Fäßler, Fabian; Krein, Nikolai; Kinugawa, Masato (29 November 2017). "Cure53 Browser Security White Paper" (PDF). Cure53.