Joomla - Fragen zu Warnings - PHP
YourMajesty 04.01.2007 - 13:00 959 4
YourMajesty
Here to stay
|
Hallo,
habe vor eine Webpage mit Joomla zu bauen. Installation hat soweit auch funktionirt, nur erhalte ich folgende Warnings im Joomla-Admin:
# PHP magic_quotes_gpc setting is `OFF` instead of `ON` # PHP register_globals setting is `ON` instead of `OFF`
In der globals.php abstellen? Wenn ja wo und wie? Ganz woanders?
Danke Tom
|
LoSerRaTiO
www.krenker.at
|
entweder in der php.ini wenn es serverweit gelten soll, oder in der .htaccess in deinem joomla verzeichnis, wenn es nur für die website gelten soll
|
TOM
Super ModeratorOldschool OC.at'ler
|
entweder in der php.ini wenn es serverweit gelten soll, oder in der .htaccess in deinem joomla verzeichnis, wenn es nur für die website gelten soll könntest du den passenden code für die .htaccess datei posten bitte.... habe auch eine dieser fehlermeldung (nur ist mir noch immer nicht ganz klar, in wie weit das joomla überhaupt beeinflusst => funktionieren tut alles)
|
mat
AdministratorLegends never die
|
welcher provider ist das nochmal der register_globals ON hat?
|
LoSerRaTiO
www.krenker.at
|
könntest du den passenden code für die .htaccess datei posten bitte.... habe auch eine dieser fehlermeldung (nur ist mir noch immer nicht ganz klar, in wie weit das joomla überhaupt beeinflusst => funktionieren tut alles) php_value register_globals 1 @beeinflussung: auch bei joomla wird versucht ohne register_globals auszukommen (register_globals off bietet angreifern eine kleinere angriffsfläche in bezug auf eingeschmuggelte variablen... kurz: erhöht die sicherheit). es kann allerdings passieren, dass teile nicht funktionieren. dreh's einfach auf, wenn es sich bei dir nicht um keine wirklich sicherheitskritische anwendung handelt. edit: ein gut verständlicher auszug aus wikipedia zum thema register globals: Wikipedia (Artikel PHP)
Variablenmanipulation
Bei den Globalen Variablen (→Geltungsbereich von Variablen) existiert eine erhebliche Sicherheitslücke, die durch die Variablenvorbelegung von PHP zustande kommt. Über die URL einer Seite können beliebig Variablen geändert werden, wenn hierbei nachlässig programmiert wurde.
http://example.com?variable1=test&a...irgend_ein_wert
Durch diesen Aufruf erhält variable1 den Wert ‚test‘ und variable2 entsprechend ‚irgend_ein_wert‘. Vorhandene Variablen, die im PHP-Skript verwendet werden, könnten überschrieben werden. Um diese Art von Manipulation zu verhindern, sollte die automatische Variablenvorbelegung mit register_globals=off in der PHP-Konfiguration abgeschaltet werden (seit PHP 4.2.0 standardmäßig). Auf die per URL übergebenen Variablen kann dann seit PHP 4.1.0 mit den „Superglobals“ zugriffen werden.
$_GET['variable1'] oder $_POST['variable1'] (je nach Übertragungsart)
$HTTP_GET_VARS['variable1'] oder $HTTP_POST_VARS['variable1'] (bei PHP-Versionen vor 4.1.0)
Zu den Superglobals zählen eine Reihe von „assoziative Arrays“ die im ganzen PHP-Code zur Verfügung stehen und die diverse Informationen speichern (Informationen vom Nutzer, dem Server und der Serverumgebung). Die Inhalte der Arrays $_GET, $_POST und $_COOKIE sind seit PHP 4.1.0 zusätzlich in $_REQUEST zusammengefasst (http://www.php.net/manual/de/langua....predefined.php).
Anmerkung: Seit der Version 5.0 können die $HTTP_*_VARS deaktiviert werden (register_long_arrays=off)
Allerdings kann man im gewissen Rahmen eine Manipulation verhindern, falls z.B. bei einem Forum ausschließlich ein Integerwert benötigt wird. In diesem Falle kann man überprüfen, ob der übergebene Wert ein Integer ist, und ggf. abbrechen. Zudem gibt es Plugins, die eine URL überprüfen, ob unerlaubte Befehle mit übergeben wurden, z.B. CTracker. Diese brechen ab, falls bsw. in einer 'id'-Variable ein Befehl wie DROP TABLE (Lösche Tabelle) verwendet wird.
Bearbeitet von LoSerRaTiO am 04.01.2007, 17:15
|