Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

mailman spam-Abwehr?

23 views
Skip to first unread message

Ulli Horlacher

unread,
Aug 27, 2020, 6:20:55 PM8/27/20
to
Ich betreibe auf einem meiner apache-Webserver Mailinglisten mit mailman.
Seit ein paar Tagen hab ich da ein massives Spam-Problem mit fake
subscriptions (Die fake subscribes via Mail hab ich im Griff, mit
procmail).
Leider hat mailman keine Option Web-Subscription zu unterbinden,
zumindest nicht die von mir eingesetzte Version 2.1.26

Ich hab aber entdeckt, dass die Spam subscriptions von einem bot/script
gemacht werden, der verraeterische Logs hinterlaesst:

66.78.56.135 - - [2020-08-27 22:56:27] "POST /mailman//subscribe/liste HTTP/1.1" 200 1633
216.155.42.36 - - [2020-08-27 22:59:10] "POST /mailman//subscribe/liste-stuttgart HTTP/1.1" 200 1713

Dagegen sieht ein regulaerer POST subscribe so aus:

XXXXX.YYYY - - [2020-08-27 23:52:06] "POST /cgi-bin/mailman/subscribe/liste HTTP/1.1" 200 728


Ich will daher nun via apache.conf den Zugriff (egal ob GET oder POST) auf
/mailman//subscribe/ mit einer Fehlermeldung quittieren.

Bisher steht da drin:

ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/


Das hab ich erweitert mit:

<LocationMatch "^/mailman//subscribe/">
ErrorDocument 404 /mailman.html
</LocationMatch>

Leider funktioniert das nicht wie gewuenscht.

Wie macht mans richtig, bzw was hab ich falsch gemacht?



--
Ullrich Horlacher Server und Virtualisierung
Rechenzentrum TIK
Universitaet Stuttgart E-Mail: horl...@tik.uni-stuttgart.de
Allmandring 30a Tel: ++49-711-68565868
70569 Stuttgart (Germany) WWW: http://www.tik.uni-stuttgart.de/

Ulli Horlacher

unread,
Aug 27, 2020, 6:47:42 PM8/27/20
to
Prolog: Ich *ZENSIERT* sollte erstmal die followups auf meine eigenen
Artikel lesen, bevor ich weiteres poste :-}
Hab was aehnliches dazu grad in de.comm.software.webserver geschrieben.

Florian Weimer <f...@deneb.enyo.de> wrote:

> > Ach ja: Wir haben sämtliche Listen aus der List-Server-Listenübersicht
> > entfernt, so dass man nicht mehr so einfach von außen wissen kann, was
> > für Listen es gibt und wie man diese subcribiert.

SEUFZ. EIGENTLICH wollte ich das feature erhalten.


> Ich habe die Templates dahingehend geändert, daß sie den passenden
> mailto:-Link enthalten, und /subscribe komplett abgeklemmt.

Klingt gut! Wie/wo macht man das?
Ich hab zwar mailman und apache selber aufgesetzt, aber das ist JAHRE her
und seither kaum noch angefasst. So ist das halt mit guter UNIX-Software:
einmal installiert und laeuft und laeuft und laeuft... :-}


> Email hat den Vorteil, daß man heutzutage die Absenderadresse recht
> gut validieren kann, und bei Admin-Email sehe ich auch kein Problem
> damit, Header-From == Envelope-From zu erzwingen.

Und ich hab da procmail. Damit kenn ich mich aus :-)


> Im Moment reicht es vermutlich sogar as, axios/0.19.2 als User-Agent
> zu blockieren.

User-Agent log ich bisher nicht. Ist wohl ein Fehler.
Wie blockt man bestimmte User-Agents?

Ulli Horlacher

unread,
Aug 27, 2020, 7:09:50 PM8/27/20
to
In de.comm.software.mailserver Ulli Horlacher <fram...@rus.uni-stuttgart.de> wrote:

> > Im Moment reicht es vermutlich sogar as, axios/0.19.2 als User-Agent
> > zu blockieren.
>
> User-Agent log ich bisher nicht. Ist wohl ein Fehler.

Inzwischen eingeschaltet und prompt erwischt:

155.254.54.150 - - [2020-08-28 01:05:57] "POST /mailman//subscribe/liste-auswahl HTTP/1.1" 200 1697 "-" "axios/0.19.2" "-"

Guter Tipp!

Wie blockt man mit apache bestimmte User-Agents?

Sven Hartge

unread,
Aug 28, 2020, 12:51:03 AM8/28/20
to
Ulli Horlacher <fram...@rus.uni-stuttgart.de> wrote:
> In de.comm.software.mailserver Ulli Horlacher <fram...@rus.uni-stuttgart.de> wrote:

>>> Im Moment reicht es vermutlich sogar as, axios/0.19.2 als User-Agent
>>> zu blockieren.

>> User-Agent log ich bisher nicht. Ist wohl ein Fehler.

> Inzwischen eingeschaltet und prompt erwischt:

> 155.254.54.150 - - [2020-08-28 01:05:57] "POST /mailman//subscribe/liste-auswahl HTTP/1.1" 200 1697 "-" "axios/0.19.2" "-"

> Guter Tipp!

> Wie blockt man mit apache bestimmte User-Agents?

Och komm Ulli, du kannst eine Suchmaschine doch bedienen!

Da gibt es mehrere Varianten:

Via mod_rewrite, aber mod_rewrite kostet recht viel CPU:

,----
| RewriteEngine On
| RewriteCond %{HTTP_USER_AGENT} axios [NC,OR]
| RewriteCond %{HTTP_USER_AGENT} badbot [NC,OR]
| RewriteCond %{HTTP_USER_AGENT} badspider [NC]
| RewriteRule . - [R=403,L]
`----

Via Require/SetEnvIf:

,----
| SetEnvIf User-Agent "axios" bad_user
|
| <Location />
| <RequireAll>
| Require all granted
| Require not env bad_user
| </RequireAll>
| </Directory>
`----

S!

--
Sigmentation fault. Core dumped.

Matthias Andree

unread,
Aug 28, 2020, 2:12:32 AM8/28/20
to
FUp2 gesetzt

Am 28.08.20 um 00:47 schrieb Ulli Horlacher:
> Prolog: Ich *ZENSIERT* sollte erstmal die followups auf meine eigenen
> Artikel lesen, bevor ich weiteres poste :-}
> Hab was aehnliches dazu grad in de.comm.software.webserver geschrieben.
>
> Florian Weimer <f...@deneb.enyo.de> wrote:
>
>>> Ach ja: Wir haben sämtliche Listen aus der List-Server-Listenübersicht
>>> entfernt, so dass man nicht mehr so einfach von außen wissen kann, was
>>> für Listen es gibt und wie man diese subcribiert.
>
> SEUFZ. EIGENTLICH wollte ich das feature erhalten.
>
>
>> Ich habe die Templates dahingehend geändert, daß sie den passenden
>> mailto:-Link enthalten, und /subscribe komplett abgeklemmt.
>
> Klingt gut! Wie/wo macht man das?

In einem templates/-Verzeichnis.

ACHTUNG: wenn Du direkt auf den templates fummelst und nicht durchs
Webinterface - die gehen in ein *separates* Verzeichnis, damit sie beim
Update erhalten bleiben, siehe auch Utils.py und hier:

<https://wiki.list.org/DOC/4.48%20How%20can%20I%20change%20the%20HTML%20or%20.txt%20templates%20used%20by%20my%20mailing%20lists%3F>

> Ich hab zwar mailman und apache selber aufgesetzt, aber das ist JAHRE her
> und seither kaum noch angefasst. So ist das halt mit guter UNIX-Software:
> einmal installiert und laeuft und laeuft und laeuft... :-}

Leichtsinn, fahrlässig. Pflege nötig, wenn die nicht von Deinem
kommerziellen Distributor geleistet wird.
Schau mal, wie viele Security fixes in letzter Zeit noch herauskamen:

<http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/view/1859/NEWS#L8>

>> Email hat den Vorteil, daß man heutzutage die Absenderadresse recht
>> gut validieren kann, und bei Admin-Email sehe ich auch kein Problem
>> damit, Header-From == Envelope-From zu erzwingen.
>
> Und ich hab da procmail. Damit kenn ich mich aus :-)

Verbuggte, ca. 20 Jahre ungepflegte und seit jeher fehlkonzeptionierte
Museumssoftware, in der Du das error handling selbst schreiben musst, um
scheinzufälliges Verhalten zu vermeiden?

Schau Dir mal maildrop an...

Sven Hartge

unread,
Aug 28, 2020, 3:53:30 AM8/28/20
to
Ulli Horlacher <fram...@rus.uni-stuttgart.de> wrote:

>>> Ach ja: Wir haben sämtliche Listen aus der List-Server-Listenübersicht
>>> entfernt, so dass man nicht mehr so einfach von außen wissen kann, was
>>> für Listen es gibt und wie man diese subcribiert.

> SEUFZ. EIGENTLICH wollte ich das feature erhalten.

Das ist aber DER Einstiegspunkt für die Deppen:

lists.thm.de:443 193.110.203.153 - - [18/Aug/2020:05:53:36 +0200] "GET /mailman/listinfo HTTP/1.1" 200 10004 "-" "axios/0.19.2" TLSv1.3 TLS_AES_256_GCM_SHA384
listserv.fh-giessen.de:443 193.110.203.153 - - [18/Aug/2020:06:10:03 +0200] "GET /mailman/listinfo HTTP/1.1" 200 10086 "-" "axios/0.19.2" TLSv1.3 TLS_AES_256_GCM_SHA384

Das wäre dann auch hier der Anfang vom Angriff gewesen. Da dort aber
keine Listen aufgeführt werden, war es dann direkt wieder.

Ulli Horlacher

unread,
Aug 28, 2020, 4:46:36 AM8/28/20
to
In de.comm.software.mailserver Matthias Andree <matthia...@gmx.de> wrote:

> > Ich hab zwar mailman und apache selber aufgesetzt, aber das ist JAHRE her
> > und seither kaum noch angefasst. So ist das halt mit guter UNIX-Software:
> > einmal installiert und laeuft und laeuft und laeuft... :-}
>
> Leichtsinn, fahrlässig. Pflege nötig, wenn die nicht von Deinem
> kommerziellen Distributor geleistet wird.

Letzteres ist der Fall. Deshalb muss ICH mich nicht drum kuemmern.
Security Updates werden automatisch eingespielt.


> > Und ich hab da procmail. Damit kenn ich mich aus :-)
>
> Verbuggte, ca. 20 Jahre ungepflegte und seit jeher fehlkonzeptionierte
> Museumssoftware, in der Du das error handling selbst schreiben musst, um
> scheinzufälliges Verhalten zu vermeiden?

Bisher funktioniert es gut. Um die Design-Schwaechen komm ich mit
Workarounds zurecht.


> Schau Dir mal maildrop an...

Sieht gut aus. Kommt auf meine Muss_ich_mir_mal_anschauen-Liste

Das Problem: Ich hab mehrere 1000 Zeilen procmail Code, historisch
gewachsen ueber 25 Jahre. Das konvertiere ich nicht so schnell :-}
0 new messages