Für die TYPO3-Sicherheit sind zwei Beteiligte zuständig. Das TYPO3 Security Team bearbeitet gemeldete Schwachstellen im Core, koordiniert die Korrekturen und veröffentlicht Sicherheitshinweise. Sie entscheiden, wie schnell diese Korrekturen Ihre Website erreichen, wer sich anmelden darf, wie der Server eingerichtet ist und welche Extensions laufen. Diese Checkliste zum Härten von TYPO3 stammt vom T3Planet-Team bei NITSAN, Gold Member der TYPO3 Association. Sie deckt Ihren Teil in 30 Punkten ab, für TYPO3 v13 und v14.
TYPO3 Sicherheit umfasst alle Maßnahmen, die eine TYPO3-Installation, ihre Daten und ihre Benutzer schützen: aktuelle Software, kontrollierter Backend-Zugang, eine gehärtete Konfiguration, ein abgesicherter Webserver, vertrauenswürdige Extensions, Überwachung und ein Plan für den Ernstfall. Der Core bringt starke Voreinstellungen mit, etwa Passwort-Hashing, CSRF-Schutz, Multi-Faktor-Authentifizierung und eine API für Content Security Policy. Vorfälle können trotzdem dort beginnen, wo der Core nichts ausrichten kann: bei einer veralteten Extension, einem geteilten Admin-Passwort oder einem offenen Install Tool. Genau diese Stellen gehen wir unten gemeinsam durch.
| Punkt | Warum er zählt | Wo in TYPO3 |
| 2. Core-Sicherheitsupdates einspielen | Angreifer nutzen gezielt Lücken, für die es längst eine Korrektur gibt | Composer |
| 10. Zwei-Faktor-Anmeldung für Admins verlangen | ein gestohlenes Passwort allein öffnet das Backend nicht mehr | Benutzereinstellungen, BE.requireMfa |
| 17. Install Tool sperren | es kann jede Einstellung der Installation ändern | Datei ENABLE_INSTALL_TOOL |
| 6. Ungenutzte Extensions entfernen | inaktiver Code kann trotzdem erreichbar sein | Extensions-Modul, composer remove |
| 29. Statusbericht prüfen | TYPO3 listet dort seine eigenen Sicherheitswarnungen | Modul Berichte |
Bei Wartungsverträgen, die die zertifizierten Integratoren von NITSAN für Sie übernehmen, schließen wir zuerst zwei Lücken: das Install Tool und ungenutzte Extensions.
Updates stehen an erster Stelle, denn Angreifer nutzen gezielt Lücken, für die es längst eine Korrektur gibt.
1. Sicherheitshinweise abonnieren
Das TYPO3 Security Team veröffentlicht jede Korrektur als Sicherheitshinweis. Core-Sicherheitsreleases werden vorab auf der Mailingliste typo3-announce angekündigt, damit Sie das Update planen können, bevor Details öffentlich sind. Abonnieren Sie die Liste oder den RSS-Feed der Hinweise.
2. Core-Sicherheitsreleases noch am selben Tag einspielen
Spielen Sie ein Core-Sicherheitsrelease noch am Tag der Veröffentlichung ein. Im Composer-Modus ist ein Patch-Update von Core und System-Extensions ein Befehl plus eine Datenbankprüfung:
composer update "typo3/*" --with-dependencies
vendor/bin/typo3 extension:setup Führen Sie es zuerst auf einer Staging-Kopie aus, dann in der Produktion. Den vollständigen Ablauf beschreibt unser Beitrag zum Installieren und Aktualisieren von TYPO3 mit Composer.
3. Jede Extension aktuell halten
Extensions von Drittanbietern aktualisieren Sie mit composer update vendor/package oder alle zusammen mit composer update innerhalb Ihrer Versionsvorgaben. Sicherheitshinweise gibt es auch für Extensions im TYPO3 Extension Repository; ein Hinweis zu einer Extension hat dieselbe Priorität wie ein Core-Release. Für T3Planet-Extensions zeigt System > T3Planet Shop die verfügbaren Updates.
4. composer audit bei jedem Deployment ausführen
Seit Composer 2.4 prüft composer audit Ihre installierten Pakete gegen veröffentlichte Sicherheitshinweise, auch für den TYPO3 Core und viele Extensions. Findet der Befehl einen Hinweis, endet er mit einem Fehler. So stoppt in Ihrem Build oder Deployment ein Release mit bekannter Schwachstelle, bevor es die Produktion erreicht.
composer audit 5. Eine unterstützte TYPO3-Version betreiben
Nur unterstützte Versionen erhalten Sicherheitskorrekturen. Die aktuellen Daten laut TYPO3-Ankündigung:
| Version | Sicherheitsupdates |
| TYPO3 v14 LTS | bis 30. Juni 2029 |
| TYPO3 v13 LTS | bis 31. Dezember 2027 |
| TYPO3 v12 LTS | kostenloser Support endete am 30. April 2026; kostenpflichtiger Extended Long Term Support ist verfügbar |
Ältere TYPO3-Versionen erhalten keine kostenlosen Sicherheitsupdates mehr. Wenn Sie eine davon betreiben, planen Sie das Upgrade jetzt. TYPO3 Update oder Upgrade erklärt den Unterschied, und unser Leitfaden zu TYPO3 v14 behandelt das aktuelle Release.
6. Entfernen, was Sie nicht nutzen
Eine Extension, die Sie nicht mehr verwenden, bringt trotzdem Code mit und manchmal erreichbare Dateien. Deinstallieren Sie sie und entfernen Sie sie mit composer remove vendor/package.
Sie möchten Updates nicht selbst einspielen? Website Builder ist das Managed TYPO3 Hosting von T3Planet: Es betreibt TYPO3 für Sie, mit automatischen TYPO3-Updates und täglichen Backups.
Im Backend gewinnt ein Angreifer am meisten. Legen Sie hier deshalb gemeinsam mit Ihrem Team die strengsten Regeln fest.
7. Jeder Person ein eigenes Konto geben
Kein geteilter Benutzer „admin“. Verwenden Sie persönliche Namen, damit das Protokoll zeigt, wer was getan hat. Löschen Sie ein Konto am Tag, an dem sein Inhaber geht.
8. Jeder Rolle nur die nötigen Rechte geben
Redakteure brauchen selten Admin-Rechte. Legen Sie Backend-Benutzergruppen pro Rolle an, geben Sie nur die Tabellen, Seitenbäume und Dateifreigaben frei, mit denen die Rolle arbeitet, und halten Sie die Zahl der Admins und System Maintainer klein.
9. Backend-Benutzer jedes Quartal prüfen
Öffnen Sie einmal im Quartal das Modul Benutzer (in v13: Backend-Benutzer). Es zeigt, wann sich jedes Konto zuletzt angemeldet hat. Deaktivieren Sie Konten, die seit Monaten niemand nutzt, und prüfen Sie, wer Admin oder System Maintainer ist. Gleichen Sie dann die Rechte jeder Gruppe mit dem ab, was die Rolle heute braucht.
10. Multi-Faktor-Authentifizierung verlangen
TYPO3 hat die Multi-Faktor-Authentifizierung (MFA) seit v11.1 im Core, mit Authenticator-Apps (TOTP) und Wiederherstellungscodes. Mit einer Einstellung machen Sie sie zur Pflicht:
// config/system/additional.php
// 3 = MFA für Admin-Benutzer verlangen; 1 = für alle Benutzer
$GLOBALS['TYPO3_CONF_VARS']['BE']['requireMfa'] = 3; 11. Eine Passwortrichtlinie durchsetzen
Seit v12 prüft TYPO3 neue Backend-Passwörter gegen eine Richtlinie (BE.passwordPolicy, standardmäßig Regeln zu Länge und Zeichen). Lassen Sie sie aktiv und verwenden Sie das Install-Tool-Passwort nie für eine Backend-Anmeldung.
12. Anmeldeversuche begrenzen
Die Begrenzung der Anmeldeversuche (BE.loginRateLimit mit BE.loginRateLimitInterval) blockiert wiederholtes Raten von Passwörtern. Lassen Sie sie eingeschaltet.
13. Bei jeder Admin-Anmeldung eine E-Mail erhalten
Mit BE.warning_email_addr und BE.warning_mode = 2 schickt TYPO3 Ihnen bei jeder Admin-Anmeldung eine E-Mail. So fällt ein gestohlenes Konto schnell auf.
14. HTTPS für das Backend erzwingen
Setzen Sie BE.lockSSL = true, damit das Backend nie über unverschlüsseltes HTTP antwortet. Der Statusbericht markiert die Einstellung als unsicher, bis Sie das tun.
15. Den Zugang zum Backend eingrenzen
Wenn Ihre Redaktion aus festen Netzen arbeitet, beschränkt BE.IPmaskList die Backend-Anmeldung auf diese IP-Bereiche. Wie Sie das Backend von /typo3 wegverlegen, zeigt unser Beitrag zum Ändern des Backend-Einstiegspunkts in TYPO3 v13.
16. Ihre Redaktion schulen
Auch Redakteure melden sich im Backend an, deshalb zählen ihre Gewohnheiten so viel wie die eines Admins. Die Grundregeln: nach der Arbeit abmelden, Zugänge nie teilen, nur über HTTPS arbeiten und eine E-Mail, die nach Backend-Zugangsdaten fragt, melden statt auf ihren Link zu klicken.
Seit TYPO3 v12 liegt die Systemkonfiguration einer Composer-Installation in config/system/settings.php, Ihre eigenen Ergänzungen in config/system/additional.php. Ältere Anleitungen, die auf typo3conf/LocalConfiguration.php verweisen, beschreiben Versionen ohne kostenlose Updates.
17. Das Install Tool sperren
Es öffnet sich nur, solange eine Datei namens ENABLE_INSTALL_TOOL existiert, in einer Composer-Installation in var/transient/. TYPO3 löscht sie für Sie, wenn Sie sich aus dem Install Tool abmelden oder wenn sie älter als eine Stunde ist. Löschen Sie sie selbst, sobald Sie fertig sind, und geben Sie dem Install Tool ein eigenes, starkes Passwort.
18. Die Produktion im Kontext Production betreiben
Setzen Sie TYPO3_CONTEXT=Production auf dem Webserver. Zusammen mit SYS.displayErrors = 0 sehen Besucher nie Stacktraces, Pfade oder Datenbankdetails.
19. Geheimnisse unter Verschluss halten
SYS.encryptionKey signiert Formulare, Links und Sitzungen. Erzeugen Sie einen neuen Schlüssel, wenn er nach außen gelangt sein könnte. Halten Sie Datenbankpasswörter und API-Schlüssel aus der Versionsverwaltung heraus, etwa über Umgebungsvariablen statt einer eingecheckten settings.php.
20. Hostnamen beschränken
Setzen Sie SYS.trustedHostsPattern auf Ihre echten Domains, damit TYPO3 Anfragen mit gefälschtem Host-Header ablehnt.
21. Die sicheren Voreinstellungen beibehalten
TYPO3 liefert mehrere Schutzfunktionen eingeschaltet aus. Bei der Fehlersuche ist eine davon schnell abgeschwächt und danach leicht vergessen. Lassen Sie BE.cookieSameSite und FE.cookieSameSite auf strict oder lax, damit Sitzungscookies nicht mit Formularen oder eingebetteten Anfragen fremder Websites mitgeschickt werden. Behalten Sie BE.fileDenyPattern bei. Es hindert Redakteure am Hochladen ausführbarer Dateien wie PHP. Erweitern Sie es bei Bedarf, aber leeren Sie es nie.
// config/system/additional.php, ein Beispiel für die Produktion
$GLOBALS['TYPO3_CONF_VARS']['SYS']['displayErrors'] = 0;
$GLOBALS['TYPO3_CONF_VARS']['SYS']['trustedHostsPattern'] = '(www\\.)?example\\.org';
$GLOBALS['TYPO3_CONF_VARS']['BE']['lockSSL'] = true;
$GLOBALS['TYPO3_CONF_VARS']['BE']['warning_email_addr'] = 'webmaster@example.org';
$GLOBALS['TYPO3_CONF_VARS']['BE']['warning_mode'] = 2; 22. Nur den Ordner public ausliefern
In einer Composer-Installation ist public/ das Document Root des Webservers. Konfiguration, vendor/, var/ und Ihr Code liegen eine Ebene darüber und sind aus dem Web nicht abrufbar. Zeigt Ihr Document Root noch auf das Projektverzeichnis, ändern Sie das zuerst, gemeinsam mit Ihrem Hoster, falls er den Server verwaltet. Schalten Sie dann die Verzeichnisauflistung ab (zum Beispiel mit Options -Indexes unter Apache), damit niemand Ordner ohne Indexdatei durchsuchen kann.
23. Dateirechte eng setzen
Der Benutzer des Webservers braucht Schreibrechte nur für public/fileadmin/, public/typo3temp/ und var/. Alles andere kann für ihn schreibgeschützt sein; config/system/settings.php ändert sich dann nur über Ihr Deployment, nicht über das Install Tool. Dasselbe gilt für die Site-Konfiguration in config/sites/ und für Extension-Einstellungen.
24. HTTPS überall verwenden und Sicherheits-Header senden
Leiten Sie jede Anfrage auf HTTPS um und senden Sie einen HSTS-Header, damit Browser nie auf unverschlüsseltes HTTP zurückfallen. Senden Sie dann mindestens X-Content-Type-Options: nosniff, eine Referrer-Policy und eine Frame-Richtlinie gegen Clickjacking.
25. Eine Content Security Policy einführen und ihre Meldungen lesen
TYPO3 hat seit v12.3 eine API für Content Security Policy in Frontend und Backend. Starten Sie die Richtlinie im Frontend im Modus report-only. Öffnen Sie dann das Backend-Modul Content Security Policy (in v13 unter Admin Tools, in v14 unter System). Es listet die Verstöße, die Browser gemeldet haben. Geben Sie dort legitime Quellen frei und setzen Sie die Richtlinie erst dann durch. Dateien in fileadmin/ liefert nicht TYPO3 aus. Dieser Ordner braucht deshalb einen eigenen CSP-Header im Webserver, wie die TYPO3-Sicherheitsrichtlinien beschreiben.
26. Alles rund um TYPO3 abriegeln
Schalten Sie display_errors und expose_php ab und halten Sie PHP auf einer unterstützten Version. Geben Sie TYPO3 einen eigenen Datenbankbenutzer, der nur seine eigene Datenbank erreicht, halten Sie den Datenbankserver aus dem öffentlichen Netz heraus und entfernen Sie webbasierte Datenbankwerkzeuge aus der Produktion. Ersetzen Sie FTP durch SFTP oder SSH. Noch besser: Deployen Sie mit Git oder einem Deployment-Werkzeug, damit niemand Dateien von Hand ins Document Root lädt.
27. Extensions so sorgfältig auswählen wie jede Abhängigkeit
Bevorzugen Sie Extensions mit aktuellen Releases, Unterstützung für Ihre TYPO3-Version und einem öffentlichen Issue-Tracker, und prüfen Sie vor der Installation die Sicherheitshinweise. Installieren Sie aus offiziellen Quellen, checken Sie composer.lock ein und lassen Sie vor jedem Major-Upgrade den Extension Scanner im Modul Upgrade laufen (Admin Tools in v13, System in v14). Er markiert veraltete API-Aufrufe für Sie.
28. Ausgaben maskieren und rohes HTML von Redakteuren fernhalten
Fluid maskiert Variablen standardmäßig; behalten Sie das bei und vermeiden Sie f:format.raw bei allem, was Benutzer beeinflussen können. Geben Sie in TypoScript nie Request-Parameter ungeprüft in Abfragen oder HTML weiter. Beschränken Sie das Inhaltselement „HTML“ auf Admins, denn es gibt aus, was hineingetippt wird. Frontend-Anmeldungen brauchen dieselbe Sorgfalt wie das Backend: siehe unseren Leitfaden zum TYPO3 Frontend-Login.
29. Statusbericht und Protokolle lesen
Der Statusbericht (System > Berichte in v13, Verwaltung > Berichte in v14) listet die eigenen Sicherheitsprüfungen von TYPO3, etwa ein offenes Install Tool oder unsichere Einstellungen. Der Scheduler verschickt den Bericht auf Wunsch automatisch für Sie per E-Mail. Das Modul Protokoll hält Anmeldungen und Änderungen fest; die Protokolle von Webserver und PHP zeigen fehlgeschlagene Anfragen. Achten Sie auf Anmeldungen zu ungewöhnlichen Zeiten und wiederholte Fehler auf derselben URL.
30. Sichern und die Wiederherstellung testen
Sichern Sie Datenbank und fileadmin/ täglich, legen Sie eine Kopie außerhalb des Servers ab und spielen Sie hin und wieder eine Sicherung auf Staging zurück. Ein Backup, das Sie nie zurückgespielt haben, ist eine Hoffnung, kein Backup. Einen Überblick gibt unser Beitrag zu TYPO3-Backup-Extensions.
Wenn Sie einen Einbruch vermuten, gehen Sie gemeinsam mit Ihrem Hoster und allen, die die Website betreuen, in dieser Reihenfolge vor:
- Isolieren: Nehmen Sie die Website vom Netz oder in den Wartungsmodus und sichern Sie den aktuellen Zustand für die Analyse.
- Untersuchen: Finden Sie anhand der Protokolle heraus, wie der Angreifer eingedrungen ist, bevor Sie wiederherstellen. Sonst bleibt dieselbe Lücke offen.
- Wiederherstellen: Spielen Sie ein sauberes Backup von vor dem Vorfall zurück und aktualisieren Sie dann Core und alle Extensions.
- Erneuern: Ändern Sie jedes Geheimnis: Backend- und Install-Tool-Passwörter, Datenbank-Zugangsdaten, den Encryption Key und alle API-Schlüssel.
- Melden: Melden Sie eine neue Schwachstelle im TYPO3 Core oder in einer öffentlichen Extension dem TYPO3 Security Team unter security@typo3.org, und informieren Sie Betroffene, wie es Ihre rechtlichen Pflichten verlangen.
T3Planet wird von NITSAN entwickelt, Gold Member der TYPO3 Association und Gewinner des TYPO3 Award 2018, mit zertifizierten TYPO3-Integratoren und -Entwicklern. Wenn jemand Ihre Installation aktuell halten soll, übernimmt das Team von NITSAN für Sie TYPO3-Updates, Upgrades und Wartung im Rahmen eines Supportvertrags.
Häufige Fragen zur TYPO3 Sicherheit
TYPO3 hat ein eigenes Security Team, einen veröffentlichten Ablauf für Sicherheitshinweise und Sicherheitsfunktionen im Core wie Multi-Faktor-Authentifizierung, Passwortrichtlinien und eine API für Content Security Policy. Wie sicher Ihre Website ist, hängt von Updates, Konfiguration und Extensions ab, und genau die gehen wir in dieser Checkliste gemeinsam durch.
Sicherheitskorrekturen für den Core erscheinen in koordinierten Wartungsreleases, deren Termin das TYPO3 Security Team vorab auf der Mailingliste typo3-announce ankündigt. Korrekturen für Extensions erscheinen als Sicherheitshinweis, sobald sie fertig sind. Einen festen Monatstermin gibt es nicht; abonnieren Sie deshalb die Hinweise.
Ja. Die Multi-Faktor-Authentifizierung gehört seit v11.1 zum TYPO3 Core, mit Authenticator-Apps (TOTP) und Wiederherstellungscodes. Mit BE.requireMfa machen Sie sie für alle Benutzer oder nur für Admins zur Pflicht.
TYPO3 v14 LTS bis 30. Juni 2029 und v13 LTS bis 31. Dezember 2027. Der kostenlose Support für v12 LTS endete am 30. April 2026; danach gibt es Korrekturen nur noch über den kostenpflichtigen Extended Long Term Support.
Es nimmt Meldungen zu Schwachstellen entgegen, koordiniert Korrekturen für den Core und für Extensions im TYPO3 Extension Repository und veröffentlicht Sicherheitshinweise. Sie erreichen es unter security@typo3.org.
Markus Neumann
Template Support ManagerMarkus lebt und liebt TYPO3-Templates. Mit seiner strukturierten Denkweise und seinem Blick fürs Detail hat er bereits hunderten Kunden dabei geholfen, über den T3Planet Shop schnellere und sauberere TYPO3-Websites zu erstellen. Wenn es ein Problem mit einem Template gibt, hat Markus es wahrscheinlich schon einmal gelöst. Bei T3Planet ist er Manager für Template-Support.
More From Author