kostenloser Webspace werbefrei: lima-city


POST-Request - Problem

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    l*******r

    Hallo Lima!

    Also:

    Ein meiner Meinung nach recht kompliziertes Problem:

    Tatsachen:
    - Es existiert ein PHP-Skript, das ein POST-Request auswertet, und was nicht auf meinem Server liegt. Was genau passiert ist nicht weiter wichtig. Wo genau es liegt ist auch Makulatur, es befindet sich nicht auf Lima und auf keiner kommerziellen Seite.
    - Ich habe ein Roh-Formular, das per POST Daten an eben dieses Skript senden soll.

    Hindernisse:
    - Das Skript auf dem anderen Server scheint derart abgesichert zu sein, dass es überprüft, woher der POST-Request kommt und lehnt offensichtlich alle Anfragen, die von außerhalb kommen, ab.

    Aufgabe:
    - Was könnte im Skript stehen, sodass der Sender geprüft wird?
    - Ist es mögich, dem Skript vorzugaukeln, dass die Daten von innerhalb kommen?

    Zweck:
    - Ich will mir in Zukunft über mein Skript etwas Zeit ersparen und die Datensätze im Voraus berechnen.

    Hoffe auf keine offen gelassenen Fragen und eine schnelle und zufriedenstellende Antwort,
    Euer LDer
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo Idericher,


    mir fällt dazu ein: Das Skript könnte den Referrer überprüfen, es könnte bestimmte versteckte Felder überprüfen (<input type="hidden").

    Den Referer kann man fälschen und man kann auch alle Felder mitsenden. (Probier mal im Browser den Referrer auszuschalten (dass er nicht mit gesandt wird) und dann ob sich das original Formular noch abschicken lässt. (-> vielleicht funktioniert dann auch schon dein Script)
    Denn oft wird der Referrer nur überprüft, sofern er auch gesetzt ist. Sofern allerdings ein bestimmter Referer benötigt wird, musst du die Daten evtl zuerst an dich selber senden und dann mit zb fsockopen http://www.php.net/fsockopen eine neue Verbindung zum Server aufzubauen, wo du den referer header noch anders mitsendest)

    Weiterhin könnte es auch mit Sessions arbeiten. (im skript wird eine bestimmte session variable gesetzet, welche dann im auszuwertenden Script auch gesetzt sein muss).

    Gegen diese Session variablen lässt sich nicht sehr viel unternehem. Jedoch kannst du es probieren. Zb herausfinden ob es durch Session geschützt ist. (dazu zuerst herausfinden wie die session von einer zu anderen seite übertragen wird. Durch Cookies oder durch url Parameter). Auf jedenfall musst du in diesem Fall die Daten zuerst zu deinem script senden welches dann zuerst einen http request zum original formular aufbaut, sich die session id abgreifen (Cookie oder den get Parameter) und diese dann wieder an das nächste Script zusammen mit den anderen Parametern übertragen.

    Naja klingt jetzt nicht so einfach, vielleicht ist es auch einfacher möglich.

    Weiterführende Links
    http://de.wikipedia.org/wiki/Referrer
    http://de.php.net/fsockopen
    http://de.php.net/manual/de/session.examples.php
    http://de.php.net/cookies
  4. ldericher schrieb:
    Hallo Lima!

    Also:

    Ein meiner Meinung nach recht kompliziertes Problem:

    Tatsachen:
    - Es existiert ein PHP-Skript, das ein POST-Request auswertet, und was nicht auf meinem Server liegt. Was genau passiert ist nicht weiter wichtig. Wo genau es liegt ist auch Makulatur, es befindet sich nicht auf Lima und auf keiner kommerziellen Seite.
    - Ich habe ein Roh-Formular, das per POST Daten an eben dieses Skript senden soll.

    Hindernisse:
    - Das Skript auf dem anderen Server scheint derart abgesichert zu sein, dass es überprüft, woher der POST-Request kommt und lehnt offensichtlich alle Anfragen, die von außerhalb kommen, ab.

    Aufgabe:
    - Was könnte im Skript stehen, sodass der Sender geprüft wird?
    - Ist es mögich, dem Skript vorzugaukeln, dass die Daten von innerhalb kommen?

    Zweck:
    - Ich will mir in Zukunft über mein Skript etwas Zeit ersparen und die Datensätze im Voraus berechnen.

    Hoffe auf keine offen gelassenen Fragen und eine schnelle und zufriedenstellende Antwort,
    Euer LDer


    also:
    ich kann dir sagen warum dein script die post daten nicht annimmt...

    '$_POST' wird NUR innerhalb des Servers benutz....das heißt das es mit post schon nix wird wenn du was von nem anderem server willst!

    wenn schon kannst du die methode '$_GET' benutzen... und wie dussel schon sagte: <input type='hidden'... ist die lösung

  5. Autor dieses Themas

    l*******r


    ich kann dir sagen warum dein script die post daten nicht annimmt...

    '$_POST' wird NUR innerhalb des Servers benutz....das heißt das es mit post schon nix wird wenn du was von nem anderem server willst!

    Vorm Schreiben, bitel lesen!
    Ich schicke die Daten, das Skript soll sie annehmen. Nicht andersherum.
    Danke, Ende.

    Problem noch nicht gelöst.

    Der LDer.

    P.S.:
    Ich hab mal was von fsockopen/fputs/etc. gehört, hab aber keine ahnung wie man das benutzt, hab das hier gefunden, das bringt mich aber nicht weiter:

    $host = "www.example.com";
    $uri = "/path/file.php?getVar=getValue&postVar=postValue";
    $usr = 'user';
    $pwd = 'pass';

    header("Content-type: text/plain");
    $sock = fsockopen($host, 80, $errno, $errstr, 5); // 80 = Port, 5 = Timeout
    fputs($sock, "POST ".$uri." HTTP/1.1\r\n");
    fputs($sock, "Host: ".$host."\r\n");
    fputs($sock, "Authorization: Basic ".base64_encode($usr.":".$pwd)."\r\n");
    fputs($sock, "Connection: close\r\n\r\n");
    while(!feof($sock))
    echo fgets($sock, 4096); // Antwort lesen
    fclose($sock);
    (von: http://www.klamm.de/forum/showthread.php?t=214925)
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!