==== Schwachstelle php2shell ==== In neueren Installationen von (p2f) wird für die Skripte, die die Funktion von Gateways realisieren, die Skriptsprache [[https://de.wikipedia.org/wiki/PHP|PHP]] eingesetzt. In dieser Skriptsprache hat sich eine Sicherheitslücke gezeigt. Die Schwachstelle **php2shell** ([[https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w|CVE-2026-109618]] und [[https://github.com/php/php-src/security/advisories/GHSA-6wmf-4rv5-p3rp|CVE-2026-109619]]) kann in (p2f)-Installationen prinzipiell nicht ausgenutzt werden, weil in der Regel kein Zugriff aus dem Internet auf das (p2f)-Gateway oder direkt auf %%PHP%% erlaubt ist. Zudem ruft das Gateway über seine Kommandozeile immer nur das gleiche Skript mit den gleichen Parametern auf. ==== ==== \\ \\ Damit ist es unserer Meinung nach nicht möglich, den für die Ausnutzung der Schwachstelle notwendigen tausendfachen Speicherüberlauf in %%PHP%% von ausserhalb zu erzeugen. Die maximale Speichergrenze für Skripte von meist 128 MByte macht es zudem noch schwieriger, einen Speicherüberlauf zu erzeugen, der zum fehlerhaften Abbruch eines Skriptes führt. Aus **Compliance-Gründen** ist es aber wünschenswert, eine Version von %%PHP%% einzusetzen, in der die Schwachstelle nicht mehr existiert. Deshalb haben wir ein %%PHP%%-Verzeichnis für Gateways erstellt, das %%PHP%% in der aktuellen Version 8.4.27 enthält. Es kann [[https://download.spe-systemhaus.de/PHP8427.zip|hier]] geladen werden. Wenn das Archiv entpackt wird, erhält man einen Ordner mit dem Namen **PHP8427**, der in der Regel direkt auf das Laufwerk **C:** verschoben werden muss. Anschliessend wird einfach in der Kommandozeile des Gateways der Pfad zur Instanz von %%PHP%% von **PHP8** auf **PHP8427** geändert. \\ \\ === Wichtige Hinweise === * Durch die Parallel-Installation zweier Instanzen von %%PHP%% kann im Falle von Problemen durch einfache Wieder(-)herstellung der Kommandozeile auf den alten Zugriffspfad für %%PHP%% wieder eine funktionsfähige Installation von (p2f) hergestellt werden. Nehmen Sie in so einem Fall Kontakt mit uns auf, um zu klären, warum es zu Fehlfunktionen kommt. * Wenn das Skript mit der neuen Version von %%PHP%% fehlerfrei läuft, kann die alte Installation von %%PHP%% im Verzeichnis **PHP8** gelöscht werden. * Bei einer Neuinstallation von (p2f) mit dem Installer 4.1.1.293 wird aktuell noch %%PHP%% in der Version 8.1.16 installiert. Deshalb muss bis zum Release eines neuen Installers für (p2f) anschliessend in jedem Fall der hier beschriebene Umstieg auf %%PHP%%-Version 8.4.27 durchgeführt werden. * Um festzustellen, mit welcher Version von %%PHP%% (p2f) arbeitet, kann im %%PHP%%-Verzeichnis die Datei mit dem Namen **snapshot.txt** mit einem Editor geöffnet und inspiziert werden. \\ \\