Sicherheitslücke in php 2.0.10

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

  • Sicherheitslücke in php 2.0.10

    Hi

    Frage: Wie kann folgender Code denn zur Sicherheitslücke werden ?

    Open viewtopic.php in any text editor. Find the following section of code:
    Code:
    PHP-Code:
    //
    // Was a highlight request part of the URI?
    //
    $highlight_match $highlight '';
    if (isset(
    $HTTP_GET_VARS['highlight']))
    {
       
    // Split words and phrases
       
    $words explode(' 'trim(htmlspecialchars(urldecode($HTTP_GET_VARS['highlight']))));

       for(
    $i 0$i sizeof($words); $i++)
       { 
    and replace with:
    Code:
    PHP-Code:
    //
    // Was a highlight request part of the URI?
    //
    $highlight_match $highlight '';
    if (isset(
    $HTTP_GET_VARS['highlight']))
    {
       
    // Split words and phrases
       
    $words explode(' 'trim(htmlspecialchars($HTTP_GET_VARS['highlight'])));

       for(
    $i 0$i sizeof($words); $i++)
       { 


    An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

  • #2
    OffTopic:
    Sicherheitslücke in php 2.0.10
    ich würde empfehlen eine aktuelle(re) version zu installieren?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      ich denke, dies ist die Stelle den Bug zu beheben, nicht die wo er zur Sicherhaitslücke wird.
      Wie geht denn der Code dort weiter?

      Wahrscheinlich ist das Loch dann nach dem replacen vorhanden
      TBT

      Die zwei wichtigsten Regeln für eine berufliche Karriere:
      1. Verrate niemals alles was du weißt!


      PHP 2 AllPatrizier II Browsergame

      Kommentar


      • #4
        Original geschrieben von Abraxax
        OffTopic:
        ich würde empfehlen eine aktuelle(re) version zu installieren?
        wow, darauf wär ich nie im leben gekommen



        An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

        Kommentar


        • #5
          Wobei es sich wohl weniger um php 2.0.10 als vielmehr um phpBB2 handeln dürfte ... dort ist ein exploid für angegebene Codes herausgegeben worden ... !
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            ups

            es handelt sich natürlich um das phpBB 2.0.10

            argh


            als ob ich in php 2 proggen würde LOL

            cya max


            An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

            Kommentar


            • #7
              Das sicherheitsloch verstehe ich aber auch nicht so ganz...?
              Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
              PHP Sicherheit
              PHPUnit[1-2]
              Professionelle Softwareentwicklung mit PHP 5
              Professionelle PHP 5-Programmierung

              Kommentar


              • #8
                Manchmal liegt das risiko auch nicht im gezeigten quellcode ... sondern in dem was hernach passiert ...
                carpe noctem

                [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                Kommentar


                • #9
                  Original geschrieben von goth
                  Manchmal liegt das risiko auch nicht im gezeigten quellcode ... sondern in dem was hernach passiert ...

                  hier die schon die gefixte version. 2.0.11
                  PHP-Code:
                  //
                  // Was a highlight request part of the URI?
                  //
                  $highlight_match $highlight '';
                  if (isset(
                  $HTTP_GET_VARS['highlight']))
                  {
                      
                  // Split words and phrases
                      
                  $words explode(' 'trim(htmlspecialchars($HTTP_GET_VARS['highlight'])));

                      for(
                  $i 0$i sizeof($words); $i++)
                      {
                          if (
                  trim($words[$i]) != '')
                          {
                              
                  $highlight_match .= (($highlight_match != '') ? '|' '') . str_replace('*''\w*'phpbb_preg_quote($words[$i], '#'));
                          }
                      }
                      unset(
                  $words);

                      
                  $highlight urlencode($HTTP_GET_VARS['highlight']);

                  Ich kann aber immer noch nichts erkennen. Bin zu engstirnig...
                  Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
                  PHP Sicherheit
                  PHPUnit[1-2]
                  Professionelle Softwareentwicklung mit PHP 5
                  Professionelle PHP 5-Programmierung

                  Kommentar


                  • #10
                    Original geschrieben von schlimmerfinger
                    PHP-Code:
                    phpbb_preg_quote($words[$i], '#')); 
                    Und was macht die Funktion mit der Variablen? Vielleicht passiert da was drin, was schaden kann...

                    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                    Wie man Fragen richtig stellt

                    Kommentar


                    • #11
                      Original geschrieben von ghostgambler
                      Und was macht die Funktion mit der Variablen? Vielleicht passiert da was drin, was schaden kann...
                      PHP-Code:
                      function phpbb_preg_quote($str$delimiter)
                      {
                          
                      $text preg_quote($str);
                          
                      $text str_replace($delimiter'\\' $delimiter$text);
                          
                          return 
                      $text;

                      http://lists.phpbar.de/pipermail/php...22/014285.html
                      Also ich kann momentan nichts erkennen...!? Wenn jemand erkannt hat kann ja
                      bescheid sagen. Dafür bin ich aber auf eine sehr interessante Seite gestossen.

                      cheers
                      Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
                      PHP Sicherheit
                      PHPUnit[1-2]
                      Professionelle Softwareentwicklung mit PHP 5
                      Professionelle PHP 5-Programmierung

                      Kommentar


                      • #12
                        Also ... das eigentlich Problem ist diese urlencode funktion in php da diese
                        in der url ein %2527 in ein ' umwandelt.. und dass ohne ein \ davorzustellen!


                        An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

                        Kommentar


                        • #13
                          Original geschrieben von MaxP0W3R
                          Also ... das eigentlich Problem ist diese urlencode funktion in php da diese
                          in der url ein %2527 in ein ' umwandelt.. und dass ohne ein \ davorzustellen!
                          Super, nur das ' stört da nicht, weil es nur in Text-Funktionen eingespeist wird, nicht jedoch in eine die was ausführt, außerdem nicht in eine SQL-Anweisung oder ähnliches.....oder das kommt erst weiter unten (wovon ich bei einem Highlight eigentlich nicht ausgehe......)

                          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                          Wie man Fragen richtig stellt

                          Kommentar


                          • #14
                            Original geschrieben von schlimmerfinger
                            PHP-Code:
                            $text str_replace($delimiter'\\' $delimiter$text); 
                            Ach da sind ja zwei \...ich hab mich grad gefragt, warum da nichts steht......

                            Naja, ist es nicht möglich das per preg_match ausgeführte, innerhalb gleich wieder per Funktion auszuführen oder so? Ich hab das bis jetzt einmal genutzt, wer wirklich interessiert ist kann sich dazu ja mal die Manual durchlesen, aber irgendwie ist es möglich in dem String eine Funktion einzubauen, die dann da auch ausgeführt wird.
                            Vielleicht war es dann möglich mit der Hilfe der URL da ein eval + entsprechenden Code reinzusetzen *schulter zuck* (so interessiert bin ich an dem Sicherheitsloch nun auch wieder nicht XD")

                            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                            Wie man Fragen richtig stellt

                            Kommentar


                            • #15
                              es is irgendwie möglich die index.php auszutauschen

                              ka wie

                              müsste mich dann erst einlesen

                              vieleicht heute mittag

                              muss jetzt erst mal zur post

                              cya max


                              An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

                              Kommentar

                              Lädt...
                              X