Vorwort
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Das Aufkommen moderner Computing-Stacks verändert unser Denken über Sicherheit radikal. In den alten Tagen der Rechenzentren betrachteten Sicherheitsexperten Softwareanwendungen als mittelalterliche Burgen: Um sie zu sichern, mussten große Mauern mit kleinen, gut bewachten Öffnungen gebaut werden. Moderne Cloud-basierte Software gleicht eher einer belebten modernen Stadt: Menschen bewegen sich frei in ihr und über ihre Grenzen hinweg, um Dienste zu nutzen und anzubieten und Dinge zu kaufen, zu verkaufen, zu bauen und zu reparieren.
Wie die Stadtplaner von heute wissen, reichen große Mauern und bewachte Eingänge allein nicht aus, um eine Stadt zu sichern. Ein besserer Ansatz ist eine weitreichende, granulare Sichtbarkeit: zum Beispiel ein Netzwerk von Sicherheitskameras und die Möglichkeit, deren Aufnahmen anzusehen und in Echtzeit auf Bedrohungen zu reagieren, die sie erfassen.
In diesem Buch geht es um die Sicherheit moderner Anwendungen. Dabei kommt das Open-Source-Tool zum Einsatz, das von der Branche als "Sicherheitskamera" für den Cloud Native Stack angenommen wurde: Falco. Falco ist ein Cloud Native Runtime Security Projekt zum Schutz von Software, die in der Cloud läuft, indem es unerwartetes Verhalten, Eindringlinge und Datendiebstahl in Echtzeit erkennt. Es ist die De-facto-Engine zur Erkennung von Bedrohungen für Kubernetes und die Cloud-Infrastruktur, die von unzähligen Nutzern eingesetzt wird - von Testumgebungen mit nur einer Maschine bis hin zu einigen der größten Rechenzentren der Welt. Wir zeigen dir, wie du deine Anwendungen schützen kannst, während sie laufen, indem du Bedrohungen und Fehlkonfigurationen in den Workloads und in der Cloud-Infrastruktur, in der sie laufen, erkennst.
Mit diesem Buch verfolgen wir ein sehr praktisches Ziel: Wir wollen dir das Wissen vermitteln, das du brauchst, um mit Falco erfolgreich Laufzeitsicherheit in deiner Umgebung zu implementieren, egal wie groß sie ist. Wenn du das Buch zu Ende gelesen hast, wirst du ein solides Verständnis davon haben, wie Falco funktioniert: Du wirst in der Lage sein, es in jeder Umgebung zu installieren, seine Leistung zu optimieren, es an deine Bedürfnisse anzupassen, seine Daten zu sammeln und zu interpretieren und es sogar zu erweitern.
Für wen ist dieses Buch?
Wir haben dieses Buch in erster Linie für Sicherheitsexperten und -architekten geschrieben, die in ihren modernen Computerumgebungen Laufzeitsicherheit und Bedrohungserkennung in der Produktion implementieren wollen. Wir haben es jedoch so konzipiert, dass es auch für Leser mit wenig oder gar keiner Erfahrung auf diesem Gebiet zugänglich ist. Deshalb setzen wir nur voraus, dass du dich mit den wichtigsten Cloud Computing-Diensten, mit Containern und mit Kubernetes auskennst.
Wir behandeln auch fortgeschrittenere Themen wie den Einsatz im großen Maßstab, Optimierung und das Schreiben von Regeln, die selbst für erfahrene Benutzer nützlich sind. Auch wenn du dich mit Laufzeitsicherheit auskennst und vielleicht schon Falco verwendest, wird dir dieses Buch helfen, dein Können zu verbessern. Der letzte Teil des Buches setzt Grundkenntnisse in Programmiersprachen wie Go voraus. Entwickler/innen, die Falco erweitern oder anpassen wollen, werden hier viel Wert finden. Das letzte Kapitel des Buches richtet sich an diejenigen, die darüber nachdenken, an Falco mitzuarbeiten - wir hoffen, dass wir dich dazu inspirieren können, dich ihnen anzuschließen!
Übersicht
Das Buch ist in vier Teile gegliedert, die nach zunehmender Komplexität geordnet sind, wobei jeder Teil auf dem vorherigen aufbaut. Um dir die Orientierung zu erleichtern, werfen wir einen Blick auf den Inhalt der einzelnen Teile.
Teil I: Die Grundlagen
In Teil I geht es darum, was Falco ist und tut. Hier bringen wir dir die grundlegenden Konzepte hinter Falco bei und führen dich durch deinen ersten lokalen Einsatz:
Kapitel 1, "Einführung in Falco", gibt einen Überblick darüber, was Falco ist, einschließlich eines Überblicks über seine Funktionen und einer einführenden Beschreibung der einzelnen Komponenten. Das Kapitel enthält auch einen kurzen Überblick über die Geschichte von Falco und einen Blick auf die Tools, die es inspiriert haben.
Kapitel 2, "Erste Schritte mit Falco auf deinem lokalen Rechner", führt dich durch den Prozess der Installation einer einzelnen Falco-Instanz auf deinem lokalen Linux-Rechner. Das Kapitel enthält Anweisungen, wie du Falco startest und deine erste Benachrichtigung erstellst.
Teil II: Die Architektur von Falco
In Teil II lernst du die Feinheiten der Architektur und des Innenlebens von Falco kennen:
Kapitel 3, "Die Architektur von Falco verstehen", beschäftigt sich mit den Details der Falco-Sensoren, wie die Datenerfassung erfolgt und welche Komponenten an der Verarbeitung beteiligt sind. Das Architekturverständnis, das du in diesem Kapitel erlangst, ist die Grundlage für den Rest des Buches.
In Kapitel 4, "Datenquellen", geht es um das Verständnis der beiden wichtigsten Datenquellen, die du in Falco nutzen kannst: Systemaufrufe und Plugins. Wir erklären, welche Daten von diesen Quellen erzeugt werden, wie sie gesammelt werden und wie Falco im Vergleich zu anderen Ansätzen abschneidet.
Kapitel 5, "Datenanreicherung", behandelt die Techniken, mit denen Falco die gesammelten Daten anreichert. Bei der Anreicherung werden den gesammelten Daten kontextbezogene Informationen hinzugefügt, z. B. Container-IDs, Kubernetes-Labels oder Tags von Cloud-Providern. In diesem Kapitel wird erklärt, wie du Falco so konfigurierst, dass es Enrichment-Metadaten sammelt, und wie du es anpasst, um deine eigenen Metadaten hinzuzufügen.
Kapitel 6, "Felder und Filter", behandelt eines der wichtigsten Konzepte in Falco - die Filter-Engine - und die Felder, die ihr zugrunde liegen. Das Kapitel ist als Referenz für die Sprachsyntax (einschließlich der Operatoren) und die Felder aufgebaut.
In Kapitel 7, "Falco-Regeln", werden Regeln und ihre Syntax vorgestellt, einschließlich Konstrukte wie Listen und Makros, die du bei der Anpassung von Falco häufig verwenden wirst.
Kapitel 8, "Das Output-Framework", beschreibt den Mechanismus, mit dem Falco Benachrichtigungen an die Ausgabekanäle liefert, sowie die in Falco verfügbaren Kanäle und zeigt dir, wie du sie konfigurierst und nutzt.
Teil III: Falco in der Produktion einsetzen
Teil III ist das Referenzhandbuch für den ernsthaften Falco-Benutzer. In diesem Teil des Buches lernst du alles, was du wissen musst, um Falco in jeder Umgebung einzusetzen, zu konfigurieren, auszuführen und zu optimieren:
Kapitel 9, "Installation von Falco", stellt Ansätze zur Installation von Falco in Produktionsumgebungen vor und enthält detaillierte Anweisungen.
Kapitel 10, "Konfigurieren und Ausführen von Falco", beschreibt, wie das Konfigurationssystem von Falco funktioniert. Dieses Kapitel hilft dir, die Einstellungen von Falco zu verstehen und zu nutzen, einschließlich der Befehlszeilenoptionen, Umgebungsvariablen, der Konfigurationsdatei und der Regeldateien.
Kapitel 11, "Verwendung von Falco für die Cloud-Sicherheit", bietet einen allgemeinen Überblick über die Cloud-Sicherheit und geht dann auf die Besonderheiten der AWS-Bedrohungserkennung mithilfe des CloudTrail-Plugins von Falco ein. Es verfolgt einen praktischen Ansatz und enthält klare und vollständige Anweisungen für die Einrichtung von Cloud-Sicherheit in deiner Umgebung mit Falco.
Kapitel 12, "Verarbeitung von Falco-Ereignissen", befasst sich damit, was du mit den Erkennungen von Falco machen kannst. Es behandelt Werkzeuge wie falco-explorer und Falcosidekick, die dir bei der Arbeit mit Falco-Ergebnissen helfen, und erklärt dir, welche Falco-Ereignisse nützlich sind, um sie zu beobachten und zu analysieren, und wie du sie verarbeiten kannst.
Teil IV: Erweiterung von Falco
Teil IV ist eine Referenz für Entwickler und enthält Methoden zur Erweiterung von Falco:
In Kapitel 13, "Schreiben von Falco-Regeln", geht es um die Anpassung und Erweiterung von Falcos Erkennungsfunktionen. Du lernst, wie du neue Regeln schreibst und bestehende Regeln auf deine Bedürfnisse abstimmst. Neben den Grundlagen des Regelschreibens behandelt das Kapitel auch fortgeschrittene Themen wie Rauschunterdrückung, Leistungsoptimierung und Markierung.
In Kapitel 14, "Falco-Entwicklung", geht es um die Arbeit mit dem Quellcode von Falco. Es beginnt mit einem Überblick über die Codebasis und geht dann auf zwei wichtige Möglichkeiten zur Erweiterung von Falco ein: die Verwendung der gRPC-API und des Plugin-Frameworks. Du findest mehrere Beispiele, die du als Grundlage für deine Programmierabenteuer verwenden kannst.
Kapitel 15, "Wie man etwas beiträgt", spricht über die Falco-Community und zeigt dir, wie du dazu beitragen kannst. Es ist die ideale Lektüre, wenn du, nachdem du uns das ganze Buch über begleitet hast, genauso begeistert von Falco bist wie wir!
In diesem Buch verwendete Konventionen
In diesem Buch werden die folgenden typografischen Konventionen verwendet:
- Kursiv
Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.
Constant width
Wird für Befehlszeileneingaben und Programmlistings sowie innerhalb von Absätzen verwendet, um auf Befehle und Programmelemente wie Variablen- oder Funktionsnamen, Datentypen und Umgebungsvariablen zu verweisen.
Constant width bold
Zeigt Befehle oder anderen Text an, der vom Benutzer wörtlich eingegeben werden muss. Wird gelegentlich auch in Programmlistings verwendet, um interessanten Text hervorzuheben.
Constant width italic
Zeigt Text an, der durch vom Benutzer eingegebene Werte oder durch kontextabhängige Werte ersetzt werden soll.
Tipp
Dieses Element steht für einen Tipp oder eine Anregung.
Hinweis
Dieses Element steht für einen allgemeinen Hinweis.
Warnung
Dieses Element weist auf eine Warnung oder einen Warnhinweis hin.
Code-Beispiele verwenden
Die Code-Beispiele aus Kapitel 14 stehen unter https://oreil.ly/practical-cloud-native-security-falco-code zum Download bereit .
Wenn du eine technische Frage oder ein Problem mit den Codebeispielen hast, sende bitte eine E-Mail an bookquestions@oreilly.com.
Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Wenn du eine CD-ROM mit Beispielen aus den O'Reilly-Büchern verkaufst oder verteilst, ist eine Genehmigung erforderlich. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eine Erlaubnis erforderlich.
Wir schätzen die Namensnennung, verlangen sie aber nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel: "Practical Cloud Native Security with Falco, von Loris Degioanni und Leonardo Grasso (O'Reilly). Copyright 2022 O'Reilly Media, Inc. 978-1-098-11857-0."
Wenn du der Meinung bist, dass deine Verwendung von Codebeispielen nicht unter die Fair-Use-Regelung oder die oben genannte Erlaubnis fällt, kannst du uns gerne unter permissions@oreilly.com kontaktieren .
O'Reilly Online Learning
Seit mehr als 40 Jahren bietet O'Reilly Media Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.
Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen erhältst du unter http://oreilly.com.
Wie du uns kontaktierst
Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Nord
- Sebastopol, CA 95472
- 800-998-9938 (in den Vereinigten Staaten oder Kanada)
- 707-829-0515 (international oder lokal)
- 707-829-0104 (Fax)
Wir haben eine Webseite für dieses Buch, auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter https://oreil.ly/practical-cloud-native-security-falco aufrufen .
Schreib eine E-Mail an bookquestions@oreilly.com, um Kommentare oder technische Fragen zu diesem Buch zu stellen.
Neuigkeiten und Informationen über unsere Bücher und Kurse findest du unter https://oreilly.com.
Finde uns auf LinkedIn: https://linkedin.com/company/oreilly-media
Folge uns auf Twitter: https://twitter.com/oreillymedia
Schau uns auf YouTube: https://www.youtube.com/oreillymedia
Danksagungen
Wir möchten uns zunächst von ganzem Herzen bei der Falco-Community bedanken: bei den Maintainern, die unzählige Stunden damit verbringen, das Projekt mit unglaublicher Leidenschaft zu betreiben und weiterzuentwickeln; bei den großen und kleinen Mitwirkenden, die Falco jeden Tag besser machen; bei den Adoptern und Champions, die Falco eine Chance geben und wertvolles Feedback geben. Falco ist eindeutig das Produkt eurer Liebe und eures Talents, und es ist eine Ehre für uns, wenn dieses Buch eure unglaubliche Arbeit präsentieren kann.
Vielen Dank auch an die Cloud Native Computing Foundation, die Falco ein gutes Zuhause bietet und sein Wachstum unterstützt.
Wir möchten uns auch bei den Menschen bedanken, die uns beim Schreiben dieses Buches geholfen und unterstützt haben: insbesondere bei unserer Projektleiterin Tammy Yue und unserer O'Reilly-Redakteurin Sarah Grey. Ihr wart nicht nur sehr professionell und hilfsbereit, sondern auch äußerst liebenswürdig, konstruktiv und geduldig. Die Zusammenarbeit mit euch war ein wahres Vergnügen.
Schließlich wäre dieses Buch ohne die Unterstützung von Sysdig, dem Unternehmen, bei dem wir beide arbeiten, nicht möglich gewesen. Wir schätzen es sehr, für ein Unternehmen zu arbeiten, das Open Source nicht nur versteht, sondern auch aktiv unterstützt und unsere Überzeugung teilt, dass die Zukunft der Sicherheit offen ist.
Leonardo
Eines Tages, als ich mich mit Loris unterhielt, schlug er vor, dass wir zusammen ein Buch schreiben sollten. Da ich nun hier bin, muss ich ihm zuerst danken. Mit ihm zusammen an dieser Idee zu arbeiten, war eine der größten Herausforderungen, die ich in meinem Leben gemacht habe, aber auch eine Menge Spaß. Sollen wir es wieder tun? Für mich als Erstautorin war das Schreiben dieses Buches ein unglaubliches neues Abenteuer, das ohne die Hilfe und Liebe meiner Familie nicht möglich gewesen wäre. So möchte ich meiner strahlenden und geliebten Ada danken, die mich immer unterstützt und mir unseren kleinen Michelangelo geschenkt hat. Ich möchte auch unserem kleinen Jungen dafür danken, dass er in Mamas Bauch gewartet hat, bis sein Papa dieses Buch fertig geschrieben hatte. Zusammen mit Ma~ (lies "Matilde", unser kleines Kätzchen, das neben mir schnurrte, während ich schrieb), haben sie mich mit Geduld und Freude auf dieser Reise begleitet.
Nicht zuletzt muss ich auch meinen Eltern, meiner Schwester und meinen Onkeln von ganzem Herzen danken. Sie haben immer an mich geglaubt, mich unterstützt und mir geholfen, wann immer es nötig war. Ohne sie hätte ich es nicht geschafft, ehrlich.
Loris
Ich möchte meiner Frau Stacey, der Liebe meines Lebens, für ihre Geduld und ihre unermüdliche Unterstützung bei dem, was ich tue, danken. Danke, dass du mich während der Produktion dieses Buches nicht verhungern, ertrinken oder mich verletzen lässt.
Ich möchte auch meinen drei Kindern Josephine, Vincenzo und August dafür danken, dass sie jede Minute meines Lebens glücklich gemacht haben, auch die Zeit, in der ich an dieser Publikation gearbeitet habe. Eure häufigen Fragen und Unterbrechungen haben das Schreiben dieses Buches zu einer großen Herausforderung, aber auch zu einer großen Freude gemacht. Ich freue mich schon darauf, die Bücher zu lesen, die ihr veröffentlichen werdet, wenn ihr erwachsen seid.
Ich möchte meinen Eltern dafür danken, dass sie mich zu Beginn meiner Karriere (und davor) unterstützt haben. Ohne die Saat, die ihr vor vielen Jahren gepflanzt und mit Liebe und Großzügigkeit gegossen habt, würde ich heute nicht dieses Vorwort schreiben.
Dieses Buch wäre ohne meinen Co-Autor Leo nicht möglich gewesen. Wir beide mussten viel Zeit miteinander verbringen, um dieses Werk zu erstellen, und jede Minute mit ihm war angenehm, konstruktiv und lustig. Leo, ich freue mich darauf, mit dir in Zukunft noch mehr Spaß und ehrgeizige Projekte zu verwirklichen.
Get Praktische Cloud Native Sicherheit mit Falco now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.