Blackliste für Usernamen

Deutschsprachiger Support für CMS Made Simple
Post Reply
hoshy

Blackliste für Usernamen

Post by hoshy »

Hallo zusammen,

ich mal wieder ;)

Ich bin auf der Suche nach einer Art Blacklist für bestimmte Benutzernamen bzw. Ausdrücke, die ich gerne im Zusammenhang mit dem Modul FrontendUsers bzw. Selfregistration verwenden möchte.
Ich könnte jetzt selber überlegen, was erlaubt ist und was nicht und mit RegExp entsprechende Regeln aufstellen.
Angesichts der Fülle von möglichen Kombinationen ist mir das aber definitiv zu aufwändig.

Frage an die Moderatoren hier: Wie wird das hier im Forum gelöst?

Frage an alle anderen: Gibt es irgendwo eine Art Standard-Liste mit bösartigen Ausdrücken, die man für solche Zwecke verwenden könnte?
Last edited by hoshy on Tue Jun 24, 2008 6:45 pm, edited 1 time in total.
cyberman

Re: Blackliste für Usernamen

Post by cyberman »

hoshy wrote: Angesichts der Fülle von möglichen Kombinationen ist mir das aber definitiv zu aufwändig.
... was natürlich auch für dieses Forum gilt :-\, zumal man da aller Sprachen dieser Welt überwachen müsste.
NaN

Re: Blackliste für Usernamen

Post by NaN »

Zu automatisierten Filtern kann ich nach meiner Erfahrung nur folgendes sagen:

Tutorials und Scripts zum Entwickeln einer Blacklist direkt gibt es leider nicht, da es im Prinzip immer auf dasselbe hinausläuft:
Eine riesige Liste mit Wörtern (ob nun aus einer Datenbank oder Text-Datei), die mit der Eingabe entweder auf reguläre (vordefinierte) Suchmuster oder auf übereinstimmende Strings überprüft wird.
Diese Liste muss leider erst "von Hand" selber angefertigt werden, da nicht jeder den Geschmack über anstößige bzw. bösartige Wörter teilt. Da das recht aufwendig ist, wird wohl kaum einer seine mühsame Arbeit öffentlich bereitstellen.
(Schade eigentlich. Wenn ich die Zeit hätte, würde ich gleich ein Modul dazu schreiben ;) )

Programmiertechnisch wird dazu meist auch eine FOR-Schleife verwendet.
Also am besten sucht man nach solchen Tutorials, die Schleifen, Vergleiche und evtl. auch Ersetzen von Werten aus einer "Menge" beinhalten.

Hier nur einige Anwendungsbeispiele, die sich zufällig auch mit "Bad Words" beschäftigen:

http://gr0w.com/articles/code/php_bad_words_filter/
http://www.phpforum.de/archiv_22026_Bad ... eigen.html
http://www.webmasterworld.com/forum88/3810.htm

Die Entwicklung einer "Blacklist" oder "Bad words list" ähnelt meiner Meinung nach der von Virenscannern.
Die Listen müssen ständig erneuert werden.
Immer dort wo nicht eindeutig bestimmbare Inhalte gefiltert werden sollen, wird leider eines außer Acht gelassen:
Der Faktor "Mensch".
Der Kreativität des Menschen ist leider keine Grenze gesetzt, und so wird er immer Wege finden, die ein oder andere Sperre zu umgehen. Getreu dem Motto "Wenn es einen Weg hinein gibt, gibt es auch einen Weg hinaus".
Weiterhin - gerade bei Wörtern - führt eben diese Kreativität auch dazu, dass wir in der Lage sind Wörter zu erkennen, wo gar keine sind.
Bsp.: "B4DW0RT", "$hit", "d00f", "5UCK MY D1G" usw.

Mal abgesehen von dem Problem, dass "böse" Wörter in jeder Sprache vorkommen und es demnach nicht möglich ist, eine universelle Blacklist zu erstellen, gibt es leider keine Software, die den Sinn eines Textes bzw. eines Wortes erfassen kann. Es kann nur auf Buchstaben geprüft werden.
Worte wie "Fook you" würden von kaum einer Software gefiltert werden, die auf reguläre Ausdrücke prüft, jedoch jeder Mensch würde verstehen was damit gemeint ist.

Einzige Alternative wäre, die beiden Faktoren "Mensch-Maschine" gemeinsam filtern zu lassen.
Eine interessante (etwas ältere) Diskussion hierzu gibt es z.B. im SelfHTML-Forum:

http://forum.de.selfhtml.org/archiv/2004/6/t82962/

Im Zusammenhang mit den Modulen SelfReg oder FEU kann ich nur sagen, dass man nicht drumherum kommt, eine riesige Liste mit genauen Wörtern bzw. regulären Ausdrücken selbst zu erstellen. Oder es findet sich jemand, der das schonmal gemacht hat und seine Liste zur Verfügung stellt.
mike-r

Re: Blackliste für Usernamen

Post by mike-r »

Na, das geht doch zu weit, die einfachste und (imho) einleuchtendste Erklärung gegen eine solche Liste heisst utf-8. Für "Arschloch" gibt es grob geschätzt ca. 500 Schreibweisen (nicht Sprachen!) und für Idiot wahrscheinlich genauso viel.
Das sind jetzt 2 "Worte", wo ich 1000 Begriffe in einen Filter einbauen muss. Jetzt nehmen wir noch Depp, Votze, Heil Hitler, Ficken und hastenichgesehen dazu, und siehe da, wir sind geschlagene 8 Wochen beschäftigt diese Handvoll selektiv ausgewählte Begriffe zu bannen.
Last edited by mike-r on Tue Jul 01, 2008 1:52 am, edited 1 time in total.
Post Reply

Return to “German - Deutsch”