Das Telnet-IoT Desaster

Gerade schneite diese Meldung rein:

Name : telnet
URL : http://web.archive.org/web/20070819111735/www.hcs.harvard.edu/~dholland/computers/old-netkit.html
Summary : The client program for the Telnet remote login protocol
Description :
Telnet is a popular protocol for logging into remote systems over the
Internet.
The package provides a command line Telnet client

——————————————————————————–
Update Information:

Security fix for CVE-2020-10188
——————————————————————————–
ChangeLog:

* Fri Mar 27 2020 Michal Ruprich <michalruprich@gmail.com> – 1:0.17-79
– Resolves: #1814478 – Arbitrary remote code execution in utility.c via short writes or urgent data

Telnet ist sowas wie SSH nur ohne Verschlüsselung. Das ist schon in den 90ern durch SSH ersetzt worden. Telnet ist also ein sehr alter Dienst aus den 80ern. Ich habe auch seit Jahrzehnten keinen Server mehr mit einem Telnet-Dienst gesehen, schon weil da der Zugang unverschlüsselt passiert.

Kommentar

Weil das weit über 30 Jahre existiert, ist es mehr als ungewöhnlich, daß in einem so alten, eigentlich unbenutzten Dienst noch eine so gravierende Sicherheitslücke existiert! Das ist eigentlich unfassbar!

Jetzt der eigentliche Hammer: sehr, sehr viele IOT Geräte haben einen Telnet Dienst, statt SSH, und wie Ihr wisst, bekommen die praktisch nie Updates. Das bedeutet, Ihr könnt jetzt alle IOT Geräte mit Telnet wegwerfen, wenn diese die verwundbare Version haben und das steht zu befürchten.

Coronachroniken: Sind die Anordnungen etwa illegal?

Liebe Kasernierten,

Ihr seid vielleicht zu unrecht kaserniert, nicht grundlos, aber zumindest ohne wirksame Rechtsgrundlage.

Die Frankfurter Rundschau hat in diesem Artikel das gemacht, was von den Kampftruppen in Politik und Presse sonst eher niedergenüppelt wird: „Eine andere Meinung präsentiert“

https://www.fr.de/politik/coronakrise-deutschland-kontaktsperre-koennte-rechtswidrig-sein-13611821.html

Diese andere Meinung, nämlich die von Juristen, meint kurz zusammen gefasst, daß eine Allgemeinverfügung die auf §28 des Infektionsschutzgesetzes beruht, gar nicht gültig ist, weil das Gesetz Zwangsmaßnahmen gegen „Alle“ gar nicht vorsieht.

Gemeint ist, daß das Gesetz nur eine kleine Gruppe von Menschen einschränken darf, damit sich der Rest nicht ansteckt. Andersrum geht dies nicht mehr. Vermutlich möchte die Politik deswegen gleich das ganze Gesetz ändern, weil das einfacher ist, als gesetzeskonform zu handeln.

Es wird im gleichen Artikel oben auch eine Lösung für das Problem präsentiert: Nur die Risikogruppe geht in Quarantäne, bis die Masse mit der Infektion durch ist, dann können die sich auch nicht mehr anstecken.

Leuchtet ein, aber diese Idee hat Großbritannien auch gehabt und dann doch umgeschwenkt, weil das mit dem Wegsperren von Senioren bei den überalterten Lords und Ladies nicht so gut ankam. Vielleicht auch, weil es am Ende nicht geklappt hat, wie man an den Zahlen so sieht. Das wäre kein Wunder, weil auch alle Pflegekräfte mit kaserniert werden müßten, damit die die Krankheit nicht einschleppen können. Da hatten dann vermutlich die jungen Pflegekräfte was gegen.

Was gibts sonst noch so neues?

Der Herr Dorsten, der sich medienwirksam als DER Virologe präsentierte, hat von der Medienwelt die Schnauze voll, da ihm dort seine Meinung um die Ohren gehauen wurde. Gerüchteweise hatte sich Herr Dorsten auch schon bei SARS 2003, MERS 2008 und 2011 vertan, was die Folgen der „Epidemien“ angehen würde. Das wäre dann Fail 4 in Folge. Komisch eigentlich, daß die Politik da nicht mal ein paar Experten mehr gefragt hat. Ob da wohl ein „Masterplan“ dabei war um Deutschland „platt zu machen“, wie es die Verschwörungsblasen immer und immer wieder betonen? Vermutlich nicht, vielleicht stimmt ja, was Strafrechtlerin Jessica Hamed in dem Artikel der FR mutmaßt, „man“ wollte die Risikogruppen in Deutschland nicht wegsperren, weil auch bei uns die Masse der Politiker dazu gehören würde. Wie schade auch um den Ausgang dieses einmaligen Experiments.

Außerdem habe ich heute vernommen, daß die NBANK ( für Niedersachsen die Anlaufstelle für Überbrückungsgeld von Unternehmen ) nicht mit jedem reden will. Kurioserweise haben einige Kunden, die Emails per Webmail an die NBANK geschickt haben, die Annahme verweigert bekommen, weil die Emails Spam wären. Die gleichen Emails von einem Outlook oder Thunderbird verschickt, vom gleichen Server aus, die kamen an. Nun wird die NBANK von Volkswagen gesponsert, da wundert mich dann nichts mehr 🙂

2020-04-02 11:59:08 1jJwcq-0002ci-Mz ** antrag@soforthilfe.nbank.de R=dnslookup T=remote_smtp H=mr1.volkswagen.de

Wer mir nicht glaubt, kann sich ja mal selbst überzeugen:

$ dig mx soforthilfe.nbank.de

; <<>> DiG 9.11.14-RedHat-9.11.14-2.fc30 <<>> mx soforthilfe.nbank.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16393
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 3, ADDITIONAL: 4

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 6667ae10712496bd4577bd3f5e85d15cbac32a7fa3590bd7 (good)
;; QUESTION SECTION:
;soforthilfe.nbank.de. IN MX

;; ANSWER SECTION:
soforthilfe.nbank.de. 600 IN MX 20 mr4.volkswagen.de.
soforthilfe.nbank.de. 600 IN MX 10 mr1.volkswagen.de.
soforthilfe.nbank.de. 600 IN MX 20 mr3.volkswagen.de.
soforthilfe.nbank.de. 600 IN MX 10 mr2.volkswagen.de.

Ach ja, wo wir bei Braunschweig sind ( Volkswagen ), da meinte doch wer, Braunschweiger sollten jetzt auch mit Maske rumrennen. Ich kann mich ja irren, aber dies wird eigentlich nur für Kranke empfohlen. Zum Schutz der anderen übrigens. Warum die Kranken dann nicht komplett drin bleiben, ist mir schleierhaft.

Nvidia, Fedora, RPMFusion und der Bug, der nicht sein soll.

Diese Geschichte fängt an mit: „Es war einmal eine Grafikkarte“.

„Nvidia, Fedora, RPMFusion und der Bug, der nicht sein soll“

Wie Ihr wisst, gibt es von Nvidiatreibern verschiedene Versionsnummern, z.b. 340,390,440. 440 ist der aktuelle Treiber für GTX1050 Karten.

Jetzt wirft dieser Treiber beim Systemboot eine Fehlermeldung wie folgt:

[ 222.363327] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 222.363328] [drm] No driver support for vblank timestamp query.
[ 222.397236] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:05:00.0 on minor 0
[ 222.406533] ————[ cut here ]————
[ 222.406534] refcount_t: underflow; use-after-free.
[ 222.406550] WARNING: CPU: 1 PID: 513 at lib/refcount.c:28 refcount_warn_saturate+0xa6/0xf0
[ 222.406551] Modules linked in: nvidia_drm(POE) nvidia_modeset(POE) nvidia_uvm(OE) snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio snd_hda_intel nvidia(POE) snd_intel_dspcfg snd_hda_codec snd_hda_core snd_hwdep joydev snd_seq snd_seq_device edac_mce_amd drm_kms_helper snd_pcm kvm_amd snd_timer drm snd kvm ipmi_devintf sp5100_tco irqbypass wmi_bmof ipmi_msghandler k10temp i2c_piix4 soundcore pcspkr gpio_amdpt gpio_generic acpi_cpufreq nfsd binfmt_misc auth_rpcgss nfs_acl lockd grace sunrpc ip_tables dm_crypt hid_logitech_hidpp crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel ccp r8169 aacraid hid_logitech_dj wmi pinctrl_amd fuse
[ 222.406576] CPU: 1 PID: 513 Comm: plymouthd Tainted: P OE 5.5.10-200.fc31.x86_64 #1
[ 222.406577] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./B450M Pro4, BIOS P3.90 12/09/2019
[ 222.406579] RIP: 0010:refcount_warn_saturate+0xa6/0xf0
[ 222.406581] Code: 05 2e 03 2e 01 01 e8 7b 8e bc ff 0f 0b c3 80 3d 1c 03 2e 01 00 75 95 48 c7 c7 18 99 3c 9d c6 05 0c 03 2e 01 01 e8 5c 8e bc ff <0f> 0b c3 80 3d fb 02 2e 01 00 0f 85 72 ff ff ff 48 c7 c7 70 99 3c
[ 222.406582] RSP: 0018:ffffb573c103fcb8 EFLAGS: 00010286
[ 222.406583] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000007
[ 222.406584] RDX: 0000000000000007 RSI: 0000000000000086 RDI: ffff9416ce859cc0
[ 222.406585] RBP: ffff9416bacbfce8 R08: 0000000000000413 R09: 0000000000000003
[ 222.406585] R10: 0000000000000000 R11: 0000000000000001 R12: ffff9416c70502e8
[ 222.406586] R13: ffff9416c7050000 R14: 0000000000000008 R15: 0000000000000000
[ 222.406588] FS: 00007f07558f3f00(0000) GS:ffff9416ce840000(0000) knlGS:0000000000000000
[ 222.406588] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 222.406589] CR2: 00007f0755072052 CR3: 00000004035c6000 CR4: 0000000000340ee0
[ 222.406590] Call Trace:
[ 222.406597] nv_drm_atomic_helper_disable_all+0xec/0x290 [nvidia_drm]
[ 222.406603] nv_drm_master_drop+0x22/0x60 [nvidia_drm]
[ 222.406616] drm_drop_master+0x1e/0x30 [drm]
[ 222.406628] drm_dropmaster_ioctl+0x4c/0x90 [drm]
[ 222.406639] ? drm_setmaster_ioctl+0xb0/0xb0 [drm]
[ 222.406651] drm_ioctl_kernel+0xaa/0xf0 [drm]
[ 222.406663] drm_ioctl+0x208/0x390 [drm]
[ 222.406675] ? drm_setmaster_ioctl+0xb0/0xb0 [drm]
[ 222.406678] ? do_filp_open+0xa5/0x100
[ 222.406681] ? selinux_file_ioctl+0x174/0x220
[ 222.406683] do_vfs_ioctl+0x461/0x6d0
[ 222.406685] ksys_ioctl+0x5e/0x90
[ 222.406686] __x64_sys_ioctl+0x16/0x20
[ 222.406690] do_syscall_64+0x5b/0x1c0
[ 222.406693] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 222.406695] RIP: 0033:0x7f0755bb138b
[ 222.406697] Code: 0f 1e fa 48 8b 05 fd 9a 0c 00 64 c7 00 26 00 00 00 48 c7 c0 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d cd 9a 0c 00 f7 d8 64 89 01 48
[ 222.406697] RSP: 002b:00007ffced5fe798 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[ 222.406699] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f0755bb138b
[ 222.406699] RDX: 0000000000000000 RSI: 000000000000641f RDI: 0000000000000009
[ 222.406700] RBP: 000000000000641f R08: 000055b6a6ff1df0 R09: 000055b6a6fa5010
[ 222.406701] R10: 0000000000000000 R11: 0000000000000246 R12: 000055b6a6ff2970
[ 222.406701] R13: 0000000000000009 R14: 0000000000000000 R15: 0000000000000000
[ 222.406703] —[ end trace fa45bb73ed0780f4 ]—
[ 222.411358] kauditd_printk_skb: 45 callbacks suppressed

Von Euch sieht natürlich jeder sofort, daß hier NVIDIA und PLYMOUTH im Spiel sind und das der Nvidiatreiber einen Fehler bei der DRM Initialisierung verursacht. Der Server bootet danach weiter, also erstmal nicht so wichtig. Es folgen die üblichen Dinge: Bugreport bei Fedora ( wegen Plymouth ) und bei RPMFusion ( wegen Nvidia ) erstellen, und komplett entäuscht werden… !

„Da ist kein Bug, gehen Sie weiter!“

Nun kann Fedora da nicht viel machen, wenn der Nvidiatreiber da Mist baut, außer natürlich, es übergibt dem Treiber schon was falsches, da könnte der Treiber dann nicht mehr soviel für den Bug. Das werden wir aber nie erfahren, denn der Bug wurde sofort beerdigt. Nagut, wir haben ja noch den RPMFusionreport.

Sagte ich, wir haben noch einen anderen offenen Bugreport? So kann man sich irren: „Your Bugreport has been closed with „WONT FIX“.Und dann stehen wir mit einem Fehler da, von dem alle Parteien sagen „Nicht mein Problem“. Doch, Eurer Problem! Wessen denn sonst?

Der Bug wurde in der Devliste von Nvidia zwar besprochen, aber es gibt leider keinen finalen Fix dafür:

Devliste: https://forums.developer.nvidia.com/t/bug-nvidia-440-64-kernel-5-5-6-stable-boot-trace-was-nvidia-440-59-kernel-5-5-1-stable-boot-trace/111643

Der derzeitige Stand ist: Geht halt nicht; und DRM geht dann halt auch nicht. Wobei letzteres sollte man eh abschaffen, falls damit das DigitalRightsManagement gemeint ist.

Was mich aber am meisten stört: „ist nicht unser Problem“. Von RPMFusion hätte ich erwartet, daß das offen bleibt, bis das von den Nvidiadevs gefixt wurde, schon um das Problem zu tracken, aber von Scott kann man halt oft nichts anderes erwarten.