Hallo Liste!
In einem Onlinespiel brauche ich eine Programmierumgebung für die Designer.
Dazu wollte ich ein paar Funktionen schreiben, die die Designer in einem PHP-Schnipsel nutzen können. Die Dateien werden dann per eval() eingebunden.
Sicherheitshalber möchte ich die Ausführung fast aller normalen PHP-Funktionen (exec, unlink) deaktivieren.
Gibt es dafür eine bessere Methode, als die Dateien nach diesen Befehlen zu durchsuchen und ggf. die Ausführung zu verweigern?
Thomas
On Friday 21 October 2005 09:02, Thomas Schmidt wrote:
Hallo Liste!
In einem Onlinespiel brauche ich eine Programmierumgebung für die Designer.
Dazu wollte ich ein paar Funktionen schreiben, die die Designer in einem PHP-Schnipsel nutzen können. Die Dateien werden dann per eval() eingebunden.
Sicherheitshalber möchte ich die Ausführung fast aller normalen PHP-Funktionen (exec, unlink) deaktivieren.
Gibt es dafür eine bessere Methode, als die Dateien nach diesen Befehlen zu durchsuchen und ggf. die Ausführung zu verweigern?
Hallo Thomas,
# grep disable /etc/php4/apache2/php.ini ; This directive allows you to disable certain functions for security reasons. disable_functions =
Ich hoffe, das hilft.
Gruesse, Jan.
Hallo!
# grep disable /etc/php4/apache2/php.ini ; This directive allows you to disable certain functions for security reasons. disable_functions =
Das geht leider nicht, weil ich Funktionen in dreistelliger Zahl lahmlegen möchte und außerdem der Interpreter noch anderes zu tun hat, z.B. Foren.
Thomas
Am Freitag, den 21.10.2005, 09:02 +0200 schrieb Thomas Schmidt:
Dazu wollte ich ein paar Funktionen schreiben, die die Designer in einem PHP-Schnipsel nutzen können. Die Dateien werden dann per eval() eingebunden.
Sicherheitshalber möchte ich die Ausführung fast aller normalen PHP-Funktionen (exec, unlink) deaktivieren.
Gibt es dafür eine bessere Methode, als die Dateien nach diesen Befehlen zu durchsuchen und ggf. die Ausführung zu verweigern?
Da die Blacklist offensichtlich zu groß wäre, stellt sich eigentlich automatisch die Frage nach der Whitelist: Was sollen die Designer denn dürfen? Evtl. läßt sich das ja anders lösen.
Eric
Am Montag, 24. Oktober 2005 19:12 schrieb Eric Schaefer:
Sicherheitshalber möchte ich die Ausführung fast aller normalen PHP-Funktionen (exec, unlink) deaktivieren.
Da die Blacklist offensichtlich zu groß wäre, stellt sich eigentlich automatisch die Frage nach der Whitelist: Was sollen die Designer denn dürfen?
Es wird keine Funktion gebraucht. Die Scripte der Designer bekommen Spielerdaten übergeben und generieren ausschließlich durch if und Zuweisungen $text="Hallo Welt!"; die Daten für die Grafikengine (HTML-Ausgabe).
Thomas
Am Dienstag, den 25.10.2005, 07:06 +0200 schrieb Thomas Schmidt:
Die Scripte der Designer bekommen Spielerdaten übergeben und generieren ausschließlich durch if und Zuweisungen $text="Hallo Welt!"; die Daten für die Grafikengine (HTML-Ausgabe).
Das hatte ich vermutet. Sowas läßt sich doch mit wenig Aufwand selbst bauen.
##BEGIN TSSS IF $money < 100 THEN $poverty = TRUE ELSE $poverty = FALSE FI
IF $score < 123 THEN $title = "Anfänger" FI
##END TSSS <!-- Thomas Schmidts ScriptSpache -->
Sowas ist aufgrund der beschränkten Syntax leicht zu parsen und es ist auch leicht verständlich.
Eric
lug-dd@mailman.schlittermann.de