Seite 1 von 1

Endloses Posten von Internetadressen unterbinden.

Verfasst: Di 31.Jan, 2006 06:27
von tom10
Tja, ich hab so ein netten Gast, welcher endlos vile Internetadressen im Forum postet meist irgend was mit Casio , Blackjack usw.

Wie kann man sowas eindämmen?

Ich habe eine Wortzensur im Forum und dort schon diverse Wörter auf verboten gesetzt. Auch die Benutzten Gast - Namen des Users auf verbotenen Usernamen gesetzt. Und das Forum in dem er gepostet hast auf Schreibrecht - Reg gesetzt.
Was kann man da noch machen ? :eek:

Verfasst: Di 31.Jan, 2006 08:31
von oxpus
Z. B. den CrackerTracker einsetzen und schärfer einstellen, als er ohnehin schon arbeitet.

Verfasst: Di 31.Jan, 2006 08:35
von volker58
das ist der gleiche ars... wie bei mir auch gewesen ist und auch schie wieder da war, gibt als name eine internetadresse ein usw.

Verfasst: Di 31.Jan, 2006 08:48
von tom10
Ja, Volker genau !

@Oxpus

Etwa so?


Flooder & Spammer Schutzfunktion Registrierungs Zeitbegrenzung nun bei mir auf 60
Zeitspanne der Postzählung nun bei mir auf 100
Anzahl der Postings innerhalb der Zeitspanne nun bei mir auf 5

Aber meist postet der nur 2 - 3 mal..., von daher denke ich nicht ganz so toll.... :eek:

Kleine Zusatzfrage. Kann man die Wortzensur auch so einstellen das der Admin z.B. die geperrten Wörter usw. benutzten darf? Was auch nicht schlecht wäre in diesem Zusammenhang, wenn man ein Wort sperrt das man z.B. ein Leerzeichen benutzten kann bzw. es einfach gelöscht wird. :eek:

Verfasst: Di 31.Jan, 2006 12:32
von AmigaLink
Kann man die Wortzensur auch so einstellen das der Admin z.B. die geperrten Wörter usw. benutzten darf?
Müsste so gehen:

Code: Alles auswählen

#
#----------[ OPEN ]-------------------------------------
#

viewtopic.php

#
#----------[ FIND ]-------------------------------------
#

	// Replace naughty words
	//
	if (count($orig_word))

#
#----------[ REPLACE WITH ]-----------------------------
#

	// Replace naughty words
	//
	if (count($orig_word) && $poster_id != '2')

#
#----------[ SAVE AND CLOSE ALL FILES ]-----------------
#
# EoM
Was auch nicht schlecht wäre in diesem Zusammenhang, wenn man ein Wort sperrt das man z.B. ein Leerzeichen benutzten kann bzw. es einfach gelöscht wird.
Wie meinen? ^1

Verfasst: Di 31.Jan, 2006 18:27
von tom10
Recht vielen Dank für die Hilfe beim 1ten Problem!

Bei dem 2ten meinte ich es so...
Man gibt bei der Wortzensur ein das zu zensierende Wort ein und dann muß man min. 1 Buchstaben oder eine Zahl eingeben womit das oder die wörter ersetzt werden. Ich fäne es sinnvoll wen die entsprechenden Wörter duch nichts ersetzt würden also schlicht und einfach weg wären. Dann sieht man von dem zu sperrenden Wort rein gar nichts , oder man gibt was an und dann halt dies...

:D

Verfasst: Do 02.Feb, 2006 02:24
von AmigaLink
Gib einfach als ersatz & n b s p ; (ohne leerzeichen) ein. Das wird im Beitrag dann als leerzeichen angezeigt. :D

Verfasst: Do 02.Feb, 2006 06:53
von tom10
Hervorragende Idee danke schön! ^9

Verfasst: Fr 03.Feb, 2006 11:43
von AmigaLink
Kein Problem. :)

Sinnvoll finde ich das aber nicht. Denn ein Beitrag verliert schnell den zusammenhang, wenn mittendrin Wörter fehlen!
Wenn die Wortzensur aber z.B. ein *zensiert* einfügt, macht das Gehirn beim Lesen den rest und der Satz ist wieder vollständig. :)

Verfasst: Mo 06.Feb, 2006 06:41
von tom10
Und wieder wurde so ein Mist gepostet diesmal Viagra usw.

Hab natürlich alle Begriffe und Domains in die Wortzensur aufgenommen. ^2

Dabei kamen mir 2-3 Dinge in den Kopf die es erheblich erleichtern Würden die Wortzensureingabe besser zu machen.

Wie stelle ich es an, das:

1. Man mehrere Worte ca.5 mit einem mal eingeben kann?
2. Wenn an ein Wort eingibt, soll schon ein vordefiniertes Ersatzwort in der Eingabe stehen.
3. Der Button "neues Wort hinzufügen" sollte auch oben auf der Seite erscheinen damit man nicht immer bis ganz runter Scrollen muß.

Was natürlich das non plus ultra wäre, ist wenn man in dem entsprechenden Posting mit den unbeliebten Worten, diese per Markieren auswählen könnte und diese dann mit einem versteckten nur für den Admin sichtbaren Button zu der Wortliste hinzufügen könnte.

Ich hoffe es findet sich jemand der mir da helfen könnte so ein Snipped zusammen zu bauen. :eek:

Edit: zu Punkt 1. hab ich mal folgendes versucht....es werden zwar die Felder angezeigt, aber es wird nur ein Eintrag übergeben. Funktioniert also so nicht. :(

Code: Alles auswählen

<div class="maintitle">{L_WORDS_TITLE}</div>
<br />
<div class="genmed">{L_WORDS_TEXT}</div>
<br />
<form method="post" action="{S_WORDS_ACTION}">
<table cellspacing="1" cellpadding="3" border="0" align="center" class="forumline">
<tr> 
<th colspan="2">{L_WORD_CENSOR}</th>
</tr>
<tr> 
<td align="right" class="row1">{L_WORD}:</td>
<td class="row2">
<input type="text" name="word" value="{WORD}" class="post" /><br />
<input type="text" name="word" value="{WORD}" class="post" /><br />
<input type="text" name="word" value="{WORD}" class="post" /><br />
<input type="text" name="word" value="{WORD}" class="post" /><br />
<input type="text" name="word" value="{WORD}" class="post" />
</td>
</tr>
<tr> 
<td align="right" class="row1">&nbsp;{L_REPLACEMENT}:</td>
<td class="row2"> 
<input type="text" name="replacement" value="{REPLACEMENT}" class="post" />
</td>
</tr>
<tr> 
<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS} 
<input type="submit" name="save" value="{L_SUBMIT}" class="mainoption" />
</td>
</tr>
</table>
</form>
<br />
Punkt 3 hab ich selber gelöst. in Der word_list_body.tpl den Teil:

Code: Alles auswählen

<tr> 
<td colspan="5" align="center" class="cat">{S_HIDDEN_FIELDS} 
<input type="submit" name="add" value="{L_ADD_WORD}" class="mainoption" />
</td>
</tr>
Oben direkt unter:

Code: Alles auswählen

<div class="maintitle">{L_WORDS_TITLE}</div>
<br />
<div class="genmed">{L_WORDS_TEXT}</div>
<br />
<form method="post" action="{S_WORDS_ACTION}">
<table cellspacing="1" cellpadding="3" border="0" align="center" class="forumline">
<tr>
eingefügt. Und wie gehts nun weiter ? :eek:

Verfasst: Mo 06.Feb, 2006 14:49
von AmigaLink
Jetzt wo du Viagra erwähnst fällt mir erst auf was du für ein Problem hast! ^d
Das sind Werbebots!!! Und die Lösung heist Visual Confirmation bzw. Image Verification Hack. :D
Den hab ich bei mir auch im Einsatz. :)

// EDIT
Linkt entfernt, da der MOD nicht mehr zu empfehlen ist.
(siehe Beitrag #20)

Verfasst: Mo 06.Feb, 2006 16:50
von tom10
Danke erstmal für den Mod. Den schau ich mir mal an.

Aber zurück zu meinen Fragen... Kann mir da jemand helfen. :(

Edit: icherhalte als gast beim Posten nach einbau des Mods diese Fehlermeldung :

Code: Alles auswählen

Warning: ob_start(): output handler 'ob_gzhandler' cannot be used after 'URL-Rewriter' in /www/htdocs/v132501/includes/page_header.php on line 44
Hab den erstmal wieder raus genommen. ^2

Verfasst: Mo 06.Feb, 2006 17:41
von modbo
Ist Visual Confirmation nicht ab einer gewissen phpbb Forenversion zum Standard geworden??

Und auf www.ford-welt.de ist es bereits verbaut (phpBB Plus 1.52)!

Verfasst: Mo 06.Feb, 2006 19:32
von AmigaLink
@ modbo
^9 Ja, Visual Confirmation ist Standard im phpBB.
Das gild aber nur für die Registrierung. Der Image Verification baut eine Visuelle Bestätigung in das Postingfeld ein, die angezeigt wird wenn Gäste Posten. :D

@ tom10
Such mal nach der Fehlermeldung. (Die hat nur indirekt etwas mit dem MOD zu tun.)
Es gibt einen gzhandler Fix für dieses Problem!

// EDIT
http://www.phpbb.com/kb/article.php?article_id=130

Verfasst: Mo 06.Feb, 2006 20:36
von modbo
[quote="AmigaLink - Mo 06.Feb, 2006 19:32";p="53421"]@ modbo
^9 Ja, Visual Confirmation ist Standard im phpBB.
Das gild aber nur für die Registrierung. Der Image Verification baut eine Visuelle Bestätigung in das Postingfeld ein, die angezeigt wird wenn Gäste Posten. :D[/quote]
Aha, ok. Nur weiterhelfen tut ihm der Mod doch dann auch nicht, den der Robot postet ja als Registrierter (jedenfalls schreibt tom10, das Forum steht auf REG).

Verfasst: Mo 06.Feb, 2006 22:17
von AmigaLink
tom10 hat geschrieben:Tja, ich hab so ein netten Gast, welcher endlos vile Internetadressen im Forum postet meist irgend was mit Casio , Blackjack usw.
^2
Wenn das Forum mittlerweile auf Reg steht (was er ja etwas später schreibt) und der Gast immer noch Posten kann, dann hat er ein ernstes Problem mit den Benutzerrechten! :eek: Was wiederum ein anderes Thema wäre. ;)

Wenn es ein registrierter User ist, dann würde ich ihn verwarnen und im wiederholungsfall Bannen!!!

Verfasst: Di 07.Feb, 2006 06:20
von tom10
Nee, es ist ein Gast der den Mist verzapft hat. Und das Forum hat Gastrechte zum Schreiben gehabt. Ich schau mir die Sache dann nochmal an. :eek:

Verfasst: Di 07.Feb, 2006 13:55
von AmigaLink
^^ Dann dürfte dein Problem, mit dem genannten MOD, erledigt sein.
Bezüglich des Fehlers hab ich oben noch einen Link eingefügt. Falls das nichts nutzt, gibt es noch eine andere Möglichkeit bei der etwas im Footer eingebaut wird. Die habe ich bei mir drin, aber den entsprechenden Link auf die schnelle nicht gtefunden.

Verfasst: Di 02.Mai, 2006 22:56
von cbrkiter
[quote="AmigaLink";p="53384"]Jetzt wo du Viagra erwähnst fällt mir erst auf was du für ein Problem hast! ^d
Das sind Werbebots!!! Und die Lösung heist Visual Confirmation bzw. Image Verification Hack. :D
Den hab ich bei mir auch im Einsatz. :)[/quote]
Da ich in letzter Zeit auch ständig dieses Problem habe, habe ich den obigen MOD gerade in meinem Testforum ausprobiert. Er funktioniert so weit so gut, aber kann man die Zeichenkette auch noch größer anzeigen lassen? Also das Image bekomme ich seitens des Backgrounds und der Hintergrundlinien größer. Aber die Zahlen-/Buchstabenkette nicht. In dem MOD steht folgende Zeile:

Code: Alles auswählen

// imagestring ($im, 7, 15+($n*10), rand(0,10), substr($verify_string, $n, 1), $text);	// Write the text
Hierbei ist lt. selfphp die 7 die Größenangabe. Jedoch dürfte diese lt. selfphp auch max. nur 5 sein. Ich habe nun mit dem Wert herumgespielt. Wenn ich den kleiner 5 vorgebe werden die Zeichen noch kleiner. Wenn ich einen größeren Wert vorgebe, dann passiert nichts mehr. Weiß jemand rat? So wie er jetzt ist, muss man zienlich mit den Augen blinzeln :(


// EDIT:
Habe den MOD wieder ausgebaut, da mir die Anzeige des Bestätigungscodes nicht gefiel. Jetzt Habe ich versucht, den Visual Code von phpBB dort einzubauen. Klappt auch soweit ganz gut auf meinem Testboard. Wenn man nun als Gast versucht, einen Beitrag zu schreiben, dann bekommt man dies ohne den Bestätigungscode nicht hin. Wenn man eingeloggt ist, dann wird kein Code verlangt. Also eigentlich alles wie gewollt. Jetzt bin ich mir nur nicht ganz sicher, ob ich wirklich alles an der richtigen Stelle eingebaut habe oder ob es effizienter oder sinnvoller geht. Könnte sich daher vielleicht mal einer von Euch Profis meine neue posting.php anschauen, wenn ich die hier anhänge. Ich habe die Änderungen auch alle kommentiert, so dass man alles schnell finden kann (einfach nach 'cbrkiter' suchen lassen). Ein kleines OK oder NÖ wäre mir ganz lieb, bevor ich es auf meiner HP einsetze.

Mir ist übrigens dabei aufgefallen, dass die Einträge in der Tabelle prefix_confirm nur gelöscht werden, wenn der User den richtigen Bestätigungscode eingibt. Wenn also ein Benutzer erst beim 2 oder 3 Versuch den Code richtig abgetippt hat, dann bleiben die Fehlversuche von vorher hängen. Ist das richtig? Sollten die dann nicht auch gelöscht werden? Ansonsten wird doch die Tabelle immer voller und nie geleert?!?!

// EDIT 2:
Habe ich gerade natürlich vergessen zu schreiben, in der posting_body.tpl habe ich natürlich noch folgendes eingefügt:

Code: Alles auswählen

	<!-- BEGIN switch_confirm -->
	<tr> 
	  <td class="row1"><span class="gen">{L_CONFIRM_CODE}: * </span><br /><span class="gensmall">{L_CONFIRM_CODE_EXPLAIN}</span></td>
	  <td class="row2">{CONFIRM_IMG}<br /><br /><input type="text" class="post" style="width: 200px" name="confirm_code" size="6" maxlength="6" value="" />{CBRK_HIDDEN_CONFIRM}</td>
	</tr>
	<!-- END switch_confirm -->

Verfasst: Mo 08.Mai, 2006 01:39
von AmigaLink
Du brauchst das Rad nicht neu zu Erfinden. Nimm den Visual Confirmation for Guests und das Problem ist erledigt. Vorrausgesetzt du nutzt meinen AVC, denn das Oroginal phpBB Confirmation System ist kein Schutz mehr.

Der "Image Verification Hack", den ich weiter oben empfohlen hatte, ist übrigens auch bereits geknackt und verhindert somit keine Gast-Spam-Postings mehr.
Was allerdings nicht an der Darstellung liegt (die hatte ich bei mir verändert), sondern an der Methode mit der dieser MOD den Bestätigungscode generiert. Ich will da jetzt nicht näher drauf eingehen, aber der Code des "Image Verification Hacks" lässt sich ganz einfach reproduzieren. ^6

Verfasst: Mo 08.Mai, 2006 02:26
von cbrkiter
hmm... Danke. Den kannte ich natürlich mal wieder nicht. Habe es soeben mit meiner Version verglichen. Bis auf einen kleinen Teil habe ich aber scheinbar alles genauso gemacht. Naja.. hab ich halt wieder was dazu gelernt ;-)

Aber eine kleine Frage dennoch. Ich möchte natürlich nicht das Rad neu erfinden, aber verstehen möcht ich es nach Möglichkeit schon. Im ersten Teil der posting.php wird diese Abfrage ausgeführt:

Code: Alles auswählen

$sql = 'DELETE FROM ' . CONFIRM_TABLE . "
   WHERE confirm_id = '$confirm_id'
   AND session_id = '" . $userdata['session_id'] . "'";
Dies löscht meiner Meinung nach bei erfolgreichem Bestätigungscode nur den letzten Eintrag, aber nicht die vorherigen Fehlversuche eines Users. Daher würde ich hier nur auf die session_id einschränken, wenn der Bestätigungscode einmal erfolgreich war. Lieg ich damit falsch?

PS: Natürlich nutze ich den AVC, funktionierte sogar schon bei meiner obigen Variante ;-)

Verfasst: Mo 08.Mai, 2006 11:00
von AmigaLink
Alte, und somit nicht mehr benötigte, einträge werden etwas weiter unten gelöscht. :)

Code: Alles auswählen

      $sql = 'DELETE FROM ' .  CONFIRM_TABLE . " 
         WHERE session_id NOT IN ʌonfirm_sql)
Du brauchst dir diesbezüglich also keine weiteren Gedanken zu machen. ;)

// EDIT
Um deinen Wissensdurst noch ein wenig zu stillen: :)
cbrkiter hat geschrieben:... kann man die Zeichenkette auch noch größer anzeigen lassen? Also das Image bekomme ich seitens des Backgrounds und der Hintergrundlinien größer. Aber die Zahlen-/Buchstabenkette nicht. In dem MOD steht folgende Zeile:

Code: Alles auswählen

// imagestring (m, 7, 15+(*10)randʀ10)substr(erify_string, $n, 1)$text)// Write the text
Hierbei ist lt. selfphp die 7 die Größenangabe. Jedoch dürfte diese lt. selfphp auch max. nur 5 sein. Ich habe nun mit dem Wert herumgespielt. Wenn ich den kleiner 5 vorgebe werden die Zeichen noch kleiner. Wenn ich einen größeren Wert vorgebe, dann passiert nichts mehr. Weiß jemand rat? So wie er jetzt ist, muss man zienlich mit den Augen blinzeln :(
Die 7 ist nicht die Größenangabe sondern der verwendete Zeichensatz!
PHP Reference hat geschrieben:imagestring ( resource im, int font, int x, int y, string s, int col ) gibt den String s in dem durch den Parameter im bezeichneten Bild an den Koordinaten x und y aus. Die Koordinaten 0, 0 geben die linke obere Ecke des Bildes im an. Der Font erscheint in der Farbe col. Hat font den Wert 1, 2, 3, 4 oder 5 wird ein interner Font benutzt.
Ich kann da ebenfalls mit 7 gehen. Das wird aber am Server liegen, das der einfach mehr interne Fonts zur verfügung stellt.
Mit dem Befehl imageloadfont() könnte man noch weitere (Bitmap-) Zeichensätze definieren (laden) und somit das ganze Komfortabler bzw. flexibler einsetzen.

Übrigens geh nicht auf selfPHP sondern lieber auf die Offizielle PHP Referenz

Verfasst: Mo 08.Mai, 2006 12:10
von cbrkiter
Danke für die ausführliche Antwort. :)

Ich werd' auch versuchen, mir demnächst die offiziellen PHP-Infos anzugewöhnen ;)

Verfasst: Mo 08.Mai, 2006 12:34
von AmigaLink
Mach das. Wenn dich PHP Programmieren richtig Interessiert, dann schau auch mal hier http://www.oxpus.de/viewtopic.php?t=4007 rein und überleg dir ob du 25 Euro gut anlegen möchtest. :D