Ein kurzes Kürzel mit großen Auswirkungen: NIS2

Haben Sie durchgeatmet, weil Ihre Organisation nicht unter die Definition von KRITIS nach dem BSI-Gesetz fiel? Dann atmen sie nochmal tief ein, denn Ihre Puste könnten Sie bald für die Umsetzung der Anforderungen und Maßnahmen aus der europäischen Richtlinie NIS2 brauchen. Ende 2022 beschlossen, wird sie bis Herbst 2024 in allen EU-Mitgliedsstaaten in nationales Gesetz überführt werden müssen. Das bedeutet für rund 40.000 Unternehmen und vergleichbare Einrichtungen in Deutschland die Umsetzung ambitionierter Anforderungen und Pflichten.

Es kommen neue Sektoren hinzu, mit Anforderungen an mittelgroße Unternehmen (50-250 Mitarbeiter) und große (alles darüber) sowie für Ausnahmefälle, die sich durch eine hohe Kritikalität auszeichnen. Zusätzlich kommen auf die Organisationen Meldepflichten bei signifikanten Sicherheitsvorfällen zu und Vorgaben zu technischen, organisatorischen und operativen Sicherheitsmaßnahmen. Diese könnten sich über das geforderte Lieferkettenmanagement auch indirekt auf Zulieferer auswirken.

Einige Details ergeben sich noch aus den nationalen Verfeinerungen. Trotzdem sollten alle potenziell Betroffenen bereits jetzt überlegen, welche Auswirkungen sie bewältigen müssen, und wie ein Vorbereitungsplan aussehen könnte. „Herbst 2024“ klingt weit weg. Aber eineinhalb Jahre sind in IT-Projektzeit doch ziemlich wenig. 

Zusammenfassung und FAQ der EU: https://digital-strategy.ec.europa.eu/de/policies/nis2-directive Die Richtlinie im Detail: https://eur-lex.europa.eu/eli/dir/2022/2555/oj

Medientipp Februar 2023

Im letzten Newsletter hatten wir die Chancen und Risiken von ChatGPT diskutiert. In den letzten Wochen gab es dazu noch viele weitere spannende Experimente im Netz. Ein schönes Beispiel ist dieses Quiz von Heise Online:

https://www.heise.de/hintergrund/TGIQF-Quiz-zu-IT-Sicherheits-Abkuerzungen-7487850.html

Bei der Erstellung half die KI – aber klicken Sie sich lieber erst durch das Quiz und lesen Sie anschließend den Hintergrundartikel zu seiner Erstellung.

Wenn der White-Hat-Hacker anruft, aber niemand rangeht

Stellen Sie sich vor, ein findiger Mensch hat eine Sicherheitslücke bei Ihnen entdeckt. Wenn er oder sie jetzt Ihre Organisation darauf aufmerksam machen möchte: Wo würde die Information initial landen? Wie gut sind die Chancen, dass sie fachkundig bewertet und nicht als Werbung wegsortiert wird? Wer würde entsprechende Maßnahmen ergreifen? Und wer übernimmt die Kommunikation mit den Entdeckern – oder werden sie am Ende gar keine Antwort erhalten?

Die Erfahrungen der Entdeckerseite beschreibt ein Artikel in der „Zeit“ vom 19.01. Die Autoren hatten bei 15 Hochschulen Sicherheitslücken identifiziert. Im Artikel beschreiben sie die schnellen und positiven Reaktionen einiger Sicherheitsverantwortlichen, aber auch die Schwierigkeiten, überhaupt einen Ansprechpartner zu finden oder ein Feedback zu erhalten. Wer schon länger in der IT-Sicherheit unterwegs ist, kennt diese Problematik. Wie viele Advisories oder Artikel in Fachmedien zu Sicherheitslücken haben wir schon gelesen, die mit den Worten endeten: „Vom Hersteller gab es bis zur Veröffentlichung keine Reaktion“?

Auch wir erleben im Rahmen unseres Responsible-Disclosure-Prozesses sehr unterschiedliche Reaktionen auf unsere Meldungen. In einer Studie 2018 haben wir eine Lücke bei insgesamt 3.000 Betroffenen identifiziert und gemeldet. Lediglich 30 % davon reagierten mit der Schließung ihrer Lücke – andere Studien mit Warnungen von vielen Betroffenen kommen zu vergleichbaren Ergebnissen.

Aber zurück zu Ihrer Organisation: Sollten Sie immer alles stehen und liegen lassen, wenn eine Meldung beim Empfang eingeht? Auch hier erleben wir sehr unterschiedliche Situationen, wenn wir Kunden beraten. Natürlich kennt ein externer Sicherheitsforscher – anders als ein Auditor – die konkreten Sicherheitsziele Ihrer Organisation und die Kritikalität der einzelnen Systeme nicht im Detail. Daher wird meist vom schlimmsten Fall ausgegangen, und die Befunde entsprechend hoch eingestuft – gelegentlich auch zu hoch gegenüber einer näheren Betrachtung der Lücke und des Schadenpotenzials. Eine fachkundige Bewertung ist also immer zwingend nötig und daraufhin eine überlegte Reaktion – sowohl bei der Auswahl der getroffenen Maßnahmen als auch bei der Kommunikation mit den Meldenden.

https://www.zeit.de/2023/04/it-sicherheit-hochschule-sicherheitsluecken-hacker

Manchmal lauert der Angreifer auch schon drinnen

Angriffe durch Innentäter sind nicht ohne Grund der Schrecken jedes Sicherheitsverantwortlichen. Steckt doch inhärent der Konflikt darin, die richtige Balance zwischen vertrauensvoller Zusammenarbeit und kritischer Beobachtung von möglichen Missbräuchen zu finden. Daher werden Innentäter in Risikoanalysen immer gern kleingeredet. Auch wenn es keine schöne Vorstellung ist: es gibt sie doch.

Sehr drastisch ist der aktuell öffentlich diskutierte Fall, in dem ein BND-Mitarbeiter verdächtigt wird, vertrauliche Informationen an einen russischen Geheimdienst weitergegeben zu haben. Etwas kleiner, aber nicht weniger erschreckend ist ein ähnlicher Fall in den Niederlanden. Dort wurde ein Finanzbeamter angeklagt, da er verdächtigt wird, gegen Geld nach Nummernschildern, Adressen und sogar familiären Beziehungen gesucht zu haben.

Ähnliche Fälle gab es in der Vergangenheit auch bereits mit Support-Mitarbeitern, die Kundenkonten unberechtigt sperrten. Eine häufige Gemeinsamkeit ist, dass meist die regulären Zugriffsrechte und keine technische Schwachstelle ausgenutzt wird. Daher sind die Erkennung und auch die Aufklärung nur mit einem guten Konzept für Protokollierung und Monitoring möglich.

https://www.tagesschau.de/investigativ/ndr-wdr/bnd-russland-mutmasslicher-landesverrat-101.html

https://www.om.nl/actueel/nieuws/2023/01/03/eis-drie-jaar-cel-tegen-medewerker-belastingsdienst

“Tschüss” Windows 8 und Windows Server 2012

Diesen Dienstag endete der Support für die letzte Version von Windows 8. Viele werden jetzt aufatmen, da sich diese Betriebssystem-Version kaum in professionellen Netzen durchsetzen konnte. Aber haben Sie schon den letzten Windows-7-Client aus Ihrem Netzwerk entfernen können – oder warten Sie noch auf das Update der einen Fachanwendung? Bei Windows 7 lief vorgestern auch die allerletzte Verlängerungsmöglichkeit mit dem kostenpflichtigen ESU (Extended Security Update) aus.

Unser Incident-Response-Team findet regelmäßig bei betroffenen Kunden stark veraltete Systeme (seltener Windows 8 auf den Clients, häufiger noch Windows Server 2008), die entweder selbst den Angriff begünstigt haben oder durch nötige Abwärtskompatibilitäten Härtungsmaßnahmen behindern. Die korrespondierende Serverversion zu Windows 8 – Windows Server 2012 – wird auch in diesem Jahr, genauer im Oktober, ihr Support-Ende erreichen. Um rechtzeitig die Migration einplanen zu können, helfen Übersichtsseiten wie https://endoflife.date/.

Chancen und Risiken liegen manchmal nur einen Fingerabdruck auseinander – wie bei der Biometrie

Während in der aktuellen <kes> verschiedene Experten den Einsatz von Biometrie im beruflichen Kontext diskutieren, wurde parallel bei der Konferenz „Hacking in Parallel“ die damit verbundene Gefahr am Beispiel eines militärischen Biometriegeräts gezeigt.

Mehrere Geräte zur biometrischen Identifikation von Personen konnten über Onlineauktionshäuser beschafft werden. Die untersuchten Geräte waren zuvor in Afghanistan im Einsatz und enthielten noch Daten. Das Missbrauchspotenzial ist bereits erschreckend groß, wenn diese Geräte durch die aktuellen Machthaber zur Identifikation von damaligen Unterstützern – etwa Ortskräfte des US-Militärs –  verwendet werden. Zudem zeigten die Forscher, dass sich die vermeintlichen Hightech-Geräte bei der biometrischen Erkennung leicht austricksen ließen und über Sicherheitslücken Zugriff auf interne Daten ermöglichten.

Die in der <kes> unabhängig davon befragten Experten hatten ähnliche Risiken auf dem Schirm. Biometrie ist im beruflichen Kontext recht wenig verbreitet, hält aber über die auf Mobiltelefonen und Tablets bei der Privatnutzung bereits etablierte Entsperrung mit Fingerabdruck oder Gesicht immer stärkere Verbreitung in Unternehmen. Während die Biometrie für Privatnutzer meist ein deutlicher Sicherheitsgewinn gegenüber der vierstelligen PIN ist, trifft sie im Unternehmenskontext auf etablierte Sicherheitsmechanismen – und das tatsächliche Schutzniveau und Missbrauchspotenzial muss individuell bewertet werden.

https://pretalx.c3voc.de/hip-berlin-2022/talk/V7UFTL/

https://www.kes.info/archiv/heft-archiv/jahrgang-2022/ausgabe-20226/

Mehr als nur ein Versionsupdate: Die ISO/IEC 27001:2022

Im Oktober 2022 wurde die zentrale ISO-Norm zur Informationssicherheit aktualisiert. Die meisten Betroffenen haben sich vermutlich schon davor mit den Neuerungen beschäftigt. Aber nach einem Quartal in der Praxis ist eine erste Zwischenbilanz möglich. Zwei Neuerungen kristallisieren sich als typische Herausforderungen heraus: zum einen die Anforderung, die Bedrohungsentwicklung aktiv zu beobachten (Threat Intelligence), um auf strategischer, taktischer wie operativer Ebene reagieren zu können. Zum anderen bildet die jetzt nachzuweisende Cloud-Strategie für viele ebenfalls eine neue Challenge.

Die wichtigsten Änderungen: https://www.youtube.com/watch?v=53uwJY-mrIg

Cloud-Strategie: https://www.youtube.com/watch?v=nVlppw4EDuc

Doch lieber Zettel unter der Tastatur? Sicherheitslücken in Passwortmanagern

Natürlich ist das berühmte (und leider auch in einigen unserer Audits anzutreffende) Post-it am Monitor oder unter der Tastatur keine Lösung zum Speichern von Passwörtern. Passwortmanager sind angetreten, um das Problem zu lösen, dass sich Menschen nur wenige technisch sichere Passwörter merken können. Auch wir empfehlen die Nutzung regelmäßig, da so für jeden Dienst und jedes System ein individuelles, und vor allem auch bei Brute-Force-Angriffen sicheres Passwort leicht erzeugt werden kann. Gleichzeitig wird der Passwortmanager damit zu einem Generalschlüssel und lohnenden Ziel für Angreifer – ein neues Risiko, das man berücksichtigen muss.

Mehrere Vorfälle in der Vorweihnachtszeit haben gezeigt, wie real dieses Risiko werden kann. Die meiste Beachtung fand der Sicherheitsvorfall beim Anbieter LastPass. LastPass informierte die Nutzer bereits im August über den Vorfall. Zum damaligen Zeitpunkt ging man aber davon aus, dass die Angreifer zwar Zugriff auf Entwicklersysteme hatten, Nutzerdaten und gespeicherte Passwörter aber nicht betroffen waren. Im Dezember musste LastPass nun auch Zugriffe auf Back-ups von Kundendaten einräumen. Die Passwortdatenbanken lassen sich zwar nur mit Kenntnis des Master-Passworts des jeweiligen Nutzers öffnen. Aber damit sind wir wieder beim initialen Problem: Menschen sind meist nicht gut im Ausdenken und Merken von technisch sicheren Passwörtern.

Das Risiko besteht nicht nur bei Online-Passwortmanagern: Die Kollegen von ModZero fanden bei der OnPremise-Lösung PasswordState gleich mehrere Lücken. Kombinierte ein Angreifer ohne Zugangsdaten diese geschickt, konnte er beliebige Zugangsdaten auslesen und auch überschreiben. Die Lücken sind bereits behoben – wenn man das Update von Anfang November eingespielt hat.

https://blog.lastpass.com/2022/12/notice-of-recent-security-incident/

https://www.modzero.com/modlog/archives/2022/12/19/better_make_sure_your_password_manager_is_secure

Web vulnerabilities are coming to the Desktop – Template Injections lead to RCE in Teamwire

TL;DR (Teamwire users): A vulnerability has been found in Teamwire which can allow malicious users to execute commands on victim’s computers by sending a crafted Teamwire message. Upgrade Teamwire to the newest version as soon as possible to fix this vulnerability.

TL;DR (Technical): Template injections are a common vulnerability in web applications. If a desktop application built on a web engine is vulnerable to template injection, this can result in remote code execution on the client system.

Background

Template injection refers to a class of vulnerabilities that exploit the insecure embedding of user controllable data into template engines like AngularJS. Template engines use template files to define the design of a user interface by inserting special placeholders into a text. The template engine then dynamically replaces the placeholders with data at runtime, referred to as “rendering” the template. Many modern template engines even support carrying out complex computations inside the templates themselves. If an attacker embed one of these placeholders into a template, he can often execute functions in the underlying programming language.

To help support cross-platform compatibility, software vendors started embedding web engines into client desktop applications, thus removing the need to develop native applications for all different client platforms. NW.js is a technology that combines the browser engine WebKit with the JavaScript framework Node.js, and is often used to create cross-platform applications. This combination enables users to call Node.js functions directly from the DOM of the embedded Chromium browser.

For web applications, template injections are well known problem. Due to the increasing use of web technologies for the rapid development of client applications, this class of vulnerabilities has begun to manifest itself on the desktop too.

Teamwire is a “fast, intuitive and secure enterprise messaging app” for businesses. Teamwire clients are available for iPhone, iPad, Android, Windows Phone, Windows PC, Mac OS and Linux.

HiSolutions researchers have found two distinct template injection vulnerabilities during an internal security assessment of the Teamwire messaging platform (clients on Windows and the administrative interface), which could be used to target end users or platform administrators.

Technical Background

Teamwire is built on AngularJS. Angular implements a secure sandbox to attempt to prevent attacks even if user input is insecurely embedded in templates. As the sandbox was repeatedly bypassed, AngularJS developers decided that the effort was futile and shifted the responsibility back to  application developers. Currently, bypasses exist for all AngularJS Versions that enable an attacker to escape from the sandbox and execute arbitrary JavaScript commands.

Template injections in AngularJS can be illustrated as follows: If an attacker succeeds in inserting placeholder string, delineated with double curly brackets ( “{{…}}” ) into a template inside the application, any operations inside the brackets will be carried out when the template is rendered. In this case, inserting {{77*77}} into the name field (left) results in the product (5929) being displayed in the rendered display (right).

The expression “77*77” evaluates to “5929” when the template is rendered.

To bypass the sandbox in AngularJS 1.6.8, which is used by Teamwire, the following template string can be used:

{{constructor.constructor(‘###JavaScript-Code-Here###’)()}}

Vulnerability Details

Stored XXS in Admin Web Interface – CVE-2018-17560

Users can change their displayed usernames in the Teamwire clients without any restrictions. A user could therefore change his username to include a template string:

his {{constructor.constructor(‘document.body.style.backgroundColor = “green”;’)()}}

Our researchers found that when an administrator views the user inside the administrative web panel, the username is embedded insecurely (i.e. without encoding the placeholder to prevent execution) into the web page and the JavaScript code in the string is executed.

The example payload above only changes the background color of the HTML page, but a malicious user could insert arbitrary JavaScript code to be executed in the browser. An attacker could for example try to take over an administrator’s session or try to execute actions with admin rights in the web portal.

Attempting to delete the “malicious” user also triggers the vulnerability, as the admin must first view the user in the web interface to be able to delete them.

Desktop Client RCE – CVE-2018-17170

Another template injection was found inside the Teamwire desktop client. The vulnerable field was the name of a group chat. A malicious user must first create a chat with a crafted name including the template string. They can exploit this vulnerability to execute code on the victim’s system. If another user included in the chat writes a message to the attacker by selecting him from his contact list, the client merges the chats and the payload is executed on the victim’s system. Because the victim selects the other user from the contact list, he cannot see the manipulated chat name before the JavaScript is executed.

That only the first character of the chat names is displayed in the overview further helps to hide  malicious payloads.


Only the first part of the chat name is shown (left), hiding the malicious part.

The same code execution vulnerability is exploitable when the victim starts a chat with another user with a specially crafted username.

Because the Teamwire desktop client uses NW.js and the embedded Node.js has the ability to spawn arbitrary processes, template injection actually results in remote code execution on the client system.

This example payload opens the windows calculator on the client system:

{{constructor.constructor(“const x=require(‘child_process’).spawn; x(‘calc.exe’);”)()}}

The template injection can even lead to code execution on the receiving client.

Due to the internal structure of the code, the payload is executed four times when the vulnerability is triggered by sending a message.

Impact and Mitigations

The impact of the vulnerabilities is limited by the fact that a valid user account attributed to the organization is needed to perform the attack. If an attacker has obtained access to an account, no mitigation against the attack in the web interface (apart from not using it) exist. Preventing the code execution attack against the clients requires not accepting any messages from other accounts, obviating the purpose of a messaging application.

The vulnerabilities described above have been fixed in the backend version prod-2018-11-13-15-00-42  and in the desktop client version 1.9.0 released on 16.11.2018. To fully mitigate the vulnerabilities and continue the use of the product, these updates should be installed as soon as possible.

The vulnerability CVE-2018-17170 has been verified for the desktop client version 1.5.1, it affects most likely all versions prio to 1.9.0. The vulnerability CVE-2018-17560 affects all backend version prior to prod-2018-11-13-15-00-42.

Disclosure Timeline

16. October 2018 – Initial contact with the vendor

16. October 2018 – Submission of vulnerability details to the vendor

22. October 2018 – Further communication with vendor

16. November 2018 – Update released

21.  June 2019 – Public disclosure (the vendor asked for a postponed publication of the details, which we agreed on)

Credits

The vulnerabiliy was found by Julian Beier, Lars Burhop, Benjamin Braun, Viktor Schlüter and Denis Werner (HiSolutions).