Ankündigung

Einklappen
Keine Ankündigung bisher.

php upload, filename im header veränderbar??

Einklappen

Neue Werbung 2019

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

  • php upload, filename im header veränderbar??

    Hallo Leute,

    ich hab noch mal ne kleine Frage

    und zwar bastle ich mir grade nen kleines Upload Tool,

    ist es möglich den HTTP-Header so zu ändern das der Filename unabhängig von mir in PHP festgelegten Name, hier test.jpg:

    move_uploaded_file($_FILES["datei"]["tmp_name"],"test.jpg");

    Das des Filename doch per HTTP-Header so verändert werden kann das mann sein eigenen Dateinamen speichern kann sowie test.php.

    laut scanit soll das funktionieren, kann ich mir aber nicht vorstellen, da das die letzte instanz ist wo aufgerufen wird, die daten werden ja hochgeladen und in der TMP variablen gespeichertdiese wird dann an den gewünschten Pfad kopiert, so ist das doch richtig oder??

    Vielen Dank schonmal im vorraus.

    LG
    Jonny


  • #2
    Bitte stelle die Frage noch mal - so, dass man verstehen und nachvollziehen kann, was du wissen willst.

    Erkläre bitte insb., welche Bedeutung du welchem HTTP-Header beimessen willst, und warum.

    Kommentar


    • #3
      Soweit ich verstehe was du machen willst ja.
      Ansonsten: Was eine Sprache... deutsch ist das nicht mehr...
      "My software never has bugs, it just develops random features."
      "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

      Kommentar


      • #4
        Sry leute, mein Problem ist es das ich zu schnell vorraus Denke und meine Formulierung darunter leidet

        Meine Frag ist wenn ich mit

        move_uploaded_file($_FILES["datei"]["tmp_name"],"test.jpg");

        eine Datei auf den Server lade, wo der Dateiname test.jpg feststeht,
        mit einem Manipuliertem Header geändert werden kann, so das mit einem Angriff
        eine php Datei anstatt eine jpg Datei Hochgeladen werden kann.

        Ich möchte nicht wissen wie das geht, rein aus Sicherheitsgründen Interessiert es mich ob mit einem Manipuliertem Header bei der zu Speichernden Datei der Dateiname geändert werden kann??

        Kommentar


        • #5
          Zitat von Jonny2010 Beitrag anzeigen
          ob mit einem Manipuliertem Header bei der zu Speichernden Datei der Dateiname geändert werden kann??
          Natürlich nicht.

          Erst mal deshalb, weil der Client gar keinen Dateinamen in den HTTP-Headern überträgt - wenn überhaupt, ist der Dateiname Bestandteil der Request Body.

          Und wenn du keinen vom Client übergeben Wert benutzt, sondern in deinem Script einen eigenen vorgibst, der nicht von Aussenwerten abhängt - dann solltest du die Frage gar nicht stellen müssen.

          Kommentar


          • #6
            PHP-Code:
            move_uploaded_file($_FILES["datei"]["tmp_name"],"test.jpg"); 
            Damit verschiebst du die Datei nur aus dem Zwischenspeicher. Das geschieht erst wenn die Datei schon auf dem Server liegt, das ist das mit den headern schon längst vorbei. Auch hat die tmp-Datei einen anderen Namen wie die orginal Datei.
            Das einzige was dir passieren kann dass die Datei die hochgeladen wird nicht ordentlich überprüft wird (von deinem Script) und dadurch Schadcode ausgeführt werden kann.
            Signatur:
            PHP-Code:
            $s '0048656c6c6f20576f726c64';
            while(
            $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

            Kommentar

            Lädt...
            X