Informations/Telekommunikations- Dienstleistungen Christian Freter
Partner von AVM und Seagate
1&1 Premiumpartner
In diesem Blog findet ihr Informationen zu Sicherheitsbedrohungen bei ausgewählten Produkten, Hintergrundinformationen und Links zu wichtigen Webseiten für das Internet. Ich kann keine direkte Aktualität in diesem Blog gewährleisten. Deshalb schaut auch mal öfters bei Webseiten von PC Zeitschriften oder Anbietern von Virenschutz oder bei den Herstellern selber (oft Englisch und benötigt Fachkenntnisse).
Das BSI (Bundesamt für Sicherheit in der Informationstechnik) warnt vor der Verwendung der Antivirusprogramme von Kaspersky!
Kaspersky ist ein russischer Sicherheitsexperte und könnte von der russischen Regierung als Werkzeug für Angriffe ausgenutzt werden.
NGINX ist ein Open Source Hochleistungs- Webserver und ist ursprünglich eine russische Entwicklung. Durch die Open Source Lizenz wird der Server allen kostenlos zur Verfügung gestellt. Er ist unter anderem eine wichtige Komponente in der Synology Netzwerktechnik, welche auch von mir verwendet wird.
Bereits am Anfang des Krieges gab es eine Untersuchung der US Sicherheitsbehörden zur kritischen IT- Infrastruktur. Natürlich kam der NGINX dabei mit in den Fokus der Gutachter (etwa 10% der IT in den größeren Ländern verwendet diesen Server). Da der NGINX bzw. sein kommerzieller Teil, durch den die Sache auch finanziert wird, von einem US Unternehmen übernommen wurde und der russische Erfinder aus dem gewerblichen Teil des Projektes ausstieg, gab es keine akute Bedrohungssituation. Und es war auch tatsächlich so, dass russische Büros wegen angeblicher Steuerhinterziehung von der russischen Polizei durchsucht wurden.
Mit dem fortschreitenden Krieg muss man sich natürlich weitere Gedanken machen. Aktuell sind wohl russische Entwickler vorerst aus dem gewerblichen Projekt ausgeschlossen worden. Dadurch geht natürlich viel russisches IT Know- How verloren, aber das Projekt wird wahrscheinlich überleben. Wegen all dieser Aspekte werde ich zu diesem Zeitpunkt auch nicht auf die Synology Technik verzichten.
Update: PWA’s
########################################################################
Apps, Addons, Erweiterungen und Javascript. Das sind alles Technologien, die unsere Interneterfahrung mit Webbrowsern bunter, erlebnisreicher und abwechslungsreicher gestalten. Aber was ist das genau?
Javascript habe ich im Security Blog bereits angesprochen, als es um Sicherheitslücken in den Webbrowsern ging. Mit Javascript, HTML und CSS werden Webseiten im Internet programmiert. HTML/ Hypertext Markup Language und CSS/ Cascading Style Sheets beschreiben den Aufbau der Webseite, aber das Javascript bringt Dynamik in die Seite mit Aktionen, die programmiert werden können. Javascript ist trotzdem keine richtige Programmiersprache; deswegen der Zusatz “Script”. Man benötigt immer ein weiteres Programm, das den Inhalt einer Javascript Datei auswerten und darstellen kann. Dafür ist in den Webbrowsern die Javascript Engine verantwortlich. Bei Google und Microsoft nennt die sich zum Beispiel “V8” und bei Mozilla im Firefox nennt die sich “SpiderMonkey”; und bei Apple im Safari kommt der “JavaScriptCore” zum Einsatz. Alle diese Engines haben viele Gemeinsamkeiten, aber auch Unterschiede. Gemeinsam haben die Engines, dass diese mit der selben Javascript Basis arbeiten. Diese Basis wird zum Beispiel durch das “ECMA Script” definiert bzw. nennt man das auch die “ECMA Engine”. Die “ECMA” versucht Standards für bestimmte Dinge in der IT zu definieren, aber ein Entwickler muss sich nicht zwingend daran halten. Die “ECMA” erweitert auch regelmäßig den Funktionsumfang dieser “Javascript Basis”. In der Vergangenheit war es so gewesen, dass alle Webbrowser Entwickler eine zum Teil völlig unterschiedliche Script Basis verwendeten, d.h. ein Webseitenentwickler musste manchmal für jeden Webbrowser eine gesonderte Webseite kreieren. Also sehr umständlich. Microsoft ging damals richtig weit und versuchte sogar “VB Script” in seinem “Internet Explorer” durchzusetzen. “VB Script” ermöglichte umfangreichste Zugriffe auf das Windows System der Anwender/innen über eine Webseite. Dieses war aber auch mit größten Sicherheitslücken verbunden und die Sache floppte irgendwann bzw. musste Microsoft die Sicherheitsvorkehrungen anpassen und es sprach letztlich nichts mehr für die Verwendung des “VB Script”, weil auch Javascript auf dem Vormarsch war. Die Windows Systeme können es aber noch heute interpretieren, aber es wird wegfallen und wird auch seit einigen Jahren nicht mehr weiterentwickelt. Vielleicht kann sich manch einer noch an das “IloveYou” Virus erinnern; 2002 muss das gewesen sein. Der Virus war in “VB Script” geschrieben. Wer es nicht kennt, kurz die Story: Die Liebe eines jungen Mannes wurde von seiner Angebeteten nicht erwidert und so schrieb er diesen Virus. So soll es wirklich gewesen sein. Der Virus wurde per EMail als Anhang verbreitet, aber er konnte auch Sicherheitslücken im Windows System ausnutzen, um sich zu verbreiten. Irgendwie war das so gewesen. Ich hatte damals die Möglichkeit den Virus anzuschauen, aber leider ist der mir über die Jahre verloren gegangen. Ich glaube, der Virus bestand auch aus 2 Komponenten. Ein Teil war Script und der andere Teil war Maschinencode, der vom Script zum Einsatz gebracht wurde (bin mir nicht mehr sicher und vielleicht verwechsel ich es auch mit einem der späteren Viren).
Die Script Engines in den Webbrowsern können aber mehr als nur Webseiten darstellen. Ich werde mich jetzt mehr auf den Google Chrome und indirekt auf den Microsoft Edge beziehen.
Im Chrome habt ihr die Möglichkeit sogenannte “Erweiterungen” zu installieren. Im Menü unter “Erweiterungen” zu finden. Ursprünglich waren diese “Erweiterungen” mal “Chrome Apps” gewesen (so ungefähr zumindest). Die Chrome Apps wurden aber von Google eingestellt und die Apps werden nur noch im Chrome OS bis zum Jahr 2024 unterstützt. Was können diese “Erweiterungen”? Die “Erweiterungen” sind letztendlich Webseiten aus Javascript, HTML und CSS, aber haben mehr Möglichkeiten mit dem Chrome zu interagieren. Das macht die “V8” Engine des Chrome möglich. Mit diesen “Erweiterungen” können zum Beispiel kleine Fenster eingeblendet werden, die Informationen verarbeiten oder man kann Daten in Webseiten verändern oder man hat die Möglichkeit des Datenzugriffs auf das lokale System. Schaut einfach in den “Chrome Webstore”. Dort findet ihr reichlich von denen. Diese “Erweiterungen” unterliegen aber Sicherheitsrichtlinien, d.h. jede “Erweiterung” muss für jede umfangreichere Aktion eine Freigabe vom Anwender bzw. vom Chrome Browser erhalten. Eine “Erweiterung” wird auch grundsätzlich vom Browser und im Browser selbst ausgeführt. Man kann die Konfiguration einer “Erweiterung” in den Einstellungen anpassen und die Ausführung sogar verbieten. Eine bösartige “Erweiterung” kann natürlich sehr viel Schaden anrichten.
Eine Besonderheit sind “Service Worker”. Ich habe mich die Tage wieder mal mit beschäftigt. Ausgeführte “Service Worker” könnt ihr im Chrome anschauen und löschen. Einfach einen neuen Tab öffnen und in der Adresszeile “chrome://serviceworker-internals” eintragen. Im Microsoft Edge das “chrome” durch “edge” ersetzen. Daraufhin werden euch alle aktiven “Service Worker”, die im Browser hinterlegt sind, angezeigt. “Service Worker” werden von den meisten modernen Browsern unterstützt. Meines Wissens zum Beispiel auch vom Firefox. Ein “Service Worker” kann im Chrome über eine “Erweiterung” aktiviert werden oder, wie es der Normalfall ist, über eine Webseite. Die Anwender/ innen bekommen davon in der Regel nicht viel mit. Diese “Service Worker” bestehen nur aus Javascript und können durchaus nützlich sein, z.Bsp. können die Inhalte von Webseiten offline verfügbar machen oder Push Nachrichten einblenden oder Verbindungen zu Webseiten herstellen und Inhalte herunterladen usw.. Diese “Service Worker” haben aber keinen größeren Zugriff auf den Webbrowser, sondern werden sogar in einem abgeschotteten Speicher ausgeführt (einer “Sandbox”), um entsprechenden Zugriff zu verhindern. Die ganzen Vorteile dieser “Worker” werden aber sofort zunichte gemacht, wenn eine Webseite diese für das “Tracking” verwendet. Dadurch, dass die “Worker” im Hintergrund aktiviert sein können und Daten mit Webseiten austauschen können, kann man auch “Tracking” betreiben. Da beruhigt es irgendwie wenig, dass die Daten verschlüsselt übertragen werden (funktioniert nur so). Umgehen kann man dieses “Tracking” indem man den Gastmodus verwendet oder den anonymen Modus (jeder Browser hat seine eigene Bezeichnung dafür). In diesem Modus sollten die “Worker” nicht gespeichert werden.
Aber was ist jetzt ein “Addon” im Google Chrome? Das ist eine ganz feine Sache! Ein “Addon” kann immer dann zum Einsatz kommen, wenn ihr im Google Workspace arbeitet. Ein “Addon” kann Zugriff auf euer GMail Konto, auf den Google Dokumenteneditor, auf Google Drive usw. nehmen. Der Sinn dahinter ist, dass man mit einem “Addon” Arbeitsvorgänge erleichtern kann, z.Bsp. schreibt man gerade einen Text im Chrome und ein “Addon” informiert über neue EMail’s, die dann in einer Vorschau angezeigt werden könnten. Oder ihr könnt verschlüsselte Mails über ein “Addon” verschicken. Oder man liest Daten von einer Datei im Google Drive ein und verwendet diese in einem gerade bearbeiteten Dokument weiter. Solche Sachen eben. Ein installiertes “Addon” wird dann in einer Seitenleiste angezeigt. Finden tut ihr die “Addon”s, wenn ihr den Workspace geöffnet habt und dann entweder in den Einstellungen schaut oder in der Seitenleiste auf das “+” drückt. Oder direkt im Marketplace über “workspace.google.com/marketplace”. Der große Unterschied zu einer “Erweiterung” ist, dass ein “Addon” nur im Browser angezeigt wird. Die eigentliche Bearbeitung findet in der Google Cloud statt, wenn Javascript verwendet wird (ist der Normalfall). Aber bei dem “Addon” heißt es nicht Javascript, sondern Appscript und man hat auch ganz andere Möglichkeiten als im Chrome Browser. Es kann vorkommen bzw. nötig sein, dass ein “Addon” Daten aus der Google Cloud hinaus auf Systeme der “Addon” Entwickler überträgt! Wenn es sich zum Beispiel um spezielle Datenverschlüsselung oder Konvertierung von Daten handelt, dann ist es sehr wahrscheinlich. Das sollte dann aber eigentlich irgendwo stehen. Eventuell erst in der Datenschutzvereinbarung oder in der Benutzervereinbarung.
Ein “Addon” aus Appscript besteht aus sogenannten “Cards”. Man kann sich das tatsächlich als eine Art Kartenstapel vorstellen. Die erste Karte ist das Deckblatt, die bestimmte Aktionen anbietet und beim Anklicken des “Addon” immer zuerst angezeigt wird. Und abhängig von der gewünschten Aktion wird eine andere Karte aus dem Stapel eingeblendet. Für das Einblenden ist der Chrome Browser verantwortlich.
Leider kann ein “Addon” wieder eine Sicherheitslücke sein, wenn man ein bösartiges aus dem Store installiert. In diesem Fall würde ein erfolgreicher Angriff eventuell den völligen Zugriff auf alle Dokumente bedeuten. Aus diesem Grund gibt es wieder Sicherheitsregeln. Jedes “Addon” muss seine benötigten Zugriffe über eine Manifestdatei mitteilen. Die Anwender/ innen können dann entscheiden, ob sie diese Zugriffe gewähren oder nicht (Da wird dann ein kleines Fenster eingeblendet mit einer Liste der Zugriffe). Allerdings hat man einem bösartigen “Addon” erstmal die Zugriffe gewährt, dann ist es eigentlich schon zu spät. Das ist das große Problem mit den “Addon”. Es gab aber in der Vergangenheit scheinbar auch bereits Sicherheitslücken in der Google Cloud selbst. Also dort, wo die “Addon” ausgeführt werden, d.h. man benötigte keine umfangreichen Zugriffe, um trotzdem sensible Daten auszulesen. Passiert! Das ist das Problem mit ausführbaren Programmen. Deswegen entwickeln größere Unternehmen mit höheren Sicherheitsansprüchen ihre “Addon” selber oder lassen von vertrauenswürdigen Anbietern entwickeln. Das gilt auch für die “Erweiterungen”. Übrigens gibt es zu den “Addon” und “Erweiterungen” im Store immer so kleine Bemerkungen von Google, ob es sich um registrierte Entwickler handelt usw.. Kann man drauf achten.
PWA’s kann man als “Web Apps” bezeichnen und ist relativ neu. PWA steht für “Progressive Web Apps”. Der Aufbau entspricht fast dem einer “Erweiterung” für einen Webbrowser, aber eine solche App kann auch unabhängig vom Browser ausgeführt und sogar auf Android und iOS installiert werden. Und fast alle Browser unterstützen die Installation und Ausführung einer solchen App. “Unabhängig vom Browser” stimmt so nicht ganz, weil die PWA’s die Engine des Browsers verwenden. Eine PWA wird nicht im Browser unter den “Erweiterungen” angezeigt (es sei denn es ist verknüpft)! Manchmal verwenden diese Apps einen “ServiceWorker”, um z.Bsp. ihre Daten aktuell zu halten. Den “ServiceWorker” kann man dann ganz normal auslesen. Ansonsten findet man im Chrome noch etwas unter “Einstellungen>Datenschutz und Sicherheit>Websiteeinstellungen”. Die App benötigt nämlich bestimmte Zugriffsrechte und die kann man dort eventuell für die Verknüpfte Webseite einsehen. Oder unter “chrome://apps”. Dort ein Rechtsklick auf das Symbol der App und dann kommt man in die Sicherheitseinstellungen der App. Man kann im Chrome Browser noch unter der Adresse: “chrome://flags” Einstellungen konfigurieren, die die Installation und Ausführung einer PWA steuern. ABER diese “Flags” sind noch experimentell! Unter “chrome://app-service-internals” findet man grundsätzliche Informationen zu installierten Apps. Dann gibt es mit “chrome://web-app-internals” noch Einblicke in das Manifest der Apps. Installiert man die PWA über einen Appstore, dann findet man dort weitere Einstellungen. Wie kommt man an eine solche App?
Im Normalfall über eine Webseite oder einen App Store. Ihr besucht z.Bsp. eine Webseite, die täglich News anbietet. Diese Webseite blendet euch dann eine Installationsmöglichkeit ein, d.h. ein Link auf der Webseite oder ein kleines Fenster wird eingeblendet oder ein kleines Symbol in der Adressleiste weist darauf hin. Also durchaus sehr unspektakulär. Auf Android und iOS funktioniert das über den App Store oder mittlerweile genauso direkt über die Webseite. Letztlich, wenn die PWA gut programmiert wurde, habt ihr ein kleines Symbol auf dem Rechner. Und über dieses Symbol könnt ihr die PWA starten und könnt euch in diesem Beispiel die News in der App anschauen.
PWA’s sind tatsächlich Web Apps. Die Apps verwenden ebenfalls Javascript mit HTML, aber das unterscheidet sich in den Möglichkeiten wieder von den direkt in den Browser integrierten Apps oder den noch verwendbaren Apps vom ChromeOS. Das Sicherheitsproblem ist hier durchaus sofort ersichtlich: Eine Webseite bietet eine App an, die dann nach einem Klick irgendwie installiert wird und auch noch einen “ServiceWorker” installieren und ausführen kann. Dazu kommt die Möglichkeit des Zugriffs auf den Webbrowser. Gute Virenscanner untersuchen die App auch während der Installation nach Auffälligkeiten, zumindest unter iOS und Android. Und trotzdem sind diese Apps ganz witzig und nützlich. Die PWA’s beanspruchen im Normalfall auch weniger Speicher als die herkömmlichen Desktop Apps. Aber man muss auch berücksichtigen, dass die PWA’s die Engine des Webbrowsers benötigen.
***www.router-it.de Juli 2023***