Hallo zu einfach komplex heute mit einer ganz besonderen Folge.
Wir haben das erste Mal ein bisschen dabei und wollen das
thema.it Security genau beleuchten.
Aber bevor wir das Tun Burkhard ist natürlich auch dabei.
Mein Burkhart ja Moin aus Hamburg.
Unser besonderer Gast heute ist der Timo timotaetigkeit.it
Security Experte und auch Dozent.
Aber bevor ich dich zu sehr im Detail vorstelle Timo sag doch
mal Hallo, stell dich kurz vor ja, auch morgen hier aus
Hamburg. Vielen Dank, dass ich hier sein
darf. Genau richtig, ich bin
freiberuflicher. It Security Consultant und ja,
beschäftige mich hauptsächlich so im Bereich der Ops und
Penetration Testing und ja, sagtest du schon nebenher?
Auch als Dozent für IT Security tätig, bin so in den in diesen 3
Rollen, der eben auch viel unterwegs, also sowohl
Softwareentwicklungen als auch Operations als eben auch
Security Unterstützung für Entwicklung und Operations.
Super cool, dass du da bist Timo und ja für alle, die zuhören,
das ist das erste Mal, dass wir einen Gast dabei haben, also
verzeiht uns. Falls irgendwas noch nicht ganz
so rund läuft und auch das erste Mal aufnehmen, das haben wir
vorher noch nicht so genug der Vorrede.
Wir schauen wir mal, was ihr mitgebracht habt und Timo ich
würde zum Start mal dich fragen, was du denn unter.it Security
verstehst und vielleicht noch ein bisschen Einblick darin
gibst, warum es eigentlich so wichtig ist.
Ja gut, jetzt kann man natürlich da da erstmal sehr akademisch
dran gehen, ne also als.it Sicherheit verstehen wir in der
Regel so den Dreiklang aus dem sogenannten CIA Dreieck nach
Wilson. Das hat jetzt nichts mit dem
amerikanischen Geheimdienst zu tun, sondern beschreibt so die 3
Grundpfeiler confidentiality, Integrity und Availability, also
die Vertraulichkeit, die Integrität und die
Verfügbarkeit. Ja also wenn wir bestimmte Daten
haben, die nicht öffentlich sein sollten, also schutzbedürftig
sind. Dann reden wir davon
Vertraulichkeit. Zum Beispiel Passwörter,
Kreditkartendaten oder sowas oder wenn wir darauf angewiesen
sind, dass gewisse Daten korrekt oder authentisch sind, dann
bewegen wir uns da eben im Integritätsbereich ja, oder wenn
bestimmte Dienste einfach funktionieren verfügbar sein
müssen, ja, dann sind wir eben in dieser dritten Achse in der
Reliability ja also zum Beispiel ne Software Service ist so ein
Beispiel da hat man ganz gerne, dass das verfügbar ist, weil
ansonsten verdient man eben kein Geld mit oder in Onlineshops ist
auch so ein klassisches Beispiel.
Also das ist so der akademische klassische Ansatz, was wir
soals.it Security bezeichnen oder so die 3 grundpfeilerder.it
Security. Und warum ist das wichtig?
Weil wir einfach in einer digitalen Welt leben ja, wir
sind einfach eine digitale Gesellschaft.
Inzwischen also, wenn man sich mal vorstellt, was man so sagen
Smartphone zum Beispiel an persönlichen Daten oder auch
teilweise an Geheimnissen anvertraut.
Und dann ist es natürlich wichtig, dass ich diesen
Smartphone auch ein Stück weit vertrauen kann und dass ich mich
darauf verlassen kann, dass da jetzt nicht jeder Zugriff darauf
hat, was wir auch tun durch unterschiedliche.
Mechanismen aber es ist die Frage ist ein bisschen
abgedroschen wird immer wichtiger über die Jahre so ja,
aber es ist ohne Frage, ne, also es wird immer mehr, wenn man 20
Jahre zurückdenkt, da hatten wir noch keine Smartphones, da habt
ihr das alles ne andere Qualität, ne?
Und die Schnittmenge der Bevölkerung, die eben einfach
digital lebt, die wird eben auch immer größer für dich bekannt.
Die Frage in die Praxis ja, wenn wir Software entwickeln wir
Software entwickelst. Welche Rolle spielt Sicherheit
da für dich als Security in meiner täglichen Arbeit als
Softwareentwickler, als Software Architekt?
Ist das etwas, was du dir immer Freitagnachmittag vornimmst, ja
als Security Friday oder ist das einfach dauerhaft im im
Hinterkopf, wenn Software entwickelt?
Wie kann man sich das vorstellen?
Wir hatten mal ne ne sehr nette, sehr gute, kompetente
Personalerin, die hat immer den Finance Friday ausgerufen und
dann glaube ich immer zusammengesammelt und Rechnung
gemacht und so weiter so ein bisschen so als ja kannst auch
Kröten arbeiten, dann so Sachen die man vielleicht irgendwie am
allerliebsten macht, ja. Und das hat sie dann immer die
Frage gebündelt ich glaube, wenn man das als Softwareentwickler
macht, irgendwie sich freitags mal um die Sicherheit zu
kümmern, ist man sehr, sehr schlecht beraten, ja also sogar
sehr, sehr, sehr schlecht ja, das muss ganz anders laufen,
also wenn man, wenn man heute glaube ich ne gerade wenn man
Timo hat gesagt wenn das Produkt macht oder irgendwas und wenn
man viel Code neu erschafft und selbst schreibt, dann muss
Sicherheit quasi immer bei jeder Zeile die ich schreibe bei jedem
Test, den ich entwickelt und so weiter immer im Hinterkopf sein
ja also man muss quasi so programmieren, dass man Security
First denkt ja also, ich kann eigentlich gar nicht.
Also ich kann es gar nicht verantworten, überhaupt erst mal
was zu schreiben, was nicht sofort sicher ist ja, denn man
kennt sich selbst manchmal ein bisschen unter Druck.
So schnell fertig machen und dann lässt man gerne mal Sachen
irgendwie weg, die, die vielleicht nicht ganz so wichtig
sind. Ja, ich glaube aber Sicherheit
darf man halt nie weglassen, dabei die Zeit muss man immer
haben. Ja dann lieber die Deadline
verschieben nach hinten ja denn denn es ist so wenn man viel
Code entwickelt und viel auf dem Zettel hat, dann und erst
erstmal nicht macht und sagt sich ich schreib mir du
irgendwann später ja wie oft ist der Zettel dann irgendwo weg
oder auch selbst wenn ein digitaler Tod oder sowas?
Es ist dann vergessen und dann kommt das nächste Release und
zack, hab ich ne Sicherheitslücke drin ja also
ich kann nur sagen von meiner warte aus und auch alle, die ich
berate oder die mit mir entwickeln, müssen quasi
Sicherheit von vornherein mitdenken, ja so viel zum zur
Arbeit Strategie das kann man, glaube ich sagen.
Gibt es da besondere Methoden um Sicherheit gleich mitzudenken?
Also wir haben ja schon mal besten gesprochen, hab ich
verstanden. Immer wenn eine Funktion
schreiben oder implementiere dann im besten Fall auch gleich
einen Test mit um diese Funktion später im automatisiert zu
testen, kann sich das ähnlich bei bei.
Sicherheit vorstellen oder? Welche Methoden würde man da
anwenden? Ja, auf jeden Fall also es gibt
natürlich Tests, die 1 sicherheitskontext ablaufen ja
also einfach Security Tests, so wie ich jetzt die Unit Tests
oder Softwaretests wie auch immer man die nennen würde eher
als funktionale Tests ein ordnen würde ja, das gibts auf jeden
Fall aber es gibt eben auch ein ganzes Umfeld, das sich Security
Engineering nennt. Also es gibt viele kluge Leute,
die sich ausschließlich damit beschäftigen, Produkte sicher zu
machen. Ja und das fehlt natürlich auch
zwangsweise in die Softwareentwicklung.
Das heißt es gibt vorher. Mittel und Werkzeuge, um
Bedrohungsmodelle für Software Komponenten zu bauen.
Ganz klar also das ist viel, viel organisatorische Arbeit
also, dass man, dass man sich erstmal überlegt womit haben wir
es eigentlich genau tun? Was kann dabei schiefgehen?
Was würde daraus resultieren, wenn dieser Fall eintritt?
Ne also, das ist ja nicht immer gleich schlimm, also nicht hier.
Alle Anwendungen haben jetzt das gleiche Bedrohungsmodell.
Es gibt diverse Softwareanwendungen, wo man sagt
ja OK, das ist irgendwie ungünstig, aber so richtig
schlimm ist jetzt nicht das listet man alles erstmal auf.
Das bewertet man dann für sich. Und dann kann man daraus eben
auch automatisierte Security Tests für Software Produkte
ableiten. Ganz klar, dem kann ich
zustimmen und das ist. Das ist eigentlich ganz wichtig,
dass man auch diese extra Security Tests macht.
Die decken dann nämlich das auf, was ich entweder im To do
vergessen hab, oder? Manchmal ist es ja nicht mit
Absicht ja, denn es ist ja ganz schön kompliziert, sich über
also in jedem Moment gewahrt zu sein, was alles für
Sicherheitsrisiken passieren können.
Ja, es ist ja nicht nur getan, dass ich irgendwie s
Verschlüsselung und so weiter. Es ist ja auch, dass ich
weiterdenken muss was kann ich in meinem Frontend eingeben?
Zum Beispiel als Nutzer und der liebe Nutzer der freundlichen
nutze dein Programm so bedienen bedienen will ich eigentlich als
Programmierer voraus denke das ist auch unkritisch so, aber wir
müssen uns auch davor erwehren oder quasi als Programmierer
mitdenken was macht derjenige, der es halt vielleicht sogar
eine kriminelle Ader irgendwie benutzen möchte und es gibt
sowas wie injection also ich kann, ich kann auch in Form Feld
irgendwie mal nicht meinen Namen reinschreiben, obwohl da steht
ja sondern irgendwie Anfang javascript reinzuschreiben dann
tatsächlich versuchen ja und? Und das kann im Notfall, je
nachdem, wie ich das jetzt programmiert habe und wo das wo
das irgendwie gespeichert wird, irgendwas kann das schon
Auswirkungen haben auf Sicherheit, ja und und alles das
muss man erstmal alles so auf dem Zettel haben.
Das ist auch glaube ich ne n heres Ziel klar, das braucht
glaube ich viel Erfahrung auch ja also ich glaube, das ist auch
so ein bisschen Problem. Ich sag das immer gerne
Softwareentwicklung lebt nicht davon, dass ich total krassen IQ
hab und mega intelligent bin. Ein gutes Softwareentwicklung
auch immer viel Erfahrung, ja und Erfahrungen.
Was kann alles schiefgehen? Man muss auch schon Schepp haben
und so weiter. Dann ist es wichtig, dass
erfahrene Leute mindestens als Reviewer oder Irgendsowas oder
oder auch einander als Hauptentwickler quasi mit drauf
gucken. Ja und wenn ich die dann nicht
so habe, dann ist das was Timo sagt Glaube ich umso wichtiger,
dass ich dann regelmäßige und das ist, glaube ich das Test
noch gar nicht, kann man aber im Prinzip ist das eine spezielle
Testing Art, die die Software nämlich genauso bedient wie es
irgendwie einer, der quasi das System kompromittieren will,
quasi sicherheitstechnisch bedienen würde.
Ja, da kommen wir vielleicht noch drauf, das ist ja quasi
eine Art mögliche Angriffs. Entschuldigung, eine
Schutzmaßnahme also im Test. Der Patient wäre eine
Schutzmaßnahme, bevor wir dazu kommen, lass uns doch nochmal
drüber sprechen was sind eigentlich potenzielle
Bedrohungen eigentlich oder Angriffsmethoden auf auf
Software? Zum Beispiel saß aber auch auf
auf andere Anwendungen oder IT Dienste können ruhig ein
bisschen weiter fassen, das überlasse ich euch verstanden es
Spiele letzten Endes Vertraulichkeit, Integrität und
Verfügbarkeit und jetzt gibt es ja Bedrohung für diese 3 Ziele
ja und ich kann mir vorstellen, dass man vielleicht könnte
zwischen Privatpersonen und Unternehmen.
Timo wie siehst du das? Welche Bedrohung gibt es und
welche Angriffsmethoden sind typisch?
Ja, das ist jetzt ein bisschen die Frage, durch welche Brille
wir gucken, oder? Auf welche Flughöhe gucken ne
also auf der untersten Ebene Arzt schon angesprochen können
wir ganz klar sagen wann immer es ne Risiko für diese 3
Grundpfeiler gibt, auf die wir uns alle einigen können, dann
reden wir von einer Bedrohung so und das können wir jetzt in
unterschiedlichen Flughöhen oder in unterschiedlichen konkreten
Ausprägungen bezeichnen. Ja, und es gibt ganz
unterschiedliche Modelle, um Bedrohungen zu beschreiben, was
so. In den letzten Jahren ziemlich
populär ist und was ich auch gerne einsetze, ist zum Beispiel
Strike also Strike ist NN Framework, könnte man sagen, um
so Bedrohungsmodelle zu erstellen und Stripe ist
praktisch so ein Akronym aus den einzelnen Bedrohungen, also s
wie Spoofing, Tempering, Radiation Information,
Disclosure of Service und Elevation of Privilege ne, das
sind eben einzelne Bedrohungen, die dann konkret diese
Schutzziele tangieren, also Spoofing jetzt nur um ein
Beispiel herauszugreifen, das vor.
Dass das Vortäuschen einer einer Identität und das kann, das kann
eine Person sein das kann Account sein, das kann aber auch
ein virtueller Prozess sein ja, oder eine Anwendung eine Datei
also ich, es gibt ganz, ganz unterschiedliche Ausprägungen,
wann ich etwas vortäuschen, was ich vielleicht bin.
So das wäre aber zum Beispiel eine Bedrohung oder hattest
schon von Injection gesprochen, dass dann üblicherweise dafür
steht, das T für Tempering also ich ich Tempo ein bisschen mit
dem mit der Eingabe in dem Programm herum ja und versucht
dann eben etwas Entsprechendes auszulösen.
Und was Burkhard auch schon angesprochen hat, ist man kann
da gar nicht, also wenn man Software entwickelt, kann man
gar nicht einen Überblick haben, mit welchen Risiken man im
Einzelnen rechnen muss. Ja, also wenn ich jetzt als
Beispiel den Auftrag habe, so ein Analysesystem für die
Autobahn zu bauen, und ich zähle im Autos und Informationen, ja,
dann mach ich das anhand der Kennzeichen und dann rechne ich
nicht damit, dass da irgendjemand mal mit einem
Autokennzeichen ankommt, wo es QR Code drauf steht, das machst
du einfach, das ist einfach nicht Teil deiner Realität und
das, das ist auch völlig in Ordnung.
Aber das wäre dann eben was, wo wir schon ne?
Im Bereich Penetration Tests sind oder was vielleicht auch
schon in einem guten Prozess von Bedrohungsmodellierung aufnimmt
Strite das find ich ganz cool du hast Buffering tempering ST also
die Abstreitbarkeit, ja, das ist zum Beispiel du hast du hast n
Frontend und du hast ein Backend oder du hast n mittlere und eine
Datenbank auf jeden Fall irgendwo auf der Strecke geht
was verloren ja und die Datenbank sagt ja, das hast du
mir ja geschickt, also das geht gar nicht immer um um
Kriminalität, sondern es geht auch einfach n Stück weit oben.
Was was ist da eigentlich passiert?
Ja so n bisschen um Nachvollziehbarkeit das ist das
Thema Verfügbarkeit, ne hab ich ich hab darüber nachgedacht,
inwiefern Verfügbarkeit sicherheitskritisch ist und das
wäre das Thema, wenn ich wenn zum Beispiel Frontend und
Backend, weil das Backend gerade nicht verfügbar ist keine
Verbindungen haben, während ich gerade was eingeben und in
Datenbank ankommt, ist das hab ich das richtig verstanden oder?
Also klassisch wäre, dass das deinstalliert ist.
Die of Service, Das ist so die klassische Modellierung von
deine Datenbank hört auf zu arbeiten.
Und was passiert eigentlich mit den Daten, die dann ja.
Gegeben hast die ja nicht persistiert wurden, ne muss der
Benutzer die dann nochmal eingeben oder werden die
gecrasht oder das ist eben einfach nur du beschreibst
zenari oo und daraus kannst du den sogenannten Impact ableiten
oder du überlegst dir ne Strategie das abschwächen kannst
klassisch meint Repudiation eben diese ja diese Abstreitbarkeit
so wäre OK hast hast du geschickt habe ich nie erhalten.
Wie gehen wir damit jetzt um? Ne also so ein Senario, was man
vielleicht von Paketlieferanten kennt, also da ist es, da muss
ich mal dran denken, so wenn wenn man irgendwie nachfragt wo
wo ist mein Paket? Und der Paketlieferant sagt das
hast du entgegengenommen und du hast dafür unterschrieben und
ja, hab ich nicht, das ist eigentlich so das das Szenario
und dann muss man halt ein bisschen nachforschen wo das ist
ja möchte ich noch das eine Beispiel Zusammenfassender
nochmal nennen, was ihr beide gerade erwähnt hat.
Burkhard beim beim Input Etwas eingegeben wird, das glaub ich
javascript, da wird es nicht erwartet.
Wird von diesem Input Feld und da war ein Beispiel Timo, dass
jemand Kennzeichen automatisiert ausschließt und auf dem
Kennzeichen wäre jetzt ein Stück Schadcode, sagen wir es mal so
oder Code der Schaden anrichtet potentiell und dann so in die
Software gelangt, weil der automatisiert.
Ich eingesetzt habe ich das so verstanden ja, genau das ist so
in Anführungsstrichen absurd, dass man das jetzt nicht im
Vorfeld wirklich als als relevanten Angriffsvektor sag
ich mal nennen würde. Es ist ja das.
Das ist eine Frage der Perspektive, wenn die Software
entwickelst, ist das total absurdes Szenario wenn wenn es
deinen Auftrag ist, Schwachstellen in solchen
Systemen zu finden, dann dann baust du dir das praktisch als
kleiner Baustein oder auf einem Whiteboard auf und dann guckst
du OK wo will ich hin und was sind die?
Was sind die Dinge, die ich kontrollieren kann?
Das ist üblicherweise der Input. Ja, und und wie kriege ich den
Input in das System? Und wenn es dafür notwendig ist,
die ein eigenes Kennzeichen zu drucken, dann machst du das also
das absurd ist das aus Sicht der Softwareentwicklung ganz klar
die werden alle sagen das passiert ja nicht oder ist ne
ist ja ist ja ist ja Blödsinn heißt aber nicht, dass du nicht
vielleicht doch eine gute input Validierung brauchst an
irgendeiner Stelle, die muss vielleicht auch nicht auf dem an
dem Punkt sein, wo das Kennzeichen eingelesen wird, das
kann auch später machen in der Kette aber du brauchst eine
nochmal verifiziert o war das jetzt wirklich Kennzeichen
irgendein Schwachsinn oder eben Code ja OK verstehe weil wir
können uns darauf einigen, dass bestimmte Sonderzeichen nicht
auf Kennzeichen gedruckt werden. Normalerweise ne also das kannst
du ja schon gegen die Liste halten und sagen das sind die
Zeichen, die ich erwarte und eine Länge wird man
wahrscheinlich auch eingrenzen können verstanden das wäre ja
auch nicht konkrete Maßnahmen um das zu vermeiden, wäre jetzt
eine Art Überprüfung im Kopf zu haben.
Verguckt sie kommen nur Zeichen vor dir.
Auch typischerweise Kennzeichen vorkommen und können die
richtigen Reihenfolge et cetera ja, genau das wäre dann eine
sogenannte Inputvalidierung. Das ist immer gut zu haben.
In einer.it Security sagt man auch all Input Is Evil ja das
stimmt ja, weil das Potenzial nicht in der Hand hast.
Du weißt genau du weißt ja nicht, was da so passiert, ne
und da ich vielleicht noch eine Geschichte ist auch wir haben
wir gerade Frontend und Backend auseinandergenommen.
Das haben wir auch in Folge unserer jetzt ungefähr und
Backend ist und und hier muss man aufpassen.
Glaube ich hat vielleicht noch, ist ja sogar noch nicht mal so,
dass wenn nicht sogar Frontend vorsehe.
In meiner Software zum Beispiel Browser und Fenster und so
weiter. Dann muss das noch nicht mal der
einzige Weg sein, wie die Daten überhaupt in meinem Backend
gelangen. Timo meinte auch du musst ja
nicht an jeder Stelle überprüfen und und es gibt viel Input.
Validierung im Frontend schon das funktioniert dann zwar, aber
wenn ich dann doch schaffe, programmatisch also nicht, als
wenn ich nicht als User daran g, irgendwie programmatisch und
hinzu kommen und ich habe zum Beispiel eine API noch an meinem
Server, die dann quasi ein Programm ausführen könnte und
hab aber die Validierung nur im Frontend gebaut, dass ich so das
kann man machen, so dass man sagt, der Text hier erwarte ich
nur die Felder und dann wird vielleicht sogar sieht man
manchmal so Anwendungen, so dass du das sofort gar nicht eingeben
kannst, wenn du das Inputfeld erwartet hat bestimmte Charakter
Dinger und wenn du dann was weiß ich irgendwie NP eingeben willst
oder NUT 8 Ding oder irgendwas und dann darfst du das halt
schon nicht. Ja, das ist vielleicht nicht
ganz so, weil irgendwie drum kommst du auch mit Bedenken und
deswegen weiß ich nicht, ob die Regeln auch bestätigen kann.
Ich Softwareentwickler die Sicherheit muss halt mindestens
ganz spät also da, kurz bevor es zur Datenbank geht, kurz bevor
es halt wirklich kritisch wird. Also da muss ich nochmal ganz
genau nachdenken. Ob es da, dass ich da noch eine
entsprechende Validierung hab. Ne kann man allgemein sagen,
dass vielleicht ein bisschen vielleicht ein bisschen zu
allgemeinere. Ich würde n bisschen anders
formulieren, vielleicht aber grundsätzlich stimme ich dir
total zu und das ist tatsächlich auch so n gerade bei
Webanwendungen klassischen Fehler, den man bei Security
Audits immer und immer wieder sieht.
Du kannst normalerweise deine Benutzer und Benutzerinnen nicht
dazu zwingen, deinen Freund zu benutzen.
Es gibt wenige Szenarien, in denen das funktioniert, aber
meistens halt nicht. Das heißt die die Validierungen,
die von da kommt und die Daten die von da kommen, die kannst du
potenziell nicht nicht kontrollieren so und das heißt
ich verlagere meine Validierung in den Bereich den ich
kontrollieren kann und das sind einfach üblicherweise meine
Backend Systeme und das heißt, da muss noch ein gewisser ein
gewisser Schutz stattfinden oder eine gewisse Überprüfung
stattfinden ja und? Und dann habe ich noch ein
spezielles Layer, dass ich durchlaufe und nach diesem Layer
kann ich dann sagen OK ab jetzt sind die Daten integer.
Jetzt kann ich kann ich da vertrauen, aber ja ist ein ganz
klassisches Szenario sieht man immer wieder hier zu.
Pandemiezeiten und Lockdown gab es so ne berühmte App, womit man
sich in Veranstaltungen einloggen konnte und so die
haben die Telefonnummer. Validierung in der App gemacht
und und wenn, wenn die Telefonnummer valide war, haben
die halt einen ja also jetzt gesagt einen OK ans Backend
geschickt. Ja kann man kann man sich
überlegen, wie gut das geklappt hat.
Ja, das hab ich auch mitbekommen, ohne ihren Namen zu
nennen. Aber ich weiß nicht, aber
vielleicht müssen wir nicht also auf dem Beispiel aber erklärt
doch also du hast gesagt es gibt also ich hab verstanden.
Es gibt andere Wege als das Frontend um Daten ins Backend zu
bringen und das genau und jetzt wirklich für den Laien wie mich
wie wie wäre das? Ich rufe w irgendwas oder ich
rufe sonst was auf was kann man sonst noch machen?
Genau also ich hab verstanden ihr schon über Frontend und
Backend Systeme gesprochen? Ich habe meinen meinen Freund
das irgendwie hübsch aufbereitet, da hab ich
Formulare, da kann ich Dinge eintragen, da kann ich irgendwie
weiter nach links und rechts bewegen und irgendwann wird das
dann ins Backend geschickt. Häufig erfolgt dann in einer
speziellen Datenstruktur. Ja, was dann einfach an dieses
Backend geschickt wird. Das Backend weiß OK.
Im Frontend wurden die Schalter bewegt und die und die Daten
eingegeben. Jetzt kann ich mir aber auch
entweder über die Kommandozeile was generieren, was diese
Datenstruktur erzeugt und direkt ans Backend schickt oder ich
könnte mir auch wenn ich lustig bin, selber eine eigene App
bauen, die diese Datenstruktur generiert und an das Backend
schickt und wenn du jetzt Validierung hast, dass dieser
Schalter nicht betätigt werden kann, wenn dieser Text
eingegeben ist, ja, und diese Validierung findet in deinem
Front End. Nur in deinem Frontend, dann
könnte man praktisch diese Struktur einfach so generieren,
dass es eben doch geht und schickt es ans Backend.
Und wenn das Backend ist nicht normal weiter überprüft, dann
wird das Persistiert oder damit eben weitergearbeitet.
Also das ist eben dieser Ansatz von du kannst niemanden dazu
zwingen, deinen deinen Front zu schließen, meisten irgendwie
über das Internet in dem Fall dann auch das Backend erreicht
genau so ne alles klar, da möchte ich einmal sagen das das
kann man in dem Zusammenhang ne das ist, das ist so, dass ich
glaube, dass klassische Tool wenn ich nicht über den Browser
es gibt das heißt CUL, ich weiß gar nicht wo hast du jetzt sagst
du Kerl oder C Köln ja, du sagst Köln genau so und das ist halt
weil Timo sprach von einer Kommandozeilen.
Das kann sich wirklich vorstellen, also Windows 11
Nutzer und so weiter. Ich weiß gar nicht, ob die schon
mal Kommandozeile gesehen haben, aber also selbst im Windows kann
noch einmal aufmachen, tatsächlich dann Cursor blinkt
so wie früher beim Commodore 64 oder irgendwas ja, das gibt
schon immer noch auf dem Rechner und da kannst du einfach, wenn
du einfach die dieses also CL tippst und dann so ein paar
richtige Kommandooptionen, dann kannst du tatsächlich so im Text
Form also Datenstrukturen auch bilden.
Ja in der Kommandozeile und wenn du da auf und dann gibst du da
quasi die UL ein, wie du sie normalerweise im Browser
eingibst oder wie du hinkommst, weil du auf den Link gedrückt
hast oder irgendwas die tippst du dann da richtig ein und dann
wird das einfach knallhart an den Server geschickt, also das
Paket an den Server geschickt, der sich hinter dieser UL
verbirgt. Ja und da ist dann halt keinen
Browser gewesen und keine Validierung und so weiter.
Damit muss der Server dann schon alleine klarkommen.
Das ist glaube ich das von Timo spricht und also dieses Tools
COL das sieht manchmal wenn Marcel hat, irgendwann kommt das
schon mal vor, weil das einfach so bekannt ist.
Gibt ganz viele andere so aber ich glaube, das ist somit eines
der bekanntesten, die mit dem man spielen kann ne ja also
total gut, dass haben wir ausführlich gesprochen, aber
mehr hilft das jetzt und ich hoffe auch zuhören mal zu
verstehen, wie man so denken muss ja also also überhaupt die
ganzen Möglichkeiten zu kennen, dann die Bedrohung daraus
abzuleiten, vielleicht mit einem mit einem Framework wie dem
Stride und dann ja jetzt der Bogen, aber vielleicht die
Schutzmaßnahmen ergreifen zu können gibt es da auch so eine
Art Modell n 4 und dass man sich hält oder sag ich mal für alle?
Bedrohung, die meine D Stoffhase steckt da nehme ich n vorher
geschlossen und alle Bedrohungen, die in der
Schublade sind, da nehme ich lieber einen, dann nehme ich
lieber weiß ich nicht irgendwas anderes.
Ja kann man das so sagen oder oder oder wie ordnen sich die
Schutzmaßnahmen ein? Ah das ist schwierig zu
beantworten. Ich also, es gibt für bestimmte
Mechanismen gibt, so Standardlösungen kann man sagen
also ne, du hast ne du hast eine Sequel Datenbank irgendwo stehen
und du generierst dir da Zirkus Statements irgendwo zusammen,
die aber abhängig sind von Userinput.
Dann haben wir eine Bedrohung tempering und das ist dann
Secret Injection. Das ist also ohne Frage eine
Bedrohung habe ich auch schon drüber gesprochen, ja und da
gibt es schon standardmechanismen, also das
Problem hatten viele haben sich viele Leute Gedanken darüber
gemacht und da gibt es gewisse Standardlösungen.
Es gibt eben natürlich auch ganz klar Bedrohungen, die nicht
nicht überall passen. Und es gibt auch so Tools, die
einen Unterstützen bei der Erstellung von
Bedrohungsmodellen und diese Tools sind dann auch schon so
intelligent, dass es für gewisse Standardlösungen einfach schon
so so Migrations generiert oder dann sagt so hier an wenn du an
der Stelle SL einsetzt, dann hast du die und die Probleme
gelöst so also das das gibts schon es passt aber eben nicht
immer so. Eine automatische Überprüfung
und Vorschläge was. Teilweise geht das, teilweise
geht das einfach nicht, weil es zu individuell sind.
Jetzt vielleicht Petition, Testing oder Pasting, das ist
doch auch in der Schutzmaßnahmen bisschen Verständnis oder nicht
oder würde man das anders einordnen?
Ja also es ist ohne Frage ne Maßnahme oder eine
Sicherheitsüberprüfung, wenn wir so von Softwaretests sprechen
gibt es so n to n Tests. Ich weiß nicht ob ihr da schon
mal drüber gesprochen habt in also und praktisch das komplette
Produkt nimmt und automatisiert von von User Interface bis
Datenbank so alles einmal. Einmal automatisiert durchklickt
das wäre so ein Test. Und.
Haben wir auch schon gesprochen, dass man zum einen Software
testet und zum anderen irgendwie so Sicherheitstest macht und so
Penetration Test kann man sich so ein bisschen als n to End
Test im Sicherheitsbereich für die gesamte Anwendung
vorstellen. Also es gibt viele
Bewerbermarkt, die sagen, wir haben das Wegautomatisiert, das
geht meiner Meinung nach nicht, also es gibt bestimmte Tools,
die so dynamische Tests machen. Das ist auch gut, weil das
reproduzierbar das gleiche Ergebnis liefert, aber nach
meinem Verständnis ist ne wie das Beispiel mit dem
Kennzeichen, also Penetration Testing. 1 kreative Tätigkeit
und das das kann man einfach schlecht automatisieren, also da
muss man muss man im Einzelfall genau gucken und so n bisschen
23 mal um die Ecke denken. Der Nachteil ist eben jetzt auch
zu den automatisierten Tests einen gewissen Zeitaufwand und
und jetzt in der schnelllebigen Zeit von Continuous Deployment
oder sowas ist das natürlich schwierig so ich hab auch noch
ne Frage gerät wenn ich darf es brennt mir unter Fingernägeln,
weil die das gesagt hat und vielleicht auch unseren Zuhörern
ich hab in letzter Zeit wenn ich Fernsehen geguckt, viele
Dokumentationen gesehen über auch über diese Hackerangriffe
und gefühlt. Also vielleicht einfach medial
mehr erwähne es aber gefühlt neben mir auch so diese Angriffe
zu, dass ich höre irgendwie ja jetzt wieder Firma gehackt
worden und dann werden alle Daten im Firmennetz irgendwie
verschlüsselt, dann von den Hackern und dann werden diese
Firmen erpresst und dann sagen quasi die Hacker so passt auf
ihr zahlt Summe x ja meistens Millionenbeträge und dann
entschlüsseln wir euch wieder die Daten so und dann lern ich
immer ich als Softwareentwickler dass das dass, wenn das dann
zurück verfolgt wird von diesen Experten, die da sprechen und so
weiter und sofort. Dass es sich dann runter runter
kondensiert, auf dass ein Mitarbeiter von vielleicht 3000
in dieser Firma eine Mail aufgemacht hat, wo dann halt ein
böser Link war, und dann war ich schon und dann ist die ganze
Firma quasi hinüber, die ganze I verschlüsselt und so weiter und
sofort ja, und dann sagen die Sicherheitsexperten ja, wir
müssen die Mitarbeiter schulen, die nicht solche Links
aufmachen, und das ist jetzt eine ganz ehrliche Frage so ich
und ich also ich als Softwareentwickler ich Einblick
habe, ich kriege es nicht zusammen, dass das kann ja wohl
nicht sein, dass die Sicherheit eines ganzen Firma.
Also an der Sicherheit meiner Mitarbeiter und meiner
Werkstudenten hängt der dann vielleicht wirklich einfach nur
vielleicht hat er auch ein paar Probleme gehabt Alkohol oder
irgendwas ja wie schnell hab ich denn Link geklickt?
Und wenn das die Auswirkungen haben kann, dass meine Firma
danach irgendwie verschlüsselt ist, dann ist das führt ja die
ganze Sicherheitsthema, dass wir jetzt schon seit 20 Minuten
Sprecherin Agua. Vielleicht kannst du vielleicht
noch ein bisschen Licht reinbringen, so was also, das
kann ja wohl nicht sein oder so ja also ich ich bin ich bin
total bei dir, das das ist so, da hast du jetzt bei mir echt
nerv getroffen. Ja schön, da kann man schon fast
ne eigene Sendung von machen das ist n es ist ja also es ist so
wie du sagst ne wenn wir jetzt hier irgendwie im akademischen
Umfeld oder irgendwie petting oder sowas dann beschäftigen wir
uns immer mit so fancy Sicherheitslücken.
Ja, dann könnte man dies machen und dann machen und dann
passiert dann passiert das und dann hat man da irgendwie Code
injection so wow toll. In der Praxis sieht genauso aus
wie du sagst irgendwer kriegt ne e Mail klickt auf den Link
Platte wird verschlüsselt und das das würde ich also sagen
macht bestimmt 97% der aktuellen Bedrohungslage aus.
Also das ist wirklich so stumm und was du halt auch schon
richtig erkannt hast ist, dass man oder wo ich, wo ich die
Pflichten würde, dass man das am Ende nicht auf die Benutzer und
Benutzerinnen von Systemen abwälzen kann, ja also der
Klassiker ist da hab ich auch in Slide Deck zu.
Der Klassiker ist eigentlich, dass man so du kriegst ne e Mail
da ist irgend ne Office Datei drin, dann klickst du drauf und
dann kommt oben im oberen Bereich kommt zum Dialog und da
steht ja hier werden Makro Makros geladen und dann hast du
so einen sehr, sehr großen Button.
Auf dem steht ja Enable und du hast an der an der rechten Seite
hast du so n kleines x und die Krux an der Geschichte ist, dass
der unsichere Button so prominent groß ist und ne der
dann sagt ja ja, komm hier Go for it der sichere Button mit
nee. Im Zweifel lieber nicht, der ist
halt sehr klein an der Seite, also das ist was man sich als
Hersteller von so Office Software zumindest gefallen
lassen muss, dass da im Bereich User Experience, die die
Proportionen nicht passen also das müsste man schon irgendwie
anders kenntlich machen so und dann also was ist ein Makro?
Ein Makro ist ein kleines Programm.
Was sich in andere Dateien, also prominenter Weise in Office
Dateien legen kann und was dann mit dem Öffnen der Dateien oder
mit dem Freigeben, der Markus gestartet wird, so und das ist
eben ne, das ist eigentlich nichts anderes als eine siku
Injection, wo wir auch schon drüber gesprochen.
Das ist eine klassische Code Injection, wo das nicht den Code
eben in diese Office Datei lege. Ja und wenn ich das Makro
ausführe, dann lädt sich das irgendwo Schadsoftware runter
oder fängt direkt an, Daten zu verschlüsseln oder sowas.
Ja, dann dann gibt es natürlich Leute, die sagen ja, da müssen
wir Awareness schaffen. Wir müssen die Leute schulen,
dass sie dann nicht auf irgendwelche Links klicken oder
sowas und wenn die Leute immer noch drauf klicken, dann müssen
wir mehr Awareness schaffen so, dann müssen wir diesen Schulung
alle 3 Monate machen und nein, ich bin total bei dir, dass das
funktioniert nicht also wir müssen zu einem Zustand kommen,
wo diese Tatsache einfach keinen Schaden anrichtet.
Ja, wobei ich mal generell in Frage stellen würde.
Ich weiß nicht benutzt die Office Produkte.
So benutzt ihr Makros in Office Produkten und wir sind ja wir
sind gar nicht in der also Office Produkte natürlich auch,
aber nicht. Jetzt von der Firma Microsoft
und auch nicht in der Form als Desktopanwendungen.
Wir sind komplett basiert in der Google quasi gibt es.
Trotzdem gibt es auch Makros. Trotzdem kriegen wir ja genau
und trotzdem kriegen wir natürlich von von Externen immer
mal wieder ein Dokument zugeschickt und so weiter ja,
das kommt dann bei uns geklaut, allerdings ja aber jetzt so in
Eurem in Eurem sag ich mal Büroalltag also geht diese
Makros? Nein, nein, nein genau und das
höre ich das höre ich immer wieder ne also vielleicht
sollten wir dieses Feature einfach.
Beenden so also ich hab ich hab den Eindruck, dass es das der
einzige Use Case für diese oder ein großer Use Case für diese
Makros einfach Schadstoffe ist Thema, ich stell mal ne ne
progressive frage so in ist es und ich bin ich spiel mal so,
ich spiel jetzt mal den den ich versuche mal denjenigen zu zu
spielen, der so der Zuhörer auch ist und ich kann mir immer noch
nicht vorstellen jetzt jetzt, jetzt bin ich soweit ich
verstanden, dass ich jetzt einen Link anklicke und dann
vielleicht noch falsch klicke ich quasi in n böses Programm
runterladen l in mein eigenes Firmennetzwerk.
Also erstmal auf meinen lokalen Laptop, vielleicht im ersten
Moment ja, was dann vielleicht sogar noch weitere Programme
nachlädt und so weiter und dann anfängt Schaden zu nehmen, ja.
So aber was nimmt denn für Schaden also verschlüsselt, dann
im schlimmsten Falle die Daten, die ich lokal hab im
Firmennetzwerk also s geht dann auf die Fileserver über und so
weiter und sofort ja und verschlüsselt die Daten im jetzt
jetzt mal die ganze Platte frage wenn ich aber gar keine Daten
lokal habe keine relevanten, sondern ich und jetzt sag ich
mal, wir machen wir haben wir haben im Prinzip gar keine
relevanten lokalen Daten oder wenn ich könnte meinen Laptop
morgen in die Regenrinne schmeißen, dann kauf ich mir nen
alles wieder gut, weil wir alles bei Google quasi in der Cloud
hosten sogar und wenn mich jemand verschlüsseln wollte mit
sowas, dann müsst ihr halt die Google Cloud.
Der Schlüssel und ich glaube, das ist nicht so einfach ja,
also würdest du sagen gibt es einen?
Ist vielleicht dieser Effekt also dieser dieser ja, dass wir
sehen, dass immer wieder Firmendaten verschlüsselt werden
hat damit zu tun, wo die Daten aufbewahrt werden auf lokalen
Servern und so weiter? Kann ich mich da schon mehr für
schützen, wenn ich zum Beispiel? Sichere Cloud Lösungen verwende
oder ist das unabhängig von dem allen, wie würdest du das
einordnen? Boah also das kommt das hängt
sehr vom Einzelfall ab. Grundsätzlich würde ich sagen so
wenn du wenn du in dem Fall handelt, die Schadsoftware ja
mit deiner Berechtigung ja und wenn du die Berechtigung hast,
da Dateien zu öffnen und zu verändern, dann kann die
grundsätzlich auch in der Cloud die Dateien verändern.
So stimmt ein Vorteil den der die meisten Cloud Anbieter
mitbringen ist eine Versionierung also du könntest
du könntest zurückbringen. Form von Datensicherung.
Das wäre er aber auch durchaus etwas, was man, was man lokal
halten könnte, ne also man so ein klassisches Beispiel ist du
hast so 5 Office Computer und die haben noch so Netzlaufwerk
auf dem Server ja und und und da werden halt Daten ausgetauscht
und jetzt kommt deine Schadsoftware vorbei, die
verschlüsselt alles keiner kann mehr arbeiten die verschlüsselt
übrigens nur die jetzt die Benutzerdaten sag ich mal das
Betriebssystem selber das Boot halt noch normal und sag dir
einfach nur ich hab mal alles verschlüsselt, ne also wenn
alles verschlüsselt wäre, würde der Computer ja auch nicht
genau. Funktionieren wenn du jetzt aber
von diesen von diesem Server mit dem Netzlaufwerk und auch von
den lokalen Computer Backups hast, die du im Idealfall noch
offline verfügbar hast es gibt ja hier diese Fans vielleicht
noch früher dieselben für die Festplatte.
So kann man rausziehen steckt ne andere rein oder sowas und jetzt
hast du aber irgendwo von gestern noch ein offline Backup
rumliegen was ja nicht verschlüsselt sein kann.
Dann kannst du da halt auch Daten wiederherstellen, ja
trotzdem natürlich ärgerlich ja, aber genau trotzdem ärgerlich na
klar und ist unfreundlich aber genau dann das klärt dann quasi
auch so n bisschen. Ich glaube, das sind für unsere
Zuhörer auch nochmal ganz wichtig, denn dann heißt es ja
immer so ja ist da n Virus drin oder ist jemand Virus auch
gesprochen, ja und jetzt haben wir Corona gehabt, dann wissen
wir alle was ein Virus ist so ja und aber wenn man wenn
manmeint.it über n Virus spricht ich glaube, dann haben viele
Leute, die jetzt jetzt nicht so mit mit IT Software und so
weiter was zu tun haben, eine Schwierigkeit überhaupt nicht
vorstellen was ist denn irgendwie n Virus und wo kann
überall drin sein? Im Computer ist der Tastatur so
oder in der Maus. In und so weiter ja, und ich
glaube, Timo hat es angesprochen, ich würde
vielleicht mal also ich glaube, Virus und Timo korrigiere mich,
wenn ich das jetzt irgendwie erzählt, aber n Virus ist halt
immer eigentlich ein kleines Programm, oder auch ein größeres
ja also n Computerprogramm und das muss man vielleicht auch wie
kann man ziemlich gut verstecken?
Sogar so kleine Programme es ist alles digital, ja sogar so n
Bild ja also n ja NJP oder NG oder Irgendsowas das da steckt
halt Daten drin und Informationen und man kann ganz
geschickt glaube ich auch Schadsoftware verstecken hinter
solchen Strukturen. Das sieht irgendwie noch
einigermaßen normal aus, aber es ist irgendwie viel größer, als
es sein müsste, vielleicht weil noch ein bisschen mehr drin als
nur die, die die Pixel, die sich anzeigen und wenn da quasi eine
Schadsoftware drin läuft oder irgendsowas, dann nennen wir das
irgendwie, dann ist das irgendwie ein Virus oder
irgendwas ja Timo stimmt das so ungefähr oder ja, also kann man
im Großen und ganzen so sagen ich würde, ich würde im
allgemeinen von von Schadsoftware sprechen, weil der
Begriff ist ja also du hast jetzt zum Beispiel vom Virus
genannt, gibt auch Würmer und Rihanna und so genau die würde
ich jetzt unten. Also jetzt hab ich Virus als
logisch, also genau bist du aber nicht alleine mit wird auch in
den Medien. Nicht ganz trennscharf benutzt
ist völlig in Ordnung. Ich würde von Schadsoftware
sprechen und aber ja, es ist auf jeden Fall Software mit einer
bösen Intention, die auch aktiv entwickelt wurde.
Ja also als ich angefangen habe, mich mit zu Computersicherheit
zu beschäftigen, da gab es auch noch so eine esoterische
Sichtweise auf Computerviren, dass die halt irgendwie
entstehen im Cyberspace und ja, das ist natürlich nicht der
Fall. Also da hat sich irgendwer schon
hingesetzt und die Mühe gemacht und n ein böswilliges Programm
geschrieben. Wir sind so super.
Abtauchen war total cool, ist aber, wenn wir über
Schutzmaßnahmen sprechen, gibt es da nicht einfachere
Standards? Sag ich mal also ich habe eine
Firewall zum Beispiel oder ich habe einen Passwortschutz oder
einen Login oder sowas in der Art.
Ich muss mich authentifizieren und verifizieren gegenüber
irgendwie irgendwas. Also gibt es da so die so das
einmaleinsder.it Security. Wenn ich meine wenn es Produkte
und bei dem Beispiel zu bleiben und nicht zu groß werden zu
lassen. Ja, das Einmaleins so nicht also
es kommt es kommt hängt stark davon ab wer bin ich eigentlich?
Also bin ich für mich selbst als Person oder bin ich bin ich als
Firma oder Konzern als Firma und im Fall ja, das ist vielleicht
OK so dann dann als Firma und irgendwie mit Produkten, ja gibt
es unterschiedliche Bedrohungsmodelle also ich kann
das kann das auf unterschiedlichen Ebenen sehen.
Ich kann mein Produkt sehen, ich kann das aber auch auf die
gesamte Firma ausweiten. Denn jetzt über Skype
gesprochen. Es gibt aber auch da
unterschiedliche Frameworks für unterschiedliche
Anwendungsfälle, ja also üblicherweise.
So Systemadministratoren. Die benutzen ein anderes
Framework als mit so einer Softwareentwicklungs.
Softwareentwicklungsteam. Im Großen und Ganzen geht es
aber darum, jetzt auf einer sehr hohen Flughöhe gesprochen geht
es darum, Bedrohungen zu identifizieren.
Und ein Stück weit auch zu dokumentieren, dass man weiß OK,
wir haben das, wir haben das identifiziert, und wir wissen
darum und es valide das Risiko einfach zu akzeptieren.
Teilweise kann ich bestimmte Sachen einfach nicht verändern
ja, wenn ihr jetzt ich weiß nicht, was euer Cloud Anbieter
ist. Aber wenn wenn der irgendwie
ausfällt, dass wir wahrscheinlich nicht
beeinflussen können und das dann einfach weg ist ein Risiko müsst
ihr akzeptieren. Es gibt aber Risiken, die auf
die habt ihr Einfluss und dann könnt ihr euch dann eine
Strategie überlegen, wie ihr wie ihr damit umgeht und dann ist es
eben auch gut, einen Plan zu haben, was man macht, wenn
bestimmte Szenarien eingetroffen sind.
Das kann man kleinteilig machen, auch in Form von
Bedrohungsmodellierung kann man aber auch sehr, sehr groß denken
und dann sind wir im Bereich Incident Response also vorhin
sagten wir ja ne hier, wenn jetzt alles verschlüsselt oder
sowas, dann hätte man unweigerlich ein Incident so
dass das ist auf jeden Fall ein Zustand erreicht.
Übernehmen sie vielleicht vorher sogar schon Gedanken gemacht
hat. Aber ist jetzt eingetreten,
oder? Ich bemerke, dass, dass sich
Leute in meinem Netzwerk einwählen, die da eigentlich
keinen Zugriff darauf haben sollten irgendwie sowas, also
das ist dann incident und auch da gibt es bestimmte Phasen
würde ich sagen ich würde es nicht konkrete Sachen
Runterbrechen, sondern es gibt einfach bestimmte Phasen die ich
die ich durchlaufe weiß nicht willst du jetzt noch weiter
darauf eingehen, dass das wär Instant Response sagst du hast
das oder der Bereich Management also dass ich aufstehen würde
ich gerne als letzten Punkt tatsächlich machen würde, aber
vielleicht lieber nochmal das Thema Schutzmaßnahmen oder
dieses Ich habe jetzt einmal einfach so genannter N, der hier
vielleicht auch nochmal kurz da zu Wort kommen zu lassen, ja wie
das im Alltag aussieht als jetzt produktverantwortlichen auch bei
der heißen was sind die Sachen, die wir bedenken müssen?
Wie gehst du damit um? Ja also, es ist halt wie gesagt
es ist also man hört das glaube ich schon in unserer Diskussion,
also dieses ganze Thema ist halt sehr sehr weit.
Ne also du hast du hast alle möglichen Arten von Bedrohungen
und du hast natürlich auch ganz viele Arten von Sicherheiten so
ich hab grad nochmal ausgeführt, dass zum Beispiel gegen diese
Verschlüsse und so weiter und ein Konzept ist, dass man eine
super Backup also gegen gegen diesen Angriff, dass sich Daten
verschlüsselte und dass ich kriminell quasi wir also
kriminelle Angriffe hab dich irgendwie meine Daten
kompromittieren, kann ich mich ganz gut wehren, indem ich von
vornherein sauberes in der saubere Backup Lösung bedenke
die halt nicht auf dem gleichen Server des Backup macht, sondern
vielleicht habe ich dann 23 Server und dann muss man schon
bisschen investieren machen wir auch so und dann muss ich halt
regelmäßig, das kann manchmal ganz sein ja und das kann ganz
einfach sein eigentlich. Ich ziehe halt regelmäßig haben
wir damals schon gemacht. Vor 20 Jahren hatte ich net
Firma, da waren die ganzen Technologien noch nicht so weit.
Aber was wir gemacht haben, wir haben alle 10 Minuten ganz
platt. Den ganzen relevanten Daten von
diesem Server gespeichert auf einem anderen Server und es kam
der Tag, wo irgendwas schief ging wahrscheinlich was passiert
an der Stelle und diese ganze Datenbank hat sich irgendwie
ineinander zu erworben und war korrupt und konnte nichts mit
anfangen. Alle Daten, die bis dato
eingegeben waren futsch im Prinzip.
Ja, und dann dann hast du natürlich erstmal Schweißperlen
auf der Stirn und dann ist aber doch nicht schlimm, weil dann
schreibst du ne, das tut uns leid, wir haben die für uns
fehlen die letzten 10 Minuten und dann haben wir das von den
letzten 10 Minuten eingespielt und doch nicht schlimm.
So also, das haben wir auch gesagt und dann gibt es
vielleicht Andreas Du halt Daten rauskopiert werden wir diese k
Problem gerade so Sachen halt irgendwie Datenbanken, dann
werden sie nicht verschlüsselt, sondern die und das merkst ja
und jemand anders stellt unverschlüsselt und ganz publik
ins Netz so das ist auch ein Problem, das besprechen wir
heute nicht tiefer. Also ich würde sagen, ganz
technisch sind wir relativ weit mit der Verschlüsselung so ja,
das ist glaube ich gar nicht so unser Problem also wir haben
also haben wir schon über HTPS gesprochen, also die TS
Verschlüsselung, wenn man die sauber durchzieht und auch die
Serverzertifikate gut überprüft und so weiter, dann ist man also
schon auf diesem Wege der Datensicher.
Da kann ich dann auch wenigstens kein Passwort mitgehört werden
und so weiter. Ich versuche mal allen Leuten
die Angst zu nehmen, das ist dann schon sicher ja, denn
vertrauenswürdigen Server hab und da hat TPS Verbindung und
schicke auch ein Passwort durch die Gegend.
Dann kann das Halt stand der Technik heute keine Abhören, ne?
Die Probleme sind dann halt, glaub ich vielfältiger im
Hintergrund, so wenn genau diese angriffsvektoren ja wenn ich.
Ich glaube, das ist mehr das Thema, was wir haben, also die
technische Sicherheit würde ich sagen, haben wir im Griff aber
was ist denn, wenn mein Kunde hat?
N Login Account und ein Passwort und geht damit nicht vorsichtig
um. Ja, und das ist ja auch schon
Probleme und jemand anders hat dieses Knacks dieses Passwort ja
und kann dann als Ganzes und das ist glaube ich jetzt hab ich
vergessen, welches Passwort als Booking oder irgendwas ergibt
sich quasi als andere Person aus und kompromittiert die Daten
vielleicht sogar die ganz normale User Interface und im
nächsten schlimmen Fall ist dieses Passwort.
Was rausgefunden wurde auch noch das Passwort vom Onlinebanking.
Account von diesem von diesen Menschen so ja.
Und so weiter und sofort ich glaube, das so, das sind so die
wichtigen Probleme, die wir, die wir haben und ja, also ich
glaube, dass man bewegt, sich in die richtige Richtung und ich
ich denke immer, man muss aufpassen, dass man, dass man
vor allen Dingen mit Passwörtern sehr vorsichtig umgeht und also
als erstmal in der Technik. Sie müssen verschlüsselt in
einer Datenbank abgelegt werden und so weiter und sofort und
muss dafür sorgen, dass da keiner dran kommt von außen und
da kann man tatsächlich auch den Nutzern sagen und ich sage das
immer wieder. Bitte nutzt verschiedene
Passwörter ja, das ist ich weiß nicht Timo nicht.
Gerade das sehe ich jetzt hat nicht gesagt aber es ist ja
einfach so die Angriffs. Sektoren sind riesig und wir
haben nicht nur eine Software, die wir machen müssen, sondern
n. Ja und Betriebssysteme und die
Office Programme und so weiter und ich kenne so viele Leute,
die haben für alles, weil es einfach ist.
Ein Passwort, ja, und da braucht nur ein unsicheres System haben
1 muss gehackt werden, wenn die das Passwort haben, dann halt
überall ja, dann kannst du alle anderen Systeme rein ja, also
was ich was ich mitnehme ist wenn man sich an den Stand der
Technik hält, unter anderem beim Thema Verschlüsselung ja, als
man als Softwarefirma schon mal auf einem guten Weg öffnet, sehr
gut eigentlich und wenn man dann, wenn man dann noch dafür
sorgt, dass die Nutzer und Nutzerinnen möglichst wenig
falsch machen können, ja zum Beispiel.
Das Passwort muss ein Sonderzeichen enthalten und
großsteingrab P wir nicht kennen.
Dann dann habe ich meinen Dienst erstmal erfüllt, ja, und wenn
ich dann noch weitergehen und vielleicht in so einer Art
Penetration Test wirklich n to End mir von vorne bis hinten
überlege was könnt ihr eigentlich alle Bedrohungen
geben und wie sicher ich mich dagegen ab dann bin ich auf
einem sehr guten Weg. Kann man das so sagen?
Ja kann man also ist gut zusammengefasst Sicherheit ist
auf jeden Fall ein Prozess. Das ist kein Produkt.
Du kannst Produkte nutzen, um diesen Prozess zu unterstützen,
aber du kannst die Sicherheit nicht einkaufen, sondern das
lebt davon. Dass du bestimmte Abläufe
konsequent durchführt, ja wie Burkhard sagte eben, mit den
Passwörtern oder so oder wenn ich ein Passwort Manager nutze,
dann muss ich den konsequent überall nutzen, wenn ich das
einmal nicht mache an irgendeiner Stelle, dann ist da
eben das System gebrochen, also lieber wenig machen, aber dafür
konsequent so dann das letzte Thema Timo Rost schon angerissen
ist ein schönes Incident Response glaube ich.
Das ist doch noch kurz besprechen auf einer hohen
Flughöhe also was ist zu tun, um Schaden oder im Angriffsfall zum
Beispiel? Und wie bereite ich mich richtig
darauf vor? Weil hundertprozentige
Sicherheit gibt es nicht. Das hab ich schon vorher den
Satz den Satz mag ich absolut nicht also ich, ich würde sagen
das kommt sehr darauf an, auf was man guckt und man kann schon
Sachen gut, also wenn man den Scope entsprechend verkleinert
kann man sagen das ist sind Dinge, um die wir uns keine
Gedanken machen also ich werde nicht mehr so vehement aber ich
hasse diesen Satz finde ich, weil das ist so, das wird so
häufig. Ausrede benutzt weißt du ja
haben wir nicht gemacht, weil sie sicher absolute Sicherheit
gibt es nicht? Deswegen haben wir nicht
gemacht, ne wo? Wo kommt das her?
Nichtsdestotrotz tritt der Fall ein.
Das zeigt die Erfahrung, das zeigt, dass wir in unserem
Security Modell bestimmte Sachen nicht bedacht haben.
Es kommt der Tag, da tritt der Fall ein und da ist es eben gut,
entsprechend darauf vorbereitet zu sein, ja, instrumental
Sponsor ist da eigentlich so, der der geführte Prozess, wieder
vertrauenswürdige Systeme oder oder also die.
Die grundsäulender.it Sicherheit wiederherzustellen und da gibt
es eben teilweise auch Erfahrungen oder ja, also gibt
es eben einfach etablierte Mechanismen.
Best Practices würde man in der Software Entwicklung vielleicht
sagen, vertrauenswürdigen Zustand wiederherzustellen oder
einen sicheren Zustand könnte man in dem Fall auch sagen das
Ganze beginnt, wieso häufig mit entsprechenden Vorbereitungen
also das ist gut n Bedrohungsmodell zu haben.
Es ist gut, bestimmte Systeme im Plays zu haben, die mich dabei
unterstützen, aber jetzt auch so kommunikations Guidelines
innerhalb der Firma ja, also wer, wer ist denn jetzt hier?
Weisungsbefugt und was was gehen wir raus?
Und dann melden wir das und wer wird überhaupt informiert?
Und so weiter. Das hat man im Idealfall vorher
schon gemacht, ist häufig nicht der Fall.
Aber ist die NR handelt, hat man sich da vorher schon mal
Gedanken darüber gemacht und dann brauche ich also, dann muss
ich ja erstmal eine Möglichkeit haben, überhaupt mitzukriegen,
dass ich n incident habe, weil das passiert eben auch häufig
nicht ne also da. Die deutliche Mehrheit von
Angriffen wird erst Monate nach dem eigentlichen nach dem
eigentlichen Einbruch bemerkt. So ne also das da muss ich
einfach bestimmte. Mechanismen haben um das
Mitzukriegen ja Reporting Logging ist da so n so n Ding
also, wenn meine Systeme ihre Zustände alle irgendwo
hinlocken, dann kann ich mit einem Bestimmten nennen wir sie
mal virtuellen Alarmanlagen einfach diese diese Box
automatisch auswerten und kann mich informieren lassen O hier
ist gerade irgendwas passiert, was nicht ganz vertrauenswürdig
ist ja hier die Kollegin, die arbeitet hier schon 3 Monate
nicht mehr, hat sich aber gerade in PN eingeloggt.
Das wäre so ne n Mechanismus den man vielleicht kriegen möchte
und dann komme ich eigentlich erstmal in die in die Analyse,
dass ich mir genau angucke. Also ich hab.
Mitbekommen schon ne der Incident ist da, aber jetzt muss
ich erst mal einen Überblick kriegen was ist denn überhaupt
passiert? Ja und und welche Systeme sind
denn überhaupt betroffen? Einen Fehler, den man häufig
sieht, ist, dass Leute einfach zu früh Netzwerkkabel ziehen.
Ja, also einfach erstmal OK, da ist irgendwas passiert erstmal
Netzwerk raus, dann ist das System erstmal offline.
Das ist was wo man einfach nur entschieden abraten kann, weil
das taktisch unklug ist. Das heißt wenn du jetzt, wenn du
dir jetzt vorstellst, dass du so ne weiß, ich nicht irgendeine
Angreifergruppe hast ja die, die sich gerade in deinem in deinem
Firmennetz bereit macht und du. Siehst du irgendwo
netzwerkstecker, dann weiß diese Angreifergruppe, dass du sie
bemerkt hast, aber du weißt noch nicht, welche Systeme alle
betroffen sind, ne also das bringt dich in eine taktisch
unkluge Situation? Deswegen ist so wichtig erstmal
analysieren, erstmal eindämmen also einfach, dass das Risiko
erstmal minimieren, erstmal eindämmen und wenn ich weiß, was
passiert ist und kann den den Umfang und die Ausmaße dieses
Incidents einordnen, dann kann ich beginnen, irgendwie
kontrolliert abzuschalten. Festplatten zu weitem ja
lösungsmechanismen. Zu ergreifen und wenn das alles
passiert ist ja, wenn ich diesen sicheren Zustand
wiederhergestellt habe, dann auch ganz, ganz wichtig.
Es kommt häufig zu spät und dann bin ich in so einer sogenannten
Post Incident Phase. Dann setzt man sich nochmal
zusammen OK was ist hier eigentlich genau passiert und
warum konnte das passieren und was müssen wir machen, damit das
nicht wieder passiert? Ja, wir sind irgendwie Security
Policies Fire von Firewalls davon gesprochen, vielleicht
Firewall regeln anpassen, damit wir das Problem zukünftig nicht
mehr nicht mehr haben, hatten wir einen Fehler in unserer
Software, den wir vielleicht ausmerzen müssen.
Ja, haben wir, vielleicht haben wir vielleicht vergessen,
irgendeine Software Komponente abzutöten oder sowas ne also
erst mal genau analysieren was ist hier passiert und und was
können wir machen, damit das nicht wieder passiert?
Ja und vielleicht auch, also eben nachhaltig nicht wieder
passiert. Das heißt, wir haben.
Wir haben gelernte Mechanismen, die wir immer machen.
Ne Sicherheit ist ein Prozess, die wir immer in der gleichen
Qualität machen, um dieses Risiko immer einfach
auszuschließen. In Zukunft prima finde ich n
richtig schönes, vielleicht Schlusswort, aber auch mal gutes
Plädoyer. Und Statement für das Ende des
Podcasts? Ich habe jetzt gemerkt, dass
dasthema.it Sicherheit viel zu groß ist und in einer Stunde
Podcast zu packen. Ich glaube aber, dass wir also
erstmal einen Rundumschlag trotzdem gemacht haben, der
vielleicht auch ganz gut anzuhören ist und glaube, dass
wir einzelne Themen daraus ja in irgendwelchen vielleicht nochmal
vertiefen können nochmal genauer ansehen in kleineren Häppchen
sag ich mal. Burkhard, wolltest du noch was
zum Thema sagen oder letzte Worte zum Thema It Sicherheit?
Bevor wir dann Richtung Ende kommen?
Ja, ich hab noch ein letztes Wort erst mal danken, dass er
uns begleitet hat heute in den Podcast mit sehr vielen
wertvollen Informationen. Richtig cool.
Ich glaube, wir haben alle was gelernt diesmal nicht nur
Gerrit. Ich hab auch wieder richtig viel
gelernt. Wir sollten das öfters machen,
dass wir einen Gast einladen und vielleicht noch so viel zum
Schlusswort. Jetzt haben wir mit Timo das
erste Mal mit in Sachen Podcast zusammengearbeitet.
Ich würde mich freuen und das haben wir gerade besprochen.
Der Folge dass wir dann, dass man auch technisch miteinander
arbeiten muss, gerade mit den Leuten, die sich gut auskennen.
Vielleicht klappt das auch und so, dass wir auch von diesen
auch von den Experten die und das muss man immer sagen als
Softwareentwickler, auch wenn man sich als Experte fühlt, ja,
bei uns schon 20 Jahre gemacht hat.
Man kann es eigentlich nicht sein, wenn man das ist halt
einfach und Gerrit, du hast gesagt, dass wir schaffen, sich
in einer Stunde Podcast hinzukriegen und als Entwickler
schaffst du es auch nicht, wenn du, wenn du Full Stack machst,
so wie ich mit und du hast so viele Sachen so viele Themen auf
dem Zettel und das Thema ist halt so tief, dass Security
Thema aber das ist halt Experten bedarf die nur diese Nische
bedienen. Mir ist schon bewusst so, aber
das muss man halt auch dann regelmäßig wieder reinziehen und
sich von diesen Experten beraten lassen und hat penetrierenden
lassen wir lassen des Wortes also nicht man selbst, sondern
die Software natürlich Schreiber.
Genau, und das werden wir tun uns genau also.
Vielen Dank für Timo, für deine Zeit und freue mich, wenn wir
vielleicht nochmal Podcast Serie machen, aber vielleicht ein
detailliertes Thema aus diesen Sachen ich habe auf jeden Fall
noch viele Fragen, sogar ja zu zu ganz detailreichen Themen,
die vielleicht auch unseren ne. Falls ihr mit Timo in Kontakt
treten möchtet, verlink ich euch seinen Gitterprofil in den
Shownotes. Ansonsten könnt ihr natürlich
auch gerne Burkhardt oder mich ansprechen und wir stellen den
Kontakt her. Vielen Dank fürs N dieser Folge
von einfach komplex die Folge gefallen dann lass uns doch ne
gute Bewertung da oder Teile die Folge mit jemanden aus seinem
Netzwerk für Kritik zufolge Anregungen und Fragen für neue
Folgen, freuen wir uns auf deine Email an podcast@heise.com
Abonniere jetzt unseren Podcast und keine Folge mehr verpassen
bis zum nächsten mal Tschüss aus Hamburg h.