Pipelight
Windows browser plugins on Linux Michael Müller Sebastian Lackner Erich E. Hoover May 7, 2014
1 / 35
Pipelight Windows browser plugins on Linux Michael Mller Sebastian - - PowerPoint PPT Presentation
Pipelight Windows browser plugins on Linux Michael Mller Sebastian Lackner Erich E. Hoover May 7, 2014 1 / 35 $ whoami Michael Mller (michael@fds-team.de) studying computer science at the university of Heidelberg, Germany Sebastian
1 / 35
2 / 35
1 Overview of Pipelight 2 Supported services and plugins 3 Installing and using Pipelight 4 Security 5 Future Ideas & Problems 6 Conclusion
3 / 35
Overview of Pipelight
4 / 35
Overview of Pipelight Motivation
Source: netflix.com 5 / 35
Overview of Pipelight Motivation
→ proprietary browser-plugins (Silverlight, Widevine, ...)
→ here Pipelight comes in handy!
6 / 35
Overview of Pipelight Motivation
7 / 35
Overview of Pipelight Motivation
S
r c e : t w i t t e r . c
8 / 35
Supported services and plugins
9 / 35
Supported services and plugins Known to work VOD services
10 / 35
Supported services and plugins Supported plugins
1 Silverlight 2 Flash 3 Widevine 4 Unity3D 5 Shockwave 6 Adobe Reader 7 ViewRight 8 ...
11 / 35
Supported services and plugins How does it work?
1 Linux
2 Custom Wine version (called “wine-compholio”)
3 Communication via Pipes!
12 / 35
Supported services and plugins How does it work?
(all Pipelight plugins)
(all Pipelight plugins)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(better Silverlight performance)
(Unity3D)
(bonus)
(bonus)
(bonus) 13 / 35
Supported services and plugins How does it work?
(all Pipelight plugins)
(all Pipelight plugins)
(all Pipelight plugins)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight)
(Silverlight GPU acceleration)
(Silverlight GPU acceleration)
(Silverlight GPU acceleration) 14 / 35
Installing and using Pipelight
15 / 35
Installing and using Pipelight Installation
16 / 35
Installing and using Pipelight Installation
17 / 35
Installing and using Pipelight Typical problems
→ Install an user agent switcher and set it to Windows
→ Disable HTTPS Everywhere / NoScript / ...
→ Install the 32 bit graphic driver libraries → PulseAudio is causing trouble, run: pulseaudio -k
18 / 35
Security
19 / 35
Security Plugin security
→ Lets take a look at a Silverlight exploit published some months ago
20 / 35
Security Plugin security
21 / 35
Security Plugin security
→ Pipelight hits an internal assertion and aborts. Why?
Silverlight instead → Pipelight detects the invalid pointer and terminates the plugin → The exploit was not able to execute its payload :-)
22 / 35
Security Pipelight-Sandbox
Other processes are not visible
Filesystem is readonly (except WINEPREFIX)
Other Sockets are not accessible
Restricted network access (i.e. blocked 192.168.*, 10.*, ...)
23 / 35
Security Pipelight-Sandbox
24 / 35
Future Ideas & Problems
25 / 35
Future Ideas & Problems GPU decoding
26 / 35
Future Ideas & Problems Support more systems / platforms
(almost done)
(how to solve embedding?)
27 / 35
Future Ideas & Problems Add Darling support
⇒ Help Luboš Doležel and contribute to his project to speedup the development :-)
28 / 35
Future Ideas & Problems End of NPAPI = End of Pipelight?
29 / 35
Future Ideas & Problems End of NPAPI = End of Pipelight?
30 / 35
Future Ideas & Problems End of NPAPI = End of Pipelight?
(Firefox, Midori, Uzbl, ...)
updated to better support multiple plugins
31 / 35
Conclusion
32 / 35
Conclusion Conclusion
33 / 35
End Questions?
34 / 35
End Contact us
sebastian@fds-team.de erich.e.hoover@gmail.com
#pipelight on freenode
35 / 35