Projekt

Allgemein

Profil

Aktionen

Bug #211

offen

[Bugsink] ErrorException: Warning: filesize(): stat failed for /srv/www/www.verl.de/pages/public/uploads/tx_powermail/10_xor_1_if_now___sysdate___sleep_15__0__…

Von Bug Sink vor etwa 1 Monat hinzugefügt.

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

0%

Geschätzter Aufwand:

Beschreibung

Bugsink: https://bugsink.cytrus.de/issues/issue/a4dd628f-b3d4-46ea-9b16-b0e133b0bfec/event/last/

Typ: NEW issue

Projekt: www-verl-de

Bugsink Alert

ErrorException: Warning: filesize(): stat failed for /srv/www/www.verl.de/pages/public/uploads/tx_powermail/10_xor_1_if_now___sysdate___sleep_15__0__…


Automatisch erstellt durch n8n

KI-Analyse:

1. Ursache identifiziert

Der Fehler ist kein TYPO3-Core-Problem. Der Core taucht nur im Stack auf, weil TYPO3 den PHP-Warning in eine ErrorException umgewandelt hat.

Konkreter Root Cause:

filesize(): stat failed for /srv/www/www.verl.de/pages/public/uploads/tx_powermail/10_xor_1_if_now___sysdate___sleep_15__0__xor_z

Bedeutet:

  • PHP versucht, die Größe einer Datei zu lesen.
  • Die Datei existiert nicht oder ist für den Webserver-Prozess nicht lesbar.
  • Der Pfad liegt unter:
public/uploads/tx_powermail/

Das ist der typische Upload-Ordner der Extension:

friendsoftypos3/powermail

Der Dateiname:

10_xor_1_if_now___sysdate___sleep_15__0__xor_z

sieht nicht nach einem normalen Upload aus, sondern nach einem bereinigten SQL-Injection-/Probe-Payload, z. B. abgeleitet von:

10 xor 1 if(now() = sysdate(), sleep(15), 0) xor z

Sehr wahrscheinlich wurde ein Powermail-Formular von einem Bot angesprochen und ein manipulierter Upload-Parameter bzw. Dateiname übermittelt. Powermail oder ein zugehöriger Finisher versucht anschließend, diese Datei als Upload/Attachment zu verarbeiten, obwohl sie nicht physisch existiert.


2. Fix konkret

Sofort prüfen

Auf dem Server prüfen:

ls -l /srv/www/www.verl.de/pages/public/uploads/tx_powermail/10_xor_1_if_now___sysdate___sleep_15__0__xor_z

sowie Rechte:

sudo -u www-data test -r /srv/www/www.verl.de/pages/public/uploads/tx_powermail/10_xor_1_if_now___sysdate___sleep_15__0__xor_z
echo $?

Wenn die Datei nicht existiert: Es gibt eine dangling Reference, also einen Powermail-Datensatz/Finisher-Lauf, der auf eine nicht vorhandene Upload-Datei zeigt.


Powermail aktualisieren

Prüfen, welche Version installiert ist:

composer show friendsoftypos3/powermail

Dann auf die aktuelle kompatible Version aktualisieren:

composer update friendsoftypos3/powermail
./vendor/bin/typo3 cache:flush

Ältere Powermail-Versionen hatten in verschiedenen Konstellationen Schwächen beim Umgang mit fehlenden oder manipulierten Upload-Dateien.


Datenbank nach referenziertem Dateinamen durchsuchen

Powermail speichert Antworten typischerweise in Tabellen wie:

tx_powermail_domain_model_mail
tx_powermail_domain_model_answer

Prüfen:

SELECT *
FROM tx_powermail_domain_model_answer
WHERE value LIKE '%10_xor_1_if_now___sysdate___sleep_15__0__xor_z%'
   OR value2 LIKE '%10_xor_1_if_now___sysdate___sleep_15__0__xor_z%';

Falls vorhanden:

  • Spam-/Test-Datensatz löschen oder markieren.
  • Keine echten Mail-Datensätze löschen, ohne Fachbereich/Redaktion abzustimmen.

Falls eigener Finisher / Custom Code beteiligt ist

Jede Stelle, die filesize() auf Uploads ausführt, muss vorher prüfen:

if (is_file($filePath) && is_readable($filePath)) {
    $size = filesize($filePath);
} else {
    // Datei fehlt oder ist nicht lesbar
    // Attachment überspringen, sauber loggen, aber keinen Warning erzeugen
}

Nicht einfach @filesize() verwenden. Das unterdrückt nur das Symptom.


Formular absichern

Im betroffenen Powermail-Formular prüfen:

  • Upload-Felder nur aktivieren, wenn wirklich benötigt.
  • allowedExtensions restriktiv setzen, z. B.:
pdf,jpg,jpeg,png,doc,docx,xls,xlsx
  • maxFileSize begrenzen.
  • Pflichtupload nur, wenn fachlich notwendig.
  • Honeypot/Captcha aktivieren.
  • Spam-Schutz/Rate-Limiting/WAF gegen Bot-Anfragen einsetzen.

3. Betroffene TYPO3 Extension

Höchstwahrscheinlich:

friendsoftypos3/powermail

Kurzname:

powermail

Der TYPO3 Core ist hier nicht die betroffene Extension, sondern nur Teil des HTTP-Request-Stacks.


4. Confidence

95%

Begründung: Der Pfad uploads/tx_powermail/ ist eindeutig Powermail-spezifisch. Der eigentliche Fehler ist eine fehlende/nicht lesbare Upload-Datei, die von Powermail oder einem Powermail-Finisher verarbeitet wird.

Nichts anzuzeigen

Aktionen

Auch abrufbar als: Atom PDF