Anzeige - [Hier werben / Mediadaten]
(?) Tags raten (?) (edit)
 
Reply to this topicStart new topicStart Poll
> Hilfe, Robot spamt mein Kontaktformular, Woher kommt das?
Eckbert2
Geschrieben am: So 13.11.2005, 23:45
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 85
Mitglied seit: 20.01.2005


deleted
Top
PMEmail Poster
Top
 
 
sd12
#2 Geschrieben am: So 13.11.2005, 23:53 (+00:08)
Report PostQuote Post

AyomRank 9
Group Icon

Gruppe: Moderatoren
Beiträge: 3581
Mitglied seit: 3.03.2004


Achte darauf, das dein Formular nicht zu Versand von Spam verwendet wird.


--------------------
************************
Treiber f[r das Kezboard ist [berfl[ssig.
Top
PMEmail PosterICQMSN
Top
 
Thomas G.
#3 Geschrieben am: Mo 14.11.2005, 00:41 (+00:47)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 125
Mitglied seit: 11.10.2005


Genau das gleiche Problem hatte/habe ich auch.

Bekam in den letzten Tagen jede Nacht unzählige Spams, die über meine Kontaktformulare abgeschickt wurden.

Ich habe das Problem nun gelöst (habe seit ca. 48 Stunden keinen Spam mehr erhalten) in dem ich im Formular einen hidden-field eingebaut habe, dass eine Zufallszahl ausgibt, die für 60 Minuten gültig ist.

Bevor das Formular abgeschickt wird, wird überprüft ob die Zufallszahl noch gültig ist. Falls ja, wird abgeschickt. Falls nein, wird nicht abgeschickt.

Der Spamrobot hat keine Möglichkeit zu wissen, wie die aktuelle Zufallszahl heißt (MD5 in Kombination mit der time()-Funktion).

Kann dir das gerne genauer per MSN/ICQ/eMail erklären, falls du möchtest.

Gruß
Thomas


--------------------
kenow.de:
» Keywords
» Neu dabei
Top
PMUsers Website
Top
 
sd12
#4 Geschrieben am: Mo 14.11.2005, 01:48 (+01:07)
Report PostQuote Post

AyomRank 9
Group Icon

Gruppe: Moderatoren
Beiträge: 3581
Mitglied seit: 3.03.2004


QUOTE (Thomas G. @ Mo 14.11.2005, 0:41)
im Formular einen hidden-field eingebaut habe, dass eine Zufallszahl ausgibt, die für 60 Minuten gültig ist.

Bevor das Formular abgeschickt wird, wird überprüft ob die Zufallszahl noch gültig ist. Falls ja, wird abgeschickt. Falls nein, wird nicht abgeschickt.

Einfache aber wirksame Lösung...


--------------------
************************
Treiber f[r das Kezboard ist [berfl[ssig.
Top
PMEmail PosterICQMSN
Top
 
maba
markusbaumi.ch
#5 Geschrieben am: Mo 14.11.2005, 12:09 (+10:20)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 172
Mitglied seit: 21.11.2004


Ich wäre froh, wenn du die Mothode öffentlich erläutern könntest, denn ich habe seit einigen Tagen genau das Gleiche Problem. Und wenn man in Google nach der Mailadresse sucht, sieht man, dass unzählige weiter auch davon betroffen sind.
Top
PMUsers Website
Top
 
Josh
#6 Geschrieben am: Mo 14.11.2005, 12:20 (+00:11)
Report PostQuote Post

AyomRank 9
Group Icon

Gruppe: Moderatoren
Beiträge: 2143
Mitglied seit: 19.10.2003


Die Methode klingt wirklich sehr interessant. Bitte erläutern! :-)


--------------------
Mein letztes Projekt: Atelier-Schmuck.ch

"Das habe ich nie getan und werden es auch nie wieder tun!" :lol:
Top
PMEmail PosterUsers WebsiteICQ
Top
 
Zbigi
#7 Geschrieben am: Mo 14.11.2005, 13:31 (+01:10)
Report PostQuote Post

AyomRank 3
******

Gruppe: Member (aktiv)
Beiträge: 36
Mitglied seit: 14.10.2004


Eine andere, etwas einfachere Methode ist bestimmte Felder an Bedingungen zu knüpfen. Z.B: bei der Tel-Nr müssen es unbedingt Zahlen sein und keine Buchstaben, Vorname und Name darf nur Buchstaben und kein @ enthalten etc. Schliesst Missbrauch nicht zu 100% aus, verringert ihn aber stark.
Top
PMEmail Poster
Top
 
Thomas G.
#8 Geschrieben am: Mo 14.11.2005, 14:47 (+01:16)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 125
Mitglied seit: 11.10.2005


CODE
$timestamp = time();
 $zahl = date("d",$timestamp);
 $check1 = md5($zahl);



Ins Formular baue ich folgendes Feld ein:

CODE
<input type="hidden" name="Spk" value="';
  echo $check1;
 echo'">


Bevor das Formular abgeschickt wird (also vor der mail()-Funktion) kommt folgende Abfrage:

QUOTE
if($_POST["Spk"] == $check1)


--------------------
kenow.de:
» Keywords
» Neu dabei
Top
PMUsers Website
Top
 
rene76
#9 Geschrieben am: Mo 28.11.2005, 21:59 (+14d 07:12)
Report PostQuote Post

AyomRank 2
****

Gruppe: Member (aktiv)
Beiträge: 22
Mitglied seit: 21.03.2005


Hallo

Ich hatte das Problem auch. Nun habe ich dieses Script gefunden:

Captcha mit PHP, GDlib und FreeType

Es funktionier bei mir fast tadellos, bis auf die Absender eMail-Adresse. Ich weiss nicht wie ich die da rein bringe:

CODE
       $suchen = "\r";      
       $ersetzen = "\n";
       $kommentarp = str_replace($suchen,$ersetzen,$_POST["memo"]);
       $betreff = $_POST['betreff'];
       
       //DE: Ausfuehren der Mailfunktion
       if(mail($empfaenger,$betreff,
       "
Name: ".$_POST["name"]."
eMail: ".$mail."
Memo: ".$kommentarp."
Datum und Zeit: $datum
       ")){
       print('Der Versand war erfolgreich');
       }
       
   }
   else {
       print('BITTE PRUEFEN SIE IHRE EINGABE IM SICHERHEITSFELD');
   }
}


Hat da jemand eine Idee?
Top
PMEmail Poster
Top
 
Thomas G.
#10 Geschrieben am: Mo 28.11.2005, 22:04 (+00:04)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 125
Mitglied seit: 11.10.2005


CODE
       $suchen = "\r";      
       $ersetzen = "\n";
       $kommentarp = str_replace($suchen,$ersetzen,$_POST["memo"]);
       $betreff = $_POST['betreff'];
       $empfaenger = "deine-email-adresse@domain.com";
       //DE: Ausfuehren der Mailfunktion
       if(mail($empfaenger,$betreff,
       "
Name: ".$_POST["name"]."
eMail: ".$mail."
Memo: ".$kommentarp."
Datum und Zeit: $datum
       ")){
       print('Der Versand war erfolgreich');
       }
       
   }
   else {
       print('BITTE PRUEFEN SIE IHRE EINGABE IM SICHERHEITSFELD');
   }
}



Nun sollte das Formular auch bei dir ankommen,


--------------------
kenow.de:
» Keywords
» Neu dabei
Top
PMUsers Website
Top
 
rene76
#11 Geschrieben am: Di 29.11.2005, 18:08 (+20:03)
Report PostQuote Post

AyomRank 2
****

Gruppe: Member (aktiv)
Beiträge: 22
Mitglied seit: 21.03.2005


Das Formular kommt schon an. Nur leider wird die eMail-Adresse vom Absender nicht als Absender eMail-Adresse angezeigt. Woran könnte das liegen?
Top
PMEmail Poster
Top
 
manuel
#12 Geschrieben am: Di 29.11.2005, 19:08 (+01:00)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 261
Mitglied seit: 14.01.2004


@ thomas die gleiche Idee hatte ich auch. ich habe den Spass alerdings noch weiter getrieben in dem alle Felder eine md5summe bekommen haben.

es gibt aber 2 Probleme an der Geschichte

1. ein normaler Benutzer kommt um 13:59 auf die kontakt Seite, wartet etwas und füllt das Formular dann um 14:30 komplett aus und schickt es ab.
-> es ist nicht mehr gültig also den ganzen "sch***" nochmal ausfüllen

2. jemand der ein wenig was in der Birne hat kommt halt 1 Sekunde bevor er Spam verschickt auf deine Seite holt sich die Feldnamen und es mit den entsprechenden Werten ab.

was viel wirkungsvoller ist: Die Eingabe genau prüfen. z.B. mein Feld hat maxlength 50 und wenn ich eine Variable bekomme wo mehr als 50 Zeichen drin stehen dann schmeiss ich die ganze Sache einfach weg.

Das beste wäre Vermutlich man würde einen Zufallsstring im Formular verstecken und noch die Felder 100% prüfen.

Code Schnipsel
CODE
<?php
$mail_feldname = md5 (date('d.m.Y H') . ' mail name');
if (isset($_POST[$mail_feldname])) {
 echo 'Feldname OK eMail verschicken';
} else {
 echo 'Formular ausgeben';
 echo '<input name="'.$mail_feldname.'">';
}
?>



@ rene davon rate ich mal ab die mail als absender einzutragen das würde in etwa so aussehen

mail($empfeanger, $betreff, $text, "From: Absendername <Absendermail>");

Wobei die Variablen Absendername und Absendermail 100% geprüft werden müssen (keine Umbrüche ...)
Top
PM
Top
 
hatschi1810
#13 Geschrieben am: Di 29.11.2005, 22:15 (+03:07)
Report PostQuote Post

AyomRank 6
Group Icon

Gruppe: Experten Entwicklung (Mod)
Beiträge: 638
Mitglied seit: 20.01.2004


Es schadet auch nicht nach gewissen Wörter zu suche

CODE

function isDangerous($str)
{
if (eregi('Content-Type', $str))
return true;

if (eregi('multipart/mixed', $str))
return true;

if (eregi('bcc:', $str))
return true;

return false;
}


Gegen Mail Injection sollte ich noch irgendwo eine Klasse haben, vielleicht finde ich die morgen

Top
PMEmail Poster
Top
 
Danny Pham
Crossbits GmbH
#14 Geschrieben am: Di 29.11.2005, 22:25 (+00:09)
Report PostQuote Post

AyomRank 3
******

Gruppe: Member (aktiv)
Beiträge: 46
Mitglied seit: 21.11.2005


QUOTE (rene76 @ Di 29.11.2005, 18:08)
Das Formular kommt schon an. Nur leider wird die eMail-Adresse vom Absender nicht als Absender eMail-Adresse angezeigt. Woran könnte das liegen?

Statt $mail einfach $_POST["mail"] verwenden.
Top
PMEmail PosterUsers Website
Top
 
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/9119

Topic Options Reply to this topicStart new topicStart Poll

 


> Ähnliche Themen
Kleine DB-Hilfe gewünscht? Japs 124 6 Fr 21.11.2008, 17:12
Mein Anime Forum DGonline 211 7 Do 20.11.2008, 22:05
PTC-Hilfe.de Hilfe zum Thema Pay to Click Zak 86 0 Di 4.11.2008, 21:42
Ich brauche Hilfe zu Suchmaschinen! xe0n 180 5 Do 30.10.2008, 15:09
Hilfe zum Thema "Kontaktformular" einsteiger 543 23 Mo 13.10.2008, 16:38
(S) TFT-Monitor HILFE Mark_L 173 7 Mi 1.10.2008, 23:10
Sprach-Hilfe Marc3l 410 19 So 28.09.2008, 13:43
Mein Webshop Kay6079 326 6 So 21.09.2008, 18:12
Hilfe bei Cookies! xe0n 195 5 So 21.09.2008, 01:57




Anzeige - [Hier werben / Mediadaten]



Anzeigen


[Hier werben / Mediadaten]