Projekt

Allgemein

Profil

Aktionen

Bug #256

offen

[Bugsink] ErrorException: Warning: file_get_contents(https://verl.ratsinfomanagement.net/webservice/portal/getSearch?type=%28select%280%29from%28select%28sleep…

Von Bug Sink vor etwa 1 Monat hinzugefügt.

Status:
Neu
Priorität:
wichtig
Zugewiesen an:
-
Beginn:
20.09.2026
Abgabedatum:
% erledigt:

0%

Geschätzter Aufwand:

Beschreibung

Bugsink: https://bugsink.cytrus.de/issues/issue/b9aee83c-d1f6-473a-8267-062ebf448bc6/event/last/

Typ: NEW issue

Projekt: www-verl-de

Bugsink Alert

ErrorException: Warning: file_get_contents(https://verl.ratsinfomanagement.net/webservice/portal/getSearch?type=%28select%280%29from%28select%28sleep…


Automatisch erstellt durch n8n

KI-Analyse:

Kurz: Das ist kein TYPO3-Core-Fehler, sondern ein fehlgeschlagener externer Webservice-Aufruf einer TYPO3-Extension.

1. Ursache identifizieren

  • Die Extension ruft per file_get_contents() auf:
    https://verl.ratsinfomanagement.net/webservice/portal/getSearch
  • Im Parameter type steckt ein URL-encoded SQL-Injection-/Sleep-Payload:
    select(... sleep(15) ...)
  • Der externe Webservice antwortet darauf mit HTTP 500 Internal Server Error.
  • TYPO3 wandelt das daraus entstehende PHP-Warning in eine ErrorException um.
  • Die Stack-Frames zeigen nur die TYPO3-Request-Pipeline, nicht die eigentliche Fehlerquelle.

2. Fix beschreiben (konkret)

  1. Extension-Konfiguration prüfen

    • type auf einen erlaubten, sauberen Wert setzen
    • den SQLi-Payload entfernen
  2. maxOccurs=-1 korrigieren

    • entweder auf einen gültigen positiven Wert setzen
    • oder den Parameter weglassen
  3. Extension aktualisieren

    • auf eine Version, die Eingaben validiert und HTTP-Fehler sauber behandelt
  4. Falls type/terms userkontrolliert sind:

    • Whitelist/Validierung einbauen
    • keine rohen Userinputs an den Webservice weitergeben
  5. Fehlerbehandlung verbessern

    • Timeout setzen
    • Fehler loggen
    • keine rohen Warnings in die Oberfläche werfen
  6. Logs/WAF prüfen

    • falls der Payload von außen kam: Angriff versuchen blocken

3. Betroffene TYPO3 Extension

  • Sehr wahrscheinlich: tx_ratsinforelay (Ratsinfo Relay)
  • Alternative, falls nur der Basis-Client installiert ist: tx_ratsinfo

4. Confidence

  • 85%

Wenn du möchtest, kann ich dir auch sagen, wie du die Extension im Projekt sicher identifizierst — z. B. über composer.json, ext_emconf.php oder die Extension-Liste.

Nichts anzuzeigen

Aktionen

Auch abrufbar als: Atom PDF