Linux – FireFox Wayland Patch killed WebGL

Mit einem Patch, ist alles weg. Die Entwickler von Firefox haben es geschafft, statt WebGL auf Wayland zu laufen zu bringen, haben sie mit einem anscheinend un/schlechtgetesteten Patch WebGL komplett abgeschossen.

WTF is WebGL

Was die WebGL Schnittstelle vom Firefox und anderen Browsern kann, könnt Ihr hier ansehen:

http://helloracer.com/webgl/

Nach nein, geht ja nicht mehr. Wurde ja durch einen schlechten Patch für Wayland deaktviert, statt es kompatibler zu machen 🙁

Wayland, nicht fertig, in aller Munde, alle nur am fluchen und das wohl zu recht. Das Teil macht nur Ärger an jeder Ecke,und dann hat man es noch gar nicht laufen 😀

Bei Redhat kann man sich z.b Glück mit einem Befehl ( rpm -q –changelog packagename) die Changelogs ansehen und beim Firefox findet man das hier:

… which makes GL layer compositor usable …

* Mi Mai 30 2018 Martin Stransky <stransky@redhat.com> – 60.0.1-5</stransky@redhat.com>
– Added workaround for mozbz#1464823 which makes GL layer compositor usable on Wayland.

* Di Mai 29 2018 Martin Stransky <stransky@redhat.com> – 60.0.1-4
– Added fix for mozbz#1464808 – Set default D&D action to move on Wayland.

* Fr Mai 25 2018 Martin Stransky <stransky@redhat.com> – 60.0.1-3
– Added fix for mozbz#1436242 (rhbz#1577277) – Firefox IPC crashes.
– Added fix for mozbz#1462640 – Sandbox disables eglGetDisplay() call on Wayland/EGL backend.

* Fr Mai 25 2018 Martin Stransky <stransky@redhat.com> – 60.0.1-2
– Enable Wayland backend.

* Mi Mai 23 2018 Jan Horak <jhorak@redhat.com> – 60.0.1-1</jhorak@redhat.com>
– Update to 60.0.1

Als ich den Hohn in den Patchnodes gelesen habe, wäre ich fast vom Stuhl gefallen.

which makes GL layer compositor usable on Wayland“ und schaltet ihn für alle anderen ab 🙁 WOW.. Echt gut getestet Mozilla.

HOW TO FIX

Die Auswirkungen von dem Patch kann man teilweise beheben, so daß wenigstens etwas noch funktioniert, nämlich die 3D Demo oben 😉

Dazu geht man in die „about:config“ und ändert bei „webgl.force-enabled“ den Wert von False auf True.

Und wer alles wieder sehen will, der ändert noch „webgl.webgl2-compat-mode“ auf  True.

Damit kann man dann auch wieder „https://map2fly.flynex.de/“ sehen.

Update (14:29):

… oder, wie uns grade berichtet wird, in 60.0.2 soll der Bug behoben sein.

… wurde so ebend bestätigt. Wer das Update schon installieren will, bevor es im Stable verfügbar ist, hier der Link:

https://koji.fedoraproject.org/koji/buildinfo?buildID=1090754

Könnt Ihr Euch aber sparen, ich habs grade als stable ins repo gepusht. Kommt also die nächsten Stunden bei Euch so oder so an 😉

Thunderbird – Ausführen beliebigen Programmcodes

Thunderbird About infos 52.5.0
Alle Thunderbird Versionen vor 52.5.0 sind von einer Remote-Code-Execution (RCE) Schwachstelle und anderen Sicherheitslücken betroffen, die als schwerwiegend eingestuft wurden.

Alarmstatus

Fedorabenutzern stehen derzeit (Stand: 28.11. 14:19 Uhr) KEINE Updates zur Verfügung.

Wie uns Jan Horak von RedHat mitteilt, befindet sich Thunderbird 52.5.0 derzeit im Bau. Testversionen werden daher vermutlich heute noch für Fedora bereitstehen.

Update

Seit 14:55 Uhr stehen die Updates für Fedora zum Download in Koji bereit.

Die frischen RPMs könnt Ihr dann für Eure jeweilige Fedoraversion hier finden :

Fedora 25 : https://koji.fedoraproject.org/koji/buildinfo?buildID=1005614
Fedora 26 : https://koji.fedoraproject.org/koji/buildinfo?buildID=1005616
Fedora 27 : https://koji.fedoraproject.org/koji/buildinfo?buildID=1005615
Fedora 28 : https://koji.fedoraproject.org/koji/buildinfo?buildID=1005618

CERT Warnung zu Thunderbird

Die Warnung des Bund-CERT finden Sie hier : https://www.cert-bund.de/advisoryshort/CB-K17-2035

Thunderbirds Mitteilung

Mozilla stuft die Sache schon etwas genauer ein und dafür, das es bereits am 23. November 2017 gemeldet wurde, haben unsere Distributionen echt langsam gearbeitet, alle, auch Suse .

Wer sich ein Bild machen will, hier die nötigen Infos:

Impact: critical
Products: Thunderbird
Fixed in Thunderbird 52.5

„In general, these flaws cannot be exploited through email in the Thunderbird product because scripting is disabled when reading mail, but are potentially risks in browser or browser-like contexts.“

CVE-2017-7828: Use-after-free of PressShell while restyling layout

„A use-after-free vulnerability can occur when flushing and resizing layout because the PressShell object has been freed while still in use. This results in a potentially exploitable crash during these operations.“

CVE-2017-7830: Cross-origin URL information leak through Resource Timing API

„The Resource Timing API incorrectly revealed navigations in cross-origin iframes. This is a same-origin policy violation and could allow for data theft of URLs loaded by users.“

CVE-2017-7826: Memory safety bugs fixed in Firefox 57, Firefox ESR 52.5, and Thunderbird 52.5

„Mozilla developers and community members reported memory safety bugs present in Firefox 56, Firefox ESR 52.4, and Thunderbird 52.4. Some of these bugs showed evidence of memory corruption and we presume that with enough effort that some of these could be exploited to run arbitrary code.“

Glückwünsche

Wie unsere Quellen berichten, stellt OpenSUSE bereits eine gepatchte Version für SUSE Linux Enterprise 12 sowie OpenSUSE Leap 42.2 und 42.3 bereit.

Glückwünsche an SUSE, Ihr wart die ersten 🙂

 

Redhat-Webseite des Session-Replaying bezichtigt

Da haben es Forscher der Princeton Universität mal genauer genommen und eine Menge bekannter Webseiten auf sogenanntes Session-Replaying untersucht. Dummerweise sind davon nicht nur hierzulande eher unbekannte Webseiten zu finden, sondern auch Teamviewer, wordpress.com, wp.com, conrad.de, comodo.com, Skype & Microsoft und Redhat .

Was ist Session-Replaying ?

Session-Replaying bezeichnet Trackingtechniken in Javascript, die alle Tastatureingaben, alle Mausbewegungen usw. aufzeichnen und zur Auswertung an einen Drittanbieter übermittelt. Natürlich ohne vorher zu fragen, ob die das dürfen. Mit den Daten kann man als Webseitenbetreiber auswerten lassen, wo die eigenen Seiten besonders gut oder besonders schlecht sind. Soweit, so „naja“. Jetzt zeichnen die Scripte aber auch Fehleingaben auf, also z.B. alles was in der Zwischenablage ist und per Copy&Paste unabsichtlich kopiert wird, bspw. auch Passwörter.

Was damit für Schindluder getrieben werden kann, kann sich jeder selbst ausmalen, dem das Copy&Paste schon einmal seine Dienste versagt hat. Das geht nämlich leider schneller, als einem Lieb ist.

Für Redhat kommt der Dienst von clicktale.net ins Spiel. Dieser wurde von Princeton mit dem Vermerk : „evidence of session recording“ versehen.

Gegenmaßnahmen

Wenn es nach dem jüngsten FireFox Update auf 57 gegangen wäre: Keine.

Glücklicherweise hat Giorgio Maone sein Plugin NoScript auf die neue Firefox Api angepaßt. Damit kann man die Tracking-Domains sperren, bzw. erst gar nicht aktivieren. Also, alle die an Giorgio gezweifelt haben, sollten vor Ihm auf die Knie fallen und um Entschuldigung bitten. Der Mann und sein Plugin können Euch jeden Tag den Arsch retten! Das Teil ist für den Datenschutz der Goldstandard. Wundert mich eigentlich, daß die Bundesdatenschutzbeauftragte das nicht für jeden Behörden PC vorschreibt. Das wäre ja mal was 🙂

Die Liste

Wer sich die Liste ansehen will, die ist hier erhältlich:

https://webtransparency.cs.princeton.edu/no_boundaries/session_replay_sites.html

Ihr werdet noch mehr prominente Namen finden z.B. addidas.com , dominos.com ( Ex-Joeys ) , symantec.com, mongodb.com, cpanel.net, magento.com, bitdefender.com, acrobat.com, worldoftanks.com und wenig verwundernd kaspersky.ru .

Redhat patcht 6 Monate nach Fedora

Wer heute die Patchnotes der CERTs verfolgt hat, wird dort eine Warnung für BASH finden, die vom Redhat Security Team stammt.

Betroffene Software:

  Bash
  

Betroffene Plattformen:

  Red Hat Enterprise Linux Desktop 6
  Red Hat Enterprise Linux HPC Node 6
  Red Hat Enterprise Linux Server 6
  Red Hat Enterprise Linux Workstation 6
  
Mehrere Schwachstellen in GNU Bash ermöglichen einem lokalen, nicht
authentisierten Angreifer die Ausführung beliebigen Programmcodes, auch mit
Administratorrechten, sowie das Umgehen von Sicherheitsvorkehrungen u.a. mit
der Folge eines Denial-of-Service (DoS)-Zustandes.

Red Hat stellt für die Red Hat Enterprise Linux 6 Produkte Server, Desktop,
Workstation und HPC Node Sicherheitsupdates bereit.

Patch:

  Red Hat Security Advisory RHSA-2017:0725

  <http://rhn.redhat.com/errata/RHSA-2017-0725.html>

Da es sich hier um eine aus meiner Sicht problematische Sicherheitslücke handelt, ist es unverständlich, wieso RedHat 6 Monate gewartet hat. Fedora, daß ja im Prinzip vom selben Team mit betreut wird, hatte den Patch bereits im September 2016 eingepflegt:

* Fr Sep 30 2016 Siteshwar Vashisht <svashisht@redhat.com> - 4.3.42-7
- CVE-2016-7543: Fix for arbitrary code execution via SHELLOPTS+PS4 variables
  Resolves: #1379634

* Mi Sep 21 2016 David Kaspar [Dee'Kej] <dkaspar@redhat.com> - 4.3.42-6
- CVE-2016-0634 - Fix for arbitrary code execution via malicious hostname
  Resolves: #1377614

Für mich erschreckend daran, daß die Lücke auch nur als Moderate geführt wird, obwohl man mit Hilfe eines DHCP Servers Code auf einem Computer ausführen kann. Einen Rouge DHCP Server in ein Netz zu bringen ist nachdem man einen Computer übernommen hat, nicht mehr so schwer. Da die meisten Netze via DHCP gemanaged werden, reagieren natürlich auch praktische alle Rechner im Netz auf so einen Angriff. Um so mehr ist es unverständlich, wie es sechs Monate gedauert hat, bis der Patch endlich erstellt wurde.

Und dabei hatte ich vor, die Linux Distributionen für Ihre zügigen Updates zu loben, was zumindest bei Fedora stimmt.

Escapesequenzen im /etc/issue

Desktopuser kennen das weniger, aber wer sich per Monitorkonsole auf einem Linuxsystem einloggt, der bekommt eine Anzeige, welches OS grade läuft und welcher Kernel aktiv ist.

Das Template dazu heißt  „/etc/issue“ . Es könnte so aussehen:

\S
Kernel \r on an \m (\l)

Aber was heißen die ganzen Platzhalter und welche gibt es überhaupt :

\b  Serialspeed des Terminals ( Bitrate )
\d Datum
\e  Leerzeile
\l    Konsolendevice (tty)
\m Architektur des Prozessors
\n  Servername
\o  (none) ???
\r   Kernelversion
\s   OS ( Linux )
\t aktuelle Uhrzeit
\u  Anzahl der CPUs
\v Buildinfo des Kernels
\O Domain in der sich der Computer befindet
\S OS ID String
\U Anzahl der eingeloggten Benutzer

Alles was man jetzt machen muß, ist die gewünschten Platzhalter mit einem verbindlichen Text, oder auch ohne Text, in die /etc/issue zu schreiben. Das wars.

Update: Fedora OpenSSH Alarm: Nicht updaten auf 7.2p2-6 !

Wie gestern schon berichtet, ist die openssh Version 7.2p2-6 für Fedora defekt,

Wer keinen Zugang zu seiner Monitor Konsole hat und trotzdem das Downgrade einspielen muß, kann nun auf diesen Weg zurückgreifen:

Workaround V2.0: Downgrade auf 7.2p2-3

Über den Kojilink lädt man die drei Pakete runter:

Koji :  http://koji.fedoraproject.org/koji/buildinfo?buildID=756836

dann loggt man sich via defektem SSHD ein und  downgraded die Files für einen oneshot CronJob:

echo „59 16 * * * root /usr/bin/rpm -U –force /tmp/openssh*rpm > /tmp/log; rm -f /etc/cron.d/onetime“ > /etc/cron.d/onetime

Die Uhrzeit muß man natürlich an seine aktuelle Zeit anpassen 😉

Dann Ausloggen und nach der Zeit wieder einloggen. Der Befehl „rpm -qa | grep openssh“ sollte dann 7.2p2-3 anzeigen, welches die letzte funktionierende Version war.  Danach in /etc/dnf/dnf.conf einfügen:

exclude=openssh*

erst dann zieht das nächste Update nicht wieder die defekte Version auf den Server.

Das ganze klappt, weil der crond als „echter“ Root außerhalb der SSH Session läuft und nicht über sshd angetriggert wird.

Erste Hinweise zu den Ursachen des Problems

Wie im Bugtracker von RedHat einsehbar ist, kristallisieren sich grade Probleme mit der Chroot-Funktion vom SSHD heraus. Ist die Chroot aktiviert, was man tun sollte um Benutzer den Zugang zum System zu verweigern, so daß diese keine lokalen Angriffe fahren können, sondern in einer eigenen Umgebung arbeiten können. werden die für Root nötigen Capabilities nicht mehr gesetzt.

Capabilities sind die Eigenschaften eines Users, die erweiterte Rechte im Linuxsystem beinhalten, wie z.b. das Recht sich mit PTRACE in Prozessen einzuklinken, um diese zu belauschen oder zu verändern. Diese Capabilities machen Root erst aus und fehlen in der aktuellen sshd version:

# capsh --print
Current: =
Bounding set =
Securebits: 00/0x0/1'b0
 secure-noroot: no (unlocked)
 secure-no-suid-fixup: no (unlocked)
 secure-keep-caps: no (unlocked)
uid=0(root)
gid=0(root)
groups=

Meine Vermutung: Da hat wer zuviel weggepatcht 😉

Securitybug in Gnome – fast 3 Jahre bis zum Fix

Obwohl es heute Mode ist, jedem noch so kleinen Securitybug einen eigenen Namen zugeben, verzichte ich mal drauf. Ich hatte ja einigen Wochen geschrieben, daß es eine FD Veröffentlichung geben wird. Nun, heute ist es soweit : )

Der Fehler ist endlich gefixt, auch wenn die Umstände komisch erscheinen werden. Der ganze Ablauf ist ohnehin merkwürdig, es gibt nicht mal eine CVE dazu. Fangen wir mal vorn an, am 18. November 2013 !

Mein Laptop hatte damals Fedora 18 mit einem Gnomedesktop drauf und wurde alle zwei Stunden aktualisiert, war also auf Stand. Das Laptop wurde nicht gebraucht und in den Suspend gebracht,
als es dann wieder aufwachte, sah ich immer noch das Desktopfenster mit Inhalt, dann einige Sekunden später poppte der Screensaver auf und ich mußte mich einloggen. Ok. Man sieht den Bildschirm, obwohl man das nicht sollte, war jedenfalls meine Meinung. Ich probiert es nochmal, aber diesmal lief alles normal ab, der Screensaver sprang diesmal deutlich eher an und man sah nichts. Merkwürdig.

Sicherheitslücke: Informationdisclosure

Langer Rede kurzer Sinn, je nach Situation beim Abschalten des Laptops ins Disksuspend regiert es etwas anders beim Hochfahren. Ein Race zwischen den Prozessen findet statt und wenn der Screensaver das gewinnt, dann sieht man nichts, ansonsten dauert es lange und der Bildschirminhalt wird kurz sichtbar.

Am Mittwoch den 20. November habe ich dann ein Video gedreht auf dem man das sehen kann und einen Securitybugreport bei Fedora und Gnome erstellt. Nachdem die das Video gesehen hatten und nach der Hardware gefragt haben, lehnte man das Problem als irrelevant ab, weil die Hardware ja „nicht die schnellste“ wäre. Argumentieren, daß das Prinzip mit dem Screensaver ja wohl klar falsch abläuft und das vor dem Suspend gemacht werden muß, half nichts. Taube Ohren.

3 Jahre später

Letzten Dezember habe ich ein neues Laptop von der Firma bekommen. Mittlerweile gab es Fedora 23, man beachte 5 Versionen = 5*6 Monate später 😉 und der Bug sollte ja nicht mehr auftreten, weil I5 und SSD. Also … Deckel zu, warten, Deckel wieder hoch … und ????? BINGO.. der Desktopinhalt! Zwar nur für ein paar Augenblicke, also deutlich schneller weg als bei dem alten Laptop, aber da.

Der Bug war bei Fedoraim Tracker immer noch als ungelöst offen. Nun gab es keine Entschuldigung mehr, denn die HW ist schnell, ganz besonders beim Umgang mit Disksuspend. Da mir 3 Jahre als deutlich zu lange für so ein triviales Problem erschienen, habe ich einen FD Timer von 90 Tagen angesetzt, bis zu dem das Problem gefixt sein mußte.

Endlich gut, alles gut ?

Fast. Es wurde behoben, allerdings als Silentupdate, sprich, man hat es keinem erzählt. Nicht mal dem Bugreporter. Ich habe nur durch regelmäßiges ausprobieren bemerkt, daß es endlich behoben wurde.

Bleibt zu vermerken, nicht alle Sicherheitslücken werden sofort behoben, auch wenn durch so eine Informationslücke Inhalte vom Desktop in fremde Hände gelangen. Da könnten Bankdaten zusehen sein, Listen mit Namen von Menschen die nicht gefunden werden dürfen, der private Key vom Server .. tausend Dinge die man nicht sehen sollte, wenn keiner in der Nähe ist um es zu verhindern. Der Angreifer kann den Laptoprechner nach dem Test einfach wieder ins Suspend schicken und keiner merkt es.

Kleines Goodie am Ende ?  Hier noch ein Gnome 3 Bug Desktop Hack den ich gemeldet hatte. Der wurde allerdings binnen einer Woche behoben, was bei dem Impact wohl auch kein Wunder ist.

Hier die beiden Videos im Youtubeplayer: