MySQL-Fehler bei PhpNuke und Co.

Der MySQL Datenbank-Server für Internet- und Intranet-Lösungen.

MySQL-Fehler bei PhpNuke und Co.

Beitragvon Stephan » Di 22 Apr, 2003 08:53

Hallo,

ich habe ein ziemlich unlogisches Problem mit PhpNuke und dem Modul 4nChat.
Ich hoffe jemand kennt sich mit der Kombi aus...Also:
In der confog.php vom PhpNuke selbst habe ich dieselben MySQL-Daten wie in der config.php von 4nChat eingetragen.
Der Zugriff auf phpNuke klappt mit diesen MySQL-Userdaten einwandfrei, alle Module funktionieren auch.
Der Zugriff auf 4nChat funktioniert soweit auch, nur wenn ich in einen Chatroom gehen will, kommt folgende Meldung:

Datenbank Fehler / Database error: Invalid SQL: select uid, name from nuke_4nchatuser where rid =
MySQL error: 1064 (You have an error in your SQL syntax near ' at line 1)
Session halted.

Das komische ist halt, dass wie gesagt die MySQL-Userdaten in beiden Dateien gleich sind.

Kann jemand mit der Meldung was anfangen?

Gruss und danke,

Stephan
Stephan
 

RE: MySQL-Fehler bei PhpNuke und Co.

Beitragvon Chris » Mi 23 Apr, 2003 07:47

Das ist absolut kein MySQL Problem.

Geh mal lieber auf www.phpnuke.de - dort findest Du mehrer Links zu mehren Foren, wo sicherlich dieses Problem schon aufgetaucht ist und DU kompetent antwort findest.

Ich kenne PHP Nuke. Sicherlich ist Dein Thema (Design) "anders" und übergibt die Nutzerparamter nicht sauber .....


Chris
Chris
 

RE: MySQL-Fehler bei PhpNuke und Co.

Beitragvon unwissender » So 04 Mai, 2003 09:24

also ich hab das selbe problem bei phpmyadmin wenn ich eine neue database generieren will dann kommt eine meldung syntaxfehler on line 1 oder so ähnlich
unwissender
 

Re: MySQL-Fehler bei PhpNuke und Co.

Beitragvon thuhn01 » Mi 24 Mai, 2006 20:30

Stephan hat geschrieben:Hallo,

ich habe ein ziemlich unlogisches Problem mit PhpNuke und dem Modul 4nChat.
Ich hoffe jemand kennt sich mit der Kombi aus...Also:
In der confog.php vom PhpNuke selbst habe ich dieselben MySQL-Daten wie in der config.php von 4nChat eingetragen.
Der Zugriff auf phpNuke klappt mit diesen MySQL-Userdaten einwandfrei, alle Module funktionieren auch.
Der Zugriff auf 4nChat funktioniert soweit auch, nur wenn ich in einen Chatroom gehen will, kommt folgende Meldung:

Datenbank Fehler / Database error: Invalid SQL: select uid, name from nuke_4nchatuser where rid =
MySQL error: 1064 (You have an error in your SQL syntax near ' at line 1)
Session halted.

Das komische ist halt, dass wie gesagt die MySQL-Userdaten in beiden Dateien gleich sind.

Kann jemand mit der Meldung was anfangen?

Gruss und danke,

Stephan


Füge in die config.php folgende Zeilen ein:


$rid = $_REQUEST['rid'];
$uid = $_REQUEST['uid'];
$chatroom = $_REQUEST['chatroom'];
$username = $_REQUEST['username'];
$tz = $_REQUEST['tz'];
$lang = $_REQUEST['lang'];
$first = $_REQUEST['first'];
$txt = $_REQUEST['txt'];
$msgLastCheck = $_REQUEST['msgLastCheck'];
$allowsounds = $_REQUEST['allowsounds'];
$allowcreate = $_REQUEST['allowcreate'];
$keeponline = $_REQUEST['keeponline'];
thuhn01
Neu im Board
Neu im Board
 
Beiträge: 2
Registriert: Mi 24 Mai, 2006 20:25
Wohnort: Herten

Beitragvon wavenetuser » Mi 24 Mai, 2006 21:34

well, so ohne filter würde ich das aber nicht übernehmen.
Da kannst Dir ja gleich die Kugel geben.

Zumindest (int) könnte man an bestimmten Parametern dazu nehmen. Bzw. auch aus anderen Werten mögliche sql-injection-Versuche rausfiltern. Traue nie einer Variable die Du nicht gesetzt hast !
Bild
wavenetuser
Board-User Level 3
Board-User Level 3
 
Beiträge: 1266
Registriert: Do 09 Feb, 2006 02:35

Beitragvon thuhn01 » Mi 24 Mai, 2006 22:31

wavenetuser hat geschrieben:well, so ohne filter würde ich das aber nicht übernehmen.
Da kannst Dir ja gleich die Kugel geben.

Zumindest (int) könnte man an bestimmten Parametern dazu nehmen. Bzw. auch aus anderen Werten mögliche sql-injection-Versuche rausfiltern. Traue nie einer Variable die Du nicht gesetzt hast !


Stört es das ich überhaupt keine Ahnung habe was Du da geschrieben hast?

Das sind alles Variablen die von 4nChat benutzt und vorher von phpnuke gesetzt werden. Wenn Bedarf besteht kann ich gerne erklären was welche Variable macht (ALlerdings sagt der Name jeweils schon alles), aber mir ists wurscht.
Alle haben seit über zwei JAhren dasselbe Problem, obige Lösung behebt es. Wer es nicht eingeben mag lässt es eben, hat dann aber keinen Chat :)
thuhn01
Neu im Board
Neu im Board
 
Beiträge: 2
Registriert: Mi 24 Mai, 2006 20:25
Wohnort: Herten

Beitragvon wavenetuser » Mi 24 Mai, 2006 22:55

Ne, stört überhaupt nicht.
Die Variablen sollten meiner Ansicht nach alle gefiltert werden bevor sie einfach so übernommen werden.

Wird eine Variable ohne Filter übernommen, besteht die Gefahr dass diese mit bösartigem Code gefüttert wird. Dadurch ist uU. die Gefahr gegeben dass unerwünschte mysql-Queries ausgeführt werden. Im schlimmsten Fall kann sich jemand so Zugriff auf das Backend eines Systems verschaffen oder aber er kann Daten löschen oder hinzufügen.

$_REQUEST
Variablen, die dem Skript über die GET-, POST- und COOKIE-Eingabemechanismen geliefert werden und von daher nicht vertrauenswürdig sind.



Näheres hier: http://at.php.net/manual/de/language.va ... efined.php
Bild
wavenetuser
Board-User Level 3
Board-User Level 3
 
Beiträge: 1266
Registriert: Do 09 Feb, 2006 02:35

Beitragvon medice » Do 25 Mai, 2006 13:21

In anderen Worten: diese Variablen kann ein halbwegs versierter User von außerhalb nach SEINEM Belieben setzen, was gegebenenfalls zu Problemen führen kann.
Es gilt grundsätzlich: "Alle Eingaben vom User sind böse". MAn darf nicht davon ausgehen, dass ein User unter "Loginname" und "Passwort" auch tatsächlich einen Loginnamen und ein Passwort schickt, sondern u.U. auch etwas $lustiges, weshalb diese Eingaben auf den Versuch von Einschmuggeln von Codeausführung/sql-injections usw usf gefiltert werden MÜSSEN.
Speziell bei phpkit/phpnuke/phpbb kommt es regelmäßig zu derartigen Sicherheitsproblemen, weil da das eine oder andere übersehen wurde.
Mfg
Medice

Wir in Bayern brauchen keine Opposition, weil wir sind schon Demokraten. (c) Gerhard Polt
medice
Advanced Power-User
Advanced Power-User
 
Beiträge: 3288
Registriert: Fr 13 Mai, 2005 10:32
Wohnort: Graz


Zurück zu MySQL

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 Gäste