{"id":6773,"date":"2015-08-07T14:11:22","date_gmt":"2015-08-07T12:11:22","guid":{"rendered":"https:\/\/blog.andere-sichtweise.de\/?p=6773"},"modified":"2015-08-07T14:11:22","modified_gmt":"2015-08-07T12:11:22","slug":"i-am-a-spammer","status":"publish","type":"post","link":"https:\/\/blog.andere-sichtweise.de\/?p=6773","title":{"rendered":"I am a SPAMMER &#8230;"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"https:\/\/blog.andere-sichtweise.de\/wp-content\/uploads\/2015\/08\/I_am_SPAM.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full wp-image-6774\" src=\"https:\/\/blog.andere-sichtweise.de\/wp-content\/uploads\/2015\/08\/I_am_SPAM.jpg\" alt=\"I am a SPAMMER\" width=\"175\" height=\"175\" srcset=\"https:\/\/blog.andere-sichtweise.de\/wp-content\/uploads\/2015\/08\/I_am_SPAM.jpg 175w, https:\/\/blog.andere-sichtweise.de\/wp-content\/uploads\/2015\/08\/I_am_SPAM-150x150.jpg 150w\" sizes=\"auto, (max-width: 175px) 100vw, 175px\" \/><\/a>Verdammt &#8230; lange, lange ist&#8217;s her, dass ich hier geschrieben habe, aber nun habe ich mir vorgenommen, den Blog wieder aufleben zu lassen. Vielleicht komme ich sp\u00e4ter auch noch einmal dazu, zu schreiben warum hier so lange Pause war, aber das ist jetzt erst einmal eine g\u00e4nzlich andere Geschichte.<\/p>\n<p style=\"text-align: justify;\">Leider hat die lange Blogpause und genau zu meinem momentanen Problem gef\u00fchrt, denn ich habe nicht nur nicht gebloggt, sondern ich habe mich auch generell nicht wirklich um meinen kleinen Server gek\u00fcmmert und genau das hat sich jetzt ger\u00e4cht.<\/p>\n<p style=\"text-align: justify;\">Was passiert, wenn man sich nicht um seinen Server k\u00fcmmert? Genau! Die eventuell existierenden Schwachstellen werden fr\u00fcher oder sp\u00e4ter ausgenutzt. Jupp&#8230; genau das scheint hier passiert zu sein, denn mein Server hat massenhaft Spam-Mails rausgeschoben.<\/p>\n<p style=\"text-align: justify;\"><!--more--><\/p>\n<p style=\"text-align: justify;\">Doch mal langsam und von Vorne &#8230; am 25.07. habe ich eine Benachrichtigung vom Abuse-Team meines Hosters erhalten, dass mein Server als Spam-Schleuder gemeldet wurde und dass ich hier reagieren solle. Anfangs habe ich das ja noch f\u00fcr einen schlechten Schwerz gehalten, aber ruckizucki kamen auch schon die n\u00e4chsten Meldungen \u00fcber das Abuse-Team und nun wusste ich, dass ich hier aktiv werden musste. Doch wo f\u00e4ngt man hier genau an? Bisher ist mir ja so ein Mist nicht passiert und da habe ich ein wenig kopflos reagiert. Mein erster Schritt: Erst einmal die installierten Packages auf den aktuellen Stand bringen.<\/p>\n<p style=\"text-align: justify;\">Und da war auch schon mein erster Fehler &#8230; in der ganzen Panik habe ich mir nat\u00fcrlich nicht genau \u00fcberlegt, was ich wie aktualisieren wollte bzw. was ich vielleicht mal vorher sichern sollte. Und nachdem die ersten Updates installiert waren, da traten auch schon die ersten schwerwiegenden Fehler auf :-? . Als erstes lief der Web-Server nicht mehr richtig und nachdem ich den wieder einigerma\u00dfen hingebogen bekommen habe, musste ich feststellen, dass PHP nicht mehr korrekt eingebunden war :big_ooh_ang: .<\/p>\n<p style=\"text-align: justify;\">Irgendwann lief dann der Web-Server wieder und PHP war auch wieder korrekt eingebunden, aber die SQL-Datenbank wurde nicht mehr angesprochen und lie\u00df sich auch nicht mehr starten. So nach und nach musste ich nur noch den Reparaturen hinterlaufen und da war es einfacher, die Sache mal strukturierter anzugehen. Also kurzer Hand eins der letzten Backups eingespielt (vom 19.07.) und dann mal direkt aufger\u00e4umt. <strong>MIST!<\/strong> Das war dann die n\u00e4chste Kurzschlussreaktion!\u00a0 :big_ooh_ang:<\/p>\n<p style=\"text-align: justify;\">Durch das Zur\u00fcckspielen des Backups waren die Probleme zwar alle wieder weg und ich konnte den Server wieder absichern, aber so habe ich leider nat\u00fcrlich auch s\u00e4mtliche Log-Files verloren. Also eine saubere Forensik geht definitiv anders! Hei\u00dft &#8230;. ich habe keine Ahnung, wie jetzt nun wirklich der Spam \u00fcber meinen Server verbreitet wurde. <strong>Verdammt!<\/strong><\/p>\n<p style=\"text-align: justify;\">Egal &#8230; jetzt ging es erst einmal an&#8217;s Absichern.<\/p>\n<ul>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 1:<\/strong><\/span> <em><span style=\"color: #0000ff;\">soweit es geht die installierten Packages auf den aktuellsten Stand bringen<\/span><\/em><br \/>\nIch habe also soweit die Packages aktualisiert, aber den Web-Server, die PHP-Installation, den SQL-Server und den Mail-Server habe ich hier erst einmal ausgespart. Nachdem ich mir die neue Packages mal genauer angeschaut hatte, musste ich feststellen, dass meine genutzten Versionen schon auf einem recht aktuellen Stand waren und somit kann ich mir die sp\u00e4ter vornehmen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 2:<\/strong><\/span> <em><span style=\"color: #0000ff;\">komplett Aktualisierung der eingesetzten CMS<\/span><\/em><br \/>\nIch habe hier also sowohl die Grundinstallationen, als auch die eingesetzten Plugins auf den jeweils aktuellsten Stand gebracht. Nat\u00fcrlich habe ich vorher jeweils ein Backup angelegt und nach der Aktualisierung ebenfalls ein neues Backup erstellt.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 3:<\/strong><\/span> <em><span style=\"color: #0000ff;\">ALLE eMail-Passw\u00f6rter\u00a0<\/span><\/em><span style=\"color: #0000ff;\"><i>aktualisiert<\/i><\/span><br \/>\nS\u00e4mtliche Kennw\u00f6rter aller Mailboxen wurden komplett aktualisiert. Hier wurden jetzt keine Passw\u00f6rter mehr &#8222;<em>gebaut<\/em>&#8222;, sondern es wurden Zufallspassw\u00f6rter mit Hilfe eines Passwortgenerators generiert, die eine neue gr\u00f6\u00dfere Mindestl\u00e4nge haben und aus s\u00e4mtlichen Zeichen (gro\u00df, klein, Zahlen, Sonderzeichen) bestehen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 4:<\/strong><\/span> <em><span style=\"color: #0000ff;\">Alte\/Unbenutzte eMail-Boxen abgeschaltet<\/span><\/em><br \/>\n&#8230; und nicht nur abgeschaltet, sondern komplett vom System entfernt inklusive s\u00e4mtlicher zugeh\u00f6riger Dateien und Eintr\u00e4ge in s\u00e4mtlichen Configs.<\/li>\n<li style=\"text-align: justify;\"><strong><span style=\"text-decoration: underline;\">Schritt 5:<\/span>\u00a0<\/strong><em><span style=\"color: #0000ff;\">Alte\/Unbenutzte User vom Server\u00a0abgeschaltet<\/span><br \/>\n<\/em>&#8230; und auch hier &#8230; nicht nur abgeschaltet, sondern komplett entfernt inklusive s\u00e4mtlicher zugeh\u00f6riger Dateien und Eintr\u00e4ge in s\u00e4mtlichen Configs.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 6:<\/strong><\/span> <span style=\"color: #0000ff;\"><em>Alte\/Unbenutzte Virtual Hosts aus dem WebServer entfernt<\/em><\/span><br \/>\n&#8230; abgeschaltet und aus der Config entfernt &#8230;<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 7:<\/strong><\/span><span style=\"color: #0000ff;\"><em> einen Sendmail-Wrapper zwischengeh\u00e4ngt<\/em><\/span><br \/>\nUm zu sehen, von wo aus gemailt wurde, habe ich einen Sendmail-Wrapper vor Sendmail geschaltet. Wie genau ich das gemacht habe, kann man unten unter &#8222;Sendmail-Wrapper&#8220; sehen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 8:<\/strong><\/span><span style=\"color: #0000ff;\"><em> Alte\/Unbenutze Webmail-Seiten abgeschaltet<\/em><\/span><br \/>\n&#8230;und auch hier wieder &#8230;. abgeschaltet, archiviert und dann komplett gel\u00f6scht.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 9:<\/strong><\/span><span style=\"color: #0000ff;\"><em> Full-Virus-Scan<\/em><\/span><br \/>\nAuf allen Rechnern, die mir direkt unterstehen, einen vollen Virenscan laufen lassen und die Leute, die bei mir eMail nutzen, aber wo ich nicht an den Rechner komme, informiert, dass sie auch einen vollen Scan laufen lassen sollen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 10:<\/strong><\/span><span style=\"color: #0000ff;\"><em> die komplette Einstellung des MailServer gepr\u00fcft<\/em><\/span><br \/>\nAlle Configs und Mod-Files gepr\u00fcft, um hier eine Fehlkonfiguration auszuschlie\u00dfen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 11:<\/strong><\/span> <span style=\"color: #0000ff;\"><em>Alte G\u00e4steb\u00fccher abgeschaltet<\/em><\/span><br \/>\nTeilweise waren hier noch selbstprogrammierte, alte G\u00e4steb\u00fccher auf dem Server, die teilweise auch eine Info-Mail rausgeschickt haben, wenn ein neuer Eintrag vorlag. Diese G\u00e4steb\u00fccher habe ich abgeschaltet und vom Server gel\u00f6scht.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 12:<\/strong><\/span><span style=\"color: #0000ff;\"><em> Alte Mail-Queue gepr\u00fcft<\/em><\/span><br \/>\n&#8230; die sollte ja komplett leer sein, da ich ja dummerweise ein altes Backup eingespielt hatte &#8230; aber sicherheitshalber noch mal gepr\u00fcft, dass hier nicht noch massenhaft Spammails in der\u00a0Queue standen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 13:<\/strong><\/span><span style=\"color: #0000ff;\"><em> Alle eingesetzten\/benutzen CGI-Verzeichnis gepr\u00fcft<\/em><\/span><br \/>\n\u00dcberpr\u00fcft, ob und welche CGI-Verzeichnis auf dem Server eingebunden sind und dann geschaut, was dort so f\u00fcr Scripte lagen.<\/li>\n<li style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>Schritt 14:<\/strong><\/span><span style=\"color: #0000ff;\"><em> Alte\/Unbenutzte Domains zur\u00fcckgegeben<\/em><\/span><br \/>\nEinige alte\/unbenutzte Domains gek\u00fcndigt und zur\u00fcckgegeben und diese dann nat\u00fcrlich auch aus den entsprechenden Configs f\u00fcr Mail und Web entfernt.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Alles reichlich viele Schritte und das war alles auch nicht ganz so easy und reichlich Arbeit, aber ich war ja auch selbst Schuld. Wie auch immer &#8230; das ganze ist jetzt schon eine Weile her und bisher scheint es funktioniert zu haben. Bisher scheinen keine Spam-Mails mehr \u00fcber meinen Server verteilt zu werden, was ja schon einmal beruhigend ist.<\/p>\n<p style=\"text-align: justify;\">Bevor ich nun noch zu einem weiteren Punkt komme &#8230; die Reputation im Netz, schreibe ich erst einmal was zu meinem Sendmail-Wrapper.<\/p>\n<h4>Sendmail-Wrapper<\/h4>\n<p style=\"text-align: justify;\">Im Regelfall wird ja Sendmail benutzt, um Mails vom Server zu verschicken. Sowohl PHP als auch Perl nutzen im Regelfall Sendmail und somit wollte ich mal &#8222;tracken&#8220;, was genau sendmail benutzt. Hierzu habe ich mir einen Wrapper aufgesetzt. Hier mal Schritt f\u00fcr Schritt das Ganze:<\/p>\n<ol>\n<li>mit <em><span style=\"color: #339966;\">which sendmail<\/span><\/em> rausfinden, wo sendmail liegt (bei mir \/usr\/sbin\/)<\/li>\n<li>mit <em><span style=\"color: #339966;\">which sh<\/span><\/em> rausfinden, wo sh liegt (bei mir \/bin\/)<\/li>\n<li>das Original-Sendmail mit <em><span style=\"color: #339966;\">mv\u00a0\/usr\/sbin\/sendmail \/usr\/sbin\/sendmail-original<\/span><\/em> wegkopieren<\/li>\n<li>den Sendmail-Wrapper mit <span style=\"color: #339966;\"><em>vi \/usr\/sbin\/sendmail<\/em><\/span> schreiben und folgenden Code hinterlegen:<br \/>\n<span style=\"color: #cc99ff;\">#!\/bin\/sh<\/span><br \/>\n<span style=\"color: #cc99ff;\">TODAY=`date -Iseconds`<\/span><br \/>\n<span style=\"color: #cc99ff;\">echo date=[$TODAY] sendmail-wrapper: USER:[$USER] from PWD:[$PWD] &#8212; site=[${HTTP_HOST}],script=[${SCRIPT_NAME}],uid=[${UID}],user=[$(whoami)],client=[${REMOTE_ADDR}] &gt;&gt; \/tmp\/mail.sendmail-wrapper<\/span><br \/>\n<span style=\"color: #cc99ff;\">(echo X-Additional-Header: $(dirname $PWD);cat) | \/usr\/sbin\/sendmail-original &#8222;$@&#8220;<\/span><\/li>\n<li>mit\u00a0<em><span style=\"color: #339966;\">chmod 755 \/usr\/sbin\/sendmail<\/span><\/em> den neuen Wrapper ausf\u00fchrbar machen<\/li>\n<\/ol>\n<p style=\"text-align: justify;\"><strong>Fertig!<\/strong> :top_ang: \u00a0Ab sofort kann in der Datei \/tmp\/mail.sendmail-wrapper nachgeschaut werden, von wo aus Sendmail aufgerufen wurde. Leider gibt es nicht alle vollst\u00e4ndigen Infos, aber es ist auf jeden Fall schon mal ein erster Ansatz. Ab hier kann man dann schauen, was es genau war&#8230; je nach Eintrag in diesem Log-File. Weiterhin sollten wir nun in Mails einen zus\u00e4tzlichen Header-Eintrag finden, der uns sp\u00e4ter helfen k\u00f6nnte, sollte erneut Spam \u00fcber unseren Server verteilt werden.<\/p>\n<h4><strong>Die Reputation<\/strong><\/h4>\n<p style=\"text-align: justify;\">Tja &#8230; jetzt war ich also als Spammer gebrandmarkt und leider leidet da ein wenig die Reputation drunter. Eine sehr interessante Seite hierzu ist\u00a0<a href=\"http:\/\/multirbl.valli.org\/\" target=\"_blank\">http:\/\/multirbl.valli.org\/<\/a>\u00a0Auf dieser Seite kann man pr\u00fcfen, ob der eigene Server (oder auch jeder x-beliebige Server) auf Blacklisten steht. Bei mir war das bei 26 Blacklisten der Fall. Die jeweiligen Blacklisten kann man nun kontaktieren und einen &#8222;remove&#8220; beantragen. Mal muss man hierzu beschreiben, was man zur Probleml\u00f6sung gemacht hat, mal muss man einfach nur abwarten und, man glaubt es kaum, mal soll man sogar f\u00fcr einen &#8222;fr\u00fchen&#8220; Remove zahlen. Also ich habe NICHT daf\u00fcr bezahlt&#8230; soweit kommt das noch &#8230; und somit wird es wohl auch noch dauern, bis ich von allen Listen wieder runter bin. Momentan scheine ich noch auf 9 Listen zu stehen.<\/p>\n<p style=\"text-align: justify;\">Sehr interessant ist auch die Seite\u00a0<a href=\"https:\/\/www.senderscore.org\/\" target=\"_blank\">https:\/\/www.senderscore.org\/<\/a> Hier wird der Server bewertet und je h\u00f6her die Score ist, desto besser ist seine Reputation. Einfach mal schauen, da das anscheinend h\u00e4ufiger von Firmen benutzt wird. Meine Score kommt langsam aber sicher zur\u00fcck. Noch bin ich dort als &#8222;High Volume Sender&#8220; hinterlegt, was meinen Score negativ beeinflusst.<\/p>\n<p style=\"text-align: justify;\">Sodele &#8230;. das sollte es also zum Topic &#8222;Spam&#8220; gewesen sein &#8230; <strong>hoffentlich!<\/strong><\/p>\n<p style=\"text-align: justify;\">Ich werde also jetzt regelm\u00e4\u00dfiger die Updates im Auge behalten und auch den Sendmail-Wrapper halte ich mal noch im Auge.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ich habe es ja selber verpennt, meinen Server aktuell zu halten und so wurde der als Spam-Schleuder missbraucht. Hier mal, was meine Schritte waren &#8230;<\/p>\n","protected":false},"author":2,"featured_media":6774,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,3],"tags":[654,417,1002,596,1001],"class_list":["post-6773","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-technik","tag-fix","tag-reparatur","tag-sendmail","tag-spam","tag-spammer"],"_links":{"self":[{"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/posts\/6773","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6773"}],"version-history":[{"count":21,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/posts\/6773\/revisions"}],"predecessor-version":[{"id":6796,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/posts\/6773\/revisions\/6796"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=\/wp\/v2\/media\/6774"}],"wp:attachment":[{"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6773"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6773"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.andere-sichtweise.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6773"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}