Archive for December, 2005

Dec 31 2005

phpBB in Version 2.0.19

Published by Mathias Bank. Filed under: Software

phpBB ist in der neuen Version 2.0.19 heute erschienen. Neben einigen Bugfixes (hier wurden zwei XSS-Lücken geschlossen und Funktionen erweitert) wurde auch eine neue Funktion implementiert (siehe Changelog), die jedoch rege diskutiert wird: es handelt sich dabei um ein Login-Schutz-Feature auf Account-Ebene zur Erhöhung der Sicherheit gegen fehlerhafte Logins. Im Gegensatz zu einem Schutz auf IP-Ebene wird damit nicht der Angreifer gesperrt (der in der Regel die IP-Adresse nicht ändert), sondern der Benutzer.


// If the last login is more than x minutes ago, then reset the login tries/time
if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $row['user_last_login_try'] < (time() - ($board_config['login_reset_time'] * 60)))
{
$db->sql_query(’UPDATE ‘ . USERS_TABLE . ‘ SET user_login_tries = 0, user_last_login_try = 0 WHERE user_id = ‘ . $row[’user_id’]);
$row[’user_last_login_try’] = $row[’user_login_tries’] = 0;
}


// Check to see if user is allowed to login again... if his tries are exceeded
if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $board_config['max_login_attempts'] &&
$row['user_last_login_try'] >= (time() - ($board_config['login_reset_time'] * 60)) && $row['user_login_tries'] >= $board_config['max_login_attempts'])
{
message_die(GENERAL_MESSAGE, sprintf($lang['Login_attempts_exceeded'], $board_config['max_login_attempts'], $board_config['login_reset_time']));
}

Wie man aus dem Code sehen kann, wird keinerlei IP-Check durchgeführt, sondern lediglich der Benutzer getestet. In der Standard-Einstellung von 5 fehlerhaften Logins ist es damit für Hacker / Trolle recht einfach möglich, den Login für reguläre Benutzer für bestimmte Zeit zu blockieren. Damit kann auch recht einfach der Administrator ausgesperrt werden, so dass nicht mal dieser mehr in den Admin-Bereich gelangt, solange die Sperrzeit Gültigkeit hat (es sei denn, er lässt sich automatisch anmelden).

Sehr zweifelhaft, ob sich die phpBB-Entwicker mit dieser Funktion Freunde machen werden. Einen IP-Block halte ich hier für wesentlich sinnvoller. Sicherheit hat zwar einen hohen Stellenwert, wenn aber Benutzer dadurch eher verärgert werden können, ist der Preis bei einem Forum meiner Meinung nach zu hoch.

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
2 responses so far

Dec 30 2005

Vorstellung: Vanilla

Published by Mathias Bank. Filed under: Software

Heute möchte ich mal kurz eine Forensoftware vorstellen, die mir recht gut gefällt: es handelt sich dabei um die OpenSource Software Lussumo Vanilla. Das schöne an diesem System: es beschränkt sich auf das Wesentliche. Dies kann beispielsweise auf AjaxTalk betrachtet werden (hier handelt es sich um ein deutsches Forum zum Thema Ajax, das sicher für den ein oder anderen interessant sein könnte).

Standardmäßig werden in Vanilla die neusten Beiträge angezeigt. Im Gegensatz zu phpBB und Co. sieht man somit schon auf der Startseite, welche Inhalte aktuell sind und muss nicht umständlich erst zu den neuesten Beiträgen durchklicken. Damit kommt die Tatsache zum Tragen, dass die meisten Benutzer Beiträge lesen und nicht schreiben wollen. Denn nur für letzteren Vorgang ist eine Aufgliederung in die Kategorien wirklich notwendig (es sei denn, ich will nur Beiträge einer bestimmten Kategorie sehen).

Auch hält man von Avataren und anderen Gimmicks nicht viel, so dass in den Beiträgen nur die wesentlichen Texte zu finden sind und man nicht durch Offtopic vom Wesentlichen abgelenkt wird.

Zusammenfassung Oberfläche:
Im Gesamten ist das System also genau dann richtig, wenn man ein Foren-System sucht, dass schlicht und übersichtlich ist und ein angenehmes Design liefert. Wie bei der Strohhalm-Software beschränkt man sich auf das Wesentliche.

Zur Programmiertechnischen Seite:
Ladet man sich die Quellen von Vanilla herunter, so wird man mit einer recht komplexen Ordner-Struktur überrascht. Die Struktur ist im Gesamten aber recht intuitiv erfassbar und sollte Programmierer nicht vor größere Schwierigkeiten stellen.

Schauen wir uns ein paar Dateien genauer an, so fällt auf, dass ein großer Teil des Systems objektorientiert aufgebaut wurde. Dadurch ist es recht leicht, sich die zuständigen Dateien herauszusuchen, um Änderungen zu erstellen. Schön wäre es hier gewesen, wenn auf der Seite des Produktes eine Klassenübersicht im UML-Format existieren würde, damit die Interaktion der Klassen schneller verstanden werden könnte. So steht nur eine schlichte textuelle Klassen-Übersicht zur Verfügung. Ebenfalls negativ ist mir aufgefallen, dass die Kommentierung recht dürftig ist. So sind Funktionen nur teilweise beschrieben und innerhalb der Funktionen sucht man Kommentare leider (fast) vergeblich. Glücklicherweise sind die Funktionen und Variablen aber mit selbstsagenden Namen versehen, so dass man auf die Funktion in der Regel schließen kann.

Es ist eben das typische Programmierer-Problem: “Wieso soll ich das lang beschreiben, ist doch klar, was die Funktion tut”. Das stimmt zwar, aber wenn man als “Neuling” nach der passenden Funktion sucht und dann immer erst den Quellcode analysieren muss, dann werden aus einfachen Änderungen komplexe Aufgaben. Also an die Programmierer unter uns: Kommentiert lieber zuviel als zuwenig, ihr werdet euch noch dankbar sein!

Aber sehen wir es positiv: wenigstens wurde kommentiert (bei OpenSource leider nicht selbstverständlich - in ClosedSource zwar auch nicht, aber da stört es keinen).

Erweitert kann Vanilla recht einfach. Hierzu sind auf den Vanilla-Seiten auch einige Erweiterungen bereits vorhanden. Auch ist die sprachliche Anpassung sehr gut gelöst (mittels einfachen Sprach-Dateien), so dass einer internationalisierten Seite nahezu keine Hindernisse in den Weg gelegt werden.

Templates:
Hier existiert definitiv die Schwachstelle in Vanilla. Templates sind nämlich nicht vorhanden. Statt dessen muss man zur Design-Anpassung PHP-Code anfassen. Der ist zwar nicht kompliziert und ist auch getrennt von der restlichen Programmierung (separater Ordner “controls”), aber wird dies einen Designer sicher abschrecken.

Fazit:
Vanilla scheint für mich eine sehr interessante Forensoftware zu sein. Wäre sie damals bekannter gewesen, als die Strohhalm-Software neu programmiert wurde - man hätte sich wohl für Vanilla entschieden. Für alle Forenbetreiber also auf jeden Fall einen Test wert.

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
No responses yet

Dec 20 2005

Nie mit Bookmarks testen

Published by Mathias Bank. Filed under: Programming

Das muss ich mir jetzt ganz dick in mein Notizblock schreiben!

Das Problem: Im Strohhalm kann man sich wie in anderen Foren auch automatisch anmelden lassen. Der Strohhalm ist modular aufgebaut und so war das Modul “Forum” für diese automatische Anmeldung zuständig. Das hat sich aber mit der neuen Startseite geändert, denn nun sollte das Modul für die Startseite die Anmeldung übernehmen (dies ist ja der normale Einstiegspunkt). Eigentlich völlig klar. Mir ist das beim Testen aber nie aufgefallen, weil ich immer meinen Bookmark verwendet habe, der einfach mal direkt auf das Forum verlinkt hat und mich somit auch automatisch angemeldet hat.

Höchste Zeit, meine komplette Umstrukturierung der Software voranzutreiben. Denn dann wäre dieses Problem niemals aufgetreten. Wie die neue Struktur aussehen wird, verrate ich an späterer Stelle, wenn Interesse besteht (es müssten sich hierzu aber schon ein paar melden :-P).

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
One response so far

Dec 18 2005

Strohhalm mit neuer Startseite

Published by Mathias Bank. Filed under: Strohhalm

Der Strohhalm hat nun eine neue Startseite. Hier wird in der Standard-Ansicht eine Beschreibung über den Strohhalm geliefert, damit auch neue Benutzer sehen, was das besondere an dieser Community ist. Daneben werden nun hier die neusten Einträge aus den Rubriken “Forum”, “Linklisten” und “Magazin” angezeigt.

Das besondere an der Startseite: angemeldete Benutzer haben die Möglichkeit, die Startseite ihren Wünschen direkt anzupassen. So kann man einzelne Blöcke ausblenden lassen oder die Reihenfolge ändern. Da der Strohhalm auf Barrierefreiheit setzt, konnte hier nicht auf JavaScript zurückgefriffen werden, womit eine einfachere Verwaltung möglich wäre. Stattdessen kann man über eine zusätzliche Seite die Einstellungen für die Startseite festlegen.

Eigentlich interessant, dass kaum eine andere Community eine individualisierbare Startseite anpasst. Dabei zeigt Google schon eindrucksvoll, wie man eine Seite einfach anpassen kann.

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
No responses yet

Dec 12 2005

Forenbetreiber für User-Einträge doch verantwortlich? [Update]

Published by Mathias Bank. Filed under: Foren-Welt

Habe ich erst vor ein paar Tagen über die Rechtssituation für Forenbetreiber berichtet, fliegt heute ein Heise-Artikel auf meinen Bildschirm. In diesem ist das Hamburger Landgericht der Meinung, dass heise sehr wohl für Inhalte der User verantwortlich ist, auch wenn die Inhalte noch nicht zur Kenntnis genommen wurden. Die Begründung:

Die Kammer erklärte, sie sei überzeugt, dass der Verlag allein durch die Verbreitung auch ohne Kenntnis für die im Forum geäußerten Inhalte haftbar zu machen sei. Er könne schließlich die Texte vorher automatisch oder manuell prüfen.

Da sieht man mal wieder, dass manche Gerichte von der Materie keine Ahnung haben: automatisch ist es nämlich in der Realität nicht möglich: sollte dies der Fall sein, ist ein Computer in der Lage, natürlichen Text zu verstehen. Wäre zwar schön, aber da sind wir noch weit weg. Von Hand ist bei den Themen-Aufkommen auf heise.de absolut unrealistisch.

Viel schlimmer finde ich jedoch, dass das Gericht offensichtlich das Teledienstgesetz nicht korrekt liest, denn hiernach ist ein Forenbetreiber erst nach Kenntnis für den Inhalt verantwortlich. Ein wirklich sehr bedenkliches Urteil. Über manche Juristen kann man wirklich nur den Kopf schütteln.

Ich hoffe nur, dass der heise-Verlag in Revision geht!

[Update]

Bei vielen Nachrichten zu diesem Thema wird ein Argument gebracht, dass man sich nicht aufregen bräuchte, denn das Teledienstgesetz sagt etwas ganz anderes. Es wird aber hierbei etwas wesentliches vergessen: Gesetze können interpretiert werden, auch das Teledienstgesetz. Denn hier ist die Rede von “Verantwortlichkeit”, die es so in der deutschen Rechtsprechung nicht gibt. Statt dessen ist in der Regel von “Haftung” die Rede. Dies wird schön im Law-Blog angesprochen. Denn bereits am 11.03.2004 hat das BGH entschieden:

Das Haftungsprivileg des § 11 Satz 1 TDG, das den Diensteanbieter, der fremde Informationen für einen Nutzer speichert („Hosting“), von einer Verantwortlichkeit freistellt, betrifft nicht den Unterlassungsanspruch.

Damit könnte man nämlich interpretieren, dass heise dazu verpflichtet werden könnte, die Einträge zu kontrollieren. Das BGH hat dies zwar damals relativiert, was das Landgericht nicht hat:

Weil die Störerhaftung aber nicht über Gebühr auf Dritte erstreckt werden darf, die nicht selbst die rechtswidrige Beeinträchtigung vorgenommen haben, setzt die Haftung des Störers die Verletzung von Prüfungspflichten voraus. Deren Umfang bestimmt sich danach, ob und inwieweit dem als Störer in Anspruch Genommenen nach den Umständen eine Prüfung zuzumuten ist (…).

Trotzdem ist die rechtliche Lage nicht eindeutig. Leider wie so oft.

[Update]
Auch Dr. Bahr hat sich mit dem Thema beschäftigt.

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
One response so far

« Previous Entries

^