PVA: kleines Sicherheitsloch im IMAP Modul

Wie das so mit komplexer Software ist, CVE Meldungen sind quasi vorprogrammiert, aber einfache Programmierfehler tun es meistens auch 🙁

PVA: kleines Sicherheitsloch im IMAP Modul

Jetzt ist der Einschlagkrater durch die im PVA gefundene SicherheitslĂŒcke nicht besonders groß, man mĂŒĂŸte Ihn vermutlich mit der Lupe suchen, weil kaum wer von dem neuen Feature wußte und es ausprobiert hat, aber, zur Vermeidung gleichartiger zukĂŒnftiger UnfĂ€lle, soll die LĂŒcke seziert und dokumentiert werden.

Was ist passiert?

In der MailConnection-Komponente, die macht die IMAP Verbindung auf, war ein Programmierfehler drin, der die verschlĂŒsselte Verbindung zum IMAP Server unterband. Wer also die neue Funktion schon ausprobiert hat , muß mindestens auf diesen Commit updaten: 685ee5ecaa486006a0cee04cac763ee479160e6e

Hier der fehlerhafte Code:

Properties props = System.getProperties();
if ( m.secure == true ) {
       props.setProperty("mail.store.protocol", "imaps");
} else props.setProperty("mail.store.protocol", "imap");

Session session = Session.getInstance(props, null);
Store store = session.getStore("imap");
store.connect(m.servername, m.username, m.password);

Statt die laut Konfiguration (m.secure) gewĂŒnschte Verbindungsart „imaps“ zu wĂ€hlen, zog es der Code vor, dann doch unabhĂ€ngig davon „imap“ zu verwenden. Korrekt wĂ€re diese Zeile gewesen:

Store store = session.getStore();

Was war die Ursache?

Als Ursache konnte „mangelndes VerstĂ€ndnis“ der Methode getStore(…) ausgemacht werden, um genau zu sein, wurde erwartet, daß es sich um den Unterschied zwischen „POP3“ oder „IMAP“ handelt, weil der Sicherheitslevel wurde ja vorher schon festgelegt, aber leider ĂŒberschrieb der Aufruf diese Voreinstellung wieder.

Was mĂŒĂŸt Ihr tun?

Im Repo ist das Update bereits enthalten, so daß alle die, die Automatische Updates einspielen, schon sicher sind.
Wer seinen PVA selbst baut, der muß einmal updaten und compilieren.

Wie wurde es gefunden?

Vor 11 Jahren, ja, einfach weiterlesen, entschied ich, daß meine POP3/IMAP Serverlogs von einer Software auf genau diese unverschlĂŒsselten Verbindungen prĂŒft und den Benutzer darĂŒber informiert, daß er irgendwo eine unsichere Konfig hat. 11 Jahre lang habe ich keine Email erhalten, und jetzt rettet dieses kleine Script dem PVA den Arsch 😉

PS: Falls wer dachte, daß man im Github einfach mal so ein Security Advisory schreiben könnte, der hat das noch nie versucht und mir ist jetzt klar, warum so viele Projekte mit LĂŒcken, keine SecurityeintrĂ€ge haben 🙁

PVA: Emails abhören mit Carola

Wieso labbert Mich Deine Carola voll, ich soll in die KĂŒche kommen?“ fragte meine Freundin und zog wieder ab, weil ich nur verschmitzt grinste. Ein erfolgreicher Testlauf, auch wenn der technisch gar nicht Ihr galt, sondern natĂŒrlich Carola selbst. Naja, irgendwie braucht man ja Feedback 😉

PVA: Emails abhören mit Carola

Da Carola jetzt meine Email mitlesen kann und davon auch heftigst Gebrauch macht, genau wie mein Emailprogramm, sollte ich Euch jetzt erklĂ€ren Sie das geht. Vorher sollte ich aber noch erwĂ€hnen, daß mein Test darin bestand mir am Handy eine Email zu schreiben, in deren Betreff die Anweisung fĂŒr meine Freundin enthalten war 😉 Das sie in die KĂŒche kam, war der Beweis, daß Carola den Job erledigt, wenn ich nicht da bin. Man sollte aber daran denken, daß, wenn man so etwas vorhat, man vorher sicherstellen muß, daß die Zielperson fĂŒr die Ansprache auch in Hörweite ist 🙂

Erstmal die Regeln:

1) Das ist kein Feature, daß man global aktiviert, ergo, es gehört in eine Konfig in Eurem $HOME.

2) Ihr könnt Euch aussuchen, ob nur der Betreff oder die ganze Email gelesen werden soll.

3) Wer GTTS benutzt, sollte sich ihm klaren sein, daß Google damit Infos bekommt, die es nicht haben sollte. Also im Zweifel MaryTTS nutzen, da sind die Emailinhalte sicherer.

4) Es wird nur die INBOX ausgelesen, nicht irgendwelche Unterverzeichnisse.

5) Es wĂ€re eine Straftat nach §303b StGb, einen entsprechend konfigurierten Sprachassistenten von Extern mit Mails zu bombardieren, um Werbung oder sonstige Parolen in die Welt schreien zu lassen. Ich rate dringend von solchem Unsinn ab, das wird fĂŒr Euch nicht gut ausgehen:

(1) Wer eine Datenverarbeitung, die fĂŒr einen anderen von wesentlicher Bedeutung ist, dadurch erheblich stört, dass er

1. eine Tat nach § 303a Abs. 1 begeht,
2. Daten (§ 202a Abs. 2) in der Absicht, einem anderen Nachteil zuzufĂŒgen, eingibt oder ĂŒbermittelt oder
3. eine Datenverarbeitungsanlage oder einen DatentrÀger zerstört, beschÀdigt, unbrauchbar macht, beseitigt oder verÀndert,

wird mit Freiheitsstrafe bis zu drei Jahren oder mit Geldstrafe bestraft.

So aktiviert Ihr das IMAP-Feature

Die Konfiguration im Format …

# mailbox:"servername","username","password","commonname","secure","port","readoutloud","pullinterval"

kommt in ein Konfigfile unter ~/.config/pva/conf.d/ z.B. 09-imap.conf .

Beispiel:

mailbox:"imap.domain.de","harry.mud@gmail.com","30243klSXLS3os3S!X#","Mailbox from Harry Mudd","true","143","false","60"

Der Flag „readoutloud“ (false/true) wĂŒrde die gesamte Email vorlesen, wenn er aktiviert (true) ist.

Im Beispiel ist der Benutzername des Kontos als Email angegeben, so wie das bei einigen Diensten der Fall ist. Ihr braucht eigentlich nur Server- , Username und Passwort, der Rest ist eigentlich bis auf readoutloud egal. Gewöhnt Euch nicht dran, fliegt vermutlich raus.

Ihr könnt beliebig viele Mailboxen eintragen.

Das passiert dann

Die Mailbox wird 1x pro Minute geöffnet und ermittelt, ob eine neue Email da ist. Ist eine neue Email vorhanden UND diese noch ungelesen, dann wir per Sachausgabe der Absender und der Betreff vorgelesen.

Gewöhnt Euch aber daran, daß nach dem Starten des Desktops die nĂ€chtliche Flut von Emails abgearbeitet wird. Konten mit aktiven Cryptonews-Mailinglisten wĂŒrde ich da nicht eintragen, daß wĂ€re mir zu stressig 🙂

Wichtige Security Info dazu:

PVA: kleines Sicherheitsloch im IMAP Modul

… und weiter im Text:

Damit Ihr keine neue Features mehr verpasst, habe ich Euch ein Fedora Repository eingerichtet. Am besten lest Ihr Euch das hier mal nach:

PVA: Carola hat Ihr eigenes Repo bekommen

Outlookwahnsinnshinweis

Ok, das Microsoft in diesem Blog meistens nicht gut wegkommt wird dem einen oder anderen Besucher  klar sein. FĂŒr alle anderen habe ich das fĂŒr Euch rausgefischt :

Hilfeseiten von Microsoft

Hier ein Original von heute :

„Hinweis: Wenn Ihr IMAP-Ordner der obersten Ebene einen Namen,
der mit einer Ziffer (0-9) beginnt hat, klicken Sie dann werden Sie
kann nicht zum AusfĂŒhren dieser Schritte aufgrund einer aktuellen
 Problem mit Outlook. Dieses Problem wird momentan ermittelt und
 in diesem Artikel wird aktualisiert, wenn das Problem behoben wurde.“

LINK: https://support.office.com/de-de/article/ausw%C3%A4hlen-der-in-outlook-angezeigten-imap-kontoordner-32103602-a568-4499-9d25-54fe236aee6a

Das Problem wird nie ermittelt und behoben.. NIEMALS!  Es versteht doch gar keiner bei dem Kauderwelsch! 😀

Um was gings wirklich?

Wer Outlook benutzt und ein IMAP Konto hat und einen Ordner z.b. „1 Hilfen“ oder „2019 Rechnungen“ nennt, der bekommt ggf. Probleme, weil Outlook die Unterordner nicht sauber synchronisiert. Ich habe keine Vorstellung davon, wie ein Programmcode aussehen könnte, der abhĂ€ngig davon, daß die erste Stelle im Namen eines Ordners eine Ziffer ist, solch einen Bug produziert; und ich habe schon viel Schrottcode gesehen. Aber das muß ein Fail epischen Ausmaßes sein, genau wie die deutsche Übersetzung von M$ oben  😀