Cybersicherheit · PHP & Laravel

Das Praktische Laravel Sicherheit Checkliste

Von · Letzte Aktualisierung: · Kostenlose Lektüre, keine Paywall

Die meisten Laravel-Apps werden nicht von cleveren Zero-Days gehackt. Sie werden durch offengelegte .env-Dateien, aktivierten Debug-Modus, ungepatchtes PHP und schwaches SSH gehackt. Diese Checkliste deckt zunächst die langweiligen, wirkungsvollen Arbeiten ab – Server, Anwendung, Abhängigkeiten, Geheimnisse und Reaktion – und bietet eine Möglichkeit, jeden Schritt zu automatisieren.

In diesem Ratgeber
  1. Was tatsächlich dazu führt, dass Laravel Apps gehackt werden
  2. Checkliste zur Serverhärtung
  3. Checkliste zur Anwendungshärtung
  4. Abhängigkeiten und Lieferkette
  5. Geheimnisse & Datenschutz
  6. Erkennung, Überwachung und Reaktion
  7. FAQ

Was tatsächlich dazu führt, dass Laravel Apps gehackt werden

Geordnet danach, wie oft sie bei realen Vorfällen auftauchen, nicht danach, wie interessant sie sind:

  1. Offengelegte Debug-Ausgabe. APP_DEBUG=true in Produktionsleckumgebungen Variablen, Datenbankanmeldeinformationen und Dateipfade an jeden weitergeben, der einen Fehler auslöst.
  2. Lesbar .env oder .git/. Ein falsch konfiguriertes Dokument verursacht dies Serve Dotfiles übergibt Ihren APP_KEY und Ihre Anmeldeinformationen.
  3. Ungepatchtes PHP, Framework oder Pakete mit bekannten CVEs.
  4. Schwaches SSH: Passwortauthentifizierung, Root-Login aktiviert, kein Brute-Force-Schutz.
  5. Unsichere Datei-Uploads die ausführbare Inhalte in über das Internet bereitgestellte Pfade ermöglichen.
  6. Einspritzung in die Notluken: Roh-SQL ohne Bindungen, ohne Escapezeichen {!! !!} Klingenausgang.
  7. Admin-Panels ohne MFA und ohne Ratenbegrenzung.

Langweilig schlägt clever: Wenn Sie diese sieben Türen schließen, sind Sie der überwiegenden Mehrheit der Produktion voraus PHP Bereitstellungen.

Checkliste zur Serverhärtung

Checkliste zur Anwendungshärtung

Abhängigkeiten und Lieferkette

Ihre App besteht größtenteils aus dem Code anderer Personen. Behandeln Sie die Abhängigkeitshygiene daher als erstklassige Sicherheitskontrolle:

Geheimnisse & Datenschutz

Erkennung, Überwachung und Reaktion

Setzen Sie dies mit Cipi in die Praxis um

Cipi ist die kostenlose open-source Bereitstellung CLI, auf die in diesem Handbuch verwiesen wird: Ein Befehl verwandelt einen neuen Ubuntu VPS in einen gehärteten Produktionsserver für Laravel – Nginx, PHP-FPM oder Octane, MariaDB oder PostgreSQL, Warteschlangen, Scheduler, SSL und Git-Bereitstellungen ohne Ausfallzeiten enthalten.

wget -O - https://cipi.sh/setup.sh | bash

Häufig gestellte Fragen

Ist Laravel standardmäßig sicher?

Das Framework bietet starke Standardeinstellungen: CSRF-Schutz, gehashte Passwörter, SQL-Injection-Schutz durch den Abfrage-Builder und maskierte Blade-Ausgabe. Die meisten Vorfälle in der realen Welt sind auf Bereitstellungsfehler zurückzuführen – aktivierter Debug-Modus, offengelegte .env-Dateien, ungepatchtes PHP, schwaches SSH – weshalb die Serverhärtung genauso wichtig ist wie Anwendungscode.

Was ist die wichtigste Laravel-Sicherheitseinstellung?

APP_DEBUG=false in der Produktion. Eine offengelegte Debug-Seite gibt Umgebungsvariablen, Anmeldeinformationen und Pfade preis und ist immer noch der häufigste selbstverschuldete Laravel-Verstoß. Überprüfen Sie es jetzt und automatisieren Sie dann die Prüfung in Ihrer Bereitstellungspipeline.

Wie oft sollte ich PHP und meine Abhängigkeiten aktualisieren?

Wenden Sie Sicherheitspatches so schnell wie möglich an – automatisieren Sie die Erkennung mit composer Audit in CI und Renovate oder Dependabot für Update-PRs. Verwenden Sie für PHP selbst einen verwalteten Mechanismus anstelle von Speicher: Cipi prüft beispielsweise wöchentlich und wendet PHP Sicherheitspatches über cipi php Upgrade an.

Benötige ich eine WAF für eine Laravel-App?

Eine WAF ist eine nützliche zusätzliche Ebene und kein Ersatz für die Grundlagen. Schließen Sie zunächst die Grundlagen ab: TLS, gepatchte Software, gehärtetes SSH, validierte Eingabe, Ratenbegrenzung. Danach sorgt eine WAF auf CDN-Ebene für einen umfassenden Schutz vor automatisierten Angriffen.

Was soll ich zuerst tun, wenn ich den Verdacht habe, dass ein Server kompromittiert ist?

Isolieren Sie die Maschine vom Datenverkehr, rotieren Sie alle darin enthaltenen Geheimnisse (Datenbankkennwörter, API-Tokens, APP_KEY), stellen Sie die Anwendung aus einem nachweislich funktionierenden Backup auf einem sauberen Server wieder her und untersuchen Sie erst dann den Einstiegspunkt. Den infizierten Live-Host zu patchen und zu hoffen, ist die Möglichkeit für Angreifer, Fuß zu fassen.

Lesen Sie weiter