SlideShare a Scribd company logo
LET'S PWN A CHINESELET'S PWN A CHINESE
WEB BROWSER!WEB BROWSER!
DISOBEY 2019 — JUHO NURMINENDISOBEY 2019 — JUHO NURMINEN
DISCLAIMERSDISCLAIMERS
I'm not my employer. My opinions aren't necessarily theirs. They haven't contributed to this
workshop, do not endorse it, and should not be held responsible for any outcomes.
The browsers we're about to look at are literally "made in China". Install and run them at
your own responsibility. They may invade your privacy, they may install other unwanted
so ware, and they may be difficult to uninstall properly. Using a disposable VM is highly
recommended.
In fact, anything you do in this workshop is at your own responsibility. Even if I tell you to do
so. I don't have permission from any vendors and I Am Not A Lawyer.
Any vulnerabilities you find are yours to keep. I suggest reporting them to the vendor and/or
a CERT of your choice. I can help in finding the right contacts, but it's your call.
YOUR INSTRUCTORYOUR INSTRUCTOR
Web & mobile hacker — Specialist @ 2NS
Browser hacker — several CVEs in
Chrome, Firefox, Safari
Antivirus hacker — Disobey 2018
CHINESE WEBCHINESE WEB
BROWSERS?BROWSERS?
THE TARGETSTHE TARGETS
Platform Market share     (StatCounter Oct 2018)
Windows macOS Linux Android iOS In China Globally
UC Browser
http://www.ucweb.com/
Yes No No Yes Yes 15.79 % 7.39 %
QQ Browser
https://browser.qq.com/ Yes Yes No Yes No 11 %; 0.27 %;
Sogou Explorer
https://ie.sogou.com/
Yes No No Yes Yes 2.05 % 0.06 %
http://www.maxthon.com/
Yes Yes Yes Yes Yes 0.56 % 0.05 %
https://browser.360.cn/
Yes No No Yes Yes 0.17 % 0.03 %
Baidu Browser
https://liulanqi.baidu.com/
Yes No No Yes Yes < 0.06 % < 0.1 %
INSTALLING MAXTHON ON KALIINSTALLING MAXTHON ON KALI
Additional packages: libcurl3 (conflicts with libcurl4),
libgcrypt11, libssl1.0.0
Running as root:
maxthon --user-data-dir=userdata --no-sandbox
Let's pwn a chinese web browser!
Let's pwn a chinese web browser!
BROWSER ARCHITECTUREBROWSER ARCHITECTURE
IE LOGICAL COMPONENTSIE LOGICAL COMPONENTS
(X41 Browser Security Whitepaper)
CHROME LOGICAL COMPONENTSCHROME LOGICAL COMPONENTS
(X41 Browser Security Whitepaper)
CHROME + IE = ???CHROME + IE = ???
(yours truly & mspaint)
SECURITY CONCEPTSSECURITY CONCEPTS
COMPARTMENTALIZATIONCOMPARTMENTALIZATION
Web content: Same-Origin Policy & Site Isolation
Extensions: Isolated Worlds & Privilege Separation
OS/Browser: Privilege Separation, Sandboxing &
Hardening
ENCRYPTIONENCRYPTION
Regular web traffic
External resources in internal UI
Sharing, sync, safe browsing & other APIs
Automatic updates
PORT BANNINGPORT BANNING
Protects against Inter-Protocol Exploitation
IE: 19, 21, 25, 110, 119, 143, 220, 993
Chrome: 1, 7, 9, 11, 13, 15, 17, 19, 20, 21, 22, 23, 37, 42,
43, 53, 77, 79, 87, 95, 101, 102, 103, 104, 109, 110, 111,
115, 117, 119, 123, 135, 139, 143, 179, 389, 465, 512,
513, 514, 515, 526, 530, 531, 532, 540, 556, 563, 587,
601, 636, 993, 995, 2049, 3659, 4045, 6000, 6665, 6666,
6667, 6668, 6669, 6697
SAFE BROWSING, SMARTSCREENSAFE BROWSING, SMARTSCREEN
& BLACKLISTING& BLACKLISTING
Blacklisting and reputation based mechanisms protect
agains malware & phishing
Malicious & compromised websites
Executable and other potentially harmful file types
VULNERABILITIES ANDVULNERABILITIES AND
EXPLOITSEXPLOITS
ATTACK VECTORSATTACK VECTORS
Web content
Automatic updates
Extensions and built-in extra features
File downloads
Plugins: PDF, Flash, Java, ActiveX?
SOP BYPASSESSOP BYPASSES
Leaky APIs
Universal XSS
Code execution inside renderer sandbox
Accessing privileged APIs via XCS
CROSS-CONTEXT SCRIPTINGCROSS-CONTEXT SCRIPTING
XSS in a privileged context
Access to privileged APIs
Additional attack surfaces, pivoting deeper
O en leads to RCE
CONTEXT ISOLATION ISSUESCONTEXT ISOLATION ISSUES
Missing context isolation
Logic running in wrong contexts
Unsafe cross-context messaging
Overwriting properties on shared objects
Variable clobbering
TOOLSTOOLS
CHROME DEVTOOLS & F12CHROME DEVTOOLS & F12
DEVELOPER TOOLSDEVELOPER TOOLS
Launch from a menu item or press F12
Great for exploring the JavaScript environment
Debugger is handy, too
PORTSWIGGER'S RENDERINGPORTSWIGGER'S RENDERING
ENGINE HACKABILITY PROBEENGINE HACKABILITY PROBE
https://portswigger-labs.net/hackability/
"Rendering Engine Hackability Probe performs a
variety of tests to discover what the unknown
rendering engine supports."
Helps you quickly spot non-standard APIs
BADSSL.COM & SSLLABS.COMBADSSL.COM & SSLLABS.COM
Badssl.com: contains lots of subdomains that should
trigger an SSL error
SSL labs' client test: lists the ciphers and other
features your SSL client supports
PROCESS EXPLORER, NETSTAT,PROCESS EXPLORER, NETSTAT,
LSOF...LSOF...
The usual stuff for that can help you understand a
native app
Figure out what processes an app is launching, what
files it's accessing and who it's talking to
Is your browser running a TCP server? It probably
shouldn't
MITM PROXY APPS & PACKETMITM PROXY APPS & PACKET
SNIFFERSSNIFFERS
Burp Suite, OWASP ZAP, Fiddler, mitmproxy
Wireshark, tcpdump
Pick your poison
LET'S GET HACKING!LET'S GET HACKING!
Architecture: Chrome with extras glued on top? Custom browser
with Blink?
Chrome version?
Custom features: What are there? How are they implemented?
Error messages: origin, exposed APIs, XCS
Browser-internal URI schemes
Restricted URI schemes
Framing settings pages, error messages?
Extensions: Are they supported? WebExtensions or something
else? Custom APIs?
APIs exposed to web (Hackability & external object)
Privileged web pages: Extension gallery? Sync and sharing
features?

More Related Content

PDF
Introduction to Backups and Security
PPTX
Security-Web Vulnerabilities-Browser Attacks
PDF
8 Most Popular Joomla Hacks & How To Avoid Them
PPTX
2010 A Net Odyssey
PDF
Secrets to a Hack-Proof Joomla Revealed
PPTX
Don't get stung - an introduction to the OWASP Top 10
PDF
Android mobile app security offensive security workshop
PPTX
Bug Bounty #Defconlucknow2016
Introduction to Backups and Security
Security-Web Vulnerabilities-Browser Attacks
8 Most Popular Joomla Hacks & How To Avoid Them
2010 A Net Odyssey
Secrets to a Hack-Proof Joomla Revealed
Don't get stung - an introduction to the OWASP Top 10
Android mobile app security offensive security workshop
Bug Bounty #Defconlucknow2016

What's hot (19)

PDF
Tale of Forgotten Disclosure and Lesson learned
PDF
Xamarin security talk slideshare
PDF
Security Testing
PDF
8 Simple Ways to Hack Your Joomla
PPTX
Bug Bounty 101
PDF
PALETTE BUSINESS SOLUTION DOCUMENTATION
PDF
The moment my site got hacked - WordCamp Sofia
PPTX
Protecting data on device with SQLCipher, Stephen Lombardo
PDF
avast 7.0.1474 license key
PDF
Attention Required! | CloudFlare
PDF
GoSec 2015 - Protecting the web from within
PDF
Reversing & malware analysis training part 7 unpacking upx
PDF
RailsConf 2015 - Metasecurity: Beyond Patching Vulnerabilities
PDF
Beginning WordPress Security WordCamp North Canton 2015
PDF
Nir goldshlager Killing a bug bounty program - twice Hack In The Box 2012
PPTX
Defense In Depth With AOP
PPTX
Make profit with UI-Redressing attacks.
PDF
State of Web Security RailsConf 2016
Tale of Forgotten Disclosure and Lesson learned
Xamarin security talk slideshare
Security Testing
8 Simple Ways to Hack Your Joomla
Bug Bounty 101
PALETTE BUSINESS SOLUTION DOCUMENTATION
The moment my site got hacked - WordCamp Sofia
Protecting data on device with SQLCipher, Stephen Lombardo
avast 7.0.1474 license key
Attention Required! | CloudFlare
GoSec 2015 - Protecting the web from within
Reversing & malware analysis training part 7 unpacking upx
RailsConf 2015 - Metasecurity: Beyond Patching Vulnerabilities
Beginning WordPress Security WordCamp North Canton 2015
Nir goldshlager Killing a bug bounty program - twice Hack In The Box 2012
Defense In Depth With AOP
Make profit with UI-Redressing attacks.
State of Web Security RailsConf 2016
Ad

Similar to Let's pwn a chinese web browser! (20)

PDF
Web application penetration testing lab setup guide
PPTX
Squashing bugs: Introduction to Bug Bounties ISSA Dehradun Chapter
PDF
Securing web applications
PDF
jfx
PPT
nullcon 2011 - Exploiting SCADA Systems
PDF
Purple Teaming With Adversary Emulation.pdf
PDF
sts-scanner_tutorial
PDF
sts-scanner_tutorial
PDF
Javaland 2017: "You´ll do microservices now". Now what?
PDF
Penetration testing web application web application (in) security
PDF
Securing a Cloud Migration
PDF
Securing a Cloud Migration
PDF
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
PDF
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
PDF
Securing Rails
PPT
nullcon 2011 - Penetration Testing a Biometric System
PDF
Download full ebook of Sans 5603 Exploitation Sans Institute instant download...
PDF
Odi 12c-getstart-vm-install-guide-2401840
PDF
Openedge Development Progress 4gl Handbook John Sadd
Web application penetration testing lab setup guide
Squashing bugs: Introduction to Bug Bounties ISSA Dehradun Chapter
Securing web applications
jfx
nullcon 2011 - Exploiting SCADA Systems
Purple Teaming With Adversary Emulation.pdf
sts-scanner_tutorial
sts-scanner_tutorial
Javaland 2017: "You´ll do microservices now". Now what?
Penetration testing web application web application (in) security
Securing a Cloud Migration
Securing a Cloud Migration
Von JavaEE auf Microservice in 6 Monaten - The Good, the Bad, and the wtfs...
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
Securing Rails
nullcon 2011 - Penetration Testing a Biometric System
Download full ebook of Sans 5603 Exploitation Sans Institute instant download...
Odi 12c-getstart-vm-install-guide-2401840
Openedge Development Progress 4gl Handbook John Sadd
Ad

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
KodekX | Application Modernization Development
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPT
Teaching material agriculture food technology
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
KodekX | Application Modernization Development
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Diabetes mellitus diagnosis method based random forest with bat algorithm
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Digital-Transformation-Roadmap-for-Companies.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Review of recent advances in non-invasive hemoglobin estimation
Teaching material agriculture food technology
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Mobile App Security Testing_ A Comprehensive Guide.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Network Security Unit 5.pdf for BCA BBA.
20250228 LYD VKU AI Blended-Learning.pptx
Encapsulation_ Review paper, used for researhc scholars
The Rise and Fall of 3GPP – Time for a Sabbatical?
Advanced methodologies resolving dimensionality complications for autism neur...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

Let's pwn a chinese web browser!

  • 1. LET'S PWN A CHINESELET'S PWN A CHINESE WEB BROWSER!WEB BROWSER! DISOBEY 2019 — JUHO NURMINENDISOBEY 2019 — JUHO NURMINEN
  • 2. DISCLAIMERSDISCLAIMERS I'm not my employer. My opinions aren't necessarily theirs. They haven't contributed to this workshop, do not endorse it, and should not be held responsible for any outcomes. The browsers we're about to look at are literally "made in China". Install and run them at your own responsibility. They may invade your privacy, they may install other unwanted so ware, and they may be difficult to uninstall properly. Using a disposable VM is highly recommended. In fact, anything you do in this workshop is at your own responsibility. Even if I tell you to do so. I don't have permission from any vendors and I Am Not A Lawyer. Any vulnerabilities you find are yours to keep. I suggest reporting them to the vendor and/or a CERT of your choice. I can help in finding the right contacts, but it's your call.
  • 3. YOUR INSTRUCTORYOUR INSTRUCTOR Web & mobile hacker — Specialist @ 2NS Browser hacker — several CVEs in Chrome, Firefox, Safari Antivirus hacker — Disobey 2018
  • 5. THE TARGETSTHE TARGETS Platform Market share     (StatCounter Oct 2018) Windows macOS Linux Android iOS In China Globally UC Browser http://www.ucweb.com/ Yes No No Yes Yes 15.79 % 7.39 % QQ Browser https://browser.qq.com/ Yes Yes No Yes No 11 %; 0.27 %; Sogou Explorer https://ie.sogou.com/ Yes No No Yes Yes 2.05 % 0.06 % http://www.maxthon.com/ Yes Yes Yes Yes Yes 0.56 % 0.05 % https://browser.360.cn/ Yes No No Yes Yes 0.17 % 0.03 % Baidu Browser https://liulanqi.baidu.com/ Yes No No Yes Yes < 0.06 % < 0.1 %
  • 6. INSTALLING MAXTHON ON KALIINSTALLING MAXTHON ON KALI Additional packages: libcurl3 (conflicts with libcurl4), libgcrypt11, libssl1.0.0 Running as root: maxthon --user-data-dir=userdata --no-sandbox
  • 10. IE LOGICAL COMPONENTSIE LOGICAL COMPONENTS (X41 Browser Security Whitepaper)
  • 11. CHROME LOGICAL COMPONENTSCHROME LOGICAL COMPONENTS (X41 Browser Security Whitepaper)
  • 12. CHROME + IE = ???CHROME + IE = ??? (yours truly & mspaint)
  • 14. COMPARTMENTALIZATIONCOMPARTMENTALIZATION Web content: Same-Origin Policy & Site Isolation Extensions: Isolated Worlds & Privilege Separation OS/Browser: Privilege Separation, Sandboxing & Hardening
  • 15. ENCRYPTIONENCRYPTION Regular web traffic External resources in internal UI Sharing, sync, safe browsing & other APIs Automatic updates
  • 16. PORT BANNINGPORT BANNING Protects against Inter-Protocol Exploitation IE: 19, 21, 25, 110, 119, 143, 220, 993 Chrome: 1, 7, 9, 11, 13, 15, 17, 19, 20, 21, 22, 23, 37, 42, 43, 53, 77, 79, 87, 95, 101, 102, 103, 104, 109, 110, 111, 115, 117, 119, 123, 135, 139, 143, 179, 389, 465, 512, 513, 514, 515, 526, 530, 531, 532, 540, 556, 563, 587, 601, 636, 993, 995, 2049, 3659, 4045, 6000, 6665, 6666, 6667, 6668, 6669, 6697
  • 17. SAFE BROWSING, SMARTSCREENSAFE BROWSING, SMARTSCREEN & BLACKLISTING& BLACKLISTING Blacklisting and reputation based mechanisms protect agains malware & phishing Malicious & compromised websites Executable and other potentially harmful file types
  • 19. ATTACK VECTORSATTACK VECTORS Web content Automatic updates Extensions and built-in extra features File downloads Plugins: PDF, Flash, Java, ActiveX?
  • 20. SOP BYPASSESSOP BYPASSES Leaky APIs Universal XSS Code execution inside renderer sandbox Accessing privileged APIs via XCS
  • 21. CROSS-CONTEXT SCRIPTINGCROSS-CONTEXT SCRIPTING XSS in a privileged context Access to privileged APIs Additional attack surfaces, pivoting deeper O en leads to RCE
  • 22. CONTEXT ISOLATION ISSUESCONTEXT ISOLATION ISSUES Missing context isolation Logic running in wrong contexts Unsafe cross-context messaging Overwriting properties on shared objects Variable clobbering
  • 24. CHROME DEVTOOLS & F12CHROME DEVTOOLS & F12 DEVELOPER TOOLSDEVELOPER TOOLS Launch from a menu item or press F12 Great for exploring the JavaScript environment Debugger is handy, too
  • 25. PORTSWIGGER'S RENDERINGPORTSWIGGER'S RENDERING ENGINE HACKABILITY PROBEENGINE HACKABILITY PROBE https://portswigger-labs.net/hackability/ "Rendering Engine Hackability Probe performs a variety of tests to discover what the unknown rendering engine supports." Helps you quickly spot non-standard APIs
  • 26. BADSSL.COM & SSLLABS.COMBADSSL.COM & SSLLABS.COM Badssl.com: contains lots of subdomains that should trigger an SSL error SSL labs' client test: lists the ciphers and other features your SSL client supports
  • 27. PROCESS EXPLORER, NETSTAT,PROCESS EXPLORER, NETSTAT, LSOF...LSOF... The usual stuff for that can help you understand a native app Figure out what processes an app is launching, what files it's accessing and who it's talking to Is your browser running a TCP server? It probably shouldn't
  • 28. MITM PROXY APPS & PACKETMITM PROXY APPS & PACKET SNIFFERSSNIFFERS Burp Suite, OWASP ZAP, Fiddler, mitmproxy Wireshark, tcpdump Pick your poison
  • 29. LET'S GET HACKING!LET'S GET HACKING!
  • 30. Architecture: Chrome with extras glued on top? Custom browser with Blink? Chrome version? Custom features: What are there? How are they implemented? Error messages: origin, exposed APIs, XCS Browser-internal URI schemes Restricted URI schemes Framing settings pages, error messages? Extensions: Are they supported? WebExtensions or something else? Custom APIs? APIs exposed to web (Hackability & external object) Privileged web pages: Extension gallery? Sync and sharing features?