LNP396 Hochsicherheit kommt vor dem Fall

Ein Logbuch:Spezial zur letzten dicken Sicherheitslücke in der Luca App

Ja, wir können es ja auch nicht mehr hören, aber um der Chronistenpflicht gerecht zu werden, müssen wir halt ein weiteres darstellen, warum die Luca App nicht nur aus prinzipiellen Gründen (hilft nicht bei der Bekämpfung der Pandemie) sondern auch wegen konkreter Sicherheitsmängel nicht die Karte ist, auf die wir setzen sollten. Wir sprechen heute mit Markus Mengs, der sich die "Integration" der Luca App mit den Gesundheitsämtern mal genauer angeschaut hat und ein paar schaurige Entdeckungen gemacht hat.

avatar
Linus Neumann
avatar
Tim Pritlove
avatar
Marcus Mengs

Für diese Episode von Logbuch:Netzpolitik liegt auch ein vollständiges Transkript mit Zeitmarken und Sprecheridentifikation vor.

Bitte beachten: das Transkript wurde automatisiert erzeugt und wurde nicht nachträglich gegengelesen oder korrigiert. Dieser Prozess ist nicht sonderlich genau und das Ergebnis enthält daher mit Sicherheit eine Reihe von Fehlern. Im Zweifel gilt immer das in der Sendung aufgezeichnete gesprochene Wort. Formate: HTML, WEBVTT.


Transkript
Tim Pritlove 0:00:00
Guten Morgen Linus.
Linus Neumann 0:00:00
Guten Morgen Tim.
Tim Pritlove 0:00:03
Sag mal, jetzt müssen wir schon wieder über die Luca-App reden. Du hast gesagt, wir reden nicht mehr über die Luca-App.
Linus Neumann 0:00:08
Wo war ich letzte Nacht? Wieso bin ich jetzt noch wach? Ist jetzt eh egal. Das war das letzte Mal.
Tim Pritlove 0:00:38
Lokbuchnetzpolitik Nummer dreihundertsechsundneunzig, wir schießen in hochgeschwindigkeit hier die Sendungsnummer nach oben und ihr fragt euch schon, ist dennBundespolitik jetzt ein Daily Podcast geworden. Ja, in dieser Woche ist es tatsächlich so, aber da hat sich jetzt irgendwie einiges aufgestaut und nachdem äh man den Stau abgearbeitet hat,dann schon wieder so Themen rein, die unbedingt auch noch behandelt äh werden mussten und was wollen wir denn machen? Das ist dann halt einfach so. Schlimmste, so ist es.
Linus Neumann 0:01:10
Ja, kann man ja nicht mit rechnen, dass äh die News von vor drei Wochen äh plötzlich siegend heiß auch bei Nexenia am ankommen.
Tim Pritlove 0:01:19
Genau, eine kleine äh Vorschau auf den äh Inhalt dieser Sendung und ähm ansonsten gehen wir nochmal ein bisschen durchs Feedback, bevor wir das aber tun, verraten wir euch auch noch, dass wirein Gast dabei haben in dieser Sendung und wir begrüßen Markus. Markus, hallo Markus.
Marcus Mengs 0:01:38
Hallo Tim, hallo Linus.
Tim Pritlove 0:01:40
Herzlich willkommen bei Logbuch Netzpolitik. Du hast deine äh Hände ganz tief drin im äh im Luka-Motor und hast sie schmutzig gemacht.
Marcus Mengs 0:01:51
Ja
Tim Pritlove 0:01:52
Nicht wahr?Und äh deswegen haben wir dich eingeladen, wir quatschen auch gleich und stellen äh dich dann auch nochmal im Detail vor, aber ich glaube, wir schaffen jetzt erstmal hier noch das Feedback ähm weg, denn.Die Sache mit der Doktor arbeiten, ne? Das.
Linus Neumann 0:02:10
Wir haben ja, wir haben ja provoziert, wir haben ja, wir haben ja Kommentare von Doktor Würdenträgerinnen, ähm,provoziert und auch erbeten und da fand ich zwei besonders schön, die wollte ich jetzt mal ganz kurz äh noch vorlesen.Und zwar haben wir Feedback von Eckhard.Ich bin Biologe, Doktorte in meinem Fach belegen, dass eine Person eigenständig und erfolgreich geforscht hat. Wir arbeiten dafür so etwa vier bis fünf Jahre hochmotiviert in Vollzeit. Also Eckart, das mit dem hochmotiviert weiß ich nicht. In Vollzeit auf jeden Fall.Die Forschungsergebnisse werden in der Regel in internationalen Fachzeitschriften publiziert und müssen erfolgreich vor allem anerkannten Expertengremium vertreten.Und für Wert befunden werden. Der,Der Promotionsausschuss meiner Fakultät birgt für die Qualität der Promotionen. Der Wert des von uns verliehenen Titels ist in diesem Sinn international anerkannt. Der Titel zertifiziert also eine bestimmte,Qualifikation. Dieses System dient der Qualitätssicherung und funktioniert sehr gut. Man kann das auch mit einem Meisterbrief vergleichen. Ja, super äh sehr gutes Beispiel. Hochproblematisch ist die jahrelange große Abhängigkeit von der Betreuerin.Altbacken, sinnlos und dumm ist die Idee, dass ein Doktortitel eine Person generell aufwertet. Als Wähler Mensch und Bürger sind wir alle gleich. Dem Titel gebührt kein besonderer Respekt und er hat meiner Meinung nach im.Alltagsleben nichts zu suchen. Deswegen sind Doktorte für Politiker eigentlich vollkommen sinnlos, wenn es um Wissenschaft geht.Sollen sich diese auf den wissenschaftlichen Dienst verlassen. Sie brauchen selbst keine Forschungsqualifikation.Dann hat noch darauf kommentiert auf also der Gestalt hatten wir mehrere Kommentare. Da fand ich noch einen sehr schön von Doktor Ing Düsentrieb.Der hat uns mitgeteilt. Hallo, ich kann Jan und Eckhard oben nur beipflichten. Gilt so auch für meinen Fachbereich im Ingenieurswesenauch für meinen Titel waren circa fünf Jahre Vollzeitarbeit notwendig. Drei davon waren mit sehr großem Leidensdruck verbunden. Auch ich führe meinte nur, wenn's passt.Hausverwaltung und andere nervige Leute sind super Beispiele. Die gehen dann die gehen einem dann eventuell etwas weniger penetrant auf den Keks,meint ihr, liebe Doktor Würdenträgerinnen? Aber zu oben erwähnten großen Abhängigkeit vom Betreuer sind ja fast ausschließlich Männer, möchte ich doch noch was loswerden. Die Aussage.Wer bis dahin nie betrogen hat, wird's auch bei der Doktorarbeit nicht tun und danach dann sicher auch nicht mehr damit aufhören, wurde von euch ja für,kategorischen Unfug gehalten. Ähm das sehe ich anders. Die Doktorarbeit bringt unfassbar viele Menschen an,und etliche über ihr Limit. Die meisten davon eher spät in ihrem Leben. Schule ging mit links, Studium war noch nicht hart genug und davor abzuschrecken.Also startet man ein Doktorrat. An meiner Uni melden sich Statistiken zufolge fünfundzwanzig Prozent aller Promovierenden mindestens einmal bei der psychologischen Beratungsstelle.In meinem damaligen persönlichen Umfeld würde ich auf mehr als zehn Prozent schätzen, welche längerfristig mehrere Monate in Behandlung waren. Dunkelziffer potenziell riesig, da man sowas ja gern verschweigt. Der Druck ist immens, wenn man vier Jahre hinter sich hat und es dann heißtdu brauchst noch ein Paper, sonst wirst du nicht fertig. Man hängt in den schönen flapzig beschriebenen prekären befristetenVerträgen und man hat hinterher am Arbeitsmarkt einen Antidoktor, wenn man's nicht schafftDie Arbeitgeberin sieht im Lebensdorf A, der hat's nicht gepackt, sondern kurz vorm Ziel hingeworfen. Den nehmen wir lieber nicht.Ich habe nie in meinem Leben ernsthaft betrogen, aber im letzten Jahr meines Doktor Rats mehrmals sehr ernsthaft darüber nachgedacht. Gedanken wie.Im Endeffekt schaut die Arbeit ja eh niemand so genau an.Dass man die subtilen Fehler findet. Es sei denn, ich kandidiere in zwanzig Jahren für ein hohes Amt und das komplette Internet dreht in einer koordinierten Aktion jeden Satz einzeln um.Reproduzieren wird das garantiert niemand. Meine Daten sind zwar neu für die Wissenschaft, aber interessieren eh keinen.Hier ein wenig Rauschen wegmachen, dort einen Datenpunkt leicht verschieben, dass er besser auf der erwarteten Trendlinie liegt oder die Fehlerbalken aus Versehen um Faktor fünf zu klein einzeichnen, tut ja keinem wirklich weh.Aber es verhindert dumme Fragen von meinem Chef und von den Reviewern und vereinfacht die Arbeit ungemein.Ich weiß zwar, dass diese Messungen Müll sind, weil ich das System falsch eingestellt habe, aber sie passen so gut zur Geschichte.Wenn ich diese Linie etwas extra poliere, dann sieht's noch besser aus. Also das waren die Gedanken, die äh Doktor In Düsentrieb da so schildert.Letztendlich habe ich nichts davon gemacht,mich auf dem Zahnfleisch und Antidepressiva durchs letzte Jahr geschleppt und mir geschworen, mich nie wieder in so eine Abhängigkeit zu begeben. Aber wenn ich's gemacht hätte, würde ich mir das heute als einen,Notfall in Ausnahmesituationen zurecht reden und ebenfalls nie wieder machen.Da ist eben der Punkt, wo ich ja gesagt habe, wenn man das wenn man damit einmal durchkommt, dann lernt man daraus, dass man's nochmal machen kann,Da widerspricht mir also Doktor In diesem Trieb, aber schön finde ich das Fazit.Longstory short, so schwarz weiß ist das alles nicht, vorausgesetzt wir reden von einer richtigen Dissertation. Da gibt es durchaus Fehlverhalten, welches ich nachvollziehen, aber nicht gutheißen kann,Wer allerdings eine Doktorarbeit in Anführungszeichen,Umfang eines Mickey Maus Hefts in den einschlägigen Disziplinen schreibt, wo das in wenigen Monaten auch ehrlich möglich wäre. Und da dann auch noch betrügt,dem ist wirklich nicht zu trauen. Interessanterweise sind das oft dann genau die, die dann ganz großen Wert darauf legen.Titel angesprochen zu werden.Den fand ich schön. Es gibt noch viele weitere Kommentare von Doktor Martens als Promoviker, promovierter Chemiker. Und äh ich hätte gar nicht damit gerechnet, dass so viele ähm.Ja, tatsächlich, promovierte Wissenschaftlerin im, ja, der These zustimmen, dass es eine besondere Leistung ist. Selbstverständlich die äh die die Disteltation. Aber eben, dass sie auch die Ansicht teilen, dass das Führen des jetzt,vielleicht äh zu viel des Guten ist und eben auch leider äh die Leute anzieht, die eben scharf auf den Titel sind und nicht,das Blut für die wissenschaftliche Forschung lecken. Ja, vielen Dank für die Kommentare.Immer viel mehr unter den unter der äh letzten Sendung und bisschen unfaire Situation, weil die haben ja erst kürzlich veröffentlicht und äh werden sicherlich noch viel mehr Kommentare kommenbis zu dem Zeitpunkt, wann wenn diese Sendung wiederum hier erscheint, deswegen äh kann ich euch nur empfehlen, da mal reinzuschauen in die Kommentare.
Tim Pritlove 0:09:47
Auf jeden Fall, ein ein Füllhorn.
Linus Neumann 0:09:52
Vom Umfang einer Doktorarbeit.
Tim Pritlove 0:09:53
Also manche Kommentare haben auch wirklich den Umfang einer einer Doktorarbeit.Könnt ihr euch eigentlich schon äh könnt ihr euch mit einem passenden Titel, äh vielleicht müsste man so aus Logbuch erst so ein LNB KM Titel oder so.
Linus Neumann 0:10:11
Aber das ah vielleicht sollten wir eine Sache noch kurz ergänzen. Da ist ja auch dieser, also in die Promotionsordnung oder die äh unterschiedlicher Fakultäten ähm,Also so eine Monografie, dass man jetzt eine,Doktorarbeit schreibt oder ein Buch, das ist tatsächlich in den ähm wissenschaftlichen oder empirischen Wissenschaften auch eher unüblich. Da wird halt dann tatsächlich gesagt, ähm.Was weiß ich, äh ein Themenbereich, drei Artikel in.High Impact Journals von mindestens Impact-Faktor soundso oder vier Artikel in äh Impact-Factor so und so.Das heißt, da ist die, da ist diese äh Promotion tatsächlich an äh eben Peer-Review wissenschaftliche Leistungen gebunden. Was ich im Übrigen ähm die äh die sehr viel sinnvollere Anforderungen finde.Dass man nicht da irgendwie so die habe ich. Döner hast du deine Doktorarbeit geschrieben? Am Ende musst du noch selber einen Verlag dafür finden, ja zurecht, weil die Scheiße ja auch keinerlesen will, muss nämlich am Ende den Druck selber bezahlen und da ist natürlich die Anforderung okay. Äh publiziere zu dem Thema in High Impac Journals ist natürlich ähmeine eine äh sinnvollere Anforderung, zumal,wie wir aus der Sendung mit Julia Reeder wissen, äh da hochkarätige Wissenschaftlerinnen, kostenlos das äh.Die Qualitätssicherung machen und dann deine Uni das zurückkaufen muss. Aber äh wir schweifen ab.
Tim Pritlove 0:11:42
Ja, also wenn man schon Doktortitel macht, dann sollte man sich zumindest irgendwie ein bisschen Mühe geben und äh Vroni fest sein.
Linus Neumann 0:11:52
Markus, wir wollten, wir wollten mit Markus sprechen, oder?
Tim Pritlove 0:11:54
Genau, wir wollten und werden das jetzt auch äh tun. Ähm.
Linus Neumann 0:11:59
Eigentlich kein Titel, Markus.
Tim Pritlove 0:12:00
Oder welchen hast du denn? Denk dir einen aus. Wir werden den einfach benutzen.
Marcus Mengs 0:12:05
Ich hätte ja, ich hätte ja Titel, aber Zertifikate und so, da wird man ja nicht damit.Das ist aber das ist nochmal eine anderes Thema.
Tim Pritlove 0:12:14
Genau. Sag uns doch jetzt erstmal, äh was du eigentlich so tust und ähm sozusagen warum du hier bist.
Marcus Mengs 0:12:24
Ich bin äh beruflich bin ich Infos. Das müsste ich lügen. Ich schätze mal so seit siebzehn Jahren in der gleichen Organisation, die ist groß.
Tim Pritlove 0:12:35
Das heißt, offiziell in der IT-Sicherheit äh äh betätigt. Ja, das ist das, was du meinst mit Infos.
Marcus Mengs 0:12:42
Ja, in äh in all ihren Facetten, genau. In all ihren Facetten. Vielleicht auch mal mit einem, naja, ich sage Info-Seck, weil es eben nicht nur IT-Sicherheit ist, sondern du hast ja auch Berührungspunkte, Datenschutz und ja.
Tim Pritlove 0:12:56
Okay, aber das ist ein Codewort für bist du so ein, so ein, so ein Keller-Nerd, der sich irgendwie mit allen Details äh der Maschinen auseinandergesetzt hat und das jetzt äh zu Geld macht.
Marcus Mengs 0:13:06
Ja, das ist eher die private Seite von mir, die muss ich eben immer ein bisschen trennen. Es freuen sich viele, dass ich auch ein großes, privates Interesse habe, dabei das wird dann auch bei dem Thema so, also bei Luca.Dass ich da eigentlich eher im privaten Umfeld.Drum rum getanzt bin und dann irgendwie tief rein. Wie hast du das vorhin gesagt? Ich habe nur gewartet bis braune Masse mit drin auftaucht, aber tief drin gewühlt, tief drin gewühlt war's glaube ich,habe ich am Ende aus privatem Interesse. Das paart sich natürlich mit den.Beruflichen Interesse, weil meine Hauptaufgabe ist äh Sensibilisierung durchzuführen, das heißt äh,Klientel der äh was so vor mir steht, vor Gefahren und Risiken zu warnen und dann hat da irgendwie ganz automatisch Luca mit reingespielt und da musste ich mich natürlich auch damit beschäftigen, weil ich nicht gerne irgendwas erzähle, ohne auch zu wissen, wodrüber ich rede.
Tim Pritlove 0:13:57
Hm. Wie lange beschäftigst dich jetzt schon damit?
Marcus Mengs 0:14:02
Das müsste ich jetzt meine Frau fragen, weil die wird wahrscheinlich ein sehr viel längeren Zeitraum nennen. Ich glaube, äh wenn.Ja, es ist ja mal die Frage, falls du eine Tastatur an, um dich mit was zu beschäftigen oder beschäftigst du dich mental damit?
Linus Neumann 0:14:20
Wie oft war's am äh Abends am Esstisch Thema?
Marcus Mengs 0:14:23
Das vermeide ich, aber wenn ich nicht mehr ansprechbar bin, dann merkt die das schonsich über was anderes sind ja. Also ich müsste ähm jetzt auch von der Chronologie oder Historie her ganz interessant ist. Ähm es war tatsächlich für mich ein Thema. Ich bin oft angefragt worden wegen Luca, aus verschiedenen Richtungen, weil ich äh.Glaube zu, dass gute letzte halbe Jahr mobile Applizes gemacht habe, also alles, was so Smartphone-Apps äh an.Was sie nicht machen sollen im Privacybereich. Da guckt man ja schwer dahinter abseits von dem, was man lesen kann.Da wurde ich auch immer mal wegen Luca gefragt. Das hat mich wenig interessiert das Thema. Äh ich habe auch verpasst, dass es relevant geworden ist, weil Geld dafür ausgegeben wurde, aber ich habe dann irgendwann bei Twitter, das ist das,So mein einziges soziales Medium gelesen, wie äh die,Theresa, das glaube ich. Die war beteiligt an einer Veröffentlichung. Äh,die ich für, ja, die für mich fachlich nachvollziehbar und fundiert war und die ist da so abgewatscht worden von einem Musiker, dass ich da doch mal ein bisschen tiefer in das Thema eingetaucht bin, weil mich dasKommunikationsverhalten so gestört hat,Und dann habe ich in meinem Urlaub, den ich da noch hatte, angefangen zu lesen, was gibt's denn da zu Luca? Und dann habe ich was gefunden, was Security-Konzept heißt, aber keins war,Bei mir viele Fragen aufgeworfen hat und dann habe ich schon gewartet, dass mein Urlaub zu Ende ist, dass ich eben eine Tastatur anfassen kann und kann's mir auch mal angucken.Hat sich viel bewahrheitet von den Unstimmigkeiten, die in diesem Konzepten schon aufgetaucht sind. So ungefähr war die Geschichte von mir zu Luca.Also länger als fünf Wochen bin ich da auf jeden Fall schon dran.
Tim Pritlove 0:16:06
Okay. So und was ähm können wir denn jetzt eigentlich neues äh berichten? Also ähm Luca ist ja ein komplexes System.
Linus Neumann 0:16:20
Bevor wir da jetzt direkt hinspringen zu den neuesten,Forschungen von Markus trotzdem nochmal so ein Kurzrekapitulieren, was es bisher schon so gab. Also es gab ja dieses Paper von Theresa Stadler und anderen, ja, Potential Harms.Auf die Luca-App, was eben einfach nun, also was wirklich sehr theoretisch war. Ähm es gab,die Veröffentlichung des CCC Luca-App CCC fordert die Bundesnotbremse. Es gab die Einlassung von Ulrich Kälber und es gab diesen offenen Brief von.Siebenundsiebzig Forscherinnen, dem der deutschen IT-Sicherheitsforschung und vierhundertsechsundsiebzig Leuten, die jetzt auch noch unterschrieben haben.Äh Zeitpunkt heute, das sind sicherlich schon wieder mehr geworden. Und da wurde immer wieder vor Risiken gewarnt und ich würde eigentlich sagen, bevor wir jetzt vor dem bevor wir zu dem.Großen neuen Dingen von Markus kommen. Ähm würde ich eigentlich auch noch gerne ein bisschen über diese YouTube-Video,Playlist sprechen, die du da angelegt hast. Das waren ursprünglich zehn Videos, ne?
Marcus Mengs 0:17:31
Ja tatsächlich äh muss, es sind mittlerweile ich habe ein paar gar nicht veröffentlicht, also ich müsste ich denke es sind zwölf, ähm mittlerweile.
Linus Neumann 0:17:40
Ja, es, ich, es sind jetzt im Moment zwölf, ne, wo du.
Marcus Mengs 0:17:44
Zwölf die sichtbar sind, ja.
Linus Neumann 0:17:45
Ich glaube aber, dass die irgendwie anfangen mit so eins von zehn, zwei von zehn, drei von zehn und so weiter, elf, zwölf.
Marcus Mengs 0:17:51
Das habe ich so gelassen. Seid ihr auch Scham und sagt was aus.
Linus Neumann 0:17:58
Und äh da hast du dich mit ähm ich sag mal ähm den.Den Risiken und den Schwachstellen des Systems auseinandergesetzt, die nicht.Keine Ahnung, Seite eins, Zeit online oder Spiegel DE oder äh heiße oder äh sonst was schaffen, weil sie ja, sogenannte,Schwachstellen in Anführungszeichen, theoretischer Natur sind. Undwas ich daran so spannend fand ist, das ist ja auch immer das, dass sie das, was ja oft äh von Seiten Nexenio, den Entwicklern der Luka-App ähm immer so gesagt wird, ja das ist ja hier so ein Glaubenskrieg, ne, das sind äh die die,die finden hier einfach nur religiös einen dezentralen Ansatz besser und ähm meine Antwort und ich denke auch insbesondere deine Antwort darauf war ja immer,Nein, wir wissen einfach nur, was welche Risiken man sich alle mit einem zentralen Ansatz einkauft,die man Antworten braucht, die man eben in einem dezentralen Ansatz in der Form einfach nicht hat. Und ähm vielleicht magst du ja so ein bisschen was zu deinen.Zu den Videos deiner der letzten Wochen so sagen, was du da so alles schon gezeigt hast.
Marcus Mengs 0:19:14
Ja, gerne. Ähm man muss vielleicht auch dazu sagen, äh eigentlich,geht das von groß nach klein, ne? Die Veröffentlichung von äh die wissenschaftliche Veröffentlichung, ne? Ich glaube, das ist ja eine Universität in Luzern gewesen, wo die Theresa Stadler,veröffentlichen, da war äh die ist ja äh.Nicht wirklich theoretisch gewesen, sondern eher abstrakt, ja, ohne die Technik anzufassen und in der ähm Forderung vom CCC war von mir auch schon mal, ich will das jetzt nicht Paper nennen, es war einfach eine äh,des Netzwerkverkehrs, aus der sich Schlüsse ziehen lassen, die ist ja auch mit veröffentlicht worden und eigentlich decken die ersten zehn YouTube Videos, die ich da angedacht hatte, das Gleiche ab, weil ähm.Wenn du so eine Analyse schreibst, du hast ja, du willst ja jemanden damit adressieren, ne? Das ist zum einen äh ich sage mal die Leute, die mit den äh Risikobewertungen befasst sind und natürlich den Hersteller, dass der da was anfassen kann und ich hatte irgendwann das Gefühl, okayDauer das war falsch adressiert weil da bewegt sich nichts also sollte man das vielleicht nochmal ein bisschen.Breiter streuen. Da ist dann Video geeigneter. Aber das sind natürlich harte, abstrakte, trockene Themen. Also es ist, ich würde nicht sagen, es ist theoretisch, weil die ersten zehn Videos davon handeln eigentlich was sehr konkretes ab.Ähm weil die auch auf der ähm Analyse vom Netzwerkverkehr der App basiert haben, eben das, was schon in dem Security-Konzept unstimmig aus,sah. Und das Interessanteste für die für die das äh zu trocken ist, ist eigentlich das zehnte Video, was das zusammenfasst, weil das kommt zu dem Ergebnis, dass du,da bist du bei dem zentralen Ansatz, aus der Position von dem Backend-System. Ähm,oder sagen wir mal von dem Betreiber verwalteten Anteilen des Gesamtsystems und das ist egal, ob du dann in der Rolle des Betreibers bist oder von einem Angreifer, der sich dem System bemächtigt hat, da kannst du,Rückschlüsse ziehen äh auf einzelne Geräte, komplette Bewegungsprofile für einzelne Geräte, die an dem,System partizipieren, erstellen, du weißt zu den Geräten am Ende die Telefonnummer und du weißt auch, ob das Gerät mit seiner kompletten Locationhistorie äh zur.Infizierten Person gehört oder zumindest zu einer Person, die mal vom Gesundheitsamt abgefragt wurde oder nicht. Und du weißt die Telefonnummer dazu, was ein schon sehr persönliches Datum ist, ohne überhaupt irgendwas von den Kryptosachen mal angefasst zu habenweil das einfach äh die Informationen sind, die an dem Backend auflaufen, wenn man das einfach nur lange genug beobachtet,Teilweise aus Metadaten, dann weiter wird immer Daten vorgeschoben. Hm und ähmwährend ich mir das angeguckt habe und habe die Videos produziert, es ist so Salamischeiben taktikmäßig, dann auch ein bisschen Quellkot aufgepoppt, der war mal unvollständig. Der App-Quell-Code war auch unvollständig, der zuerst released wurde,und ähm ja beim Schauen in dem Code, dann wenn man sowas manchmal macht, ein bisschenda ist ja kein notwendig, aber so Code-Reviews, dann machst du dir Notizen. Da ist dann Auffälligkeiten, da sind Auffälligkeiten und ich hatte ja schon viele Notizen und die sind nur immer mehr geworden,Und da habe ich mir die gravierendsten Sachen rausgegriffen, dann sind halt nochmal neue Videos,geworden, in Teilen. Das waren dann eben.Ich hätte gesagt, das sind Sicherheitslücken, das hätte ich jeden anderen gesagt. Wenn mir jemand sowas gemeldet hätte, hätte ich auch gesagt, das sind Sicherheitslücken. Man kann auch funktionale Fehler sagen.Also da ging's drum, dass du äh das System hat ja Schlüsselanhänger für die Leute, die kein Handy haben, beworbenes Feature. Es gab jaschon mal die Geschichte mit Luca Treck, wo man von Nutzern von Schlüsselanhängern von außen die kompletten Bewegungsprofile abfragen konnte, von innen, also aus Betreibersicht geht das sowiesoähm.
Linus Neumann 0:23:11
AlsoDu, du, du, du bist, glaube ich, grade ein bisschen zu schnell für die durchschnittliche Zuhörerin. Äh, Luca-Track war das, ähmAlso, was war der Grundfehler bei Luca Track? Du hast also das eine hast du schon gesagt, wenn du wer diese Schlüsselanhänger benutzt,ohnehin für die für die für die Betreibertransparent, ne? Also da weiß man einfach aha, das war die Person, die wir jetzt an Location eins, die war jetzt an Location zwei zu dem Zeitpunkt. Das liegt einfach daran, dass es,Onlinesystem ist und die sich in die Datenbank schreiben. Die Person war jetzt hier, die Person war jetzt hier die Person, war jetzt hier. Jetzt mussten sie diese Daten aber eigentlich würde, würden wir jetzt erwarten, wenn sie die schon haben, wenigstens vor,fremden Zugriffen schützen, also wenigstens sollte nur das Gesundheitsamt oder die betroffene Person diese Daten einsehen können. Haben sie nicht gemacht?Sondern man konnte, wenn man den QR-Code von einer Person kannte, auch auf deren Bewegungsprofil zugreifen. Aber das ist so richtig zusammengefasst.
Marcus Mengs 0:24:15
Ja, wobei du da ein paar, ich denk mal, die sind auch für die breite Zuhörerschaft interessante Aspekte, die du da,versteckst, weil ähm.Wenn man von Verschlüsselungen redet oder wenn Luca von Verschlüsselung redet, dann verschlüsseln die nicht äh, dass sich jemand in irgendeine äh Location eingecheckt hat. Das ist da scheinbar kein sensitives Datum, also allein mit einem Snapshot, also einen kurzen Blick auf dasBackend siehst du, in welche Location wie viele Leute eingecheckt sind. Du siehst dieDaten der Locations, weil das sind alles keine verschlüsselten Komponenten. Du siehst nicht, wie der Nutzer heißt, der da eingecheckt ist. Das ist quasi der Anteil, der verschlüsselt istauch zentral auf dem Silber vorgehalten wird und was Luca Trekke jetzt eben gemacht hat, istähm äh diese Daten abzufragen, denn es gibt eine Abi-Schnittstelle.Dafür, wo ähm man als berechtigter Besitzer von so einem Schlüsselanhänger natürlich abfragen kann, äh wann war ich wo eingecheckt.Weil diese ganzen Datenpunkte gespeichert sind und wenn man sich das als Datenbank vorstellen würde, die ID,also von einem einzelnen Eintrag irgendein Nutzer XY mal in irgendeiner LocationXY eingecheckt, äh jeder dieser Einträge hat eine ID in der Datenbank, die nennt sich ID.Wenn du so einen Schlüsselanhänger hast oder die Seriennummer, dann kannst du diese TraceIDs, die da verwendet werden, errechnen und man konnte das von der AP alles von außen abfragen.Als Feature, weil die Nutzer ja ihre Locationhistorie abfragen können sollen. Kann halt jeder machendieser IDs generieren kann und weiß, wie er abfragen muss. Äh das heißt nicht, dass das jetzt nicht mehr,Daten nicht mehr vorhanden sind und dass das jeder äh jeder, der auf das Becken Zugriff bekommt, äh der kann die gleichen Daten immer noch abfragen, also wenn,der Betreiber äh Schlüsselanhängern kennt, kann dir auch heute diese Daten noch genauso abfragen, weil die Pläne in der Datenbank liegen.Und das ist auch ein äh,ja eine Problemstellung, die zu Tage getreten ist. Es gab ja ein äh, dass das Thema ist ja auch mal in dem Ader, also im Ausschuss Digitale Agenda behandelt worden.Da ist die Frage gestellt worden, mehr diese äh Schlüsselanhänger herstellt, weil das sind alles Leute, die die Seriennummern kennen und damit auch Zugriff oder zumindestwüssten, wie fragt man diese Bewegungsprofile ab? Diese Frage ist gar nicht beantwortet worden. Es kam jetzt hinterher raus, dass Nexenio diese Schlüsselanhänger selber generiertdie am Ende druckt, ist egal, also die Frage ist ja, wer hat die Seriennummern dafür, denn da schlägt das Schlüsselmaterial drin. Was gemacht wurde nach Luca Trecker ist einfach äh zu sagen, okay, wenn jetzt von außen die AP abgefragt wird und so ein Check-In gehört zu einemSchlüsselanhänger, dann senden wir das nicht mehr. Wenn der zu einem App-Nutzer gehört, senden wir das trotzdem noch, aber die Daten sind trotzdem unverschlüsselt da.
Linus Neumann 0:27:07
Und das ist, das zeigt auch so ein bisschen, ne? Also.Ich fand das ja schon auch ein bisschen scharf, wie jetzt in den letzten Monaten mit den vielen Schwachstellen bei Luca. Ähm die,immer als so einen Glaubenskrieg dargestellt wird, ne. Jadie sind ja nur irgendwie, ne, die sind ja irgendwie fundamentalistische, die Zentralisten und da finden wir nicht in Ordnung so, da muss man ja auch mal hier muss man auch ein bisschen zentral denken und so, ne? Und.
Marcus Mengs 0:27:37
Ja bisher witzig.
Linus Neumann 0:27:38
Äh das sind natürlich genau die Probleme, die man sich einfängt, wenn alles aus einer Hand kommt, ne.
Marcus Mengs 0:27:48
Ja, ich glaube, was du sagst, sind auch fast schon äh Zitate, ne, weil wenn man äh jetzt mal einen Spiegel so von äh Aussagen aus der Lukamacher-Riege nimmt, da wirst du genau solche Schlagworte finden, wie fundamental Kritikdas sind Verfechter vom zentralen System, die entwickeln selber zentral. Die spielen natürlich mit so was ist eher, ich glaube eher PR getrieben, als dass das,fachlich, inhaltlich wertvoll ist, oft was von da kommt, aber ja. Nee, das stimmt, ja.
Linus Neumann 0:28:16
Würdest du sagen, also wenn man jetzt, wenn man jetzt Luca-Track mal so anschauen, ne? Würdest du sagen, das Problem wäregeringer wenn Luca ein dezentrales System wäre und die Leute sich die Schlüsselanhänger beispielsweise hätten selber würfeln können.Oder es gäbe mehrere Leute, bei denen man die Schlüsselanhänger kaufen kann, was weiß ich.
Marcus Mengs 0:28:45
Ich halte es für äh schwierig so ein Feature wie äh.Softwarelose Partizipation, was ja die Schlüsselanhänger, die lassen dich an dem System ohne äh Software, ohneKomponenten teilnehmen, das dezentral zu implementieren, aber ja, das geht und dann wird er das das Problem nicht geben, nämlich dann, wenn ähm.Ich sage, ich äh lagere die Daten äh direkt beim Gesundheitsamt. Das wäre natürlich ein immenser Aufwand äh und den das ist ja auch ein Verkaufsargument von Luca, das abzunehmen, auch wenn sie das.Nicht an jeder Stelle sicherstellen, weil dezentral für Schlüsselanhänger würde heißen ja du hast nur eine Seriennummer, die ist im Pseudonym und das Gesundheitsamt hat die Daten schon, sonst kann man das nicht dezentral dezentral abbilden, ne, also.Wenn das Gesundheitsamt dich anruft, um von dir die Seriennummer von dem Schlüsselnummer, äh von dem Schlüsselanhänger zu erfragen, dann können die eigentlich auch gleich deine Kontaktdaten erfragen, ne? Und äh.Würde die Probleme nicht geben, äh wenn das kein zentrales System wäre, ja.Das muss man so sagen. Äh die Frage ist auch, ob man dann so einen Kunstgriff macht und so einen Schlüsselanhängerkonstrukt schafft oder dann sagtokay. Äh ich habe halt harte Voraussetzungen, um an so ein System zu partizipieren und das ist halt eine App. Äh und wenn ich keine App habe, muss ich die Papieralternative wählen, ne? Also man hat da schon einen Trade oft zwischen.Datensicherheit und ähm Informationssicherheit und Usability, wie das überall ist.
Linus Neumann 0:30:29
Ja. Jetzt ist also genau diese diese äh Schlüsselanhängernummer scheint für mich auch so ein.So ein Ding zu sein, das war immer Thema, ne? Also ich kann ich man sieht so ein bisschen, wie die gesehen haben. Jo, pass auf.Welche über welche Probleme klagt die Welt? Die lösen wir jetzt einfach alle auf einmal. Die klagen über äh,dass die Adressen nicht verschlüsselt sind, kein Problem, aber Verschlüsselung, ne. Die klagen darüber, dass irgendwie alte Handys nicht im Bild machen. Alles klar, machen wir mit einem mit einem QR-Code, wo man einen QR-Code hinein, Schlüsselanhänger drauf, Schlüssel hat man immer dabei, ne? Und ähm.Wie würdest du jetzt so grundsätzlich also ich kenne das aus der,aus der IT Security, in der ich ja auch tätig bin, dass man sich halt ein Fredmodel macht und eben gesagt, okay, was möchten wir erreichen, was möchten wir bauen?Was sind potentielle Bedrohungsszenarien und dann begegnet man denen? Was ist jetzt so dein Eindruck, nachdem du das Sicherheitskonzept gelesen hast und die Umsetzung gesehen hast, wo hapert's eigentlich?Liegt es daran, dass die kein ordentliches äh Fredmodel haben oder liegt es daran, dass sie ihrem Fred Model nicht,gewissenhaft begegnen, wie wir also als jemand, der sich das wirklich so äh in dieser Tiefe angeschaut hat, was glaubst du, ist da eigentlich schief gegangen?
Marcus Mengs 0:31:51
Also wenn man das mal strukturmäßig ohne die ganzen feinen Facetten durchmacht, muss ja ganz, ganz, ganz am Anfang musst du ja mal eine Zielvorstellung setzen, wenn du irgendein Produkt schaffen willst, das soll irgendein Ziel verfolgen, ne. Du hast ja irgendeine,Anforderungen. Ich denke, die war schon mal bei Luca nicht ganz klar äh definiert, sondern man hat versucht, äh ein Problem zu lösen, was noch nicht scharf umrissen ist. Und hat da erstmal eine Lösung drumrum gestrickt. Ähmwurde das schon mal vom normalen Make-up weicht. Woanders hast du ich sage mal eine eine funktionale Lücke, die gedeckt werden soll. Das kann man mit einem Software,machen und dann fängst du an, das zu designen, erstmal in der Architektur, dass da ist nun mal Pen und Paper, Theorie, aber da wird von Anfang an Security, von Anfang an äh Informationssicherheit und Datenschutz betrachtet, bei Design.Und dann kommst du irgendwann zu einer Architektur und dann kommst du irgendwann zu einer Realisierung und wenn man äh äh wo diese,Security, Datenschutz und so weiter natürlich immer weiter mit berücksichtigt werden. Und man dann auch sagen kann, okay, ich kann bestimmte Feinziele nicht mehr erreichen oder ich muss dafür äh Risiken in Kauf nehmen oder ich gebe Security auf. Und ich,bei Luca. Äh so ließ sich das auch an vielen Stellen, egal ob denen das Konzept,in der Security, es heißt ja nicht mehr Security-Konzept, Gott sei Dank, Sicherheitskonzept sieht deutlich anders aus,das siehst du so richtig oder es kommt beim Lesen so vor, auch beim Code als wurden immer nachträglich Sachen angepflanzt und äh geflickt schustert, was erstmal gar nicht so gedacht war. Ich meine, muss jetzt vorsichtig sein in dem äh äh,Security-Konzept oder in dem, was da veröffentlicht wurde, als Security-Konzept stand am äh am Anfang standen ja noch die äh,wissenschaftlichen Mitarbeiter drin, die sind, glaube ich, mal in einem Update schon mal rausgenommen worden. Ich denke, das ist auch ein Zeichen dafür, weil nicht alle Aspekte ähm.So anfangs geplant waren, dass nur jeder sagt, ja ich trage das so mit,Die Schlüsselanhänger sind, glaube ich, so ein richtig Überhangding, wo man gesagt hat, okay, das ist ein Feature, das wollen wir irgendwie haben und versuchen da äh da wollen wir irgendwie haben und versuchen, das jetzt inArchitektur zu pressen, die schon da ist und da ist halt versucht worden, alles was logisch in der App existiert, auf Schlüsselanhänger abzubilden, das geht halt nicht.Na weil es sind, das sind nur feinere Funktionalitäten dahinter, du hast Scanner, du hast User, die haben alle eigene äh Schlüssel, eigene IDs und auf den Schlüsselanhänger wird das alles zusammengepresst und niemanden in die Hand gedrückt,von irgendjemandem. Da passt halt das ganze Trustmodell nicht mehr, ne, was da dahinter steht.
Linus Neumann 0:34:23
Ja, weil Markus, du musst ja verstehen, die CDU äh die leben ja hauptsächlich von Letztwählern, ne und die, die haben ja keine.
Marcus Mengs 0:34:32
Brauchen die Schlösser.Ja, ich sage, ich sage mal, den Angreifer freut das nur, weil man muss auch sagen, es ist eine lange äh ich war ja froh, dass man über diesen.Was falsch gemacht, strang wenigstens ein paar Informationen bekommen hat, wie viele Anhänger so im Umlauf sind. Es sind, glaube ich, ich müsste jetzt Lügen zuletzt dreißigtausend, vierzigtausend, ich weiß es nicht genau, gewesen, die da erstellt wurden.Ich glaube, zur Zeit von Luca Dreck waren's noch zwanzigtausend, also da wird auch kräftig nachproduziert.Und dann sagt man ja, ah, das ist so ein geringer Anteil, ne, das Risiko ist nicht hoch, aber alleine bei den Lücken gut, das passt jetzt zumindest bei den Sachen, die ich mir angeguckt habe, wenn ich ein äh die Nutzertaten von einem Schlüsselanhänger ändern kann, maleine Seelennummer öffentlich geworden ist und kann diesen einen Schlüsselanhänger in beliebig viele Locations einchecken.Ähm und manipuliere die Daten davon, so dass sie vielleicht was auslösen oder auch nur das Gesundheitsamt,zusätzliche Arbeit kosten, äh dann je mehr ich den verwenden kann, um inso mehr Infektionsketten bringe ich den ein,Dafür reicht mir eine so eine Seriennummer an, dafür für solche Szenarien ist das unerheblich, ob das nur einen ganz kleinen Systemanteil ausmacht, ob ich da hundert Seriennummern habe oder eine oder vierzigtausend, das spielt dann keine Rolle mehr, weil ich schon mit einer beliebig viel.In dem System, ja, ich sage mal, äh Workload erzeugen kann. Und auch für das Gesundheitsamt Workload erzeugen kann. Das ist.Ist schön für halt die Leute, die die brauchen das nicht. Ich glaube die Leute, für die, die vorgesehen sind, brauchen das nicht.
Tim Pritlove 0:36:08
Äh ich habe auch so den Eindruck, meine klang ja schon an, ne, so dieses,Was war denn eigentlich das Ziel und was hat man sich denn eigentlich für ein Modell gemacht? Und das ist ja oft auch damit äh verbunden, so mit der Frage, okay, was will man eigentlich letzten Endes bewirken, was was ist sozusagen.Der eigentliche Zweck dieser App. Und ich werde immer so diesen Verdacht nicht los.Dass es eigentliche der eigentliche Zweck dieser App ist halt so minimal vor Stoß zu machen, der dazu führt, dass irgendwie Events.Und Gastronomie und sozusagen das kulturelle Leben wieder stattfinden kann. Was ich nicht sagen will, dass das jetzt ein illegitimes Ziel ist,ja? Nur ähm es ist natürlich schon so ein bisschen es ich habe jetzt nicht jedem Interview mit Smudo gefolgt.Das das könnte ich gar nicht ertragen, aber äh es war ja so eine so ein bisschen so dieses heilsversprechen ist hier, da gibt's was zum Scannen.Und das ist dann so ein bisschen so diese Absolution, die man dann erteilt mit,Ja und wenn das dann irgendwie gescannt ist, dann dann ist ja für alles gesorgt. Dann haben wir irgendwelche Vorgaben erfüllt, die auf dem Papier sind, aber eigentlich auch keinen Sinn machen. Und daraufhin hat man das Ding halt,optimiert. Also man hat halt äh eigentlich diese Kontaktlisten soweit digitalisiert.Und einfach nur nachgebildet, was ja sagen wir mal so ein klassischer Verlauf ist von,Development und äh oft auch legitim ist, ja, dass man einfach etwas nimmt, was so in der realen Welt stattfindet, aber dann eben digitalisiert, nur dass die Implikation natürlich jetzt in dieser Situation ähm vielfältiger sindweil's mit Gesundheitsdaten zu tun hat. Weil's ein aufgeladenes Thema ist. Weilhoher Zeitdruck existiert, weil wenn etwas nicht funktioniert, ist auf einmal eine große Aufmerksamkeit erzeugen kann und sich sehr viele Leute natürlich darüber zurecht auch aufregen und das ist so ein bisschen der Punkt, wo ich so den Eindruck habe,dass es ihnen auch so ein wenig entglitten ist. Dass sie äh am Anfang dieses Development gedacht haben, na ja Kontaktlisten, was kann da schon so schwer seindem Ziel entwickelt haben und dann irgendwann durch die auch selbst herbeigerufene RelevanzDieses aufblähen in der Öffentlichkeit so, ja was wollt ihr denn hier? Wenn wir unsere Zauber-App äh in die Welt streuen, dann dann können wir sofort wieder äh äh uns stundenlang äh kiffen, ins Hinterzimmer setzen.Das war ja so ein bisschen so dieses Versprechen, was im Raum war. Hä? Nur mit einem QR-Code und dann kamen eben diese ganzen Realword-Anforderungendie halt dann einfach in dem Moment greifen, wo es heißt, okay, jetzt bauen wir aber nicht nur eine kurze Digitalisierung von so einem Sicherheitssystem und wir machen das mal mit den Zetteln einfacher, sondern wir bauen jetzt quasi eine,Lösung, um wirklich so eine Pandemie zu entflechten. Und daran sind sie dann, glaube ich, als als System ein wenig gescheitert.
Marcus Mengs 0:39:16
Ja, man muss auch mal ähm ich glaube, das erfasst das ganz gut, aber es gibt eben auch so,Facetten äh ich glaube, das was du gerade beschrieben hast, Tim, das ist ähm das.Endergebnis, wo man sich jetzt hin entwickelt hat, was man eigentlich verkaufen will. Aber das Produkt war schon, das war schon lange im Einsatz, da ist noch ähdadrüber nachgedacht wurden, ob man das vielleicht mal für Ticketing verwendet. Es ist und so ist es ja jetzt auch gekommen ähm.Da impfnach eingepflegt wurden, ne? Also es ist die Zielsetzung und das Feature-Set, das ist gar nicht klar umrissen. Während noch an allen Ecken und Enden Probleme sind, weil diese, ich sage mal, die Basic Features, das, was du gerade gesagt hast, dass du Kontakt.Listen irgendwie.Erfassung im Gesundheitsamt bereitstellt, um im Endeffekt die Forderung vom Infektionsschutzgesetz oder auch von den Corona-Schutzverordnungen, so wie sie jetzt noch aussehen, abzu,abzudecken nicht mal die Funktionalität ist ja richtig gewährleistet, das ist aber das Core-Feature, was verkauft wird, das heißt aber nicht, dass da also für mich zumindest und ich,mich tatsächlich erst ein paar Wochen damit, dass das von Anfang an so aussah, als wäre das das ganz klare Ziel der App. Er war eigentlich eher.Des Systems, aber eigentlich viel. Also für mich ist das heute noch unscharf, ne? Wo will man hin damit? Was soll das künftig können?
Linus Neumann 0:40:39
Also was sie ja sehr gut hinbekommen haben, ist und das ist ja wirklich auch bärenstark, ne. Wenn du irgendwo dran schreibst, verschlüsselt, dann denken alle so, boah Hammer. Hammer! Ne? Also.
Marcus Mengs 0:40:52
Und der doppelt verschlüsselt.
Linus Neumann 0:40:54
Genau hier ist doppelt verschlüsselt so. Junge, Junge, Junge, so. Das ist äh unglaublich, was wir hier haben, ne.
Marcus Mengs 0:41:02
Frage, seit was und womit aber.
Linus Neumann 0:41:06
Genau, was ist verschlüsselt? Welche Daten fallen trotzdem an, ne? Wir also, was wir auch gerade sehr schön geschildert hast, was du einfach nur aus Metadaten dir rekonstruieren kannst, ist halt.Der größere Teil dessen, was relevant ist, es gibt diesen, ich glaub Netzpolitik Orkate inzwischen für sich auch so 'n bisschen reklamiert, wer hat uns verraten Meterdaten, ne? Wenn die Metadaten dich halt einmal deinen Schlüssel.Mit der Telefonnummer linken und deine IP-Adresse, mit den Schlüsseln, dann ist halt am Ende nix mehr übrig,in den verschlüsselten Werten, was da noch ähm rauszupulen wäre. Gleichzeitig ähm ist es natürlich als Werbedingende in einer Welt, wo überall die Daten rausgetragen werden, halt hinzugehen und zu sagen, so Leute,Bei uns ist es so verschlüsselt. Verschlüsselt doppelt.Doppel haste nicht gesehen, ne? Und äh dann alle sagen so, boah, endlich hat der Smudo das verschlüsselt. Endlich,und und dann ist auch irgendwie Feierabend, dann ähm.
Tim Pritlove 0:42:12
Smudo hat die Pandemie verschlüsselt.
Linus Neumann 0:42:15
Ne? Unabhängig davon, dass äh und das wäre der zweite Punkt, sich noch kurz anmerken würde, dass natürlich ohnehin die.Also contact tracing ist ein wichtiger Beitrag zur.Einhebung des ähm Infektionsgeschehen. Da sind wir uns sogar einig, das wissen wir. Es ist nun nicht so, als wäre contact tracing allein in der Lage, ähm.Dass äh dieses Problem der Pandemie für uns zu lösen, auch wenn äh das immer wieder äh dahergeredet wird. Und was ich glaube, hm um das so ein bisschen zusammenzufahren, was er gerade gesagt hat.Die haben, glaube ich, nicht unbedingt, als sie angefangen haben mit dem Ding, gedacht so.Boah Alter, das verkaufen wir an die Länder?Und dann dann kassieren wir da in Wartungsverträgen Millionen. Also, dass sie dachten, das ist eine Millionen Idee ist, ist schon klar, sonst hättest du nicht irgendwie diese Fantastic Capital äh Investoren,dazubekommen, na? Aber dass sie dachten, das ist eine MultimillionenIdee und wir verkaufen's ausrechnen an den Staat. Ich glaube, das war den Anfangs nicht klar. Die haben vielleicht gedacht, alles klar, vielleicht verkaufen wir das eine oder an das eine oder andere Land.Vielleicht verkaufen wir es einfach um massenhaft an die Gastronomie, vielleicht verkaufen wir's an äh Ticketanbieterin.Viertausend Leute, ne, oder fünftausend sogar. Und ähm.Aber dass die dachten, dass sie damit am Ende wirklich den Fiskus äh an die Nadel hängen und und um wirklich.Was sind da zweiundzwanzig, fünfundzwanzig Millionen Euro erleichtern? Äh ich glaube, das war den in dem Moment, wo es passiert ist, haben die sich halt denen wahrscheinlich ein Ei aus der Hose gehüpft und dann äh aber wirklich auch das äh.Das das Herz äh runtergerutscht, weil sie gemerkt haben, fuck, Alter, wenn die jetzt sehen wollen, dann dann stehen wir ein bisschen blöd da, oder?
Marcus Mengs 0:44:20
Ja, den Fehler kannst du aber in einem Start-up nicht alleine anrechnen, ne? Da musst du auch schon den Käufern. Das sind ja nicht die, die es am Ende haben wollen, die Käufer und die sagen mal,Verwalter, das sind ja alles öffentliche Mittel und die, die den Bedarf haben, der gedeckt werden muss, das sind ja leider auch nicht immer die gleichen. Und manchmal werden die, die den Bedarf artikulieren müssen, auch gar nicht angehört,Ja, ich weiß schon, du willst das schon abrunden, ich merke das schon, aber ich wollte nochmal was, ich muss nochmal.Ne, weil der Tim, der Tim hat das so schön versucht, auf was,greifbares zu reduzieren, was Luca eigentlich ist, ne? Und wenn du wenn du das wirklich mal versuchst und,Aus dem Werbeversprechungen, die Essenz rausziehst, ja, dann versprechen die ja, äh, Entlastung der Gesundheitsämter, Kontaktdatenerfassung, plausibel und verwertbar für die Gesundheitsämter und keine, ich sage mal, gar Bettatendie bei den Gesundheitsämtern auflaufen. Also die reine Digitalisierung der Kontaktlisten.Nur dass das Gesundheitsamt die eben im Bedarfsfall sehr viel schneller abgreifen kann. Wenn du aber anguckst, was von dem Versprechen tatsächlich üble äh übrig ist, ja. Wir wissen äh die die Nutzerkontaktdaten wären nicht,verifiziert, bis auf die Telefonnummer, was ich auch nach wie vor umgehen lässt, sie zu verifizieren, weil es wird auch teuer, denke ich mal, das nacherträglich einzuführen.Du hast keine Kontaktdaten. Okay, dann weißt du aber nur, du hast ein Kontaktdatum, das ist die Telefonnummer. Ja, aber du kennst das,überall einloggen, ja? Weil und nirgends, ja, du kannst mit trotzdem mit falschen Daten einloggen, also auch die Kontaktlisten sind falsch, ja? Und jetzt kommen die, jetzt gehen wir mal von aus, dass das alles nicht passiert. Jetzt kommen diese Kontaktlisten zum Gesundheitsamt.Ähm dann wird damit geworben, dann werden die Leute schnell gewarnt. Nein. Weil das Gesundheitsamt muss sie ja alle abfragen und die Relevanz prüfen, ja? Wird das System kann jetzt sagen, ja,eine Liste von der Location XY ist vom Gesundheitsamt abgefragt worden, kann jetzt dem Nutzer sagen, du bist abgefragt worden,Das ist ja aber nicht automatisch eine Warnung vom Gesundheitsanwalt. Das Arbeit,das Gesundheitsamt hat ja immer noch die Aufgabe nachzuvollziehen, ob jetzt diese Kontaktliste irgendeine jeder, der da drauf stand, irgendwie Infektionsrelevant war, ne? Und muss den Menschen dann anrufen, so er denn erreichbar ist unter der angegebenen Telefonnummer.Und den Befragten, also ich sage mal, der Aufwand ist dergleiche wie vorher.Die die Kontaktlisten werden nicht besser, also es bleibt von den von den Werbeversprechen bleibt nichts übrig, ohne dass du in die Sicherheitslücken guckst. Die Risiken, die diese Lösungen alle.Mit sich bringen. Die kommen eigentlich on top dazu, äh zu keiner Verbesserung aus meiner Sicht. So werde ich's mal versuchen versuchen, reduziert zu betrachten.
Linus Neumann 0:47:02
Das ist, glaube ich, sehr, sehr schön zusammengefasst an der, an der Stelle muss man immer nochmal sagen, das Einzige, was contact racing leisten kann, ist halt schneller, den Leuten Bescheid sagen, damit sie ihrerseits die Kontakte reduzieren,dann erst wirkt es, ja? Und diesen Wertbeitrag, den den sieht man auch ohne die ganzen Sicherheitslücken kaum.So, jetzt sind wir, glaube ich, an dem Punkt angelangt, dass wir uns mal langsam darüber Gedanken machen können.Schwachstelle du jetzt demonstriert hast, denn interessanterweise in deinem Video sagst du ja.Das wurde schon vor drei Wochen gemeldet und du hast es jetzt nur noch noch einmal demonstriert, was ist denn da passiert?
Marcus Mengs 0:47:49
Ja erstmal sind das alles keine Schwachstellen auch keine Sicherheitslücken. Das sind ja meistens,Es wird von Luca immer umtituliert. So wenn sogar wenn ich die Bitte, ja komm, ich habe nicht so Zeit, eine Advisory zu schreibe, mach doch mal selber ein Ischio auf, dann heißt das dann auch nicht mehr Security Echo oder so, da können zig Schutzziele IT-Sicherheit betroffen sein.
Linus Neumann 0:48:07
Immer nur ein Error, ne.
Marcus Mengs 0:48:08
Funktionaler Fehler hinterher, ja.
Linus Neumann 0:48:12
Also die haben die haben bis heute.
Marcus Mengs 0:48:13
Ne
Linus Neumann 0:48:14
Das ist Tim, der du kannst dir das nicht vorstellen, ne? Die haben bis heute nicht eine Eins, nicht ein einziges Mal gesagt,Es gab eine Sicherheitslücke, die ganz im Gegenteil, die leugnen das ja sogar aktiv, ne, also Luca Track und so, alles keine Sicherheitslücke.
Marcus Mengs 0:48:32
Ja, heute bei dem Ding war's sogar ganz konkret, das ist keine Sicherheitslücke.
Linus Neumann 0:48:36
Unglaublich. Aber okay, also es war keine Sicherheitslücke. Es war ähm es war ein völlig überraschendes Feature.
Marcus Mengs 0:48:44
Genau dieses Feature, was eigentlich vor drei Wochen aufkam. Ähm es geht um äh es ging um.In oder CSV im engeren Sinn.Und man hat ja auch gesehen in dem Video von mir, da stehen ziemliche viele Credits hinten drin, weil ich habe.Thema gar nicht selber aufgetan, denn ich habe an einer anderen nicht Sicherheitslücke von Luca gearbeitet äh und hatte quasi das Setup fertig, um das schnell noch zu testen und äh Idee, wie man,ansetzen kann. Also äh ganz klassisch.An sich adressiert erstmal Tabellenkalkulation.Klassisch Excel, ja, also Microsoft-Systeme mit Microsoft Office ausgestattet, klassisch ist das eigentlich immer Excel und zwar diese Funktionalität, dass man in Zellen Formeln eintragen kann.Nicht nicht Makros, das möchte ich nochmal betonen, weil wir reden nicht von Programmierungen oder VBH, so wie das jetzt in einigen Medien äh gekommen ist, formeln und dieses Formeln, äh je nachExcel oder Office-Version, die können halt nette Sachen, wie auch ähm, ich sage mal, ein Beispiel ist, dass du sagst,der jetzt in dieser Tabellenzelle sehen soll, der wird mit einer Formel generiert, die der mir den von irgendeiner Webseite runterlädt.Für einen Angreifer heißt das, ich kann in eine äh Zelle was eintragen, was mir dabei hilft auf einen externen Sover zuzugreifen.
Tim Pritlove 0:50:13
Markus da müssen wir mal kurz noch was anderes äh nochmal vielleicht zusammenfassen, ne? Also das wäre jetzt mal den Kontext verstehen. Also du hast diese,Sicherheitslücke in diesem Video dokumentiert. Das haben ja die Anna jetzt alle noch nicht gesehen.Ja, worum geht es? Es geht um die vorhin äh genannten Komponenten. Konkret die Anbindung von diesem LukaSystem, was ja aus der App besteht und aus deren Backend besteht, ja, sie Daten fließen jetzt ins Gesundheitsamt. Darum geht es, ne, diesesogenannte Anbindung ist ja eigentlich nichts anderes als so eine Art Exportgenerator, also das Gesundheitssystem kann sich quasi an dieses System ranpflanzen und sagen, jetzt gib mal her die Daten.Für diese für diesen Ort, ja, wo äh Aktivität stattgefunden hat, die von dieser Luka-App äh aufgezeichnet wurde.Und jetzt möchte gerne das Gesundheitsamt diese Daten haben und diese Daten erhält sie ganz klassisch in so einem TextbasiertenDatenexport. Das heißt, man kriegt so eine CSV Datei oder man hat die Möglichkeit, verschiedene Formate äh zu wählen und das Beispiel, was du dort gibst, ist halt diese CSV-DateiSo und dann liegen die Daten erstmal roh vor. Man könnte sagen, es ist eine Art Download. Ja, es ist ja auch nichts, nix anderes wirklich.
Marcus Mengs 0:51:39
Es ist alles ein Download. Also du kommst an die Daten aus dem Lukas-System, das Gesundheitsamt kommt an die Rohdaten, immer nur als Download dran, weil es gibt.Glücklicherweise würde ich jetzt sagen, noch keine automatisierte Schnittstelle zu anderen Verfahren. Noch nicht.
Tim Pritlove 0:51:56
Genau, ja okay, gibt's nicht, aber so ist es jetzt, nur dass man sich das vorstellen kann. Also wir reden jetzt hier über diesen Zeitpunktwo das Gesundheitsamt sagt, so jetzt müssen wir uns aber wirklich mal diese Daten holen, man hat den entsprechenden Schlüssel, um diese Daten zu entschlüsseln und erhältunverschlüsselte Exportdaten auf das eigene System, also im Normalfall natürlich irgend so ein Windows-Computer, wo dann so eine ganz normale Datei rumliegt und diese wird dann geöffnet und sie wird dann halt dann doch sehr oft, das wissen wirin einer stinknormalen Tabellenkalkulation, also in Excel aufgemacht.So und das ist natürlich immer ein Problem, weil wenn die Daten halt in irgendeiner Form.Anders sind, als man das jetzt vielleicht so erwartet oder konkreter anders als die Software sie erwartet,dann kann halt auch schon mal was schief gehen. Und das ist im Prinzip ja hier der Angriffspunkt, wenn ich das richtig verstehe.
Marcus Mengs 0:52:50
Ja, das ist sogar ein äh verbreitetes Problem. Man muss ja auch sagen, ein Problem, was äh viele Hersteller äh sogar aus Backbounteesausschließen, bewusst ähm also erstens äh,Daten, wenn man speziell vom CSV spricht, auf einem normalen Büro, Arbeitsplatzsystem, was ein Office installiert hat, muss man erstmal sagen, äh eine CSV-Datei, die ist standardmäßig mit dem Office-Produkt verknüpft, also mit Exceldie ablegt und doppelt anklebt und hat vielleicht auch keine Dateerweiterung angezeigt, dann sieht man nicht mal, dass dasreine Excel-Tabelle ist, sondern ist Excel erstmal das äh die Software der Wahl, um die zu öffnen.
Tim Pritlove 0:53:31
Voreingestellte Tool einfach dafür, ne.
Marcus Mengs 0:53:33
Das ist da die Ford sozusagen genau, dass das in Excel geöffnet wird.
Tim Pritlove 0:53:37
Genau. Und CSV, wem das nicht sagt, heißt einfach nurKomma separierte Werte. Ja, das heißt, es ist einfach, wenn man das in normalen Texteditor aufmachen würde, sieht man einfach einen Datensatz pro Zeile. Die einzelnen äh Werte mit Kommagetrennt. Das ist dann nicht unbedingt zwangsläufig immer ein Komma, ist auch manchmal ein Semikolon oder ein Tab, aber das finde ich jetzt auch ein bisschen zu weit. Es geht einfach um strukturierte Daten in Textform.So und das heißt, man äh öffnet die und dann geht halt in der Regel das voreingestellte Programm auf und das ist dann eben Excel, was ja auch Sinn macht, weil es handelt sich ja letzten Endes um tabellarische Daten und man will ja letzten Endes auch hier auch ein tabellarischenauf diese Daten gewinnen, um sie dann weiterverarbeiten zu können. So, alles kein Problem, oder? Was kann da schon schiefgehen?
Marcus Mengs 0:54:26
Ja, dann kommt eben diese ähm.Formel äh ins Spiel oder CSV wird das auch genannt. Ähm.Wenn du das jetzt isoliert auf Excel betrachtest, ist das wie wenn du in eine Zelle eine Formel einträgst. Die kann vor,zwei andere Zellen zusammenaddieren oder einen statischen Wert haben, die kann aber auch sagen, äh ich brauche ich muss ein anderes Programm starten, um da einen Wert reinzubringen.
Tim Pritlove 0:54:54
Gut, aber bei diesen Daten sind doch sind doch solche Formeln erstmal gar nicht drin. Ich meine, wir reden doch hier von Name, Vorname, Nachname, Anschrift, Postleitzahl, das ist doch das, was man eingegeben hat, ne.
Marcus Mengs 0:55:04
Genau da will ich hin. Wenn du jetzt ähm äh CSV-Datei in Excel lädst, dann interpretiert ähExcel natürlich diese strukturierten Daten so, äh dass das auch analysiert, ob jetzt eine Zelle mit einer Formel belegt werden soll, eine Tabellenzelle.Und wenn du die Daten in der CSV-Datei richtig gestaltest, dann kannst du das durchaus äh auslösen, dass Excel auch so eine Formel beim Öffnen anlegt und dann auch Aktionen auslöst.
Linus Neumann 0:55:35
Ich will jetzt, ich will, ich muss da ganz kurz einhaken. Ich weiß, dass wir jetzt hier als Nerd sofort sagen, in excellence Formel. Du hast es auch gerade im Nebensatz schon gesagt, ich will nur einfach sagen, was ist die die einfachste Formel in Excel,Also der eine einfache Formel in Excel in das erste Feld schreibst du die Zahl.Eins. In die zweite Zelle der Tabelle zeigt, schreibst du die Zahl zwei.Und in die dritte kommt jetzt eine Formel, da schreibst du einfach nur gleich die Summe der ersten und der zweiten Zelle. Und dann wird in diesem dritten Ding drei stehen. Wenn jetzt in das erste Feld aber.Fünf schreibst, dann wird in dem dritten Ding sieben stehen, weil dann nämlich die Summe von fünf und zwei berechnet wird, also ein dynamischer Inhalt ist eigentlich das, was 'ne was 'ne Excel-Formel abbildet, oder?
Marcus Mengs 0:56:30
Genau, der Begriff vor mir ist eigentlich irreführend, weil du hast natürlich dynamischer Inhalt ist sehr viel passender, weil du hast natürlich,Programmierer würde es vielleicht Funktionen oder Methoden nennen, du hast natürlich mathematische Formeln.Aber du hast, wie ich jetzt gerade auch als Beispiel erwähnt habe, natürlich auch Formeln, die sagen, zieh mir die Zahl von einer Webseite runter, die da angezeigt werden soll. Oder du hast auf Hummeln, die sagenstarte mal das Programm X Y und wenn das Programm abgelaufen ist, zeigst du den Wert an.Von dem Programm ausgegeben wurde. Das heißt, du kannst damit fremde Programme starten, du kannst auf fremde Webseiten zugreifen und du kannst natürlich auch sagen, okay, äh wenn du auf einer den Wert für diese Zelle, wenn,äh dass wenn die von einer fremden Webseite geholt werden soll, dann musst du da auch noch äh den Inhalt der Zelle, wo der Name steht,wo die Zahl steht, wo eine Postleitzahl steht, das musst du da vorher alles hinschicken. Das kannst du mit Excel-Formeln machen.
Linus Neumann 0:57:29
Nehmen wir mal, nehmen wir mal ein Beispiel, wenn jetzt irgendwie hier der Tim macht ja den Podcast, äh den wöchentlichen Podcast mitPavel über die Corona-Pandemie und die wirken da immer auf ganz vielen Zahlen, ne? Jetzt könnten die ja auch auf die Idee kommen, zu sagen, in unserem großen Excel-Ding, das machen die hoffentlich nicht. Das lädt sich.Von der EKI-Seite. Ihr die aktuellen Corona-Zeilen runter. Das wäre da so ein Anwendungsfall, ne?
Marcus Mengs 0:57:57
Genau. Das ist das ist das Entscheidende. Das ist kein Hack. Wir reden da über ein Feature von Excel und nicht nur von Excel, sondern auch von,ähnlich georteten äh Tabellenkalkulationsprodukten, weil es gibt ja einen Zweck davon, genau. Wenn du äh externe Daten runterlädst, was auch immer, wenn du das wünschst, ja, äh.
Tim Pritlove 0:58:16
Aktienkurse ist ein Klassiker.
Marcus Mengs 0:58:18
Was auch immer. Es gibt sicherlich auch Szenarien, wo man sagt, okay, damit die Tabellenzelle befüllt wird, muss ich ein externes Programm starten, was mir da das Ergebnis reinliefert, weil ich irgendein Skript geschrieben habe, was irgendwas abfragtWeißer Geier, da gibt's sicherlich viele legitime Anwendungsfelder, das ist also nicht ein Sicherheitsproblem von Excel. Ein Problem wird das, äh.Wenn ich Daten in Exce eröffnee und es ist gar nicht gewünscht, dass die solche Funktionalitäten implementieren. Das ist ein Sicherheitsproblem. Das liegt dann in der Regel aber nicht an Excel, sondern an der Datenquelle.Weil wenn ich nicht möchte, äh dass da solche Daten oder ähm.Daten, die ich in Excel öffne, irgendwelche Aktionen ausführen, dann muss ich das irgendwie sicherstellen, da gibt's zwei Methoden dafür. Das eine ist äh, dass sich der Quelle absolut vertraue, das kann ich natürlich auch technisch sicherstellen. Das andere ist, dass ich dieseDatenfilter, bevor ich sie öffne, weil ich kann sie ja nicht anders in Augenschein nehmen, als sie,zu laden. Ähm wenn dann eben nicht gewünschte Funktionalitäten auftauchen, da kommen wir dann zu dem Bereich InjectionDeswegen heißt das auch CSV-Injection, dass man eben in solche äh Datenquellen, die dann eben auch so kommerseparierten, strukturierten Daten kommen, eben Formeln einfügt, wovon gar nicht äh erwartet wird, dass sie da auftauchen.Eben irgendwelche Aktionen auslösen.
Tim Pritlove 0:59:44
Ja, aber Markus.Luca ist doch ein vertrauenswürdiges Unternehmen, was äh nur unsere nur die besten Intentionen hat. Warum sollten denn in diesen Daten,andere Daten äh drin landen, als die, die die User da äh irgendwann mal eingegeben haben.
Linus Neumann 1:00:02
Ja und außerdem Markus, das ist ja auch doppelt verschlüsselt, dass er doppelt verschlüsselt Markus.
Tim Pritlove 1:00:07
Das das kommt noch dazu, ja.
Marcus Mengs 1:00:08
Da haben wir ja die Kurve zu den drei Wochen gekriegt,da sind wir ja wieder da am Anfang bei den drei Wochen. Ja, vor drei Wochen war das ja noch so. Also Lukas stellt sicher, dass es nicht passiert, dass in den Datenexporten,solche Problemstellungen auftauchen. Das war das Statement vor drei Wochen. Und jetzt habt ihr ja die Aspekte schon angerissen, ich sage mal.Jemand der mit Kommunikation zu tun hat, wird von einer Datenhebung, einer Datensenkgeräten.Gesundheitsamt exportiert Daten aus Luca von infizierten, die gedrehst worden sind, das sind die Daten, die rauskommen. Und irgendwer gibt Daten rein, das sind die Nutzer, die an dem System teilnehmen. Sind nur diese zwei Punkte,Ähm und an diesen beiden Punkten muss man sicherstellen, dass da keine Manipulation an den Daten stattfindet, die später zu was führt, was ich nicht möchte.Das hat Luca garantiert vor drei Wochen. ÄhmUnd dann war es so, ähm da war eigentlich dieses sehr technische, technisch spezifische Szenario, dieser CSV Injektion, schon mal Thema und ich bin vom äh von der Eva Wolfgang von der Spiegel äh von der Autorinvon dem Zeitartikel kontaktiert worden.Und äh mit dem, was sie eigentlich auch schon angerissen habt, äh die hat damit angefangen, dass der Luca, wenn sie das System äh alles richtig verstanden hat, eine Datenautobahn ins Gesundheitsamt abbildet, weil der Nutzer gibt ja vorne Daten reindann ist alles verschlüsselt, die Betreiber können da nicht reingucken und erst beim Gesundheitsamt wird das dann entschlüsselt.Das kann man so stehen lassen, wenn das System funktioniert, ist das so. Ähm und dann kam die Frage auf, ob das Gesundheitsamt denn angreifbar sei,aber schon sehr konkret, ob das mittels CSV Intection geht und da habe ich gesagt, das ist für mich äh hypothetisch. Man kann diese Frage nicht äh belastbar beantworten. Ohne ähm,Nachweis zu erbringen oder das auszuprobieren. Also das war für zu dem Zeitpunkt für mich gar kein Thema und ich hätte mich da auch vage in meinen Aussagen erhalten und ich hätte es auch gar nicht zitiertgesehen haben wollen, bis mir die Eva Wolfe angelt dann gesagt hat, ja sie hat aber schon das Statement.Senior dazu ähm und das war äh in die Richtung des Mexingo gesagt hat, ja äh,Wir kennen dieses Problem und wir tragen dem Rechnung mit Projekt.
Linus Neumann 1:02:33
Das ist, dass ich technisch, dass es einfach nur Bullshit.
Marcus Mengs 1:02:37
Ja, da musste ich erstmal schlucken und überlegen und habe gesagt, okay, eben hätte ich noch gesagt, ich möchte nicht in dem Artikel zitiert werden, aber jetzt kann ich auch sagen, ohne mir das Problem anzugucken, heißt das ja, erstens.Man hat eingestanden, dass ein Risiko besteht, äh dass Daten so durchlaufen, dass damit eine CSV Injektion möglich ist, sonst könnte man, müsse man dem nicht Rechnungen tragen mit einer Maßnahme und die Maßnahme ist und äh,Ist ein Visualisierungsframe. Man kann es auch im Backend einsetzen, was auch immer Projekt alles kann, was es nicht,Macht es, dass es ein Sicherheitsprodukt ist, was äh eingegebene Daten gegen CSV Injections filtert und überhaupt gegen Code Injections. Wenn man vielleicht mal den Webanteil ausnimmt.
Linus Neumann 1:03:21
Ich übersetze mal die Qualität der Antwort ist ungefähr so ähm wir lösen das mit Windows. Ne, das ist irgendwie.
Marcus Mengs 1:03:29
Ich habe das, ich habe auch schon versucht, solche Vergleiche zu ziehen, nee, das ist besser hier auch gemacht. Ich hab's mal so gesagt, ähm.Auch für die, die mir solche Fragen gestellt haben. Ja, das ist jetzt wie wenn du für irgendeinen wahllos rausgegriffene Autohersteller äh behauptest,Die Bremsen können da kaputt gehen. Ja, bei jedem Auto können die Bremsen kaputt gehen, diese Behauptung muss erst wertvoll, wenn du belegt hast, da ist ein besonders hohes Risiko, weil Bremsschläuche zu dünn oder sowas, ne? Das wäre jetzt dieses Szenario, was,was hat mich äh was hat mich Eva Wolfangel da gefragt? Ja, bei jedem Auto können die Bremsen kaputt gehen, aber ich habe hier kein besonderes Risiko,Jetzt sagt sie mir aber dann quasi im nächsten Atemzug ja, aber der Hersteller hat gesagt.Wir wissen, dass wir zu dünne Bremsleitungen haben, nur wenn die kaputt gehen, ist ja noch die Scheiben Waschanlage da. So.So so ungefähr nur in Technik. Das war das und da habe ich natürlich gesagt, okayAlso all das, was ich jetzt sage, ist zitierfähig und dann habe ich auch diesen Artikel gelesen und der war ja dermaßen detailliert, also noch die der war ja auf Zeichenebene, ne, was für Zeichen verwendet man,für eine CSV. Detaillierter als wir jetzt sprechen. Und das ist ja kein, ich sage mal Technik, Fachmagazin und.Es kommt halt diese angekündigte Antwort äh äh von dem.Hersteller eigentlich von dem CEO, muss man sagen, von Culture For Life oder von Nexenu, von dem Patrick Henning, von dem Gesicht, was ganz vorne ansteht und der sagt, nee, äh da haben wir alles für Sorge getragen, das kann nicht passieren,das Szenario tatsächlich Daten vom Nutzer laufen ins Gesundheitsamt durch. Die können nicht zwischendurch gefiltert werden und sind so manipuliert, dass sie da irgendwie.Und das ganz konkret für dieses Szenario CSV Injection. Und wer selbst wer das noch nie gehört hat und googelt mal oder sucht mal nach CSV Injection, das.Ist eine Tabellenkalkulation.Es geht um die Formeln. Das ist eigentlich Fummeler Intection, also das ist ein Excel, ne. Ich habe mir selber gar nicht angeguckt. Man kann natürlich auch mit diesen.Nutzerdaten, die da durchlaufen, auch mit angebundenen Verfahren wie oder äh,was auch immer noch alles so hinten dranhängt, wo die Daten hingehen, spielen. Oder wenn die automatisch verarbeitet werden, ja, automatischer E-Mailversand, ja, dann kann man auch zusätzliche E-Mail-Adressen einfügen, weiß der Geier was nicht. Also die Daten merken nicht validiert, wurden nicht.
Linus Neumann 1:05:57
An dieser Stelle lohnt sich wahrscheinlich nochmal so ein kurzer äh eine kurze Erdung, wie der Tim das glaube ich immer äh auf Clubhaus nennt. Also, wenn wir von Injection reden.Bedeutet, dass die Daten kommen aus dem einen Kontext in den anderen und haben in dem anderen eine neue Bedeutung.In diesem Fall, den Markus jetzt gerade beschreibt, exportieren wir aus Luka in eine CSV-Datei,dann in Excel und Excel sagt, oh, das ist eine Formel, ich greife mal aufs Internet zu. Der noch klassischere.Fall der Injection ist die äh SQL Injection, ne, der die in der in den Web-Anwendungen eine große Rolle spielt. Da ist es zum Beispiel so, dass äh quasi.Also, wenn diese Schwachstelle besteht, wenn mein Nutzername oder mein Name jetzt zum Beispiel lauten würde, äh Anführungszeichen oben, Semikolon, lösche alle Tabellen. Dann könnte ich so heißen.Und wenn ich das jetzt an die Webanwendung gebe, gibt sie das weiter an die Datenbank und sagt, hier ist grade ein Nutzer gekommen, der heißt so und so und in dem der Befehl, den die Webanwendung dann an die Datenbank schickt.Wäre wieder, würde von der Datenbank anders interpretiert werden, weil durch dieses Anführungszeichen oben und das Semi Colon äh und das lösche bitte alle Tabellen. Ähmdass es ein valider Befehl an diese Datenbank und dass,das äh das Eklige an solchen Injections ist, dass sich das, was jetzt eine kritische Bedeutung hat.Von Kontext zu Kontext ändert. Und deswegen ist es zum Beispiel so so dringend ähm inund in der Programmierung ist das ein riesiges Problem, immer und immer wieder, den Typ einer Variable zu bestimmen. Ja, wenn man anfängt zu programmieren, wundert man sich, warum ich eine Variable, zum Beispiel als äh, also als ganze Zahloder als String. Ähm definieren mussAber für den für den Computer bedeutet, dass die Welt, weil die ganzen Zahlen kann ich multiplizieren und wenn ich einen String mit einer Zahl multipliziere, muss ich wissen, was damit zu tun ist. Also, der eine Wert ist in dem einen Kontext komplett,ohne besondere Gefahr und in dem neuen Kontext ist er.Kritisch. Jetzt sind das zum Glück, ist das eine überschaubare Menge an ähm Zeichen, auf die man prüfen muss.Aber man muss halt das dann schon machen.
Marcus Mengs 1:08:45
Ja, da liegt gar net, ich weiß, wo du hin willst, aber das war gar nicht so das Problem. Nur ich möchte mal, ich finde das mit dem Kontextwechsel, das ist sehr super, aber ich glaube, ich habe noch ein einfaches Beispiel.
Linus Neumann 1:08:53
Super, wenn du eine bessere Erklärung hast, dann gibt's die.
Marcus Mengs 1:08:56
Kenn das noch von von ja von den von den Simpsons von den Simpsons. Früher kenne ich das noch, ne? Ähm du weißt äh du hast diese Bar, wo du anrufst.Fragst du noch irgendeinen Namen und jetzt rufst du an und sagst.Fragst nach ja? In in deinem Kontext oder in dem Kontext des Anrufes hat Reinsch keine Bedeutung, aber du weißt in dem neuen Kontext, was da draus wird, weil der Barkeeper fragt, dann kennst du jemanden, der reinscheißt. Genau, das ist.Eigentlich eine gute Analogie dazu, was du gerade sagst zu dem Kontextwechsel.
Linus Neumann 1:09:27
Die finde ich sehr viel besser als meine.
Marcus Mengs 1:09:29
Ja sie ist kurz aber die äh ja aber das ist äh das ist der Kern der Sache, klar. Weil äh für diese ganze jetzt gezeigte Video heißt das, wenn du ähm.Mit Nachnamen, Addierefeld eins plus mit Feld zwei heißt, ja, dann versteht da Excel was anderes drunter, als dass das dein Name ist, sondern das wird zwei Felder addieren.Und wenn da halt na also das ist der Kontextwechsel, den du beschreibst und ja ich habe ja vorhin schon mal gesagt, die Formeln können mehr.
Tim Pritlove 1:10:01
So Jungs, ihr äh habt bisher äh komplett äh vergessen, mal Big Picture nochmal äh zu berücksichtigen. Was passiert eigentlich? Also.Daten sollen übernommen werden vom Gesundheitsamt. Gesundheitsamt lädt Daten runter,System und normalerweise stehen Name.Vorname, Name, Adresse, Telefonnummer, E-Mail-Adresse. Das ist das eigentliche Ziel. Das ist das, was normalerweise passieren soll. Und das geht so lange gut, wie in diesen Daten, die da ankommen. Hoffentlich genau das drinsteht.Wenn es jetzt einen Weg gibt, dort böses Zeug reinzuschreiben,Wie zum Beispiel, dass nun hier in aller Bandbreite äh äh erläuterte äh Modell vonFormeln, Anweisung quasi für Excel, die dazu führen, dass Daten auf einmal von einer ganz anderen Quelle aus dem Internet nämlich äh herangezogen und dann im schlimmsten Fall auch noch ausgeführt werdendann wäre das schlimm. Das kann aber nur dann schlimm sein, wenn diese Daten tatsächlich auch schlimmen Inhalt haben können.Dann stellt sich doch die Frage,Wie können denn diese Daten überhaupt schlimmen Inhalt haben? Wo kommt denn dieser schlimme Inhalt überhaupt her? Weil das sind doch alles Daten, die Leute auf ihren Apps eingeben.Sind doch gerade bösen Menschen. Die wollen doch nur, die wollen auch nur in die Außengastronomie.
Marcus Mengs 1:11:28
Ja, da da bist du ganz schnell bei der Tragweite, also für das Big Pactcher, wenn man sich ein Stück zurücklehnt, muss man natürlich erstmal sagen.Dass man sich in dem Video nicht gezeigt hat, ganz kurz mit erläutern, wie fragt das Gesundheitsamt ab, dass du Gesundheitsamt fragt, ja einen Einzelnutzer ab,und zwar einen mit dem schon im Kontakt steht, weil der wahrscheinlich infiziert ist, äh tauscht mit denen.Dann eine Tarn aus, um sei äh über Luca die Locationhistorie von diesem Nutzer wieder herzustellen. Das habe ich in dem Video alles unterschlagen, ne, weil äh dass der ProzessDas heißt, äh das Gesundheitsamt bekommt getan, guckt dann in sein Frontend und sieht jetzt die Daten dieses einen Nutzers und wo ist der gewesen?In meinem Beispiel hieß das ja glaube ich Bar Lounge oder so, es können natürlich mehrere Locations sein und jetzt kommt diese doppelt Verschlüsselung, die immer beworben wird. Jetzt muss das Gesundheitsamt jede Location anfragenGibst du mir mal bitte äh ähm die Check-In-Daten der restlichen Gäste, die zum Zeitpunkt.Dem Zeitpunkt da waren, wo der Nutzer da war, den ich gerade trac. Und das sind dann quasi die Kontaktlisten, also das Gesundheitsamt geht von einem Nutzer aus,Ist auch für einen Angreifer nicht so interessant und holt sich dann von vielen Leuten die Kontaktdaten anhand von Gästelisten, also von Locations, wo die gerade eingecheckt waren, da müssen die Locations auch zustimmen.So und da bist du dann bei dem, äh wenn das Gesundheitsamt diese Dateneinsehen will in dem Webfronten entziehen die nur ein Bruchteil, ja? Das sind zum Beispiel die Adressen nicht dabei, da müssen irgendwie die Daten exportiert werden, damit du zum Beispiel Straße, Hausnummer und so weiter siehst.In was für einem Format auch immer, wenn's dann CSV ist und da zwei von den drei Exportformaten sind CSV, dann kann man dann Chartcode,Ausführung auslösen und zwar genau, wenn einer ein einziger dieser Nutzer, die in dieser gesamten Datenlageauftauchen, die das Gesundheitsamt da erzeugt, in seine Kontaktdaten solchen Chartcode eingegeben hat, weil diese Entschlüsselung.Mit den in Zusammenarbeit mit der Location und in Zusammenarbeit mit dem Nutzer, der getracet wird, findet alles lokal auf der Seite des Gesundheitsamtes statt. Man sieht das zwar nochin äh der Webaplikation, aber das läuft lokal auf den Rechner.
Tim Pritlove 1:13:46
Also wenn ich dich richtig verstehe, ist es äh Angriffsszenario, was du jetzt beschrieben hast und wir müssen das äh auch jetzt, ich musste jetzt mal kurz mal von A bis Z mal äh vorstellen, weil ich glaube, wir sind irgendwie äh äh verfangen uns immer wieder in den Details.Der Angriff erfolgt auf diese Datenübergabe. Das ist sozusagen der Punkt, der jetzt hier äh,die eigentliche Schwachstelle im System darstellt.Und das Ganze ist in dem Moment äh kann es erfolgreich sein, wenn man die Möglichkeit hat,Eingabedaten gezielt zu verändern. Und das bedeutet ja, wenn ich das richtig verstehe,man hier sozusagen einen User irgendwo mit eincheckt und dessen Daten, die man dann letzten Endes verschlüsselt, ablegt,Lukas System sind irgendwie modifiziert, weil sie müssen ja diese Daten, da muss man ja irgendwie ran und die einzige Möglichkeit, da ranzugehen ist ja die App. So,Das, das ist sozusagen der Angriff, der hier äh erfolgt. Die Wirkung, die du in deinem Video gezeigt hast, die müssen wir auch noch erwähnen, ist die Daten werden modifiziert.Auf, nutzen eben dieses hier jetzt vorgestellte System mit diesen Formeln.Und bringen in dem Moment, wo der Mitarbeiter des Gesundheitsamt diese Daten exportiert und öffnet,und das muss man dazu sagen, auch nochmal zwei Wahndialoge einfach, na ja, übergehtJa, einfach sagst du, ja, mir doch egal was, da jetzt in diesem Fenster steht, ich muss jetzt hier so lange Return drücken, bis bis die Tabelle hochkommt, so bin ich das gewohnt, ne? Das ist ja so dastypische Nutzerverhalten. In dem Moment könnte ja äh das Böse auch noch aufgehalten werden. Wird es aber dann nichtDass es durchaus ein realistisches Szenario, das wissen wir einfach, dass Leute das dann einfach tun, weil sie das normalerweise nie sehen. Ist natürlich auch nicht geschult bekommen haben und die wollen irgendwie an die Daten ran. Und sie sind vollkommen gewohnt, das Windowsprogrammeimmer irgendwelche komischen Dialoge aufpoppen lassen und noch irgendwelche haben wollen, bevor sie dann endlich mal was sinnvolles für einen tun. Unddiese modifizierten Daten führen dann dazu, dass Excel die Daten einliest, interpretiert.Code drin steht, der äh das Herunterladen eines externen Programms,und das Ausführen dieses Programms auf dem Computer bewirkt und dein Beispiel, was du dann in dem Video genannt hast, ist daskommt also eine Software, die den Rechner verschlüsselt und Fenster aufmacht und sagt, ja, das war's dann jetzt hier mit den Daten jetzt mal her mit dem Bitcoin, sonst ähkriegt er die nie wieder.
Marcus Mengs 1:16:33
Ja, in einem realistischen Szenario würde da gar nichts passieren, weil ähm.Das ist ja eine Demo gewesen, um das ein bisschen plakativ zu machen. Die normalen Demos, da poppt der Taschenrechner auf, um zu wissen, man kann beliebig Sachen ausführen,in einem tatsächlichen Angrifffür diesen einen Sweat Actor, der schnell Geld verdienen will, ist das realistisch, dass da eine Verschlüsselung stattfindet. Das würde nur so aussehen, dass nicht nach einer Sekunde diese Meldung hochpuppt, sondern erst, wenn die Daten auch alle verschlüsselt sind und es dann zu spätist. Oder du hast halt einen also ein ein Angreifersagt, ah, ich bin mir sehr bewusst, was ich für ein System da angreife, da möchte ich nicht schnell Geld rausquetschen, sondern viele Informationen, dann wirst du gar nichts sehen, weil das erste, was der macht, ist, der weißDieser Angriff über Excelwird früher oder später erkannt, wahrscheinlich eher früher, also wird er sich versuchen im System zu verstecken, einen zusätzlichen Zugang zu schaffen, dann auf andere Systeme überzugehen, damit er möglichst lange, möglichst unerkannt,viele Informationen daraus ziehen kann und gegebenenfalls auch manipulieren kann. Da wird in Excel nicht mehr als die Fehlermeldung erscheinen. Dann sieht man die der Daten und dann wird ganz langsam dieses Gesamtsystem infiziert. Das ist eigentlich eherdas ist wahrscheinlich eher das was realistisch ist, was da passiert.Weil die Sachen, ich denke mal, äh da muss man auch realistisch bleiben, äh wenn man wenn man jetzt nicht davon aus, wenn manausgeht davon, dass sie auf Profit ausgelegt sind, dann sind die auf Masse ausgelegt und dann nimmt man sich nicht so einen spezifischen Vektor wie für dieses Gesundheitsamt,Ist ein klassischer Vektor. Heißt nicht, dass das nicht geht. Und äh auch nicht, wenn wir reden ja immer nur über Cybercrime. Meistens im Hintergrund, die wollen schnell Geld verdienen und nicht.Äh viele Daten ausleiten, aber es gibt halt verschiedene Akteure und verschiedene Szenarien. Das muss man auf der.Auswirkungsseite sagen, bei dem Input muss man sagen, äh wir haben's jetzt sehr verkompliziert. Eigentlich ist es so einfach ähm,Du bist der Nutzer, du kannst als Name Schadcode in deinen Namen eintragen, Luca filtert das nicht und irgendwann ruft das Gesundheitsamt eine Kontaktliste ab, wo dein Name draufsteht.Aber wenn es den Namen liest, indem du eingefügt hast, wird das schon ausgeführt. Äh wollte ich schon fast sagen.Weil äh im Prinzip, ich hab's nicht so getestet, aber jeder Nutzer, ich habe nicht den, ich habenur nicht den Namen mit Chart-Code hinterlegt aus einem ganz einfachen Grund, dann hätte ich im Video den Chartcode selber zeigen müssen. Deswegen habe ich ein anderes Nutzerdatum genommen. Bei mir lag der Schadcode in der äh Postleitzahl, wenn ich's jetzt richtig im Kopf habeäh was eigentlich eine fünfstellige Ziffer ist. Bei Luka kann's auch sein. Alleine das ist schon bemerkenswert, weil das könnte man sehr einfach filtern,ähm und jetzt hast du aber nicht das Risiko nur, dass ein Mensch das macht und sagt, ey ich bin der Böse, sondern äh du kannst,Beliebig viele Nutzer anlegen, weil die äh Telefonnummern, Zertifizierung noch nicht läuft, du kannst beliebig viele Nutzer mit viel Chartcode in beliebig vielen Kontaktdaten hinterlegen. Und die Wahrscheinlichkeit, ein Gesundheitsamt zu treffen.Äh steigerst du damit, dass du die in sehr, sehr, sehr viele Locations eincheckst. Weil du kannst auch einen Nutzer parallel in mehrere Locations einchecken.Und irgendwann wird ein Gesundheitsamt eine Location abfragen und dann taucht einer von deinen Schadcode behafteten Nutzern mit auf und das,steigert die Wahrscheinlichkeit, dass du so einen Angriff platzieren kannst, natürlich dramatisch. Und je mehr von diesen Angriffen du platzierst, umso höher ist die Wahrscheinlichkeit, dass ein Mitarbeiter in einem Gesundheitsamt so eine Warnmeldung wegklickt.Und dann muss man den Impakt hinten sehen, klickt die einer weg. Das ist wie bei Phishing. Es reicht einer, weil du hast dann Systemzugriff,Ob das dann noch einer macht, brauchte ich gar nicht mehr interessieren, weil du kannst dann schon mit dem System arbeiten.Ob du da jetzt die Daten aus dieser Excel Tabelle von dem einen kontaktracing abgreifst, das ist eigentlich auch egal, weil du kannst dich da einisten und äh auch auf Luca greifst du äh,von dem Gesundheitsamt Mitarbeiter zu und wir wissen auch, dass Luka äh es gibt auch keine Trennung mehr, nach Zuständigkeiten der Gesundheitsämter, weil alle Gesundheitsämter äh nutzen die gleichen Schlüssel,in dem System zum Datenzugriff.Und also alleine was diese Fachanwendung Luca betrifft hast du dann eigentlich Zugriff auf alles. Wenn dir ein so ein Angriff gelingt und du kannst den sehr, sehr,breit platzieren, um die Wahrscheinlichkeit zu erhöhen, dass du triffst. Und das ist das, äh, was da eigentlich dahinter steht.
Tim Pritlove 1:21:07
Okay, also halten wir fest, wenn erstmal böse Daten weit gestreut sindist es äh eigentlich nur noch ähm durch ein besseres Filtern der Daten bei der Übergabe äh zu retten,Das ist etwas, was jetzt auch nachträglich von Luca noch gemacht werden kann. Das ist auch, sagen wir mal, von der Komplexität her jetzt nicht so, dass man sagen würde, das ist jetzt unmöglich, das zu verhindern. Es ist halt einfach nur so eine weitere Nachlässigkeitvon so einem Ding, wo man sagen würdeHeutzutage sichere Programmierung im Internet gehört einfach so ein Sanity-Check, so ein so ein so eine so eine so eine Gesundheitsüberprüfung von Daten und das äh sicherstellen, dass die Daten auch in der Form,und in der Art präsentiert werden, wie sie erwartet werden. Das gehört einfach dazu, ja. Früher gab's ja mal im Internet dieses.Etwas äh zu optimistische Idiom, man solle doch ähm bei Software immer sehr st,darin sein, was man sendet, aber man sollte sehr offen sein mit dem, was man äh empfängt. Das ist in gewisser Hinsichtgut gemeint, also nach dem Motto, naja, wenn's mal einer falsch macht und so, dann dann lassen wir es äh äh lassen wir auch Abweichungen zu. Das führt aber dann dazu, dass eben dann solche äh bösartigen Atta,nicht korrekt erkannt werden, ne. Tatsächlich äh sollte man extrem strikt sein in dem, was man äh akzeptiert, weil dann werden sich die Sender schon auch irgendwann danach äh richten. In diesem Fall aber liefert ja quasiLuca seine eigenen Daten ausund äh die Eingaben der User nicht ansatzweise zu überprüfen, dass sie auch in einer Form kommen, wie es gedacht istUnd dabei sogar noch zu erlauben, so den die Daten zu anzupassen, dass sie auf der anderen Seite so ein Excel in so einem Windowssystem springen. Das ist schon ziemlich äh harter Tobak,wenn sie wollen, können sie das Problem schnell lösen, aber das Problem ist einfach nur, dass dass man sogar sowas äh noch entdecken muss, obwohl schon wochenlang über Sicherheit dieses Systems diskutiert wird.
Linus Neumann 1:23:18
Spezifisch über dieses eine Angriffsszenario, ja, also äh ähm ich habe ich werde auch, glaube ich, in einem Zeit Onlineartikel damit zitiert, zu sagen, so das zu fixen.Dauert Minuten. Dauert eine Stunde. Insbesondere, wenn du jetzt weißt, was sind denn die gefährlichen.Zeichen im Zielsystem. Bei Excel in dem Fall ist das halt, ich meine, das müsste es müsste größtenteils erledigt sein, wenn du sagst, wir akzeptieren keine Gleichheitszeichen,in der Postleitzahl, keine Klammern und keine Anführungszeichen, ne? Das ist jetzt nicht irgendeine irgendeine irre Magie. Du musst natürlich wissen,Was sind die potenziell gefährlichen Zeichen äh in dem System, wo es nachher ausgespielt wird?Aber ne, die die sind, das ist eigentlich ganz lustig, das weißt du ja auch, Tim und äh für die Hörerin leuchtet's auch ein,in den Programmiersprachen und in den in den verschiedenen Kontexten sind es denn häufig Zeichen, die auf der amerikanischen Tastatur relativ einfach zu tippen sind,und vielleicht nicht ganz so häufig in normalen Kontexten. Ne? Und äh deswegen ist halt das Gleichheitszeichen bei Excel äh das naheliegende Ding, weil es irgendwie symbolisiert,in diesem Feld soll etwas anderes stehen, als was ich hier schreibe, nämlich gleich und,niemand rechnet mit dem Gleichheitszeichen als und damit ist es halt der der geeignete Escape Charakter. Und,den zu filtern, das ist eben jeder Programmiererin innerhalb von drei Wochen möglich.Hat äh in diesem Fall vor drei Wochen eben sehr viel mehr Zeit darauf verwendet, die Schwachstelle zu leugnen.Als sie einfach zu fixen und drei Wochen später war es dann soweit, dass Markus irgendwie in seiner Freizeit mal kurz einen Proof of Concept fertig hatte, der zeigte so, hier so schlägt das durch. Wenn man keinerlei.Äh macht.Und das ist denke ich auch das das Krasse hier und dass sie eben, ne, das wurde breit in der Öffentlichkeit diskutiert. Übrigens, kannst du reinschreiben, was du willst?Kommt raus, was du willst. Wird, du wirst keine Filter umgehen.
Marcus Mengs 1:25:47
Es war ja eigentlich sogar noch ein bisschen schlimmer, muss man ja sagen. Ich wüsste jetzt nicht auf das Zeichen dafür runterbrechen, aber es gab ja.Artikel ist vor drei Wochen veröffentlicht worden, der das Problem konkret behandelt hat,und in dem Artikel stand wie Nex Senior dieses Problem negiert hat mit der, ich sage mal mit der Aussage, ob die jetzt richtig oder falsch waren die Maßnahmen, die sie getroffen haben, aber wir haben Maßnahmen getroffen. Ähm,Maßnahmen, es gab einen Tag äh.Ich glaube, einen Tag bevor der Artikel veröffentlicht wurde, äh gab's einen Commit, also eine eine ein Update vom Code, in dem Repositor, wo ähm.Genau dafür Maßnahmen getroffen worden, für das, was dann in dem Artikel stand, weil die Presseanfrage war natürlich etwas vorher, die war ja nicht.
Linus Neumann 1:26:31
Sie haben's noch versucht.
Marcus Mengs 1:26:32
Eigentlich ist die Zeitlinie so gewesen, die Presse fragt was an, habt ihr das Problem? Äh nee, haben wir nicht.Ein Tag später kommt der Patch, um dieses diesem Problem zu begegnen und dann kommt der Artikel, in dem drinnen steht, nein, das Problem besteht nicht, weil wir haben die und die Maßnahmen umgesetzt, die erst kurz vorher nachgepatcht wurden.Und ähm das ist eigentlich für mich was ganz gravierendes gewesen. Ich habe mich gar nicht so an diesen wann ist, was passiert aufgehängt, sondern äh dadurch ist mir natürlich der genaue.Genaue Mechanismus aufgefallen, mit dem da gefiltert werden soll, so und jetzt hat Linus einzelne Zeichen erklärt, ja, das kann man auf dem Level denken. ÄhmMan kann ja nur sagen, okay, ich habe ein Risiko, dass das passiert, da muss ich irgendeinen Filter einbauen und irgendwas machen. Wenn ich ein äh IT-System,oder betreiben will, äh wo ich sagen muss, äh die Verfügbarkeit, ja, die hat,die muss hoch sein, die Vertraulichkeit, die muss hoch sein, da habe ich ganz hohe Schutzziele, den ich mit Maßnahmen Rechnung tragen muss und da reicht es nicht, dass ich sage, ah, ich habe hier mal was hinprogrammiert, was das vielleicht filtert, sondern man muss das auch getestet werden. Das geht gar nicht an einem Tag,Also allein davon wie das mit die Presse fragt an und das führt zu einem Patch verlaufen ist, auch der Patch ist nicht nach einem Tag gegessen,ich habe ja ein Risikoszenario, nämlich diese CSV Injektion und irgendeine Instanz, muss mir auch unabhängig testen, dass ich mit diesem kleinen Patch.Dieses Risiko ausgemerzt habe.Was ist bei Luca passiert? Die sagen, nee, wir haben das Risiko nicht. Wir haben Maßnahmen getroffen und dann und bei mir war's so, für Wünsche war's so, ich habe eine Minute da drauf geguckt und habe gesehen, nee, das reicht nicht. Leute, weil ihr habt das Problem nicht durchtrunken.Ich habe nur noch nicht die Zeit gehabt, das auch programmiertechnisch,validieren, aber wenn man es beim Draufgucken sieht, dann ist schon ganz schlecht, ne? Also ich habe nur auf diesen Code geguckt und,Oh, ich denke, das stimmt so nicht. Und das zeigt, dass auch nicht getestet wird und das ist ganz wichtig, dass das hier fehlt. Es wird nicht getestet. Wir haben heute wieder ein Patch,Ich würde mich nie dazu hinreißen lassen, wie das Seng Senior heute gemacht hat, zu sagen, ja, wir haben jetzt auch das Problem gelöst, weil das kann nicht getestet sein in der Zeit, wenn heute, wenn in der Reaktion auf dem Video von heute Morgen kommt, äh wir haben da nachgebessert,Wenn es denn das getestet wurden.
Linus Neumann 1:28:45
Also nachgebessert haben sie ja gar nicht. Also erstmal ist das ja keine Schwachstelle, sondern sie haben nur einen Hinweis auf einen potentiellen Missbrauch des Lukas-Systems im Zusammenhang. Microsoft Excel Code Injection, ja?
Marcus Mengs 1:28:59
Es stimmt, Entschuldigung.
Linus Neumann 1:29:02
Dann haben sie nicht vor drei Wochen davon erfahren, sondern durch eine Medienanfrage und per Twitter,äh von einem möglichen Missbrauch, ja, der ab jetzt auch systemseitig verhindert wird, ja? Nicht eine Schwachstelle, nein, nein, das ist ein potentieller Missbrauch, der jetzt auch systemseitig verhindert wird.Und.Der nächste Satz ist sofort, das gilt für alle Excel-Dateien, die sie per E-Mail empfangen und hier ähm das BSI sagt, sie müssen Markus deaktivieren, wie du schon sagtest, um Markus geht's gar nicht,laut den auf Twitter erhobenen Vorwürfen wäre es unter Umständen möglich gewesen. Durch das Luka-System schadhaft.Code, an die Gesundheitsämter zu übertragen,Hintergrund ist eine sogenannte CSV Injection, ein in Excel bekanntes Problem, weshalb Excel auch generell Dateien auf solchenChartcode bei Offnung prüft und die Nizzerinnen darauf hinweist, die Schwachstelle in Excel kann es theoretisch ermöglichenschadhaften Code in Excel auszuführen mit Hilfe von bestimmten Formeln können Angreiferinnen beispielsweise Daten auslesen oder andereschädliche Aktionen ausführen. Also Excel ist ja das Problem. Um den potenziellen Missbrauch,die Übertragung der Luca-Daten an Excel, Excel, Excel Excel. Über die dort implementierten Sicherheitsmaßnahmen hinaus zu verhindern,System verschiedene Filter einer hätte gereicht, angewendet, welche im Vorfeld die Excel und CSV Dateien,nach Zeichen und Formeln scannen. Da bin ich ja mal gespannt, welche Zeichen die so scannen. Ich kenne sie ja, die sieht man ja in dem Gitcom mit.Viele in Deutschland übliche Nachnamen sind inzwischen ausgeschlossen. Das Luka-System berücksichtigt die Empfehlung von OverSpe bezüglich CSV Injection, die hier aufgelistet sind. Nein, das tun sie nicht. Und spätestens da,ist es eben nicht mehr wahr. Entsprechende Zellen werden wie empfohlen. Es gibt heute Vormittag haben wir diesen Filter noch zusätzlich um eine sogenannte Anzeichen erweitert, damit böswilligeAngreiferinnen, diese Excell-Lücke nicht mehr ausnutzen können.Und ich muss ganz ehrlich sagen, mir reicht es langsam, ne? Also wieder einmal ähm,sagen sie das Problem ist nicht bei uns, es geht noch es geht noch viel weiter, ja? Sie sagen, ich ich überspringe jetzt mal, weil es auch einfach nur noch eine Frechheit ist. Ähm spezifisch.Was bedeutet das für die Arbeit in Gesundheitsämtern, ja? Die Schwachstellen in Luca.Generell ist es ratsam, Makros in Excel nur mit Bedacht zu aktivieren.Öffnungsversuch entsprechender schadhafter Dateien erfolgt eine Warnung über ein Pop-up-Fenster, welches vor dem Öffnen der Dateien auf dem Bildschirm angezeigt wird. Es ist sehr wichtig diese Hinweise sorgsam zu lesen und nicht direkt wegzuklicken.Darüber hinaus ist es ratsam zu überprüfen, inwiefern die Empfehlung des BSI im jeweiligen Gesundheitsamt bereits umgesetzt werden,BSI-Empfehlung BSICS eins drei sechs. Es ist unwahrscheinlich der Schaden durch einen derartigen Angriff entstanden ist, wenn Mitarbeiterinnen nicht.Tief die Sicherheitswarnungen des Systems missachtet haben. Uns ist kein dementsprechender Sicherheitsvorfall in Zusammenhang mit.Lukas System bekannt. Durch weitere Maßnahmen, weitere Maßnahmen, die heute im Lukas-System umgesetzt worden sind, wird in Zukunft ein solcher Missbrauch,in Zusammenhang mit Makros in Excel verhindert. Und es ist genau diese Kommunikation, wo ich.Also und das habe ich auch dem Patrick Hennig schon persönlich gesagt, dass sie.Diese unaufrichtige Kommunikation sich echt mal langsam sparen können. Ja? Das ist eine Schwachstelle bei denen. Das ist,Verantwortungsbereich. Und sie können nicht sagen, äh Microsoft Excel ist das Problem. Ähm es gibt einen Vortrag von mir hier in der Haken beim CCC Kongress packen wir in die.Wo ich natürlich spezifisch auch,Excel und Microsoft dafür verantwortlich mache, dass sie in den Warnungen äh Nutzerverhalten einleiten.Dass äh ja die im Zweifelsfall die unsichere Variante bevorzugt. Ja? Das ist aber,Eine Situation, die war schon da. Und wenn ich davon ausgehe, dass es Postleitzahlen mit Gleichheitszeichen gibt,dann kann ich nicht Microsoft Excel den Vorwurf machen. So und das ist wie immer.Der das das klassische Umgehen von Nexen New Luca mit Schwachstellen, dass alle Schuld sind, außer sie selberMicrosoft ist schuld, der Markus ist schuld, ähm hier Twitter ist Schuld, aber wir nein,So und die lassen sich ernsthaft zitieren und tragen heute noch vor, dieses System hätte keine Sicherheitslücken. Und das.Tatsächlich auch der Punkt wenn man eine Sicherheitslücke hat, dann sagt man, hier.Haben wir Scheiße gemacht? Haben wir Scheiße gebaut, haben wir gefixt, wir kennen das Problem an, tut uns leid, wer uns selber verifiziert,Scheiße, sorry. Und ist auch völlig in Ordnung, dass solche Fehler passieren. Nur die können nicht drei Wochenspäter nachgewiesen werden, nachdem es schon auf Zeit online stand und du irgendwie wie so ein Gorilla auf deiner Brust rumgeprügelt hast und gesagt hast, äh bei uns, nee, überhaupt nicht, ey. Wir machen das alles hier mitund so, ne? Das ist alles cool, während du gleichzeitig am Datum der Presseanfrage oder einen Tag vor dem Artikel so eindeutig und durchschaubar versuchst, noch irgendwelche komischen Fixes unterzubringen. Und.Irgendwann hast du dann eben auch alles Vertrauen verspielt. Es ist nicht so, dass ich ähm.Muss wirklich sagen, gerade ich als jemand den ganzen Tag nur mit Sicherheitslücken zu tun hat und ihrer Behebung und auch die Probleme kennt, ja, ich habe ja in meiner beruflichen Tätigkeit mit nicht trivialen Sicherheitslücken zu tun,wo du wirklich denkst, Scheiße, wie kriegen wir dieses Risiko eingehegt, ja? Und ähm da akzeptiere ich nur,den Umgang der lösungsorientiert ist. Und wenn die um.Betreiben und sagen im Zweifelsfall, also wir belehren jetzt mal hier erstmal, ja? Die Mitarbeiterinnen im Gesundheitsamt.Geben jetzt irgendwie Microsoft Excel die Schuld,ja? Dass wir keinerlei anwenden, bei hochkritischen Daten in einem sensiblen, zeitkritischen Kontext, ja? Mein, die Warnmeldung, wie lautet die Warnmeldung, Markus?
Marcus Mengs 1:36:01
Um vertrauenswürdige Quellen.
Linus Neumann 1:36:03
Nur wenn sie nur öffnen sie diese Datei nur wenn sie die aus einer vertrauenswürdigen Quelle haben.Wer soll denn bei wenn Luca, hör mal Luca, kannst du doch vertrauen, da hat der Smudo doch gesagt, das ist doppelt verschlüsselt. Was willst du denn noch.Ja, wenn die, wenn sie hier immer noch die Schuld bei anderen Leuten suchen, dann hast du's halt einfach mit Leuten zu tun, die nicht aufrichtig sind,das ist einfach, ne, die haben bis heute nicht zugegeben, dass sie eine einzige Schwachstelle haben.Reden hier potentieller Missbrauch unseres Systems, andere Schwachstellen, die Markus, denen äh gemeldet hat, haben sie gesagt, ja hier haben wir einen, hier haben wir einen Error.Und ich meine, man fragt sich wirklich, was sind das für Leute.Wenn du das, wenn du den Unternehmensnamen googelst, äh hat äh Torsten mich heute noch drauf aufmerksam gemacht, dann ähm.Kommt irgendwie so sie machen nur Hochsicherheitslösungen mit.
Tim Pritlove 1:37:05
Das ist ein guter Witz.
Linus Neumann 1:37:08
Jemand, jemand anders antwortet da äh,Berliner Startup, das für nutzerfreundliche und hochsichere IT-Lösungen steht. Easy collaboration security by Design. Ein äh weiterer Nutzer auf Twitter antwortete darauf, irgendwie so Hochsicherheit kommt vor dem Fall,Ja, was ich auch sehr.
Tim Pritlove 1:37:34
Oh Mann, das trifft's wirklich sehr gut, ja. Oh.
Linus Neumann 1:37:45
Und du du fragst dich dann, ne, äh wie wie kommt es, dass der Chaos-Computer-Club siebenundsiebzigäh hoch äh dekorierte Security-Vorstellungen an den Berliner Universitäten. Sie vierhundert noch was Menschen, äh die die auch was von dem Thema verstehen, da drunter schreiben. Und alle sagen, das ist hier MurksDas ist Morks, das willst du nicht haben, das möchtest du nicht, da sind deine Daten nicht in guter Hand und da sind deine zweiundzwanzigeinhalb Millionen Euro Steuergelder nicht in guter Handwerden dann irgendwie noch als Hater beschimpft, als würden wir nicht diesen Codehaufen.Erkennen, als das, was er ist, ein Kothaufen. Und das ist zum Durchdrehen.Musste dich noch dafür rechtfertigen und dann wirst du noch diskreditiert bei anderen Unternehmen, ja? Ähm.Meldest du eine Schwachstelle und die die kommen nachher zu dir und sagen, hör mal, du hast ja mit Aufwand gehabt, ne, äh wir danken dir, dass du äh einen Beitrag zu der Sicherheit unseres Systems geleistet hast. ÄhmWir dachten, wir überweisen dir mal folgenden Betrag.
Marcus Mengs 1:38:55
Man muss auch sagen, das sagen die auch, wenn's kein wertvoller Beitrag war, damit du wiederkommst und weiter für die Arbeit ist, weil das kostet ja nicht viel.
Linus Neumann 1:39:02
Richtig, das kostet dich.Sprichwörtliche, müde Arschrunzeln, da mal ein Tausender oder fünfzehn rauszuwerfen ähm oder zwanzig einfach nur,um dich mit der Community gut zu halten. Ich will jetzt nicht dafür werben, dass äh Nexenio Markus Geld geben sollte, dafür ist er auch glaube ich zu spät und ähm so wie ich Markus schätze, würde,im Zweifelsfall eh einem äh anderen Zweck äh zur Verfügung stellen. Aber das ist halt.
Marcus Mengs 1:39:31
Ich habe sogar vor der Backbound die muss man äh kurzer Einwurf, es wird eine Backbound hier angeboten. Ich habe da mal vorsichtig vorgewarnt.Weil das hat auch immer was mit auch einem Backbound, die hat was mit Vertrauen gegenüber den Herstellern zu tun, weil man steht auch ganz schnell mal unter einer NDA,und also dass man dann nicht mehr über das sprechen darf, was man da äh gemeldet hatAber wir reden hier davon, dass das sehr, sehr viele Leute betrifft und wenn ich mir die Firma so angucke, hätte ich normale ich selbst in Persona gar keinen.Gar nicht die Tendenz in der Back Bounty zu reporten. Ich würde mich dann nicht unter die Regeln drunter drücken lassen, in dem Fall.
Linus Neumann 1:40:13
Ich will das Thema jetzt gar nicht aufmachen. Es gibt halt einen, also es gibt einen Unterschied in einer in einer gelebten IT-Sicherheitskultur und da dazu gehört eben auch das aufrichtige Anerkennen von Fehlern. Ja und,hier irgendwie dann noch am Ende die die Gesundheitsamtsmitarbeiterin zum zu belehren.Unten, unten trivialfehler, den sie gemacht haben, dann irgendwie noch Microsoft anhängen zu wollen.Dann will ich nicht wissen, äh wie das aussieht, wenn wenn mein Name demnächst den den äh den Header einer Excel, einer Excel-Datei hat.
Marcus Mengs 1:40:50
Das Statement, entschuldige lieben und das Statement, das das ist an Dreistigkeit, das ist echt nicht so zu übertreffen oder auch die alleine äh.Eine Aussage dadrüber zu treffen, was Behörden für BSI-Maßnahmen umsetzen, die brauchen alle keine IT-Sicherheitsbeauftragten mehr, weilSagt denen, was für Maßnahmen schon umgesetzt sind. Die brauchen auch keine Konzepte mehr schreiben, weil Next Senior weiß auch, was für Maßnahmen umgesetzt sind und wie den riesigen Rechnungen betragen wird.
Linus Neumann 1:41:14
Unglaublich.
Marcus Mengs 1:41:15
Sicherheitsstrang brauchst du gar nicht mehr, du willst jetzt einen Dreistigkeit kaum noch zu übertreffen, ne? Oder oder alleine der Wunsch.Aus der Perspektive Nexenio feststellen zu können, ob's damit mal einen erfolgreichen Angriff gab oder eine Ausnutzung von solchen Schwachstellen, das ist ja auch,Ein sehr großes Wunschdenken, ja, dass man da überhaupt Aussagefähig ist von außen, äh ist schon.Schon sportlich, was sie da geschrieben haben, muss man so sagen.
Linus Neumann 1:41:44
Also mir fällt da nichts mehr zu ein.
Marcus Mengs 1:41:47
Investiert mehr nicht vier Millionen in SMS, sondern noch mehr in PR.
Linus Neumann 1:41:51
Vier Millionen in SMS, die sie nicht prüfen. Das ist einfach nur so.Hier vier Millionen ne weg.
Marcus Mengs 1:42:01
Vielleicht das, vielleicht äh ich habe auch schon mal überlegt, ob das nicht vielleicht der Grund ist, ähm,Warum ja diese SMS Verifizierung immer noch nicht stattfindet, weil die Frage ist ja dann auf die Nutzer, die sich da ja schon angemeldet haben, müssen die dann auch nochmal eine neue SMS bekommen oder nicht. Kostet das dann nochmal vier Millionen?
Linus Neumann 1:42:18
Also das ist ja wieder nur Quatsch, ne? Das ist ja wieder nur, dass sie morgens irgendein Quatsch geredet haben, die werden niemals äh mit ihren existierenden Nutzerinnennochmal 'ne SMS verifikation durchführen. Das werden die einfach nicht tun, weil sie wissen, dass sie dabei dreiviertel der Nutzerinnen verlieren. Aber,Ich denke, wir haben jetzt auch langsam alles geschildert und es ist ja also.Es werden hier immer wieder Probleme geschildert,es sind immer Probleme aus dem ersten Semester oder dem ersten YouTube-Tutorial und die warum ich auch wirklich so fuchsig darauf reagiere und warum ich das hier auch nochmal in aller Breitemit dir. Markus, ich weiß, du hattest einen langen Tag, besprechen wollte, ist, weil diese Antwort so.Unverschämt ist, weil sie so gegen alles verstößt, was wir in der IT-Sicherheitskultur seit Jahrzehnten leben.Und was wir auch nicht tolerieren dürfen als Gesellschaft.Es gibt immer schwierigere Sicherheitslücken. Es gibt immer größere Hacks und so weiter. Aber gerade deswegen musst du als äh Unternehmen, dass Millionen an Steuergeldern kassiert, sagen,So und so, habt ihr recht, Hammerscheiße gebaut, müssen wir besser machen.Und das hätten sie vor drei Wochen machen können. Und sie machen's drei Wochen später immer noch nicht. Und solchen Leuten willst du nicht vertrauen,Und deswegen stelle ich jetzt hier ganz klar die Forderung, na ja, ein Spiegel äh Interview heute schon gestelltVerträge, rückabwickeln, Regress fordern, die haben nicht geliefertLuca Deh installieren und echt zusehen, ob er wenigstens noch ein paar von den Millionen irgendwie zurückfördern äh zurückfordern können, weil die ganz offensichtlich nicht das geliefert haben, was sie,versprechen und weil sie den Anforderungen, die sie an ihre eigene App stellen, nicht gerecht werden.
Tim Pritlove 1:44:31
So Leute, ich äh denke, jetzt ist äh alles ausführlich diskutiert äh worden. Wir stellen fest, dieses,ist äh nicht zu retten und unsere einzige Hoffnung besteht da drin, nicht nochmal drüber sprechen zu müssen.Vielen Dank, Markus für die äh Ausführung.
Marcus Mengs 1:44:53
Ja, danke für das entspannte Gespräch.
Linus Neumann 1:44:57
Und danke, dass du an der Nummer so drangeblieben bist.
Tim Pritlove 1:45:00
Genau. Ja und wir äh Linos haben jetzt ein bisschen viele Sendungen rausgegossen. Ähm.
Linus Neumann 1:45:06
Ja, jetzt hören wir auf.
Tim Pritlove 1:45:07
Aber das hat hat ja auch jetzt ist erstmal Ruhe. Wir melden uns dann wieder, wenn die Pandemie vorbei ist.
Linus Neumann 1:45:16
Und die Netzpolitik wieder in Ordnung.
Tim Pritlove 1:45:18
Ja genau und all diese Apps überhaupt nicht mehr erforderlich sind. Nee, Quatsch. Wird nicht so lange dauern, aber äh jetzt wünschen wir euch noch einen schönen Wochenausklang oder was auch immer gerade bei euch äh ansteht und sagen tschüss und bis bald.
Linus Neumann 1:45:31
Tschau, tschau.
Marcus Mengs 1:45:32
Tschüss.

Shownotes

Prolog

Feedback

Vorstellung Mame82

Vorgeschichte Luca

Umgang mit Theresa Stadler

Luca-Probleme

Video-Serie

Tracking

Schlüssel-Anhänger: LucaTrack II

Code Injection

Vorgeschichte

Wie genau funktioniert der Angriff?

Presseberichte

Reaktion von Luca

Reaktion Community

Empfehlungen

33 Gedanken zu „LNP396 Hochsicherheit kommt vor dem Fall

  1. Zu der Luca CSV Injection

    Ihr sagt ja, luca sollte die Daten prüfen bevor sie in die Datenbank geschrieben werden. Ich bin mir nicht sicher, ob ich das richtig verstanden habe, aber diese Daten (Name, PLZ, usw) werden doch lokal vom Nutzer verschlüsselt richtig? Wie würde man dann die Prüfung dieser Daten sinnvoll ohne Entschlüsselung durchführen?
    Man könnte z.B. einen Verschlüsselungsalgorithmus verwenden, der nur auf alphanumerischen Zeichen funktioniert, statt auf ASCII. Aber da müssten die ja nachträglich ihren kompletten crypto stack anpassen. Was wäre so die beste Lösung für dafür?

    Und natürlich kann man dann auf der Seite der Entschlüsselung beim Gesundheitsamt relativ easy prüfen, aber ich hatte euch jetzt schon so verstanden, dass es eigentlich so sein müsste, dass die API solche Daten gar nicht erst annimmt.

      • Das hilft nicht, weil der Server nicht prüfen kann, ob das, was du ihm da schickst, „validiert“ ist.
        Das muss zwischen Entschlüsselung und Erstellung der CSV-Datei geschehen.

        • Doch das hilft, denn das verhindert erst mal das Problem an der Quelle. Wenn du das umgehen willst, muss ein deutlich höhrer Aufwand betrieben werden.

          Was du vorschlägst ist natürlich zusätzlich sinnvoll, wenn nicht sogar die wichtigere Stelle.

          Was mich aber auch zu der Frage bringt: Wie bitte soll das wirksam Ende-zu-Ende-verschlüsselt sein, wenn das auf den Servern vom Hersteller entschlüsselt wird? Dann haben die doch da Zugriff auf die Daten und mitnichten nur die Gesundheitsämter. Oder habe ich hier einen Denkfehler?

          • Ich meinte aufgeschnappt zu haben, dass die Entschlüsselung im Browser des Gesundheitsamts stattfindet.
            Meine Vermutung ist, dass auch dort erst die CSV-Datei für den Download generiert wird.

            Der Aufwand für das Umgehen ist eben nicht besonders hoch, weil ich, anstatt die manipulierten Kontaktdaten mit der App zu verschlüsseln und abzuschicken, das auch mit jedem anderen Tool machen kann – und dann kann da eben auch alles mögliche drinstehen.
            (Deshalb ist die Antwort mit „React“ auch so lustig, weil das vermutlich nur eine Validierung bei der Eingabe per App ist.)

            • Wenn du in deiner Applikation Daten verarbeitest, die von außen kommen (input), um sie dann wieder auszugeben (output, verschieden je nach Ausgabekontext z.B. HTML, Filedownload etc), musst du für security folgendes tun:
              1) Input validieren (an der Stelle an dem du den Input kontollierst)
              2) Output encoden/escapen (um unerwünschte Interpretation im Zielcontext zu vermeiden, z.B. Auslösen von Aktionen im Parser der den Output verarbeitet)

              Am Beispiel Luca (ich beschränke mich auf Postleitzahl als Input und CSV als Ausgabe Kontext … bsp für weiteren Ausgabekontext wäre HTML zur Darstellung im Frontend):

              Der Input (Postleitzahl) kann z.B. validiert werden, indem man prüft, dass Eingabedaten nur 5-stellige Ziffern sind (semantik). Man könnte auch prüfen, ob die Postleitzahl überhaupt gültig ist (in Deutschland vergeben, im System nutzbar etc).

              Wo die Input Validierung stattfinden muss dürfte auch klar sein. Könnte man in der App machen, dann kann sie aber vom Nutzer umgangen werden, bevor die Daten verschlüsselt werden. Luca hat hier erst im Frontend des Gesunheitsamtes die Kontrolle, nachdem die Daten entschlüsselt wurden. Dort prüfst du also ob die Postleitzahl eine Postleitzahl ist.

              Dann kommt der Output, in diesem Fall CSV. Hier musst du also alles encoden/escapen was im Kontext von CSV anders interpretiert werden könnte, als eine Postleitzahl (die Input Valudierung hat dass sogar schon weitestgehend gemacht). Trotzdem musst du dich fragen, ob die PLZ dann als Zahl mit führenden Nullen oder doch lieber als String in die CSV Datenzelle soll. Nehmen wir mal an es soll ein String werden, dann sorgst du z.B. dafür, dass Zeichen die den String in CSV terminieren (“ oder ‚) escaped werden, so dass sie nicht als Steuerzeichen interpretiert werden (von CSV parsen). Das gleiche würdest du z.B. mit Zeichen tun, die neue Zellen öffnen neue Tabellenzeilen anfangen usw usw

              So macht man das, wenn man nicht Luca entwickelt

  2. Also ich hätte nen Vorschlag, wie sich das Problem fixen liesse: Nexenio druckt die Daten einfach aus und faxt sie ans Gesundheitsamt, wo sie dann wieder abgetippt werden :-P

  3. Ihr habt es mehrfach angerissen, aber ich denke es ist hilfreich sich nochmal vor Augen zu führen, das es beim ‚Sanitizen‘ von Daten zwei Aspekte gibt. Einer für Datenqualität, einer für Sicherheit bei der Ausgabe.

    Validität: Machen die Daten Sinn? z.B. eine PLZ ist ein String aus 5 Zahlen, das Geburtsdatum ein parsebares Datum in der Vergangenheit, eine spezifische Text-Beschreibung hat max. 200 Zeichen, … All das macht man typischerweise beim Input, um fehlerhafte Eingaben gleich zu erkennen und den User darauf hinweisen zu können (das ist ja i.d.R. keine Absicht). Außerdem sollen Daten ja ggf. in einer Datenbank schon in bestimmten Formaten gespeichert werden (als Integer, Datetime, …), um damit sinnvoll arbeiten zu können, wozu sie ohne Verlust der Information interpretiert/transformiert werden sollen.

    Escaping/Encoding: Wie müssen die Daten im spezifischen Kontext aufbereitet werden, um korrekt verstanden zu werden? Das passiert dann typischerweise beim Output, weil nur da der Kontext bekannt ist. Dieselben (!) Daten können – unbearbeitet – im einen Kontext gefährlich, im anderen valide Information sein. Im Fall von Luca denke man z.B. an HTML (Dinge, die im Browser angezeigt werden) und CSV (Dinge, die in Excel angezeigt werden).

    Natürlich sind die Angriffe auf das, was beim Output passiert, deutlich erschwert, wenn der Input schon auf valide Daten beschränkt wird. Aber zum einen gibts valide Fälle für breiten Input, zum anderen ist es nie hinreichend.

  4. (Ich weiß, ihr wollt die Entwickler nicht mit dem Fingerpointing auf Excel davon kommen lassen – ich auch nicht.)

    Ich höre gerade zum ersten mal von CSV Injections in Excel und bin – mal wieder – entsetzt über dieses „Feature“. (Microsoft-Bashing entfernt, s.u.) Ich empfinde schon das Auswerten von (ungefährlichen) Formeln beim Darstellen von CSV-Inhalten als Bug.
    Wie kommt man darauf, in einem solchen allgemein verwendeten Format davon auszugehen, der Inhalt könne überhaupt Excel-spezifische Syntax enthalten, die als solche beabsichtigt ist?
    (Ich entschärfe meinen Beitrag gerade ein wenig, weil LibreOffice das genauso handhabt.)

    Es hat wohl einen Grund, dass diese Lücke im xlsx-Format nicht funktioniert. Werden die Zellen dort als „keine Formel“ markiert, oder hat man bei Luca in diesem Format daran gedacht, Formeln zu escapen? Oder hat man zum Generieren der xlsx-Files ein Tool genutzt, dass das (zufällig) automatisch richtig macht?

  5. Eure Zwischenbemerkung zum undefinierten Ziel der LucaApp fand ich nochmal äußerst erhellend und bemerkenswert konstruktiv.

    Man hätte das Feature „Gästeliste“ (ohne Verifikation) ganz leicht abbilden können. (App zur Generierung eines QR-Codes mit Kontaktdaten, dieser wird am Eingang gescannt und lokal gespeichert.)

    Man hätte verifizierte Kontaktdaten leicht abbilden können: Signatur vom Bürgerbüro drauf. Will man verhindern, dass Leute fremde Handys vorzeigen, muss man ein Foto integrieren oder Ausweise abgleichen. (Wobei der Angriff, die Daten einer anderen, vertrauten Person zu hinterlegen, schon relativ unwahrscheinlich ist.)
    Den als Vorteil zur Corona-Warn-App beworbenen „Zwang“ zur Teilnahme mit korrekten Daten hätte man übrigens auch so gehabt.

    Den ganzen Ärger hat man sich eingetreten, weil die Daten einerseits über den Server laufen müssen, dann aber E2E-verschlüsselt sein sollen, um die Datenschutz-Probleme zu beheben.
    Jede Form der Verifikation kann damit nur noch beim User (also dem Angreifer) oder dem Gesundheitsamt stattfinden. Und damit fällt schon mal die wirkliche Verifikation weg.

    Einfacher Test für alle diese Systeme, den man ganz ohne technisches Verständnis selbst machen kann (gilt auch für Tickets, Fahrscheine auf dem Handy etc.):
    Kann ich ein fremdes Handy vorzeigen, und was passiert dann?

  6. Eine sehr interessante Sendung über weitere Schwachstellen von Luca. Das gesamte Projekt Luca scheint mir eine einzige Farce zu sein. Angefangen von qualitativ schlechter Programmierung, deren Schicksal schon durch eine unsaubere Konzeptionierung gesegnet war, bis zu einem schon schockierenden Umgang von neXenio, die jegliche Warnmeldung ignorierten und verharmlosten.

    Markus Mengs und vielen anderen Person muss man in diesem Zusammenhang danken, dass sie wertvolle Zeit aufbringen und sich für IT-Sicherheit einstzen. Einen kleinen Kritikpunkt an Herrn Mengs und seiner gesamten Ausführung. Während seiner Ausführung ist es mir mehrmals schwer gefallen, zu folgen, weil er mit Sprüngen zu schnell im Detail ist und der Weg unklar. Anders: er ist nicht der geborene Erklärer für die Masse ;-)

    Bleibt gesund!

  7. Die Frage die sich mir stellt ist: Was soll denn das Gesundheitsamt tun, wenn diese Warnung aufploppt? Die Datei nicht öffnen? Dann können Sie ihre Arbeit nicht tun und die Leute nicht warnen/informieren! Das Gesundheitsamt hat schlicht und ergreifend keine Wahl!

    Die Schuld liegt hier ganz klar bei der Luca-App bzw. deren Hersteller, die allein tragen die Verantwortung für dieses Problem.

  8. Ich finde die Kritik an der Aussage der Luca-Entwickler*innen zu Luca-App Sicherheitslücken teilweise etwas undifferenziert. Ich teile den Ärger über die öffentliche Kommunikation und das offensichtliche (ja wirklich dilettantische Anfänger*innen-) Fehler gemacht wurden, wie die fehlende Validierung der Nutzerdaten (wenn wie in anderen Kommentaren angemerkt auch nicht so einfach umsetzbar bei verschlüsselten Daten)

    ABER: Die Möglichkeit der Remote Code Execution durch Einfügung von Excel-Formeln nicht als Sicherheitslücke zu bezeichnen (und den Entwickler*innen der Luca-App hier alleine die Schuld zuzuschieben) halte ich für unsachlich (no offense!), denn eine Remote Code Execution Schwachstelle in einem Tabellenkalkulationsprogramm ist sehr wohl eine (wie ich finde eklatante) Sicherheitslücke (wieso müssen Formeln zur Kalkulation von Summen etc. Random Code ausführen können?!) und hier sehe ich die Schuld unabhängig ob die Luca-Entwickler*innen selber eine Schwachstelle in ihrer App haben (was sie haben), bei den Entwickler*innen von Microsoft Excel.
    Lange Rede kurzer Sinn: Insofern ist die Aussage von Luca, dass es sich dabei (auch) um eine Schwachstelle in Microsoft Excel handelt nicht 100%ig falsch.

    Viele Grüße Seb

    • Das sehe ich anders. Wenn du mit deiner Software eine andere bespielst, die dein Kunde dann verwendet, dann hast du dafür sorge zu tragen, dass die übergebenen Daten dem gewünschten Anwendungszweck entsprechen. Im Gegensatz zum Endkunden kann und muss man vom Entwickler erwarten, dass er sich mit den Problemen eines solchen Kontextwechsels beschäftigt. Die Validierung von Eingaben ist auch keine Kür sondern Pflichtprogramm.

      Ich denke, dass Microsoft den ganzen Spaß als Feature und nicht als Schwachstelle sieht. Der Nutzer wird ja schließlich gefragt. Wie willst du hier den schwarzen Peter weiter schieben?

      • Zum ersten Punkt: Ich habe nie etwas anderes behauptet und habe mehrmals darauf hingewiesen, dass ich dies auch als Schwachstelle sehe. Bitte nochmal genau lesen.
        Zum zweiten Punkt: Schon klar das Microsoft das Feature sieht, ändert aber nichts daran, dass es eine unnötige Schwachstelle ist.

        Der Aussage meines Postings war aber der, dass diese beiden Punkte trotzdem unabhängig sind.

        • Ich denke ich habe dich schon richtig verstanden, mein erster Absatz läuft aber darauf hinaus, dass die App-Entwickler für das Sicherheitsproblem verantwortlich sind und eben nicht Microsoft. Es hilft hier auch nichts auf Microsoft zu zeigen, denn die können das Problem im Gegensatz zu den Luca-Leuten nicht einfach beheben.

          Meine Aussage ist, dass man es gar nicht unabhängig betrachten muss, da das Problem ganz klar durch Luca ermöglicht wird. Die Schwäche von Excel war schon vorher bekannt und wäre auch mit einer neuen Version nicht zu beheben, denn die müsste erst mal in allen Gesundheitsämtern ankommen. Dazu kommt, dass andere Tabellensoftware offenbar ähnlich arbeitet, also ist das Verhalten vermutlich beabsichtigt und kein ungewolltes Fehlverhalten.

          Es ist schon richtig hier mit dem Finger nur auf Culture4life/Nexenio zu zeigen, denn das Problem ist schon lange bekannt und wäre einfach zu verhindern gewesen. Wer für diese Programme exportiert muss das auf dem Schirm haben.

          • Okay, ich denke hier kommen wir mit unseren Meinungen nicht auf einen gemeinsamen Nenner. Denn ich sehe es schon so, dass Microsoft dafür verantwortlich ist, dass ich Programmcode durch Formeln ausführen lassen kann und ich hoffe doch sehr dass die Einschätzung ob etwas eine Sicherheitslücke ist oder nicht in Zukunft nicht davon abhängig gemacht wird, ob die Entwickler*innen des Programms dies selber als Schwachstelle ansehen (das war nämlich die Kritik an Lucas Statements mit unter). Es ist daher ein schwaches Argument zu sagen, solange Microsoft dies nicht als Schwachstelle ansieht oder weil viele Programme es so machen, ist es keine Sicherheitslücke. Selbst wenn es ein beabsichtigtes Verhalten ist, kann es trotzdem eine (in meine Augen unnötige) Sicherheitslücke sein. Erinnert mich stark an Internet Explorer und Active X Zeiten.

            Zitat:
            > Meine Aussage ist, dass man es gar nicht unabhängig betrachten muss, da das Problem ganz klar durch Luca ermöglicht wird.

            Das Problem der Remote Code Ausführung wird allgemein durch Microsoft ermöglicht. Das dies genau in diesem Fall auftritt ist die Kombination aus der Schwachstelle in Luca und der in Excel. Gäbe es einer dieser beiden Probleme nicht, wäre das Problem nicht aufgetreten, denn es lässt sich auch nicht abstreiten das ohne das oben genannte Verhalten von Excel das Problem gar nicht bestehen würde, denn selbst wenn es bei Luca diese Sicherheitslücke nicht mehr geben würde, besteht das genannte Problem in Excel auch weiterhin. Abgesehen davon ist CSV ein plattformübergreifendes Format. Der Logik von dir folgend müsste man jetzt also sämtliche Sicherheitslücken in sämtlichen Tabellenkalkulationen und Programmen die irgendwann mal ein CSV File lesen könnten bei Auslieferung eines CSV-Files berücksichtigen.

            Anderes Beispiel:
            Wo würden wir hinkommen wenn man jede Sicherheitslücke in Microsoft Windows bei der Entwicklung seiner Programme durch Workarounds irgendwie beheben und auf dem Schirm haben muss, wenn das grundliegende Problem einfach durch einen Patch des OS behoben werden könnte. Ich finde, dass ist eine merkwürdige Verantwortungsverschiebung. Ich würde es verstehen, wenn es so wie bei MySQL und MySQL-Injections eine dem Format inhärente Schwachstelle wäre, aber CSV != Excel. Ganz abgesehen davon würde dann jede*r Entwickler*in mit dem halben Bein im Knast stecken, wenn man auf einmal für Sicherheitslücken in anderer Software verantwortlich gemacht werden würde und mit haften würde. Diesen Anspruch hab ich sonst auch noch nicht beobachten können.

            Zitat:
            > Wer für diese Programme exportiert muss das auf dem Schirm haben.

            Da stimme ich dir zu, wenn das so von Luca empfohlen wird. CSV ist aber auch kein Excel, aber nochmal meine Aussage ist kein Widerspruch dazu. Man muss es auf dem Schirm haben und das hatte Luca nicht, das stimmt und das habe ich als Schwachstelle oben kritisiert. Ändert immer noch nichts an dem Programmverhalten von Excel. Und ich würde sagen es ist Security Best Praxis keine Ausführung von beliebigen Code zuzulassen. Das ist so ziemlich das Gegenteil von Validierung.

            • Du vergisst hier, dass es gewolltes Verhalten ist „Formeln“ in Tabellenkalkulationen ausführen zu können. Das als Sicherheitslücke zu bezeichnen geht zu weit, ohne diese Funktionalität wären die Programme kaum noch so gut einsetzbar. Über das konkrete Verhalten beim Import lässt sich streiten, das finde ich auch absolut schlecht gelöst.

              Dein Beispiel trifft es doch genau, das Problem bei der Luca-App ist genau das gleiche wie bei SQL-Injections, darum kann ich deiner Ausführung direkt vor dem Beispiel auch in keinster Weise folgen.

              Aber du hast recht, ich glaube es ist alles gesagt und wir haben einfach verschiedene Auffassungen davon wie weit die Verantwortung eines Hersteller hier gehen soll.

  9. Man muss es einmal ganz klar sagen: Der eigentliche Skandal besteht darin, Rohdaten einer .csv-Datei *defaultmäßig* als Code zu interpretieren.

    Die Analogie zu SQL-Injection passt einfach nicht, denn hier werden Code und Daten ständig miteinander kombiniert und man muss sich halt darum kümmern, sie auseinanderzuhalten

    Bei .csv-Dateien hingegen sollte sich niemand darum kümmern müssen: die Interpretation enthaltener Daten als Funktionen ist in der absolut überwiegenden Zahl der Fälle unerwünscht und schädlich. Ein Feature das keiner will (bei nativen Excel-Dateien mag es anders sein).

    Da die Dinge aber nun mal sind wie sie sind (Microsoft ist eine Bürde für uns alle), liegt die Verantwortung für csv-Injection trotzdem bei den Luca- Entwicklern. Und ihr Umgang damit bleibt eine Katastrophe. Darin würde ich auch die eigentliche Kritik sehen.

    Viele Grüße

  10. Man könnte auch statt einer CSV Datei gleich eine Excel Datei ausgeben bei der der Typ der Zellen gleich als Text definiert ist. Bzw ich glaub wenn man einen Zellenwert mit “ oder so anfängt wird’s nur als Text erkannt, d.h. einfach das davor hängen bevor CSV generiert wird? Natürlich kann man trotzdem immer noch = verbieten. Hab weder Excel noch LibreOffice installiert. Generell bin ich kein Fan von Tabellenkalkulationen. Diese ganze dynamische Typisierung und alles in eine riesige Tabelle zwängen ist für mich sowas von verrückt. Siehe auch das Gen SEPT5.

  11. CSV ist ein Format für Text in Tabellenform. Wenn Microsoft diese Daten als Excel Formeln interpretiert ist das meiner Meinung nach eine Sicherheitslücke in Excel.

    Verstehe nicht, warum Microsoft das nicht beheben will. Wenn ich Microsoft Formeln in meiner Datei haben will, dann speicher ich es als Excel Datei und nicht als CSV.

    Natürlich muss Luca aber auch Sicherheitslücken von beteiligten Systemen beachten und entsprechende Workarounds implementieren. Es war daher auch eine Sicherheitslücke in Luca.

  12. Hallo Tim, hallo Linus:
    kleiner Hinweis zu den automatisch generierten Transkripten. Das HTML Transkript ist falsch verlinkt oder nicht verfügbar: In der verlinkten HTML-Datei steht lediglich „episode-transcript-html“.
    WEBVTT funktioniert dagegen.

  13. Ich muss doch nicht einmal bösen Code einschleusen.
    Würde es nicht reichen einfach als Telefonnummer und Mailadresse z.B. =C3 einzugeben, damit in der Zelle die Handummer der Person über mir in meinem Datensatz anzuzeigen und eine andere Person angerufen wird und ich ggf. weiter fröhlich infiziert die Restaurants besuche?

  14. Ja.. gut.. Also 31.05.2021, 20:25 Uhr, 2 Tage nach veröffentlichung, ist das verlinkte video ( https://www.youtube.com/watch?v=xTljfac-0ag – Code Injection Luca App: Nutzer greift Gesundheitsamt an und stiehlt Daten bevor er Ransomware schickt – YouTube ) wieder von der Veröffentlichungsplattform verschwunden „, weil es gegen die Community-Richtlinien von YouTube verstößt.“

    Interessant. Ich bitte sehr drum woanders zu veröffentlichen (sowieso eigentlich immer, und youtube nur für redundanz, wenn auch sichtbarere, zu nutzen) damit ich mir das anschauen kann. Was da los?

  15. Wenn ich das richtig verstehe, ist neXenio eine Ausgründung aus dem Fachbereich von Prof Dr. Christoph Meinel, wo eigentlich auch in die Richtung Security geforscht wird. Schade das nichts davon in dem Endprodukt gelandet ist.

  16. neXenio empfiehlt ja den Mitarbeitern beim Gesundheitsamt die Warnung von Excel nicht zu ignorieren, sondern sorgfältig zu prüfen. Wie war das: „Öffnen Sie nur Dateien aus vertrauenswürdigen Quellen…“? Falls der Mitarbeiter nun diesen Podcast gehört hat, weiß er ja, dass er neXenio nicht trauen kann und öffnet dann die Datei nicht. Wäre das jetzt die konkrete Empfehlung von neXenio für diesen Fall, dann sollte man sie fragen, wie dann die Software funktionieren soll, wenn die Daten gar nicht verwendet werden können.

    Oder empfiehlt neXenio dem Mitarbeiter der Quelle zu vertrauen? Dann würden sie ja empfehlen, potentiell Schad-Code auf den Systemen des Gesundheitsamtes auszuführen.

    Vielleicht gibt es noch eine dritte Variante und neXenio rät dazu die Luca Software gar nicht zu verwenden. So könnte man den Mitarbeitern im Gesundheitsamt wertvolle Zeit sparen.

    Also neXenio, was ist es nun, was soll der Mitarbeiter im Gesundheitsamt nun tun?
    1.) Warnung beherzigen und Datei nicht öffnen.
    2.) Warnung ignorieren und eventuell Schadsoftware ausführen
    3.) Luca erst gar nicht verwenden

    Bei 1 und 3 sollten wir uns das Geld für Luca sparen. Bei 2 muss ich an „Vorbereiten des Ausspähens und Abfangens von Daten“ – den Hackerparagraphen denken.

    Hab ich noch eine Option vergessen?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.