pragmaMx Support Forum pragmaMx Support Forum

1 Problem + 1 Bug

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Freddy436

  • *
  • 1
  • +0/-0
1 Problem + 1 Bug
« am: 11 März 2008, 22:00:09 »
Hallo,

vorneweg mal, ich hab mit pragmaMx, etc. eigentlich nix zutun, kenne mich daher praktisch garnicht damit aus.
Ein Freund benutzt PramgaMx und das PM Modul. Ich hab ihn mit einem Problem was er mit dem Modul hat geholfen.

Das Problem war das die PM Übersicht lange geladen hat und dann irgendwann abgebrochen wurde (max execution time exceeded). Ursache dafür war das ein user eine große PM gesendet hatte, die PM war 64 KB groß und bestand aus 21730 Smilies. Ich hab dann eine Begrenzung auf 2000 Zeichen eingebaut. So eine Funktion sollte man vielleicht in die offiziellen Version auch noch einbauen.

Dabei ist mir auch noch ein potentieller SQL injection exploit aufgefallen, index.php, Zeile 1115:
$qry1 .= "VALUES ('" . $arrpostdata["image"] . "', ...
$arrpostdata = $_REQUEST
$arrpostdata["image"] wird wenn ich nichts übersehen nirgends escaped, geschweigeden anständig validiert.

Offline Andi

  • *****
  • 18.832
  • +4/-0
  • Geschlecht: Männlich
Re: 1 Problem + 1 Bug
« Antwort #1 am: 12 März 2008, 00:08:52 »
Hi :)

danke für den Hinweis, wir prüfen das ;)  :cul:

Zitat
nirgends escaped, geschweigeden anständig validiert.
Nicht ganz...
pragmaMx hat zusätzlich, zu den zugegebenermassen, an der Stelle fehlenden Sicherheitsmassnahmen, zusätzliche Funktionen, die SQL-Injections erschweren, bis eigentlich unmöglich machen.

So werden
- alle $_REQUEST Variablen durch eine Filterfunktion geprüft
- alle $_REQUEST Variablen zwangsweise escaped, egal ob magic-quotes an oder abgeschaltet ist
- alle SQL-Anfragen nochmal durch einen Filter geschickt...
schön´s Grüssle, Andi

Fummelhase

Re: 1 Problem + 1 Bug
« Antwort #2 am: 13 März 2008, 23:22:35 »
@Freddy436

Danke fürs aufgreifen des Problems.

Es ist definitiv möglich, kann jeder bei sich testen und wurde auch schon angesprochen


lg

Offline Andi

  • *****
  • 18.832
  • +4/-0
  • Geschlecht: Männlich
Re: 1 Problem + 1 Bug
« Antwort #3 am: 14 März 2008, 00:18:44 »
@ Fummelhase

Was ist möglich und wo wurde das bereits angesprochen?
schön´s Grüssle, Andi

Fummelhase

Re: 1 Problem + 1 Bug
« Antwort #4 am: 14 März 2008, 00:39:32 »
Hi Andi,

Zitat
Was ist möglich

Man kann mit den PM's die Datenbank voll müllen, da es keine Zeichen Begrenzung gibt.
Damit kann man sogar eine Seite zum abschmieren bringen.

Zitat
und wo wurde das bereits angesprochen?
Im Forum steht das Problem schon.

lg


Offline Andi

  • *****
  • 18.832
  • +4/-0
  • Geschlecht: Männlich
Re: 1 Problem + 1 Bug
« Antwort #5 am: 14 März 2008, 01:05:40 »
Zitat
Im Forum steht das Problem schon.

WO steht das im Forum, dass man mit dem posten von Smilies die Webseite lahmlegen kann?

Das ist Quatsch, nur der, der die PM erhält, der bekommt ne unvollständige Seite, weil das Script vorzeitig abbricht. Und wenn das passiert, dann macht der Server nur das, für das er konfiguriert ist. Er stoppt das wietere parsen von PHP-Quellcode. Und weil nicht hunderte User gleichzeitig solch eine PM lesen, kann dem Server da garnichts passieren.


Das Problem hat auch mit der Datenbank nix zu tun, da ist sehr wohl eine Begrenzung drin. Nämlich die Feldbegrenzung von MySql, die beim Feldtyp "Text" auf 65535 Zeichen begrenzt ist. (Zugegeben, für private Nachrichten etwas viel)
Aber wie gesagt, Problem ist nicht die Datenmenge in der DB, sondern das, was beim konvertieren der Smiliesymbole daraus gemacht wird. Da wird eben aus sowas ; ) ein kompletter Imagetag mit dem mehrfachen an Zeichen generiert und da macht der Server schlapp. Nicht wegen der Datenmenge, sondern wegen der Rechenzeit, die er braucht.


wie gesagt:
Zitat
danke für den Hinweis, wir prüfen das

Da hier schon wieder verschiedene Sachen sinnfrei zusammen geworfen werden >> Thread closed.
Wenn wir zu dem Problem noch Fragen an Freddy436 haben, melden wir uns.....
schön´s Grüssle, Andi