Patch-Management für KMU: Warum 80 % der Angriffe vermeidbar wären
Einleitung
Obwohl sich das technisch recht einfach vermeiden ließe, zeigt neben dem BSI-Lagebericht auch der Data Breach Investigation Report (DBIR) von Verizon, dass die meisten erfolgreichen Angriffe Schwachstellen nutzen, für die bereits ein Patch oder eine Mitigation existiert. Die Schlussfolgerung ist unspektakulär, aber unangenehm: Du musst keine Zero-Days abwehren – du musst schneller patchen als Angreifer scannen. Dieser Artikel zeigt, warum KMU dabei strukturell im Nachteil sind und wie du das mit Bordmitteln änderst.
Warum das Thema wichtig ist
Die meisten Angreifer sind opportunistisch. Sie scannen das Internet nicht gezielt nach deiner Firma – sie scannen einfach alles und schlagen dort zu, wo sie offene Türen finden und sich einen monetären Effekt erhoffen. Shodan, Censys und massenhafte Exploit-Kits machen es trivial, und bereits einfache Programmierkenntnisse reichen aus, um eine bekannte Schwachstelle innerhalb von Stunden nach Veröffentlichung aktiv auszunutzen.
Gerade KMU stehen vor einem strukturellen Problem: Sie haben kein dediziertes Security-Team, keine Enterprise-Patch-Management-Plattform und oftmals leider keine klar definierten Prozesse. Patches werden oft reaktiv eingespielt – oder auch gar nicht. Das Ergebnis: Systeme mit öffentlich dokumentierten CVEs laufen monatelang im Produktivbetrieb. Genau diese Systeme sind das primäre Ziel automatisierter Massenangriffe.
Wie ein patch-basierter Angriff abläuft
Wenn du verstehst wie der zeitliche Ablauf aussieht, dann verstehst du hoffentlich die Dringlichkeit:
- Ein CVE wird veröffentlicht. Oftmals inklusive technischen Details, manchmal sogar mit einem Proof-of-Concept (POC), der bereits mit Copy-Paste funktioniert. Die Indikatoren für anfällige Systeme sind somit bekannt.
- Das Massenscanning beginnt. Hierbei werden automatisierte Tools nach verwundbaren Systemen im gesamten IPv4-Raum suchen. Bei Censys oder Shodan findet man oftmals schon direkt nach bekanntwerden passende Systeme, welche in das gesuchte Profil passen, da diese Suchmaschinen dauerhaft das Internet scannen und offene Ports und oftmals Software-Banner speichern. Eine gezielte Suche nach bekannten, anfälligen Softwareversionen ist ohne viel Aufwand möglich.
- Der Exploit wird automatisiert. Manchmal ist bereits ein lauffähiger POC auf Github verfügbar. Aber selbst wenn nicht, ist zu aktueller Zeit gerade durch den Einsatz von KI die Entwicklung eines Exploits massiv beschleunigt. Quellen sprechen von 24–48 Stunden. Ich vermute hier sogar noch geringere Zeitfenster.
- Dein ungepatchtes System wird gefunden. Und das nicht, weil du DAS Ziel bist, sondern weil du sichtbar bist.
- Kompromittierung. Diese erfolgt oft vollautomatisch, ohne menschliches Zutun auf Angreiferseite. Gerade professionalisierte Angreifer haben eine umfangreiche Infrastruktur, mit der sie Angriffe orchestrieren und je nach Ziel ggf. Daten abziehen oder Ransom eintreiben.
Der Zeitraum zwischen Patch-Veröffentlichung und aktiver Ausnutzung hat sich auf wenige Stunden bis einige Tage verkürzt. Gerade KMU ohne strukturierte Prozesse sind ein gefundenes Fressen für die Angreifer.
Dein Patch-Prozess ohne Enterprise-Budget
Schritt 1: Inventarisierung
Du kannst nichts patchen, was du nicht kennst! Bevor du mit Patching anfängst, brauchst du ein aktuelles Asset-Inventar. Selbst eine Exceltabelle ist besser als nichts. Wichtige Assets sind:
- Alle Windows-Systeme (inkl. Version, Build-Nummer)
- Alle Linux-Systeme (Distro, Version, Kernel)
- Alle Netzwerkgeräte mit Firmware (Router, Switches, Firewalls)
- Server-seitige Applikationen (Apache, Nginx, Datenbankversionen)
- Third-Party-Software auf den Endgeräten (Browser, Java, PDF-Reader, VPN-Clients)
Schritt 2: Windows Update for Business als Basis
Für reine Windows-Umgebungen ist Windows Update for Business (WUfB) eine kostenlose, unterschätzte Option. Konfiguration per Gruppenrichtlinie oder Intune. Du bekommst:
- Deployment-Ringe erlauben es dir, Updates in unterschiedlichen Wellen auszurollen. Hier empfiehlt sich ein Test-Ring (Pilotgruppe), eine Gruppe mit kritischen Systemen, die schnell gepatcht werden müssen, und ein allgemeiner Ring für das breite Deployment (Broad-Deployment)
- mit Deferral-Policies definiert man das Zeitfenster, wie zügig nach Erscheinen die Patches aufgespielt werden. Hier kann man gut nach Art der Updates unterscheiden und unwichtige Updates schieben um nicht als Betatester für jedes problematische Update zu dienen. (z. B. Quality Updates +7 Tage, Feature Updates +30 Tage)
- Compliance-Reports lassen sich via Azure Monitor erzeugen, sofern Intune im Einsatz ist. Für KMU oftmals eher weniger relevant.
Schritt 3: Third-Party Patching
Windows-Updates allein reichen nicht. Browser, PDF-Reader, Java, Zoom, VPN-Clients – all das liegt außerhalb von WUfB und ist häufiger der Einfallsweg.
Windows hat seine Paketverwaltung deutlich verbessert, was das Updaten von Softwarekomponenten deutlich vereinfacht. Einfache Befehle auf der Kommandozeile reichen aus, um installierte Software zu aktualisieren, was eine Automatisierung super einfach macht.
winget (Windows Package Manager, in Windows 10/11 enthalten):
winget upgrade --all --silent --include-unknown
Als geplanter Task per Aufgabenplanung ausführen – fertig.
Chocolatey Free (über 9.000 Pakete):
choco upgrade all -y
Linux ist so super vielfältig in dieser Hinsicht. Aber grundsätzlich haben alle Paket-Manager ähnliche Funktionen und sind im einfachsten Falle auch mit einem einfachen Bash-Script bedienbar. Zeitsteuerung ist auch hier abhängig von der eingesetzten Distribution. Ein guter Anlaufpunkt, wenn man sich mit den unterschiedlichen Systemen nicht ausreichend auskennt, wäre wiki.archlinux.org.
Hier ein paar Beispiele:
Debian/Ubuntu:
# /etc/apt/apt.conf.d/50unattended-upgrades
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
};
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "03:00";
RHEL/Rocky/Alma:
dnf install dnf-automatic
# /etc/dnf/automatic.conf
apply_updates = yes
systemctl enable --now dnf-automatic.timer
Schritt 4: Kritische Patches zuerst
Nicht jeder Patch ist gleich wichtig. Die richtige Priorisierung ist wichtig, um sich nicht nur noch mit Patchen beschäftigen zu müssen.
| Priorität | Kriterium | Ziel-SLA |
|---|---|---|
| Kritisch | CISA KEV oder CVSS ≥ 9.0 mit aktiver Ausnutzung | 24–48 h |
| Hoch | CVSS 7.0–8.9, bekannter Exploit | 7 Tage |
| Mittel | CVSS 4.0–6.9, kein öffentlicher Exploit | 30 Tage |
| Niedrig | CVSS < 4.0 | nächstes Wartungsfenster |
Die Known Exploited Vulnerabilities Liste (KEV) von CISA (https://www.cisa.gov/known-exploited-vulnerabilities-catalog) enthält ausschließlich CVEs mit bestätigter aktiver Ausnutzung. Alles dort sollte deine Priorität 1 sein, unabhängig vom Score. Automatisiert kann man sich den Katalog als JSON herunterladen und regelmäßig mit der eingesetzten Software vergleichen. Die Tabelle vom Anfang ist hierbei super hilfreich. Wird die Schwachstelle aktiv ausgenutzt, ist es nur noch eine Frage der Zeit bis du in den Fokus kommst.
curl -s https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json \
| jq '.vulnerabilities[].cveID'
Zusätzlich zu den CVSS-Scores sind die betroffenen Systeme nach Kritikalität zu beurteilen. Ist ein System stark exponiert oder ist es für kritische Business-Prozesse essentiell, muss man entscheiden, wie schnell man auch bei weniger kritischen Lücken patcht.
Schritt 5: Patch-Fenster definieren
Spontane Reboots mitten am Arbeitstag kosten dich Vertrauen bei den Nutzern. Klar definierte Prozesse, die bestenfalls dem Nutzerkreis bekannt sind, schaffen Akzeptanz und Handlungssicherheit.
- definierte Wartungsfenster, welche sich z. B. am Patch Tuesday orientieren (+ 7 Tage Buffer), bieten sich für Patches an.
- Kommunikation mit den betroffenen Nutzern schafft Awareness und fördert das Verantwortungsdenken bei den Mitarbeitern
- klar definierte Notfall-Prozesse, die bei kritischen Lücken greifen, sollten allen Nutzern bekannt sein und möglichst minimalinvasiv angelegt sein. Bei Patchzeiträumen von 48 Stunden kann man immer noch in der Nebenarbeitszeit patchen.
Schritt 6: Compliance messen
Was du nicht misst, existiert nicht. Hierfür existieren diverse Tools, auf die ich in zukünftigen Posts nach und nach eingehen werde.
- Microsoft Intune zeigt Patch-Status aller verwalteten Geräte
- Wazuh (Open Source) deckt via SCA-Checks und dem Vulnerability-Modul Patch-Lücken auf
- OpenVAS / Greenbone Community Edition liefert regelmäßige Schwachstellen-Reports
Reporting-Faustregel: Anteil der Systeme mit kritischen offenen CVEs unter 5 %, idealerweise 0 %.
Praxis-Checkliste
- Asset-Inventar erstellt – alle Systeme und Softwareversionen bekannt
- Windows Update for Business oder WSUS konfiguriert und aktiv
- Third-Party Patching via winget oder Chocolatey automatisiert
- Linux mit
unattended-upgradesoderdnf-automaticversorgt - CISA KEV im Patch-Workflow verankert
- SLAs nach Patch-Kategorie definiert (Kritisch / Hoch / Mittel / Niedrig)
- Maintenance-Window dokumentiert und kommuniziert
- Notfall-Prozess für kritische 0-Days schriftlich
- Monatliches Reporting: offene Patches, Compliance-Status
- Netzwerkgeräte (Router, Firewall, Switches) im Patch-Prozess enthalten
Fazit
Patch-Management ist keine Rocket Science – es ist Konsequenz. Mit Windows Update for Business, winget und unattended-upgrades hast du die nötigen Tools kostenlos. Was fehlt, ist die Struktur darum herum: Inventar, Priorisierung, Fenster, Reporting. Bau diese Struktur einmal sauber auf und du eliminierst den größten Teil deiner Angriffsfläche.
Wenn du tiefer einsteigen willst: Im Newsletter schauen wir uns jeden Monat einen konkreten Security-Prozess an – von Patch-Management bis Detection. Trag dich ein und bekomm praxisnahe Inhalte direkt ins Postfach.