Plugin:Spam-o-tron

Aus dem Miranda-IM.de Wiki

Wechseln zu: Navigation, Suche
Important.png
Das Plugin funktioniert ausschließlich für das ICQ-Protokoll und benötigt mindestens Miranda IM 0.9.16 oder höher!
Es gibt aktuell kein Anti-Spam-Plugin das für alle Protokolle einen zuverlässigen Schutz bietet!
Die Bayes.db basiert auf SQL und kann dementsprechend angepasst werden.

Dieses Plugin schaltet unbekannten ICQ-Nutzern einen Frage-/Antwort-Dialog vor, ehe diese Sie anschreiben dürfen. Außerdem wird anhand einer trainierbaren Wahrscheinlichkeitsberechnung versucht, Spammer bzw. Spambots zu identifizieren und deren Anfragen automatisch zu blockieren. Kontakte aus der eigenen Kontaktliste können jedoch weiterhin ungehindert mit Ihnen schreiben.

Die zentralen Funktionen dieses Plugins sind:

  • Anpassbare Sicherheitsabfrage an unbekannte Kontakte bevor diese einen anschreiben können - wahlweise als einfache Frage, als wechselnde Frage oder als Rechenaufgabe
  • Überprüfen und/oder blockieren von Autorisierungsanfragen
  • Führen einer "Whitelist"<ref>Was eine Whitelist ist und wie diese sich von einer Blacklist unterscheidet, können Sie hier nachlesen.</ref>
  • Trainierbare Wahrscheinlichkeitsprüfung ("Bayes"-Algorithmus), die Spam automatisch blockiert.
  • Automatisches Hinzufügen von Spammern zur Kontaktliste (ohne Autorisierung!), damit diese über Miranda IM dauerhaft geblockt/ignoriert werden können.
  • "Flooding"-Schutz

Zwei Alternativen zu diesem Plugin stellen das umfangreichere aber veraltete Plugin Spam Filter und das Plugin StopSpam dar. Wichtig hierbei ist zu erwähnen, dass diese zwar mehrere Protokolle unterstützen, aber diese völlig anders geschützt werden müssen, was selbst mit diesen Plugins nicht 100% funktioniert. Die Wahrscheinlichkeit ist aber viel geringer über das Jabber-Protokoll Spam zu erhalten, als zum Beispiel über das ICQ-Protokoll.

Einstellungen

Tab: Einstellungen

Einstellungen → Nachrichtensitzungen → Spam-o-tron → Tab: Einstellungen

In dem Reiter Einstellungen → Nachrichtensitzungen → Spam-o-tron → Tab:Einstellungen nehmen Sie die wesentlichen Einstellungen zur Konfiguration des Plugins vor.

Geschützte Konten
Aktivieren Sie hier die Konten, welche von Spam-o-tron geschützt werden sollen. Nur ICQ-Konten werden unterstützt!
Automat. Annehmen bei
Legen Sie die Ereignisse fest, bei denen Spam-o-tron Autorisierungsanfragen automatisch verifizieren soll. Diese Ereignisse sind:
Ausgehende Nachricht
Aktivieren Sie diese Option, geht das Plugin automatisch davon aus, dass Sie einen Kontakt, dem Sie eine Nachricht geschickt haben, automatisch verifizieren möchten.
Eingeh. Nachricht, die folgende Wörter enthält
Legen Sie hier Schlüsselworte fest, über die Spam-o-tron Autorisierungsanfragen automatisch verifizieren soll ("Whitelist"-Funktion). Die Einträge müssen mit Komma separiert werden!
Verstecke Kontakte bis zur Verifizierung
Temporäre Kontakte werden bis zur endgültigen Verifizierung aus Ihrer Kontaktliste ausgeblendet.
Verifizierte dauerhaft zur CList hinzufügen
Verifizierte Kontakte werden automatisch dauerhaft zu Ihrer Kontaktliste hinzugefügt.
Plugin-Aktionen im Systemverlauf loggen
Alle Aktionen des Plugins (Blockieren, Abfragen, etc.) werden im Miranda-IM-Systemverlauf mitgeloggt und sind dort einsehbar.

Schutz vor "Flooding"

Als "Flooding" wird hier ein Phänomen bezeichnet, wenn sich zwei (Spam-)Bots miteinander unterhalten, aber keiner auf die Antwort des anderen richtig reagiert. Beide Bots würden einander immer wieder und wieder Abfrage-Nachrichten schicken, bis sich das System irgendwann aufhängt. Ein Flooding-Schutz unterbindet diese Nachrichtenflut mit unterschiedlichen technischen Mitteln.

Sende nicht mehr als X Nachrichten an einem Kontakt pro Tag
Verhindert, dass an einen Kontakt mehr als die angegebene Anzahl X an Sicherheitsabfragen pro Tag gesendet wird.
Antworte auf gleiche Nachricht nicht öfter als X Mal pro Tag
Aktivieren Sie diese Option, damit Spam-o-tron identische Nachrichten erkennt und nicht mehr als X Mal auf eine solche Nachricht antwortet.
Antworte nicht auf Nachrichten mit diesen Schlüsselwörtern
Legen Sie hier Schlüsselworte fest, anhand derer das Plugin Nachrichten als Antwort eines Bots erkennen und nicht darauf antworten soll. Die Einträge müssen mit Komma separiert werden!

Nachrichten

Einstellungen → Nachrichtensitzungen → Spam-o-tron → Tab: Nachrichten

Das Plugin unterstützt drei Typen/Modi von Sicherheitsabfragen:

  1. Die einfache Abfrage eines vordefinierten Wortes
  2. Die Abfrage des Ergebnisses einer simplen Rechenaufgabe
  3. Die Abfrage eines Wortes aus einer vordefinierten Frage-/Antwortliste, wobei hier entweder die Abfragen nacheinander durchlaufend gewechselt werden, oder zufällig aus der Liste ausgewählt werden.
Important.png
Je nach verwendetem Modus, variieren die Inhalte der folgenden Eingabefelder leicht!

In den hier befindlichen Feldern können Sie die Texte für den Frage-/Antwort-Dialog des Plugins definieren. Die Bedeutung der hiesigen Textfelder, sollte für den Benutzer weitestgehend selbsterklärend sein.

Hier ein Beispiel für einen typischen Antispam-Frage-Dialog:

Sende folgende Abfrage bei eingehender Nachricht:
Spam-o-tron muss verifizieren, dass Sie kein Bot sind. Bitte antworten Sie mit "%response%" (ohne Anführungszeichen).

Besonders interessant sind hier noch die folgenden Einstellungen:

Speichere blockierte Nachrichten im Kontaktverlauf
Nachrichten, die von Spam-o-tron blockiert wurden, werden im Kontaktverlauf des vermeintlichen Spam-Kontaktes gespeichert und sind - über dessen Verlauf - einsehbar.
und markiere sie als ungelesen bei Verifizierung
Wird der Kontakt schließlich verifiziert, werden die zuvor blockierten Nachrichten als ungelesen markiert und erscheinen als neue Nachrichten in der Kontaktliste.

Tab: Bayes-Einstellungen

Important.png
Die Bayes.db wird automatisch unter Miranda IM\Profiles\<Eurer Profilname>\spamotron\bayes.db angelegt.
Es ist möglich Bayes.db manuell zu im-/exportieren, es muss nur darauf geachtet werden das der obige Pfad eingehalten wird.

Der "Bayes"-Algorithmus<ref>Wie dieser "Bayes"-Algorithmus im Detail funktioniert können Sie hier nachlesen.</ref> ist eine der wichtigsten Vorzüge dieses Plugins. Das Plugin lernt anhand von gesendeten und empfangenen Autorisierungsanfragen und Nachrichten Spam- und "Ham"-Nachrichten von einander zu unterscheiden. "Ham" steht hierbei für erwünschte Anfragen, also das Gegenteil von Spam!

Dafür muss jedoch der Algorithmus mit erwünschten und gewünschten Anfragen trainiert werden. Anhand einer Wahrscheinlichkeitsbewertung, welche in einem numerischen Index (0 = Ham, 1 = Spam) ausgedrückt wird, kann das Plugin dann zukünftig Spam und Ham mit hoher Treffsicherheit automatisch unterscheiden.

Das Plugin legt im Trainingsprozess automatisch eine Datenbank im Verzeichnis \plugins\spamotron\Bayes.db an, die die antrainierten Anfragen für den Algorithmus enthält. Es ist jederzeit möglich eine neue Datenbank zu importieren und entsprechend zu exportieren, allerdings geschieht dies nicht über das Plugin, sondern muss manuell in das Miranda-IM-Verzeichnis angelegt bzw. abgelegt werden.

Einstellungen → Nachrichtensitzungen → Spam-o-tron → Tab: Bayes-Einstellungen
Aktiv
Aktivieren Sie die Bayesssche Filter- und Lernfunktion des Plugins.
Trainierte Spams/Hams
Zeigt die Anzahl der bereits trainierten Spam- und Ham-Nachrichten an.

Filtereinstellungen

Warning.png
Aktivieren Sie keine der folgenden Einstellungen, bis Spam-o-tron nicht mindestens 20 Ham- und 50 Spam-Nachrichten antrainiert wurden, andernfalls funktioniert die Erkennung nicht zuverlässig!
Keine Abfrage, wenn Nachrichtenbewertung höher als X
Deaktiviert die Sicherheitsabfrage des Plugins, wenn die Bewertung der Nachricht einen Indexwert größer als X aufweist. Je höher der Indexwert einer Nachricht, desto wahrscheinlicher handelt es sich um eine erwünschte Nachricht (Ham).
Der voreingestellte Wert 0,95 drückt aus, dass eine Nachricht einen sehr hohen Ham-Wahrscheinlichkeitsindex aufweisen muss (maximal möglich ist ein Index von 1!), ehe Sie verifiziert wird.
Autom. verifizieren, wenn Wertung kleiner als X
Verifiziert Nachrichten automatisch, wenn deren Index kleiner als der definierte Wert X sein sollte.
und als Ham anlernen
Zusatzeinstellung zur vorherigen Option. Nachrichten mit dem Wert X werden nicht nur automatisch Verifiziert, sondern auch noch als Ham trainiert. (Vorsicht!)

Trainingseinstellungen

Trainiere Nachrichten von Kontakten autom. als Ham
Nachrichten, die sie von bereits autorisierten Kontakten erhalten, werden automatisch als Ham eingestuft und erlernt.
Trainiere Nachrichten autom. als Spam, die nicht innerhalb von X Tagen aktzept. werden.
Nachrichten, die nicht innerhalb von X Tagen verifiziert werden können, werden automatisch als Spam klassifiziert und trainiert.
Trainiere ausgehende Nachrichten automatisch als Ham
Nachrichten, die sie an Kontakte senden, werden automatisch als Ham eingestuft und erlernt.
Trainiere Nachricht
Hier können Sie manuell Nachrichten eingeben, und diese über die Schaltflächen als Spam oder Ham antrainieren. Die Schaltfläche Analysieren analysiert die Spam-Wahrscheinlichkeit auf der Basis der bereits trainierten Ausdrücke.

Bietet dieser Algorithmus 100% sicheren Schutz?

Nein, denn SpamBots oder Spammer lassen sich immer neuere Möglichkeiten einfallen Sie zu belästigen. Außerdem ist diese hier verwendete Technik nicht immer effektiv, falls der "Lernmodus" versehentlich abgeschaltet wurde oder die Datenbank Fehler aufweist, kann diese nicht mehr richtig arbeiten bzw. erkennt nicht mehr alle fremden Kontakte. Daher ist es sehr wichtig selbst weiterhin die Augen offen zu halten, ob die Anfrage nun von einem Freund oder wirklich von einem Spammer kommt.

Popup-Einstellungen

Einstellungen → Popups → Spam-o-tron

Unter Einstellungen → Popups → Spam-o-tron können die Popup-Benachrichtigungen des Plugins aktiviert und angepasst werden.

Aktiviere Popup-Benachrichigungen
Aktiviert die Benachrichtigung über Aktionen des Plugins via Popups. (Benötigt ein Popup-Plugin!)

Erscheinungsbild

Legen Sie hier das Aussehen und die Anzeigedauer der Popups je Aktion fest. Möchten Sie für jeden Aktionstyp eine eigene Anzeigedauer einstellen, so deaktivieren Sie die Option Standard-Timeout und legen Sie die Zeit jeweils in der Spalte Timeout fest.

Soll für einen Aktionstyp kein Popup ausgegeben werden, so reicht es, das Häkchen vor dem jeweiligen Typ zu deaktivieren.


Bekannte Probleme

Problem
Obwohl die Option 'Verifizierte dauerhaft zur CList hinzufügen' angehackt ist werden die ICQ-Kontakte nicht automatisch nach der Verifizierung hinzugefügt.
Lösung
Man muss manuell die Kontakte nochmals zur Liste hinzufügen.

<references />