Martin: PHP-Anmeldungs-Script schützen vor externen zugriffen!

Hi und Hallo zusammen,

ich bin gestern leider das Ziel eines "hacker"-Angriffs, geworden genauer gesagt wurde meine php script welches aus zwei dateien besteht:

anmeldung.php // Hier werden die Daten eingegeben
und
anmeldung_insert.php // Hier werden die Daten in meine mysql Datenbank geschrieben

geflutet! und zwar hat dieser jemand einfach eine *.php -datei auf seinem Server laufen lassen die permanent folgende url aufrief:

http://www.meineurl.de/anmeldung/anmeldung_insert.php?name=... usw.

mein script wusste natürlich nicht das dieser zugriff von außen kam und hat mal eben ein paar 1000 einträge gespeichert!

meine frage nun: Wie löse ich dieses problem, ich hoffe einer von euch kann mir helfen!

mfg matti

  1. Hi,

    und zwar hat dieser jemand einfach eine *.php -datei auf seinem Server laufen lassen

    woher weißt Du das?

    meine frage nun: Wie löse ich dieses problem,

    Schritt 1: Wie _lautet_ das Problem? Formuliere es in technischen, HTTP-kompatiblen Begriffen.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. 1. Ich habe per webalizer gesehen von welcher url die angriffe kamen, habe dort neachgefragt und mir wurde meine vermutung bestätigt.

      2. zum zweiten punkt kann ich mich nicht äußern, wenn ich nur den hauch von ahnung hätte wie man das löst, würde ich nicht hier in dieses forum schreiben! ich will es nunmal auf irgendeiner weise verhindern!

      3. dein post war unnötig!

      mfg matti

      1. Hi,

        1. Ich habe per webalizer gesehen von welcher url die angriffe kamen, habe dort neachgefragt und mir wurde meine vermutung bestätigt.

        gut.

        1. zum zweiten punkt kann ich mich nicht äußern, wenn ich nur den hauch von ahnung hätte wie man das löst, würde ich nicht hier in dieses forum schreiben! ich will es nunmal auf irgendeiner weise verhindern!

        Ich könnte Dir dazu jetzt etwas sagen, aber ...

        1. dein post war unnötig!

        ... offenbar willst Du gar keine Hilfe haben, sondern nur Deinen Unmut äußern. Bürgersteig.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hi Cheatah,

          und ob ich deine hilfe will! :-)

          mfg matti

        2. Hi Cheatah,

          ... offenbar willst Du gar keine Hilfe haben, sondern nur Deinen Unmut äußern. Bürgersteig.

          ähm, Bürgersteig?
          Geh weg?  :-)

          Den kannte ich nun auch noch nicht. Man lernt nie aus...

          Ciao,
           Martin

          --
          F: Was ist schlimmer: Alzheimer oder Parkinson?
          A: Parkinson. Lieber mal ein Bier vergessen zu zahlen, als eins verschütten.
    2. Hello,

      Schritt 1: Wie _lautet_ das Problem? Formuliere es in technischen, HTTP-kompatiblen Begriffen.

      Als Altem Hasen könnte man eigentlich von Dir erwarten, dass Du ihm dabei hilfst, das Problem auf den Punkt zu bringen. Aber wahrscheinlich baust Du auch langsam ab ;-))

      Harzliche Grüße vom Berg
      http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau

  2. Du könntest einfach im PHP-Script den Referer, also die Seite über die das Script aufgerufen wurde, checken.

    if(false !== strpos(strtolower($_SERVER['HTTP_REFERER']), "www.deineseite.de")
    {
      //der bestehende code
    }

    oder so ähnlich...

    mfg cham

    1. Hi,

      Du könntest einfach im PHP-Script den Referer, also die Seite über die das Script aufgerufen wurde, checken.

      Du möchtest Dich bitte über den HTTP-Referer informieren, bevor Du unsinnige und kontraproduktive Ratschläge gibst.

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. Du möchtest Dich bitte über den HTTP-Referer informieren,

        Jaja, ich weiss, dass man sich nicht wirklich auf den Referer verlassen kann, weil er vom Client beliebig gesetzt werden kann.

        bevor Du unsinnige und kontraproduktive Ratschläge gibst.

        Zitat: Ich könnte Dir dazu jetzt etwas sagen, aber ...

  3. Hello,

    zertifiziertes Post-Verfahren

    Und keinesfalls GET für derartige Dinge. Das ist doch in jedem Browser ohne irgendwelche weiteren Kenntnisse zu simulieren.

    Gegen die Posts kannst Du dich dann ggf. auch nich wehren, aber Du kannst sie vor der Weiterverarbeitung bewerten und Fehlbedienungen (willentlich oder versehentlich) müssen dann eben nicht weiterverarbeitet werden.

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau

    1. Hallo!

      Hello,

      zertifiziertes Post-Verfahren

      Was ist das ?

      mfg
        frafu

      1. Hello,

        zertifiziertes Post-Verfahren

        Was ist das ?

        Das wurde hier heute schon in einem Thread bearbeitet.
        Bitte lies ein wenig. Ich weiß im Moment nicht, wo es geblieben ist.

        Harzliche Grüße vom Berg
        http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau

  4. Hallo Matti,

    um das automatische Ausfuellen von Formularen "fast" unmoeglich zu machen, kann man Captcha einsetzen.

    Gruesse Norbert

    1. Hello,

      um das automatische Ausfuellen von Formularen "fast" unmoeglich zu machen, kann man Captcha einsetzen.

      Nö, gegen das Ausfüllen und den Post hilft das gar nichts.
      Das hilft nur gegen die fälschliche Weiterverarbeitung

      Aber da hatte ich heute schon einen anderen Vorschlag genannt, den ich schon mehrfach benutzt habe und der bisher überall funktioniert. Der ordentliche User merkt nichts davon. Nur der Bot wird verarscht.

      Harzliche Grüße vom Berg
      http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau

  5. hallo,

    geflutet!

    du könntest einen Flood Blocker implementieren: Ip-Adresse festhalten; wenn innerhalb sehr kurzen Zeitabständen zu viele Anfragen von der selben Ip-Adresse kommen sollten (zB. Zeitabstand zw. 2 Anfragen >= 1/10s) ; dann Skript abbrechen; evtl. Fehlermeldung zurückgeben.

    Dieses Vorgehen kann aber, wenn die Zeitabstände ungünstig definiert sind, und in manchen Ausnahmefällen grosse Proxy-Server ausschliessen (es kann ja _mal_ vorkommen, dass gleichzeitig 100 AOL-Benutzer sich registrieren wollen, die alle die selbe AOL-Proxy benutzen).

    Grüße aus Berlin,

    tufi

  6. HI,

    1.IP merken - in DB, Datei, Cooki ...speicher und wenn mehr als 5 mal von gleicher IP Zwangspause 30 Sekunden.

    2.Zahlencode (BILD) als Schutzeingabe.

    3.Angreifer IP in .htaccess ausschließen

    Simone