Mittwoch, 7. August 2024

FlatPress 1.3.1 “Andante” - mein Eindruck

Ich denke mal, allein die Tatsache, dass ich FlatPress 1.3.1 inzwischen auf 5 meiner 10 Webseiten einsetze, sollte Bände sprechen. Ja, ich habe inzwischen etwas tiefer ins System geschaut. Auch wenn man es von außen nicht sieht, zwischen der 1.2.1 und 1.3.1 liegen Welten! Beim Datenschutz fliegt FlatPress aber auch bei dieser Version auf die Nase.

Die 1.2.1 war ja schon beim Validator durchgefallen und ich hatte das Ding damals komplett zerlegt und die Hände über den Kopf zusammengeschlagen. Hier wurde gute Arbeit geleistet, der Test wird ohne Fehler bestanden.

Die HTML-Fehler waren aber nur das kleinere Übel, viel wichtiger war die Kompatibilität zu PHP 8.x und auch hier sieht es gut aus. Alle meine Seiten laufen mit PHP 8.3 und FlatPress schnurrt darauf wie ein Kätzchen. Die Pagespeed-Werte sind top und mit 10,6 MB auf 1.395 Dateien verteilt gehört es zu den kompaktesten Lösungen, welche sich optisch nicht verstecken müssen und Funktionen nicht auf externe Dienste auslagern (Kommentare zu Discourse z.Bsp.). Das ginge auch kleiner, aber nicht mit Smarty, der Template-Engine die FlatPress nutzt.

Vom Frontend ins Backend begibt man sich aber immer noch auf eine Zeitreise. Eine modernere Variante ist in Arbeit, aber das Team hat richtig entschieden und dieses erst einmal hinten angestellt, um das Release der 1.3 nicht noch weiter herauszuzögern.

Am Desktop ist das altbackene Backend funktional - auf dem Schlauphone aber die Hölle. Bei dem Editor scheiden sich die Geister. Manche hätten lieber einen moderneren WYSIWYG-Editor, ich hingegen bevorzuge es, Artikel mit BBCodes und eingebetteten HTML zu schreiben.

flatpress_editor_2024-08-07_11-47.jpg

Die Handhabung der Medien finde ich nach wie vor grausig. Hier wäre ein Upload direkt im Editor wünschenswert, ähnlich, wie es z.Bsp. in einem phpBB gehandhabt wird. Es geht zwar auch so, ist aber echt verdammt umständlich und macht nicht wirklich Spaß. Da meine Beiträge aber eher textlastig sind und nur hier und da mal ein Bild verwenden, kann ich damit leben.

flatpress_uploader_2024-08-07_11-49.jpg

Als Theme ist auch mein Lieblingstheme, das Leggero V2 wieder dabei, welches ja auch das Standard-Theme ist. Dieses lässt sich mit nur wenigen Handgriffen individualisieren. Versucht das mal bei einem WordPress 😉. Wer das Leggero V2 in 5 von mir angepassten Versionen sehen möchte, braucht einfach mal auf meine anderen 4 Seiten schauen: dunkle-engel.de, echtma.de, engelfabrik.de und madeconya.de. Auf der fünften Seite seid ihr ja gerade. Alle Seiten haben als Grundgerüst das Leggero V2. Nur der Hintergrund, die Farbgebung und die Transparenz unterscheiden sich.

Schon vor 2 Jahren war ich begeistert von FlatPress, allerdings haben mir die vielen Fehler und einige andere Kleinigkeiten den Spaß daran verdorben. Das Team hat über 3 Jahre an der neuen Version gearbeitet und das Ergebnis kann sich wirklich sehen lassen. Jetzt kann ich FlatPress wieder ruhigen Gewissens weiterempfehlen. Vielen Dank dafür an das Team von FlatPress.
–>> https://flatpress.de

Wichtiger Hinweis zum Datenschutz:
Die Speicherung von IP-Adressen birgt rechtliche Probleme. Eine IP zu speichern um zu meinen, sich rechtlich absichern zu können - sehr fragwürdig! Gastkommentare sollten niemals ohne Moderation veröffentlich werden, verantwortlich ist am Ende also derjenige, der diesen Kommentar freigegeben hat. Geschieht eine Freigabe ohne vorherige Moderation, so ist hier der Seitenbetreiber der Verantwortliche. Man kann intern die IP verwenden, z.Bsp. für Spamfilter, aber spätestens nach der Freigabe des Kommentars besteht kein Grund mehr, eine IP zu speichern. Bereits in der Version 1.2.1 habe ich darauf aufmerksam gemacht. Der dort beschriebene Weg funktioniert so ähnlich auch in der 1.3.1.

Das Problem geht aber noch etwas tiefer. Die Kommentare sind als Text-Dateien im Klartext gespeichtert. Mit dabei ist auch die Email-Adresse. Kennt man die Verzeichnisstruktur von FlatPress, könnte man also auch von jedem Kommentator die Email-Adresse und die IP herausfinden, sofern nicht noch gesonderte Maßnahmen getroffen werden. In der Installationsanleitung ist nichts zu lesen. Nur draufklatschen und loslegen. Hmm, schwierig, oder? Vielleicht lieber doch keine Empfehlung für FlatPress?

Installing and running FlatPress is really easy:
- [Download FlatPress](https://www.flatpress.org/download), unzip, upload
- Browse to your web server, run simple FlatPress installer
- Enjoy blogging with FlatPress!

Der Kommentar von Gastmadekozu hier, unter diesem Artikel, ist als Textdatei unter https://madekozu.de/ … ent240807-120029.txt gespeichert und wird unter https://madekozu.de/ … comment240807-120029 bei den Kommentaren verlinkt. Beachtet man die Sicherheit nicht, wie die Installationsanleitung ja unter Beweis stellt, könnte man mit dem ersten Link nun Email-Adresse und IP von Gastmadekozu herausbekommen, weil der Eintrag im Browser angezeigt wird. Die einzige Unbekannte bei der Verlinkung in den Kommentaren ist die entry-id, welche man aber schnell herausfindet, wenn man sich kurz den Quellcode der Seite anschaut.

flatpress_entry_id_2024-08-07_14-29.jpg

Wie leicht man daraus einen Bot stricken kann, der FlatPress-Seiten im Netz sucht, dort Kommentare und die entry-id ausfindig macht um danach Email- und IP-Adressen zu farmen, brauche ich glaube nicht näher zu erläutern. Als Lohn für die Mühe bekommt der Angreifer das hier:

flatpress_comment_2024-08-07_14-34.jpg

Genau deshalb sollte dieses Thema wesentlich mehr Beachtung finden. Viele Anwender verlassen sich darauf und fühlen sich in Sicherheit. Ab diesen Punkt kann man froh sein, dass FlatPress nicht bekannter ist, füttert der Anwender doch unwissentlich Datenbanken, welche auf dem Schwarzmarkt verkauft werden.

Wenn du bis hierher gelesen hast und selbst ein FlatPress-Blog betreibst, versuch mal auf deiner Webseite eine Textdatei mit Kommentar direkt im Browser aufzurufen. Wird sie dir im Browser angezeigt, kann auch die ganze Welt darauf zugreifen.

Ein solch wichtiges Thema nicht ausreichend zu beachten, wirft leider kein gutes Licht auf das FlatPress-Projekt, egal ob man releasen will oder nicht, Sicherheit und Datenschutz haben immer ganz oben auf der Todo-Liste zu stehen, selbst wenn in der Zwischenzeit schon php 12.4 veröffentlich wurde.

Übrigens: Hat man die Berechtigungen soweit angepasst, dass FlatPress noch arbeitet, von außen aber keiner mehr die sensiblen Daten abgreifen kann, so stellt man fest, dass einem das wenig hilft. Ein Klick auf “Dateiberechtigungen wieder herstellen” im Kontrollzentrum reicht, schon ist von außen wieder alles abgreifbar. Es braucht also eine andere Lösung - mit chmod wird das nix. Deshalb kann man oben jetzt auch wieder die Textdatei direkt aufrufen. Vor dem Klick ging das nicht. Mein Lösungsansatz, es über chmod zu versuchen, hätte aber auch ohne den Klick nur mühselig funktioniert - ich hätte ja jedem neuen Kommentar, oder besser der Datei davon, wieder die Rechte per Hand einstellen müssen. Das ist blöd, das nervt, das will ich nicht.

Meine Lösung ist jetzt vielleicht etwas radikal, aber ich speicher weder IP noch Email-Adresse. Alles, was sich in den Kommentaren abspielt ist öffentlich. Wer mich privat kontaktieren will, findet im Impressum sicher einen Weg. Warum sollte ich also IP oder Email-Adressen speichern, welche dann ungeschützt im Klartext zu lesen sind? Nix da - bei mir nicht. Die Kommentardateien sehen bei mir nun so aus: https://madekozu.de/ … ent240807-194929.txt. So kann mir wenigstens keiner ans Bein pinkeln, weil ich seine Email-Adresse und IP Dritten zugänglich gemacht habe.

Hierfür muss man allerdings die /fp-interface/sharedtpls/comment-form.tpl und die /comments.php verändern. Es ist also nur eine Lösung bis zum nächsten Update. Vielleicht wird aber bis dahin auch mal der Datenschutz bei FlatPress ernst genommen und man baut einfach mal ein kleines Knöpchen in den Adminbereich, der mittels IF-Abfrage einfach die entsprechenden Stellen in der /comments.php übergeht, wenn man das möchte. *mit Zaunpfahl wink*.