Sicherheitsupdate

Ihr seid toll. Das erleben wir Tag für Tag, seid inzwischen fast zehn Jahren. Ob ihr euch mit einer Frage an uns wendet oder mit einem Tipp, wie wir mite verbessern könnten: Wir erleben viel Köpfchen und Erfahrung, viel Freundlichkeit und Verständnis. Und vor allem Hilfsbereitschaft. Dafür möchten wir uns heute einmal ganz grundsätzlich bedanken.

Ganz besonders geht unser Dank heute allerdings an Marcel Eichner. Er hat uns vergangenen Donnerstag auf eine Sicherheitslücke aufmerksam gemacht. Dank seiner exakten Beschreibung konnten wir diese sofort nachvollziehen und drei Stunden später schließen. Merci für deine Unterstützung, Marcel!

Erstens haben wir keine Indizien, dass die Lücke ausgenutzt wurde. Zweitens hätten keine personenbezogenen Daten ausgelesen oder gar modifiziert werden können. Trotzdem möchten wir euch natürlich detailliert informieren.

Der Fehler hatte sich in unsere offene Datenschnittstelle, die mite.api, eingeschlichen. Jedes Projekt in mite hat eine eindeutige Identifikationsnummer (ID) und ist optional einem Kunden zugeordnet. Über unsere API kann man Zeiteinträge für ein Projekt erstellen. Das Projekt wählt man über dessen ID aus. mite überprüft dann, ob ein Projekt mit dieser ID existiert und ob es zum eigenen Account gehört. Schlägt diese Prüfung fehl, wird die Projekt-ID in der Serverantwort auf „null“ zurückgesetzt.

Aus Performance-Gründen gibt mite bei Erstellung eines Zeiteintrags nicht nur die Projekt-ID zurück, sondern, falls vorhanden, auch die ID, den Namen sowie ggf. den Stundensatz des dem Projekt zugehörigen Kunden. Hier versteckte sich der Fehler, und zwar in der Reihenfolge der Prüfung. Gehörte die ID zu dem Projekt eines fremden Accounts, wurde die Projekt-ID zwar wie beschrieben zuerst zurückgesetzt, jedoch wurden dennoch die genannten Daten des zugehörigen Kunden soweit vorhanden zurückgegeben.

Die Serverantwort enthielt jedoch nicht die Information, zu welchem Account dieser Kunde gehört. Man hätte ergo aufgrund dieser Lücke zwar erfahren können, dass irgendein Unternehmen, das mite einsetzt, für einen Kunden XYZ arbeitet, nicht jedoch, welches Unternehmen. Und dass irgendein nicht definiertes Team auf der Welt für einen Kunden XYZ arbeitet, ist glücklicherweise keine hochsensible Information.

Die Lücke war also keine superkritische, und nun ist sie dicht. Doch sie hatte sich eingeschlichen, so ernst wir das Thema nehmen. Daher sind wir Marcel auch so dankbar für seinen Hinweis. Und möchten das zum Anlass nehmen, euch alle darum zu bitten, euch sofort direkt bei uns zu melden, falls ihr in Zukunft auf eine Schwachstelle aufmerksam werden solltet.

E-Mail ist der geschickteste Kanal in solch Fällen. Alle Kommunikationskanäle sowie unseren PGP-Key zur verschlüsselten Kommunikation findet ihr hier. Bitte beschreibt uns möglichst genau, wie ihr vorgeht, wie mite sich verhält und wie mite sich eurer Meinung nach verhalten sollte. Schickt gerne Code-Beispiele mit, Screenshots, Infos zur von euch eingesetzten Technik – alles, was wichtig sein könnte, um das Problem nachzuvollziehen und möglichst rasch zu beheben. Bitte unterstützt uns dabei, mite fehlerfrei zu halten. Für euch alle.

Julia in Maschinenraum

Wartungsarbeiten am 31.5.

In unserem Hauptrechenzentrum stehen in der Nacht vom kommenden Montag auf Dienstag, den 31.5., von 0:00 bis 6:00 Uhr mitteleuropäischer Sommerzeit Wartungsarbeiten an. Unser Hoster wird Updates an den Core-Routern durchführen. Es kann innerhalb dieses Zeitraums zu Unterbrechungen der Internetverbindung von bis zu zwei Stunden kommen. mite wird dann leider nicht erreichbar sein.

Wir wünschen unserem Hoster SysEleven einen geschmeidigen Lauf dieser notwendigen Bauarbeiten. Und bitten um euer Verständnis. Hoffentlich müsst ihr keine Nachtschichten schieben und könnt folglich kurz auf euer mite verzichten.

~~
Update: Die Wartungsarbeiten wurden um 4:18 Uhr erfolgreich abgeschlossen, und das ohne eine einzige Minute Downtime für mite.

Julia in Maschinenraum

Update im Maschinenraum

Seit dem gestrigen Abend läuft mite auf neuer Version des zugrundeliegenden Frameworks. Darüberhinaus haben wir einige kleine Feinschliffe veröffentlicht, die u.a. die Geschwindigkeit für Accounts mit einer sehr hohen Anzahl an Kunden und Projekten verbessern.

Solch Updates spielen wir immer wieder ein, das gehört zu unserem Alltag als mite.pfleger. Wir weisen heute gesondert darauf hin, da sich zeitweise ein Fehler eingeschlichen hatte, auf den uns dankenswerterweise sofort mehrere Nutzer aufmerksam machten.

Den Fehler selbst als auch seine temporären Auswirkungen haben wir inzwischen vollständig behoben. Wir möchten das jedoch nicht unter den Tisch kehren, sondern euch detailliert informieren, was genau los war und wie wir damit umgegangen sind. Darauf sollt ihr immer zählen können.

Also los: Markierte man ab gestern, 19:42 CEST einen Zeiteintrag als abgeschlossen, bearbeitete ihn über die Stapelverarbeitung oder startete oder stoppte man die Stoppuhr auf ihm, wurde ein etwaiger vorhandener Umsatz auf dem Zeiteintrag auf Null zurückgesetzt, es griff also nicht mehr der korrekte Stundensatz. Diesen Fehler haben wir mit einem weiteren Update in der heutigen Nacht um 1:58 CEST behoben. Den Umsatz von Zeiteinträgen, die ab gestern 19:42 CEST bearbeitet wurden und vom Fehler betroffen waren, haben wir selbstverständlich auch wieder geradegestellt; Diese Arbeiten schlossen wir heute Nacht um 4:08 CEST ab. Der Fehler tritt also nicht mehr auf und alle Daten sind wieder korrekt. Falls du zwischen gestern Abend 19:42 und heute Nacht 4:08 CEST Zeiteinträge bearbeitet und diese just bearbeiteten Zeiten gleich exportiert hast, empfehlen wir allerdings, ihren Stundensatz und Umsatz der Sicherheit zuliebe noch einmal zu überprüfen.

Ursache des Fehlers war eine leider undokumentierte Änderung im mite zugrundeliegende Framework. Vor der Veröffentlichung eines jeden Updates testen wir natürlich immer ausführlich, sowohl über Software-Tests als auch über manuelle Tests. Der Fehler ist uns jedoch leider durch diese Sicherheitsnetze hindurchgerutscht. Das ist auch der Punkt, an dem wir nun ansetzen, um solch ein Problem für die Zukunft sicherer auszuschließen. Wir sind bereits dabei, unsere Testprozeduren zu verfeinern.

Unsere Entschuldigung von Herzen für diesen Vorfall. Wir nehmen das definitiv nicht auf die leichte Schulter.

Bitte meldet euch – wie stets – mit möglichst vielen Details bei uns, gern per Mail, falls euch noch eine weitere Ungereimtheit auffallen sollte. Von unserem Ziel, mite fehlerfrei zu halten, werden wir ganz bestimmt kein Stückchen abweichen!

Julia in Maschinenraum

Ankündigung von Wartungsarbeiten

Am heutigen Abend ab 20:15 Uhr MEZ bis etwa 21:15 Uhr stehen Wartungsarbeiten an unseren Servern an. Innerhalb dieses Zeitraums wird mite etwa 10 Minuten nicht zur Verfügung stehen. Diese kleine Verschnaufpause ist notwendig, um wichtige Updates auf unsere Server aufzuspielen. Wir bitten um euer Verständnis.

~~
Update: Die Wartungsarbeiten dauerten zwar etwas länger als erwartet, liefen aber geschmeidig. mite war insgesamt nur vier Minuten nicht verfügbar. Merci für eure gedrückten Daumen!

Julia in Maschinenraum

Sanierter Excel-Export

Unter dem Menüpunkt »Reports => Zeiten« und auf freigegebenen Projekt-Detailreports können Zeiteinträge Richtung Excel exportiert werden, und unter »Reports => Projekte« lassen sich Projektdaten herunterladen. Diese Exportoptionen haben wir unter der Haube grundlegend umgebaut. Bisher übergaben wir in einem Excel-spezifischen XML-Format, ab sofort als XSLX.

Non-Techie-kauderwelschig soll diese Änderung genau eins gewährleisten: einen stabilen, geschmeidigen Export eurer Daten. Und das nicht nur in aktuellen Excel-Versionen, sondern hoffentlich auch in kommenden.

Bitte gebt laut, falls euch das neue Exportformat Probleme bereiten sollte, und das mit Hinweis auf die genaue von euch verwendete Version. Getestet haben wir den neuen Export unter Windows auf Excel 2016 und 2013, unter Mac OS auf Excel 2016, 2013, 2011, Numbers 3.6, OpenOffice 4 und LibreOffice 5 sowie auf Excel Online.

Julia in Maschinenraum

Überarbeitete Dokumentation der mite.api

Entwickler, aufgehorcht: die Dokumentation unserer offenen Datenschnittstelle, der mite.api, steht euch ab sofort von Grund auf überarbeitet zur Seite.

Neben dem bisherigen XML-Format werden nun auch alle Zugriffe per JSON dokumentiert – und dorthin gerückt, wo sie hingehören: in den Vordergrund. Darüberhinaus werden jetzt gängige Fehler präziser beschrieben, HTTP Codes sowie einige bisher undokumentierte Features wie die Sortierung von Zeiteinträgen, Shortcuts beim Filtern und HTTP-Caching.

Wir wünschen gutes Schmökern. Gebt bitte gerne laut, falls euch Ungereimtheiten ins Auge fallen sollten.

Julia in Maschinenraum

Heutige Nicht-Erreichbarkeit

Seit 14:05 mitteleuropäischer Sommerzeit ist mite aufgrund eines Netzwerkproblems im Rechenzentrum momentan leider nicht erreichbar. Unsere Entschuldigung von Herzen für diese Störung! Wir werden alles daran setzen, mite schnellstmöglichst wieder stabil zum Laufen zu bekommen. Bitte werft für neueste Informationen einen Blick auf Twitter. Wir werden dort kontinuierlich über den aktuellen Fortgang der Arbeiten informieren.

~~
Update: Seit 14:51 Uhr ist mite wieder stabil erreichbar. Eure Daten waren selbstverständlich zu keinem Augenblick in Gefahr, darauf könnt ihr stets vertrauen.

Die Ursache lag im Haupt-Rechenzentrum von mite, dort traten Netzwerk-/DNS-Probleme auf. Wir werden den Ausfall selbstverständlich en dé­tail mit unserem Hoster besprechen. Unsere Entschuldigung noch einmal für diese Nicht-Erreichbarkeit!

~~
Update: Die Netzwerkproblematik wurde durch eine Leitungsstörung im Großraum Berlin ausgelöst, in deren Folge große Teile des Internets am Austauschknoten BCIX nicht erreichbar waren. Daraufhin leitete unser Hoster Traffic an andere Internetaustauschknoten um. Ab diesem Zeitpunkt war mite wieder stabil erreichbar.

Julia in Maschinenraum

Heutiger Serverfehler

Von 8:16 bis 8:39 Uhr mitteleuropäischer Sommerzeit war mite am heutigen Freitagmorgen leider für alle Nutzer nicht erreichbar. Wir bitten um eure Entschuldigung!

Ursache der Nicht-Erreichbarkeit war ein Kernelfehler in unserem Haupt-Datenbankserver. Alle Monitoring-Systeme schlugen sofort an. Zwei Minuten nach der Warnung waren wir an der Fehlersuche, drei Minuten später war unser Hoster zur Stelle und startete den betreffenden Server neu. Das behob die Ursache, mite selbst benötigte jedoch noch die weiteren Ausfall-Minuten, um wieder stabil auf die Beine zu kommen. Etwaige laufende Stoppuhren liefen durch. Alle Daten haben den Aussetzer wohlbehalten überstanden – sie waren zu keinem Zeitpunkt in Gefahr.

Diese Nicht-Erreichbarkeit tut uns wirklich leid. Unser Pardon noch einmal!

Wir möchten diesen Fehler nichtsdestotrotz zum Anlass nehmen, uns bei unserem Hoster SysEleven zu bedanken. Seit Juli 2012 lief mite bis auf wenige kleine Hakeleien von weniger als fünf Minuten Dauer absolut stabil. Dies war die erste große Downtime seit fast drei Jahren. Das ist ein toller Schnitt. Merci für eure Unterstützung, SysEleven.

Julia in Maschinenraum

Excel- & CSV-Export von Projekten

Unter dem Menüpunkt »Reports => Projekte« steht in mite eine Übersicht aller Projekte parat, samt aufgelaufener Zeiten und Umsätze sowie Infos zum Budget. Diese Liste lässt sich nun auch Richtung Excel oder als CSV-Datei exportieren. Die frischen Optionen finden sich in der rechten Seitenleiste.

Export von Projekten Richtung Excel oder als CSV

Merci an alle Nutzer, die diese Erweiterung vorgeschlagen haben. Auf dass euch das neue Feature dabei unterstützt, auch eine große Anzahl an Projekten auf Kurs zu halten.

Julia in Neue Features

Neues Projekt, (k)einem Kunden zugeordnet

Erstellt man unter dem Menüpunkt »Zeit erfassen« einen neuen Zeiteintrag, fällt manchmal erst bei der Auswahl des Projekts auf, dass das neue Projekt ja noch gar nicht in mite angelegt wurde. Genau für solch Fälle steht seit langem die Schnellanlage-Funktion für Projekte ebendort parat, direkt im Auswahlmenü.

Per Klick auf den Listeneintrag »Neues Projekt« konnte man bisher nur ganz schlicht den Namen des neuen Projekts eingeben.

Schnellanlagefunktion für neue Projekte mit Kundenauswahl

Auf zahlreichen Wunsch hin kann man nun auch zusätzlich wählen, welchem Kunden das neue Projekt zugeordnet werden soll. Ordnung von Anfang an.

Unseren Dank für euer anstoßendes Feedback! Hoffentlich läuft die Zeiterfassung für euch dank dieser kleinen Erweiterung in Zukunft noch etwas geschmeidiger.

Julia in Neue Features