"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Joomla - Fragen zu Warnings - PHP

YourMajesty 04.01.2007 - 13:00 959 4
Posts

YourMajesty

Here to stay
Avatar
Registered: Jul 2001
Location: Korneuburg
Posts: 1248
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
Avatar
Registered: Sep 2003
Location: krenker.at
Posts: 744
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 Moderator
Oldschool OC.at'ler
Avatar
Registered: Nov 2000
Location: Vienna
Posts: 7368
Zitat von LoSerRaTiO
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

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
welcher provider ist das nochmal der register_globals ON hat? :)

LoSerRaTiO

www.krenker.at
Avatar
Registered: Sep 2003
Location: krenker.at
Posts: 744
Zitat von TOM
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)


Zitat
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:

Zitat
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
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz