WebView: Unterschied zwischen den Versionen

Aus Android Wiki
K (Abschnitt zu Sicherheitsproblemen)
K (Weitere Einzelnachweise)
Zeile 1: Zeile 1:
'''WebView''' ist eine Komponente von [[Android]] zur Darstellung von Web-Inhalten, z.B. HTML-Dateien mit JavaScript und CSS.<ref name="androidpolice_webview_lollipop">{{Cite web | url = http://www.androidpolice.com/2014/10/19/lollipop-feature-spotlight-webview-now-unbundled-android-free-auto-update-google-play/ | title = [Lollipop Feature Spotlight] WebView Is Now Unbundled From Android And Free To Auto-Update From Google Play | date = 2014-10-19 | accessdate = 2017-05-09 | publisher = androidpolice.com | author = Cody Toombs | language = en | quote = As of Android 5.0, the WebView component will be a distinct apk, allowing it to be upgraded separately from the OS. Not only will this ensure important security updates find their way to our devices [...] For those who aren't familiar with WebView, it's a component developers can use within their apps to display web content without launching a separate web browser. }}</ref>  
'''WebView''' ist eine Komponente von [[Android]] zur Darstellung von Web-Inhalten, z.B. HTML-Dateien mit JavaScript und CSS.<ref name="androidpolice_webview_lollipop">{{Cite web | url = http://www.androidpolice.com/2014/10/19/lollipop-feature-spotlight-webview-now-unbundled-android-free-auto-update-google-play/ | title = [Lollipop Feature Spotlight] WebView Is Now Unbundled From Android And Free To Auto-Update From Google Play | date = 2014-10-19 | accessdate = 2017-05-09 | publisher = androidpolice.com | author = Cody Toombs | language = en | quote = As of Android 5.0, the WebView component will be a distinct apk, allowing it to be upgraded separately from the OS. Not only will this ensure important security updates find their way to our devices [...] For those who aren't familiar with WebView, it's a component developers can use within their apps to display web content without launching a separate web browser. }}</ref><ref>{{Cite web | url = http://www.zdnet.de/88221502/google-schliesst-freak-luecke-android-webview/ | title = Google schließt Freak-Lücke in Android WebView | date = 2015-03-11 | accessdate = 2017-05-09 | publisher = zdnet.de | author = Stefan Beiersmann | quote = WebView ist die Komponente von Android, die für die Darstellung von Web-Inhalten zuständig ist. Sie basierte anfänglich auf der Rendering-Engine WebKit und steckt nicht nur im namenlosen Android-Browser, sondern wird von allen anderen Apps genutzt, die über keine eigene Browsertechnik verfügen.}}</ref>  
Die anzuzeigenden Web-Inhalte können aus dem Internet geladen werden oder in einer [[App]] selbst als lokale Ressource enthalten sein.
Die anzuzeigenden Web-Inhalte können aus dem Internet geladen werden oder in einer [[App]] selbst als lokale Ressource enthalten sein.
Als ''Rendering Engine'' wird von der WebView-Komponente ''WebKit'' verwendet.<ref name="webview_api_doc">{{Cite web | url = https://developer.android.com/reference/android/webkit/WebView.html | title = Offizielle Entwickler-Dokumentation zur Klasse WebView | accessdate = 2017-05-09 | publisher = Google | language = en | quote = A View that displays web pages. [...]  It uses the WebKit rendering engine to display web pages [...] }}</ref>
Als ''Rendering Engine'' wird von der WebView-Komponente ''WebKit'' verwendet.<ref name="webview_api_doc">{{Cite web | url = https://developer.android.com/reference/android/webkit/WebView.html | title = Offizielle Entwickler-Dokumentation zur Klasse WebView | accessdate = 2017-05-09 | publisher = Google | language = en | quote = A View that displays web pages. [...]  It uses the WebKit rendering engine to display web pages [...] }}</ref>
Zeile 5: Zeile 5:
Mehrere Web-Browser-Apps für Android verwenden zur Darstellung der Web-Inhalte ''WebView'', z.B. Cliqz<ref>{{Cite web | url = https://cliqz.com/magazine/android-komponente-webview-verursacht-probleme-jetzt-updaten | title = Android-Komponente WebView verursacht Probleme – jetzt updaten! | date = 2017-01-27 | publisher = cliqz.com | author = Björn Greif | accessdate = 2017-05-09 | quote = Android-Apps wie Cliqz nutzen WebView zur Anzeige von Webinhalten. }}</ref>, ''Lightning''<ref name="android_police_leichtgewichtige_browser">{{Cite web | url = http://www.androidpolice.com/2017/05/08/three-lightweight-android-browsers-may-speed-old-smartphone-tablet/ | title = Three lightweight Android browsers that may speed up your old smartphone or tablet | date = 2017-05-08 | accessdate = 2017-05-09 | publisher = androidpolice.com | language = en | author = Corbin Davenport | quote = The best thing about Lighting, in my opinion, is that it uses Android's built-in WebView engine. [...] Jelly is a brand-new browser being developed by the LineageOS [...] and like Lighting, it uses Android's built-in WebView engine.}}</ref> oder Jelly (Browser für [[LineageOS]])<ref name="android_police_leichtgewichtige_browser" />.
Mehrere Web-Browser-Apps für Android verwenden zur Darstellung der Web-Inhalte ''WebView'', z.B. Cliqz<ref>{{Cite web | url = https://cliqz.com/magazine/android-komponente-webview-verursacht-probleme-jetzt-updaten | title = Android-Komponente WebView verursacht Probleme – jetzt updaten! | date = 2017-01-27 | publisher = cliqz.com | author = Björn Greif | accessdate = 2017-05-09 | quote = Android-Apps wie Cliqz nutzen WebView zur Anzeige von Webinhalten. }}</ref>, ''Lightning''<ref name="android_police_leichtgewichtige_browser">{{Cite web | url = http://www.androidpolice.com/2017/05/08/three-lightweight-android-browsers-may-speed-old-smartphone-tablet/ | title = Three lightweight Android browsers that may speed up your old smartphone or tablet | date = 2017-05-08 | accessdate = 2017-05-09 | publisher = androidpolice.com | language = en | author = Corbin Davenport | quote = The best thing about Lighting, in my opinion, is that it uses Android's built-in WebView engine. [...] Jelly is a brand-new browser being developed by the LineageOS [...] and like Lighting, it uses Android's built-in WebView engine.}}</ref> oder Jelly (Browser für [[LineageOS]])<ref name="android_police_leichtgewichtige_browser" />.


Da nicht nur einige Browser-Apps sondern auch viele andere Apps die ''WebView''-Komponente z.B. zur Einblendung von Werbe-Bannern verwenden, sind Sicherheitslücken in dieser Komponente besonders problematisch.<ref>{{Cite web | url = https://heise.de/-2552659 | title = Sicher surfen trotz Android 4.3 | date = 2015-02-17 | accessdate = 2017-05-09 | publisher = heise.de | author = Jörg Wirtgen | quote = Problematisch daran ist, dass erstens nicht nur Browser diese Komponente nutzen, sondern auch viele Apps. [...] Die meisten Apps, die Werbebanner einblenden, dürften dafür ebenfalls WebView nutzen.}}</ref><ref>{{Cite web | url = https://heise.de/-2517130 | title = Millionen Android-Geräte mit Sicherheitslücken auf Lebenszeit | date = 2015-01-13 | accessdate = 2017-05-09 | publisher = heise.de | author = Dennis Schirrmacher | quote = Auf alle Webview-basierten Apps zu verzichten ist wiederum praktisch unmöglich, denn die Komponente wird in der Regel auch für Werbeeinblendungen genutzt ...}}</ref>
Da nicht nur einige Browser-Apps sondern auch viele andere Apps die ''WebView''-Komponente z.B. zur Einblendung von Werbe-Bannern verwenden, sind Sicherheitslücken in dieser Komponente besonders problematisch.<ref>{{Cite web | url = https://heise.de/-2552659 | title = Sicher surfen trotz Android 4.3 | date = 2015-02-17 | accessdate = 2017-05-09 | publisher = heise.de | author = Jörg Wirtgen | quote = Problematisch daran ist, dass erstens nicht nur Browser diese Komponente nutzen, sondern auch viele Apps. [...] Die meisten Apps, die Werbebanner einblenden, dürften dafür ebenfalls WebView nutzen.}}</ref><ref>{{Cite web | url = https://heise.de/-2517130 | title = Millionen Android-Geräte mit Sicherheitslücken auf Lebenszeit | date = 2015-01-13 | accessdate = 2017-05-09 | publisher = heise.de | author = Dennis Schirrmacher | quote = Auf alle Webview-basierten Apps zu verzichten ist wiederum praktisch unmöglich, denn die Komponente wird in der Regel auch für Werbeeinblendungen genutzt ...}}</ref><ref>{{Cite web | url = https://heise.de/-1969282 | title = Android-Geräte anfällig für Angriffe über Werbung  | date = 2013-09-28 | accessdate = 2017-05-09 | publisher = heise.de | author = Jo Bager | quote = Viele Anwendungen sichern aber den Kanal zwischen der WebView-Komponente und dem Ad-Server nicht richtig ab, von dem die Werbung kommt. Das kann sie zum Ziel für Man-in-the-middle-Attacken machen, etwa wenn sich der Angreifer im selben W-LAN-Netzwerk befindet. Der Angreifer kann auf diese Weise beliebigen Code auf dem Gerät des Opfer zur Ausführung bringen.}}</ref>
Seit Android {{Android|5}} kann diese Komponente deshalb auch ohne Firmware-Updates wie eine "normale" App über [[Google_Play|Google Play]] aktualisiert werden.<ref name="androidpolice_webview_lollipop" />
Seit Android {{Android|5}} kann diese Komponente als {{PlayStore|com.google.android.webview|Android System WebView}} auch ohne ein [[Firmware]]-Update wie eine "normale" App über [[Google_Play|Google Play]] aktualisiert werden.<ref name="androidpolice_webview_lollipop" /><ref>{{Cite web | url = https://infinum.co/the-capsized-eight/the-updateable-webview-on-android-5-lollipop-what-is-it-and-why-should-you-care | title = The Updatable WebView on Android 5.0 Lollipop - what is it and why should you care? | date = 2014-10-21 | accessdate = 2017-05-09 | publisher = Infinum Inc. | author = Ivan Lučin | language = en }}</ref>





Version vom 9. Mai 2017, 09:48 Uhr

WebView ist eine Komponente von Android zur Darstellung von Web-Inhalten, z.B. HTML-Dateien mit JavaScript und CSS.[1][2] Die anzuzeigenden Web-Inhalte können aus dem Internet geladen werden oder in einer App selbst als lokale Ressource enthalten sein. Als Rendering Engine wird von der WebView-Komponente WebKit verwendet.[3]

Mehrere Web-Browser-Apps für Android verwenden zur Darstellung der Web-Inhalte WebView, z.B. Cliqz[4], Lightning[5] oder Jelly (Browser für LineageOS)[5].

Da nicht nur einige Browser-Apps sondern auch viele andere Apps die WebView-Komponente z.B. zur Einblendung von Werbe-Bannern verwenden, sind Sicherheitslücken in dieser Komponente besonders problematisch.[6][7][8] Seit Android Lollipop "Lollipop" kann diese Komponente als Android System WebView Play Store auch ohne ein Firmware-Update wie eine "normale" App über Google Play aktualisiert werden.[1][9]


Bei der Programmierung einer nativen Android-App mit der Programmiersprache Java steht die WebView-Komponente als Klasse android.webkit.WebView zur Verfügung.[3][10]


Einzelnachweise

  1. 1,0 1,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  2. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  3. 3,0 3,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  4. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  5. 5,0 5,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  6. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  7. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  8. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  9. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  10. Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.