|BRAINSTORMING| Register Globals

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • |BRAINSTORMING| Register Globals

    Hallo zusammen,

    um den Usern dieses Forums weitere Unterstützung beim Programmieren zu bieten, möchte ich euch bitten zu folgendem Thema ein Brainstorming zu machen:

    -> [COLOR=darkred]REGISTER GLOBALS[/COLOR]

    Oft genug treten Probleme auf, nur weil man nicht berücksichtigt hat, dass globals aus sind, oder ähnliches. Ich bitte euch auch zu diesem Thema alles Wissenswerte zu Brainstormen.

    Danke für eure Hilfe!

  • #2
    Ich hab darüber gebrütet und nachgeforschrt was alles zu beachten ist:
    Alles was ich weiß inklusive 2 Lösungen wie man sein Script PHP 4.0.0 aufwärts kompatibel macht(altes anpasst), oder schreibt(neues anfängt):

    http://www.hx3.de/forums/index.php?act=ST&f=16&t=416
    Visit my php blog!

    Kommentar


    • #3
      Das deckt ja schon einiges ab! Danke!

      Kommentar


      • #4
        PHP-Code:
        if (!empty($_GET))
          
        extract($_GET);
        elseif (!empty(
        $HTTP_GET_VARS))
          
        extract($HTTP_GET_VARS);

        if (!empty(
        $_POST))
          
        extract($_POST);
        elseif (!empty(
        $HTTP_POST_VARS))
          
        extract($HTTP_POST_VARS);

        und so weiter und so fort 
        http://www.php-resource.de/forum/sho...860#post111860
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          @happy, so mache ich das auch auch aber lass dass nicht einen sehen, der es "etwas genauer" nimmt
          h.a.n.d.
          Schmalle

          http://impressed.by
          http://blog.schmalenberger.it



          Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
          ... nur ohne :-)

          Kommentar


          • #6
            Ihr solltet eines bedenken:

            Die register_globals wurden deaktiviert um hackangriffe nach der Methode "variabelwerte per angabe in der url zu überschreiben um die Website zu hacken"
            Wenn ihr jetzt also schlicht $_GET entpackt ist das keine Lösung.
            Visit my php blog!

            Kommentar


            • #7
              man kann seine seiten auch so bauen, dass sie nicht per get gehackt werden können, wenn man reg_glob. on hat ....
              h.a.n.d.
              Schmalle

              http://impressed.by
              http://blog.schmalenberger.it



              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
              ... nur ohne :-)

              Kommentar


              • #8
                @schmalle: Gute idee! Und wenn man dann noch schlechte Programmierung allgemein ausschließen will, dann lässt man es ganz sein!

                Kommentar


                • #9
                  Original geschrieben von TobiaZ
                  @schmalle: Gute idee! Und wenn man dann noch schlechte Programmierung allgemein ausschließen will, dann lässt man es ganz sein!
                  ich bin mir gerade unschlüssig, wie ich dein posting werten sol ... ?!?

                  EDIT:
                  scheiss tippfehler. die hitze mach mich kirre
                  h.a.n.d.
                  Schmalle

                  http://impressed.by
                  http://blog.schmalenberger.it



                  Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                  ... nur ohne :-)

                  Kommentar


                  • #10
                    Keine Kritik an dir, eher an der Userschaft ansich (großteil)

                    </EOT>

                    Kommentar


                    • #11
                      wenn ich ne session variable
                      Code:
                      $_SESSION['dummy']='geheim'
                      habe und jemand ruft die seite so auf
                      Code:
                      index.php?dummy=exploit
                      was passiert dann bitteschön, wenn ich erst $_GET entpacke und danach $_SESSION?

                      ich trau mich zu wetten, dass folgendes skript
                      PHP-Code:
                      if (isset($dummy))
                        echo 
                      '$dummy: '.$dummy;
                      else
                        echo 
                      '$dummy: nicht vorhanden';
                      echo 
                      '<p />';
                      if (!empty(
                      $_GET))
                        
                      extract($_GET);
                      elseif (!empty(
                      $HTTP_GET_VARS))
                        
                      extract($HTTP_GET_VARS);
                      if (isset(
                      $dummy))
                        echo 
                      '$dummy: '.$dummy;
                      else
                        echo 
                      '$dummy: nicht vorhanden';
                      echo 
                      '<p />';
                      if (!empty(
                      $_SESSION))
                        
                      extract($_SESSION);
                      elseif (!empty(
                      $HTTP_SESSION_VARS))
                        
                      extract($HTTP_SESSION_VARS);
                      if (isset(
                      $dummy))
                        echo 
                      '$dummy: '.$dummy;
                      else
                        echo 
                      '$dummy: nicht vorhanden'
                      folgendes ausgibt:
                      Code:
                      $dummy: nicht vorhanden
                      
                      $dummy: exploit
                      
                      $dummy: geheim
                      wieman sieht, hat $dummy danach den Wert aus der Session, wurde also nicht überschrieben...
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        @happy genau

                        ausserdem wie ich schon sagte. immer nur sachen per get übertragen, bei denen es egal ist, wenn sie überschrieben werden.
                        es gibt vielleicht n paar kleine fehler, aber das ist ja sache des "überschreibers". wenn ihm dann besser ist
                        h.a.n.d.
                        Schmalle

                        http://impressed.by
                        http://blog.schmalenberger.it



                        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                        ... nur ohne :-)

                        Kommentar


                        • #13
                          Original geschrieben von schmalle
                          @happy genau
                          vielen herzlichen dank

                          per GET übertrage ich nur infos, die auf keinen fall sicherheitskritisch sind, die, die ich übertrage, werden vorher geprüft und gut is
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            hab gerade in der IW 08/03 diesen "einzeiler" für
                            "GET/POST/COOKIE"-vars gefunden: import_request_variables ()

                            wenn man mal von grundsätzlichen sicherheitsfragen
                            absieht, scheint es eine geschmeidige lösung zu sein.
                            oder spricht etwas gegen die nutzung?
                            Kissolino.com

                            Kommentar


                            • #15
                              Original geschrieben von dem Link von Wurzel
                              You can use 'G', 'P' and 'C' characters respectively for GET, POST and Cookie.
                              [...]
                              If you're interested in importing other variables into the global scope, such as SERVER, consider using extract().
                              kannst nur $_GET, $_POST und $_COOKIE so importiern, $_FILES, $_ENV, $_SERVER und $_SESSION bleiben außen vor
                              Ich denke, also bin ich. - Einige sind trotzdem...

                              Kommentar

                              Lädt...
                              X