CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
14.04.2014, 01:08:40
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit SPAMern
Zitat:
Zitat von vt1816
Erledigt!
|
Danke. mail() ist die übelste Erfindung seit dem es Dosenfleisch der Marke SPAM gibt. In meiner php.ini steht ua.
Code:
disable_functions = mail
Eventuell mal ein Beispiel basteln, wie man mit phpmailer und SMTP-Auth sauber und ohne Hintertürchen ein Kontaktformular bedient.
|
14.04.2014, 10:19:25
|
Member
|
|
Registriert seit: Mar 2004
Ort: wien
Beiträge: 512
|
|
AW: Probleme mit SPAMern
Zitat:
Zitat von spiritlive
Das ist eine Antwort, die mich wieder fröhlicher stimmt und mich hoffen läßt.
Ob das Skript nun Schrott ist oder nicht, kann ich leider (noch?) nicht beurteilen
und verlaß mich da auf euer Urteil.
|
Hallo
Nun habe ich deinen Code leider nicht gesehen, schliesse aber aus den Erklärungen von Meikel folgendes: Solange dein Script so läuft, ist es alles Andere als ein Grund zum fröhlich sein.
Kleinere Denkanstösse (also nur gut gemeint)
Die Funktion mail() versendet nur, aber prüft nicht, ob alles mit rechten Dingen zugeht. Bsp:
PHP-Code:
$email = 'tralala@tripstrü.tld';
mail($email.... sendet ein Mail an besagte Mailadresse.
Mache ich nun aus $email folgendes:
PHP-Code:
$email = 'tralala@tripstrü.tld'."\n".'Mail1@bla.tld'."\n".'Mail2@bla.tld'......
Sende ich an alle angehängten Mailadressen ein mail. Spamscripten ist es ein leichtes, deine Mailadresse zu manipulieren.
Vor dem Versand also:
PHP-Code:
if(stristr($email,"\r") or (stristr($email,"\n"))) $error = 'da wurde was an den Mailadressen gepfuscht......';
um http im Mailtext abfangen zu können ist stristr ebenfalls tauglich.
PHP-Code:
if(stristr($message,'http://')) $error ='http im Mailtext gefunden...';
Der Gut gemeinte Tip, nimm was anderes, ist deshalb gut gemeint, weil du offensichtlich als Anfänger (logischer Weise) keine Ahnung hast, auf was du aufpassen musst und was unbedingt zu prüfen ist. Zu allem Überfluss fehlt dann auch noch das Wissen, wie man richtig prüft.
Im Gegensatz zu Meikel finde ich die Funktion mail schomn ganz ok, man muss aber wissen, was man tut (obwohl man auch da oftmals sein blaues Wunder erleben kann) wenn man sie einsetzt.
Dein Provider wird sich masslos freuen, wenn sein Mailserver auf die Sperrliste kommt, weil du ein Script einsetzt, das auf gutem Glauben an die Nettiquette aufgebaut ist.
__________________
Gruss sys ;-)
Ich möchte wie mein Grossvater sterben, lächelnd und schlafend, nicht schreiend und weinend, wie sein Beifahrer.
|
14.04.2014, 16:09:13
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit SPAMern
Zitat:
Zitat von sysop
Mache ich nun aus $email folgendes:
PHP-Code:
$email = 'tralala@tripstrü.tld'."\n".'Mail1@bla.tld'."\n".'Mail2@bla.tld'......
Sende ich an alle angehängten Mailadressen ein mail. Spamscripten ist es ein leichtes, deine Mailadresse zu manipulieren.
|
Sinngemäß gilt das für alle Bestandteile des MsgHeaders, die mit mail() bedient werden können:
Im Header ist zudem nur 7bit US-ASCII gestattet - da fallen alle Betreffs und Emailnamen mit Umlauten jedem SPAM-Filter sofort und unangenehm auf.
Und da die erste Leerzeile (genau wie beim HTTP) das Ende des Headers und der Rest den Body/Inhalt darstellt, riecht man schon die Einflugschneise für SPAM. Und wie oft sowas ausgenutzt wird, erkennt man am Täglich-SPAM im Postfach.
Fast der gesamte SPAM, der täglich unverlangt verschickt wird, basiert entweder auf beschrubbten Kontaktformularen, unsicheren Mailscripten oder gekaperten Emailaccounts, weil die IP böser und absichtlicher SPAM-Server sofort in den Datenbanken landen und somit innerhalb kürzester Zeit geblockt werden.
Zitat:
Im Gegensatz zu Meikel finde ich die Funktion mail schomn ganz ok, man muss aber wissen, was man tut (obwohl man auch da oftmals sein blaues Wunder erleben kann) wenn man sie einsetzt.
|
mail() kennt kein SMTP-Auth. Leider steht genau das nicht mit im Header. Sonst wärs ja einfach: "Lösch alles, was nicht per SMTP-Auth im Postamt landet."
Zitat:
Dein Provider wird sich masslos freuen, wenn sein Mailserver auf die Sperrliste kommt, weil du ein Script einsetzt, das auf gutem Glauben an die Nettiquette aufgebaut ist.
|
Jo... Seitdem mache ich nen großen Bogen um Scripte, die "von einer Horde" verbrochen werden u/o wurden.
|
14.04.2014, 16:39:52
|
SELFPHP Experte
|
|
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
|
|
AW: Probleme mit SPAMern
Zitat:
mail() kennt kein SMTP-Auth.
|
Doch, kennt es.
Allerdings nur "Systemweit", wenn ich das mal so nennen darf.
In den allermeisten Fällen, wird es auf sendmail (oder einen seiner clones) zurückgreifen.
Und bei dem ist, als lokaler Prozess, keine (weitere) Authentifizierung nötig.
Naja......
Bei mehreren gehosteten Domains ist das wiederum auch nicht so einfach/toll handhabbar.
Manche Hoster sperren alle "unnötigen" Ports für PHP Prozesse. Auch SMTP. Dann gehts nur über sendmail.
Konsequenter Weise bieten der PHPMailer, ZendMail und auch der Swiftmailer die Möglichkeit die mail() funktion zu nutzen. Teilweise kann auch sendmail direkt genutzt werden.
Aber nichts desto trotz helfen die genannten Mailer Klassen die mail() Parameter "sauber" zu halten. Und damit die SPAM Gefahr zu senken.
Die größte Fehlerquelle sitzt weiterhin vor dem Monitor.
|
14.04.2014, 17:40:35
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit SPAMern
Zitat:
Zitat von DokuLeseHemmung
Doch, kennt es.
Allerdings nur "Systemweit", wenn ich das mal so nennen darf.
|
Wat nutzt das auf nem Host mit (sagen wir mal) 100 unterschiedlichen Domains? Ich meine hier nicht die systeminterne mail von popeluser4711@localhost an root@localhost.
Mail verlangt nicht zwingend Benutzername und Paßwort für den betreffenden SMTP Server nach RFC2554 und könnte damit auch nicht umgehen. Damit ist mail untauglich. Außerdem isses sehr fricklig, der mail noch nen envelope header zu verpassen. Den 5. Parameter gibts nur bei safe_mode = Off, auf wenn der safe_mode seit PHP 5.3.x Geschichte ist.
Zitat:
Manche Hoster sperren alle "unnötigen" Ports für PHP Prozesse. Auch SMTP. Dann gehts nur über sendmail.
|
Das ist leider unklug, weil gerade sendmail in der normalen Betriebsart Mails mit gefälschtem Absender bedenkenlos frißt. Und das:
Code:
sendmail_path = /usr/sbin/sendmail -t -i
will ein normaler Root überhaupt nicht zulassen, daß ein PHP Script in /usr/sbin ein Shellprogramm ausführen darf. Normalerweise steht der übliche sendmail_path nicht mit in der open_basedir Liste drin und damit scheißt der Versuch, sendmail zu verwenden, mangels erforderlicher Rechte voll aufs Brett.
Zitat:
Konsequenter Weise bieten der PHPMailer, ZendMail und auch der Swiftmailer die Möglichkeit die mail() funktion zu nutzen. Teilweise kann auch sendmail direkt genutzt werden.
|
Genau das ist eine trügerische Sicherheit, weil mail() eben nicht garantiert - garantieren will und kann - daß die Email ausschließlich nur via SMTP Auth ins System flattert. Spätestens dann, wenn ein wildgewordenes Script 100.000 Mails an genauso viel Empfänger mit dem Absender wwwrun@localhost oder unknown@example.com erzeugt und los wird, hat man 100.000 neue Feinde.
Zitat:
Aber nichts desto trotz helfen die genannten Mailer Klassen die mail() Parameter "sauber" zu halten. Und damit die SPAM Gefahr zu senken.
|
Nicht ganz richtig: weil die beiden Mailerklassen zumindest syntaktisch korrekte Emails generieren, verhindern sie lediglich, daß der mit diesen Klassen eventuell erzeugte SPAM noch automatisch erkannt werden kann. SPAM versenden kann man mit phpmailer, Swift und (send)mail. Erkennen kann man den Schrott nur dann, wenn er fehlerhaft ist. Und fehlen die Fehler, muß man sich den Kram vor dem Löschen erst durchlesen.
Zitat:
Die größte Fehlerquelle sitzt weiterhin vor dem Monitor.
|
Wo sonst, wenn nicht da...
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:37:51 Uhr.
|