1. Foren
  2. Kommentare
  3. OpenSource
  4. Alle Kommentare zum Artikel
  5. › PHP: Rechenaufgabe legt Server…

Kiddis

  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


  1. Kiddis

    Autor: bubble bubble 04.01.11 - 18:23

    Heißt das das jetzt jedes kidi das eine grundlegende hanung von php ha also wie ma variablen übergibt fast jeden server lahmlegen kann???

    dann wird das ja jetzt eine schöne welle geben

  2. Re: Kiddis

    Autor: Mister Tengu 04.01.11 - 18:27

    Nur wenn sie Zugriff auf das Script selber haben. Wir reden ja hier nicht von irgendwelchen URL Parametern.

  3. Re: Kiddis

    Autor: vewf 04.01.11 - 18:34

    Mister Tengu schrieb:
    --------------------------------------------------------------------------------
    > Nur wenn sie Zugriff auf das Script selber haben. Wir reden ja hier nicht
    > von irgendwelchen URL Parametern.

    Tun wir nicht? Also für mich ließt sich das so das ich PHP lediglich dazu kriegen muss so eine große Zahl anzufassen. Numerische Parameter in URLs gibts es unendlich viele. Gleiches gilt für POST in Formularen etc. . Also entweder misinterpretiere ich das oder diese Lücke ist ziemlich ernst.

  4. Re: Kiddis

    Autor: Schnarchnase 04.01.11 - 18:40

    vewf schrieb:
    --------------------------------------------------------------------------------
    > Tun wir nicht? Also für mich ließt sich das so das ich PHP lediglich dazu
    > kriegen muss so eine große Zahl anzufassen. Numerische Parameter in URLs
    > gibts es unendlich viele. Gleiches gilt für POST in Formularen etc. . Also
    > entweder misinterpretiere ich das oder diese Lücke ist ziemlich ernst.

    Per GET und POST bekommst du nur Strings, auch wenn es sich dabei um einen numerischen Wert handelt. Die Frage ist nur, wann genau der Fehler auftritt.

  5. Re: Kiddis

    Autor: mr_jingles 04.01.11 - 18:42

    echo $_GET['fiesezahl']*1; ?!

  6. Re: Kiddis

    Autor: PHPhail 04.01.11 - 18:43

    mr_jingles schrieb:
    --------------------------------------------------------------------------------
    > echo $_GET['fiesezahl']*1; ?!

    Ganz genau so :)

  7. Re: Kiddis

    Autor: ausprobiert 04.01.11 - 18:44

    ...schon ausprobiert? :-)

  8. Re: Kiddis

    Autor: mr_jingles 04.01.11 - 18:46

    lokal... 0:-)

  9. Re: Kiddis

    Autor: o, weh weh weh 04.01.11 - 18:46

    Selbst, wenn du es missinterpretierst, kanndie Lücke sehr ernst sein.

    Abgesehen davon reden wir solange nicht von irgendwelchen URL-Parametern, solange mit Hilfe der übergebenen Parameter nicht gerechnet wird. Das ist beispielsweise bei Scripten der Fall, bei denen gar kein Parameter übergeben wird oder Werte nur nicht-numerisch ausgewertet werden.

    Es geht ja schließlich -- so wie ich den Text verstanden habe -- um Scripte, in denen mindestens eine Berechnung durchgeführt wird, die in die Nähe des fraglichen Wertes führt.

  10. Re: Kiddis

    Autor: XUX 04.01.11 - 18:49

    PHPhail schrieb:
    --------------------------------------------------------------------------------
    > mr_jingles schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > echo $_GET['fiesezahl']*1; ?!
    >
    > Ganz genau so :)


    Ja, wer so (unprofessionell) mit PHP codet/programmiert wird jetzt "bestraft", haha!
    (PS: Ich unterstelle mr_jingles nicht, dass er solchen Quellcode schreibt!)

  11. Re: Kiddis

    Autor: mr_jingles 04.01.11 - 18:53

    Danke. =)

  12. Re: Kiddis

    Autor: gerzui 04.01.11 - 18:56

    o, weh weh weh schrieb:
    --------------------------------------------------------------------------------
    > Es geht ja schließlich -- so wie ich den Text verstanden habe -- um
    > Scripte, in denen mindestens eine Berechnung durchgeführt wird, die in die
    > Nähe des fraglichen Wertes führt.

    Nein eigentlich sobald der Wert als Zahl verwendet wird. Das könnte jeder Sanity Check bei numerischen Parametern sein. Ich habs nicht getestet, aber ich denke da an:
    $fac = floatval( $_GET['fac'] );

    Das wäre eklig.

  13. Re: Kiddis

    Autor: strubbel 04.01.11 - 19:01

    if($_GET['fiesezahl']=="12345686987987987"){... <= könnte doch schon klappen für den vergleich werden beide strings in zahlen konvertiert :D

  14. Re: Kiddis

    Autor: eek 04.01.11 - 19:07

    Abgesehen von der Tatsache, dass ein vernünftiger Eingabecheck den ganzen Spuk beendet funktionierts laut Text ja nur mit 32Bit. Was mir in letzter Zeit über den Weg gelaufen ist waren meist 64er Kisten…

  15. Re: Kiddis

    Autor: Ellis 04.01.11 - 19:14

    eek schrieb:
    --------------------------------------------------------------------------------
    > Abgesehen von der Tatsache, dass ein vernünftiger Eingabecheck den ganzen
    > Spuk beendet

    Ist das so? Die Zahl ist ja nicht falsch. Normalerweise würde man den String in eine Zahl konvertieren. Aber genau da spukt es.

  16. Re: Kiddis

    Autor: HalbsoWild 04.01.11 - 20:08

    Einfach die Zeichenlänge des Strings prüfen, gut ist.
    Pike macht das natürlich besser.

  17. Re: Kiddis, confirmed

    Autor: gerzui 04.01.11 - 20:11

    gerzui schrieb:
    --------------------------------------------------------------------------------
    > Nein eigentlich sobald der Wert als Zahl verwendet wird. Das könnte jeder
    > Sanity Check bei numerischen Parametern sein. Ich habs nicht getestet, aber
    > ich denke da an:
    > $fac = floatval( $_GET['fac'] );

    Ich habs grad mal getestet, Typecasting mit floatval()* ist betroffen, intval() glücklicherweise nicht. Das dürfte für die meisten Web-Anwendungsfälle beruhigend sein.

    *) (float)$d, settype($d, "float") analog

  18. Re: Kiddis, confirmed

    Autor: musss sein ..... 04.01.11 - 20:37

    In der schreibweise Funktionierts noch:

    <?php $d = '2.2250738585072011e-308'; echo $d; ?>

    Aber in dieser NICHT mehr (selbst getestet):

    <?php $d = '2.2250738585072011e-308'; echo $d + 0; ?>

  19. Re: Kiddis

    Autor: Ellis 04.01.11 - 20:38

    HalbsoWild schrieb:
    --------------------------------------------------------------------------------
    > Einfach die Zeichenlänge des Strings prüfen, gut ist.

    Wtf? Also dann wiederhole ich mich:
    2.2250738585072011e-308 ist eine korrekte Zahl, mit der man rechnen darf. Und Zeichenanzahl hilft da wenig, man müsste den String schon sauber zerlegen.

  20. Re: Kiddis, confirmed

    Autor: gerzui 04.01.11 - 20:45

    musss sein ..... schrieb:
    --------------------------------------------------------------------------------
    > Aber in dieser NICHT mehr (selbst getestet):
    > <?php $d = '2.2250738585072011e-308'; echo $d + 0; ?>

    Ja mr_jingles hatte ein ähnliches Beispiel. Realitätsnah ist das in der Form aber (hoffentlich) nicht. Floatval() IMHO schon eher.

  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. LÖWEN ENTERTAINMENT GmbH, Bingen am Rhein (Großraum Mainz)
  2. SENSIS GmbH, Viersen bei Mönchengladbach
  3. Merz Pharma GmbH & Co. KGaA, Frankfurt am Main
  4. Evangelische Kirche im Rheinland, Düsseldorf

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 23,99€
  2. 31,99€


Haben wir etwas übersehen?

E-Mail an news@golem.de