PHP Spam Schutz mit $_Post

Sammler

Well-known member
ID: 17948
L
23 Januar 2007
65
0
Bekam heute eine Mail vom Hoster, das eines meiner Script gesperrt wurde, weil es SpamMails versendet haben soll.

Ich schrieb natürlich gleich zurück das kann nicht sein, da ich das Script abgesichtert hab.

In dem Script war auch ein Mail versenden befehl, wo ich direkt eine Mail bekomme, wenn das Script ausgeführt wird. Aber ich bekam keine, auch in der Datenbank, die das Script füttert ist nix gelandet.

Zu nun zum Script
Einfache Mathe Aufgabe wieviel ist 12+6
Intern wird das Ergebnis per hidden field übergeben
Der nutzer muss dann z.B. die 18 in das Ergebnis Feld eintragen.

Per $_Post wird das alles übergeben.
Dann werden die Zahlen geprüft und wenn alles passt, wird das Script ausgeführt, inklusive der Mail an mich und den Eintrag in der DB.

Der Support meinte nun, das Script wurde von einer Russischen IP mit POST ausgeführt.

Kann man von einem Fremden Server an meinen Einbefehl senden ?
Quasi so

POST mit Varibale Senden und für Spam1 = 18 und Spam2 = 18 ?
Geht sowas ?

also hinweis.php?spam1=18&spam2=18&submit=ok
Kann man so einfach das Catchpa austricksen ?

Wenn ja, dann muss ich das ganze wohl über die Mysql DB machen, Zahl direkt eintragen und dann beim Senden wieder auslesen.
 
Klar geht das, alles was dein Browser bei "normaler" Nutzung an dein Skript schickt, kann natürlich auch von einem fremden Skript an dein Skript übertragen werden.
Und wenn du sowohl die eingegebene als auch die korrekte Lösung vom Browser an das Skript schicken lässt, kann da auch jeder einfach zwei gleiche Zahlen eintragen und damit deinem Skript vorgaukeln, es wäre ein Captcha gelöst worden.

Besser wäre es, im Hiddenfeld nur einen Wert zu übergeben, mit dem du die richtige Antwort auf dem Server nachschlagen kannst (in einer Datenbanktabelle, Datei, wie auch immer).

Aber wenn du sagst, dein Skript sollte eigentlich nur an dich selbst Mails verschicken, und Daten in eine Datenbank eintragen, dann muss da ja noch mehr im Argen sein, wenn dort nichts gelandet ist, dein Hoster aber Mailversand durch das Skript festgestellt hat...
 
wir sind der Lösung auf der Spur
Wie ich vermutet hab, war nicht das Script schuld.
Hab es einfach mal selbst durchlaufen lassen, mail kam bei mir an, und Datenbank wurde gefüttert.

Ich hab kurz vorher eine Infomail an paar User geschickt.
1min später kam die Sperre :D

Es war eine ganz andere Datei, und ich selbst hab den Versand veranlasst.
Finde es nur etwas schwach, das die in derem System nur sehen, viele Mails, wir sperren mal einfach irgend eine Datei wo ein Mail befehl drin ist....

Aber trotzdem gut zu wissen, das diese Art von Catchpa unsicher ist.
Werd ich dann mal umbauen.

Fazit, die haben mich völlig umsonnst mit so einer Nachricht erschreckt ;)