selinux-policies auf den letzten funktionierenden Stand bringen

Wie Ihr ( und .tux. )  im letzten Bericht zu selinux-policy lesen konntet, wurde das SEL Problem mit einem generellen Downgrade erstmal behoben. Heute schauen wir uns an, wie man das trotz aller Gegenwehr von Red Hat wieder auf den letzten aktuellen Stand geupdated bekommt 😉

Fedora und die Repostrukturen

Wenn man dnf downgrade benutzt, bekommt man nicht automatisch die letzte Version von einem Paket installiert, sondern nur die nächst kleinste im Repository (Repo) und genau da happerts meiner Meinung nach bei Fedora und Red Hat. Man sollte ja annehmen, daß die aktuelle Version und die vorherige Version eines Paketes zur Verfügung stehen, tun Sie aber nicht. Fedora betreibt ein Basis Repo und ein Updates Repo. Eine funktionierende alte Fassung liegt im Basis Repo, die aktuellste im Updates Repo. Zwischenversionen gibt es leider keine und das ist, denke ich, ein Fehler von Seiten der Distribution.

Immer wieder Koji

Und wieder ist es Koji, die Buildverwaltung für Fedora, die uns bei der Sache als nützliche Datenquelle dient:

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

Dort holen wir uns die nötigen RPMs für die lokale Installation:

https://kojipkgs.fedoraproject.org//packages/selinux-policy/3.13.1/283.34.fc27/noarch/selinux-policy-targeted-3.13.1-283.34.fc27.noarch.rpm
https://kojipkgs.fedoraproject.org//packages/selinux-policy/3.13.1/283.34.fc27/noarch/selinux-policy-devel-3.13.1-283.34.fc27.noarch.rpm
https://kojipkgs.fedoraproject.org//packages/selinux-policy/3.13.1/283.34.fc27/noarch/selinux-policy-doc-3.13.1-283.34.fc27.noarch.rpm
https://kojipkgs.fedoraproject.org//packages/selinux-policy/3.13.1/283.34.fc27/noarch/selinux-policy-3.13.1-283.34.fc27.noarch.rpm

Wer meiner Anweisung gefolgt ist, und in die dnf.conf eine Sperre für das Paket eingetragen hat, muß diese Sperre jetzt natürlich wieder entfernen, bevor er das Update durchführen kann.

Manuelles DNF Update

Der Befehl „dnf update ./selinux-policy-*“ ist unser Freund:

[root]# dnf update ./selinux-policy-*
Letzte Prüfung auf abgelaufene Metadaten: vor 0:24:25 am Di 10 Jul 2018 09:59:33 CEST.
Abhängigkeiten sind aufgelöst.
================================================================================================================================================================================================================================================================================
Paket Arch Version Paketquelle Größe
================================================================================================================================================================================================================================================================================
Aktualisieren:
selinux-policy noarch 3.13.1-283.34.fc27 @commandline 541 k
selinux-policy-devel noarch 3.13.1-283.34.fc27 @commandline 1.4 M
selinux-policy-doc noarch 3.13.1-283.34.fc27 @commandline 2.7 M
selinux-policy-targeted noarch 3.13.1-283.34.fc27 @commandline 10 M

Transaktionsübersicht
================================================================================================================================================================================================================================================================================
Aktualisieren 4 Pakete

Gesamtgröße: 15 M
Ist dies in Ordnung? [j/N]:j
Pakete werden heruntergeladen:
Transaktionsüberprüfung wird ausgeführt
Transaktionsprüfung war erfolgreich.
Transaktion wird getestet
Transaktionstest war erfolgreich.
Transaktion wird ausgeführt
Vorbereitung läuft : 1/1 
Aktualisieren : selinux-policy-3.13.1-283.34.fc27.noarch 1/8 
Ausgeführtes Scriptlet: selinux-policy-3.13.1-283.34.fc27.noarch 1/8 
Ausgeführtes Scriptlet: selinux-policy-targeted-3.13.1-283.34.fc27.noarch 2/8 
Aktualisieren : selinux-policy-targeted-3.13.1-283.34.fc27.noarch 2/8 
Ausgeführtes Scriptlet: selinux-policy-targeted-3.13.1-283.34.fc27.noarch 2/8 
Aktualisieren : selinux-policy-doc-3.13.1-283.34.fc27.noarch 3/8 
Aktualisieren : selinux-policy-devel-3.13.1-283.34.fc27.noarch 4/8 
Ausgeführtes Scriptlet: selinux-policy-devel-3.13.1-283.34.fc27.noarch 4/8 
Aufräumen : selinux-policy-devel-3.13.1-283.14.fc27.noarch 5/8 
Aufräumen : selinux-policy-doc-3.13.1-283.14.fc27.noarch 6/8 
Aufräumen : selinux-policy-targeted-3.13.1-283.14.fc27.noarch 7/8 
Ausgeführtes Scriptlet: selinux-policy-targeted-3.13.1-283.14.fc27.noarch 7/8 
Aufräumen : selinux-policy-3.13.1-283.14.fc27.noarch 8/8 
Ausgeführtes Scriptlet: selinux-policy-3.13.1-283.14.fc27.noarch 8/8 
Running as unit: run-ra699effd01cd4ceba2ad927e7889ce3b.service
Running as unit: run-r27b6453c4a5e4d2ab971a1766a434a30.service
Überprüfung läuft : selinux-policy-3.13.1-283.34.fc27.noarch 1/8 
Überprüfung läuft : selinux-policy-targeted-3.13.1-283.34.fc27.noarch 2/8 
Überprüfung läuft : selinux-policy-doc-3.13.1-283.34.fc27.noarch 3/8 
Überprüfung läuft : selinux-policy-devel-3.13.1-283.34.fc27.noarch 4/8 
Überprüfung läuft : selinux-policy-targeted-3.13.1-283.14.fc27.noarch 5/8 
Überprüfung läuft : selinux-policy-3.13.1-283.14.fc27.noarch 6/8 
Überprüfung läuft : selinux-policy-devel-3.13.1-283.14.fc27.noarch 7/8 
Überprüfung läuft : selinux-policy-doc-3.13.1-283.14.fc27.noarch 8/8

Aktualisiert:
selinux-policy.noarch 3.13.1-283.34.fc27 selinux-policy-devel.noarch 3.13.1-283.34.fc27 selinux-policy-doc.noarch 3.13.1-283.34.fc27 selinux-policy-targeted.noarch 3.13.1-283.34.fc27

Fertig.

Nicht vergessen die dnf.conf wieder mit einer Sperre zu versehen :

# cat /etc/dnf/dnf.conf
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
exclude=selinux-pol*

Damit wären wir jetzt auf dem Stand, vor dem defekten Paket und bekommen erstmal keine Updates mehr für die selinux-policies.

Ob das so clever war, die automatischen Tests zu umgehen?

Wenn ich der Darstellung im Buildsystem glauben darf, dann wurde für den Push Tests umgangen. Da es nachweislich in die Hose gegangen ist, ist das wohl keine gute Idee.

Wissen eigentlich alle was diese Policies so machen ?

mit dem Befehl „rpm -qi selinux-policy“ bekommen wir eine Beschreibung des Pakets. Leider ist die in diesem Fall äußerst schmal geraten:

„SELinux Base package for SELinux Reference Policy – modular.
Based off of reference policy: Checked out revision 2.20091117“

Daher schauen wir doch mal in ein solches Paket rein. Jetzt ist selinux-policy kein sehr nützliches Beispiel, es setzt nämlich lediglich die System-Konfiguration und andere Metainfos. Viel spannender ist das selinux-policy-targeted Paket, daß die eigentlichen Regeln enthält. U.a. finden wir dies File darin:

/usr/share/selinux/targeted/default/active/modules/100/gnome/cil

Wenn man sich das jetzt mit less ansieht, sieht man nichts, da es bzip2 komprimiert ist. Daher brauchen wir jetzt das hier:

bzless /usr/share/selinux/targeted/default/active/modules/100/gnome/cil

u.A. findet man dann dort die Beschreibungen welche Dateien welche SEL-Contexte haben sollen:

(Die Liste ist nicht vollständig und nur für die eine Gnome Klasse)

(filecon „/var/run/user/[^/]*/\.orc(/.*)?“ any (system_u object_r gstreamer_home_t ((s0) (s0))))
(filecon „/var/run/user/[^/]*/dconf(/.*)?“ any (system_u object_r config_home_t ((s0) (s0))))
(filecon „/var/run/user/[^/]*/keyring.*“ any (system_u object_r gkeyringd_tmp_t ((s0) (s0))))
(filecon „/root/\.cache(/.*)?“ any (system_u object_r cache_home_t ((s0) (s0))))
(filecon „/root/\.color/icc(/.*)?“ any (system_u object_r icc_data_home_t ((s0) (s0))))
(filecon „/root/\.config(/.*)?“ any (system_u object_r config_home_t ((s0) (s0))))
(filecon „/root/\.kde(/.*)?“ any (system_u object_r config_home_t ((s0) (s0))))
(filecon „/root/\.gconf(d)?(/.*)?“ any (system_u object_r gconf_home_t ((s0) (s0))))
(filecon „/root/\.dbus(/.*)?“ any (system_u object_r dbus_home_t ((s0) (s0))))
(filecon „/root/\.gnome2(/.*)?“ any (system_u object_r gnome_home_t ((s0) (s0))))
(filecon „/root/\.gnome2/keyrings(/.*)?“ any (system_u object_r gkeyringd_gnome_home_t ((s0) (s0))))
(filecon „/root/\.gstreamer-.*“ any (system_u object_r gstreamer_home_t ((s0) (s0))))
(filecon „/root/\.cache/gstreamer-.*“ any (system_u object_r gstreamer_home_t ((s0) (s0))))
(filecon „/root/\.local.*“ any (system_u object_r gconf_home_t ((s0) (s0))))
(filecon „/root/\.local/share(/.*)?“ any (system_u object_r data_home_t ((s0) (s0))))
(filecon „/root/\.local/share/icc(/.*)?“ any (system_u object_r icc_data_home_t ((s0) (s0))))
(filecon „/root/\.Xdefaults“ any (system_u object_r config_home_t ((s0) (s0))))
(filecon „/root/\.xine(/.*)?“ any (system_u object_r config_home_t ((s0) (s0))))
(filecon „/etc/gconf(/.*)?“ any (system_u object_r gconf_etc_t ((s0) (s0))))
(filecon „/tmp/gconfd-USER/.*“ file (system_u object_r gconf_tmp_t ((s0) (s0))))
(filecon „/usr/share/config(/.*)?“ any (system_u object_r config_usr_t ((s0) (s0))))
(filecon „/usr/bin/gnome-keyring-daemon“ file (system_u object_r gkeyringd_exec_t ((s0) (s0))))
(filecon „/usr/bin/mate-keyring-daemon“ file (system_u object_r gkeyringd_exec_t ((s0) (s0))))
(filecon „/usr/libexec/gconf-defaults-mechanism“ file (system_u object_r gconfdefaultsm_exec_t ((s0) (s0))))
(filecon „/usr/libexec/gnome-system-monitor-mechanism“ file (system_u object_r gnomesystemmm_exec_t ((s0) (s0))))
(filecon „/usr/libexec/kde(3|4)/ksysguardprocesslist_helper“ file (system_u object_r gnomesystemmm_exec_t ((s0) (s0))))

und in der findet sich dann kein Hinweis auf den gdm-greeter oder die gnome-session .. Womit es undefiniert ist.

Ich hab versucht da  durchzusteigen, aber das ist echt komplex das Zeugs 😉 Vielleicht will ja mal einer ein Diagnosetool dafür bauen, da berichte ich dann gerne drüber.

Preise von Emails

Was einem so alles in die Inbox trudelt 😀 Ich hatte vor fast genau 4 Jahren mal die Preise für Facebookfreunde gepostet, jetzt kam eine Wunschvorstellung für Emailadressen rein :

Guten Tag,

Ich verkaufe Emails!

Die Datenbank setzt sich wie folgt zusammen:

@gmx.de 9,6 Millionen Emails
@web.de 7,2 Millionen Emails
@t-online.de 8,8 Millionen Emails
@gmx.net 3,2 Millionen Emails
@freenet.de 4,2 Millionen Emails
@bluewin.ch 2,2 Millionen Emails

1 Million Emails kosten 1000 Euro

Ich akzeptiere als Zahlungsmittel nur bitcoin wenn Ihr also keine Bitcoins habt kontaktiert mich auch nicht!

Es kann auch nicht verhandelt werden die Preise sind fix!

Falls ich Ihr Interesse geweckt habe können Sie mich wie folgt auf Jabber kontaktieren.

Meine Jabber-ID manux(at)jabber.ru (at) durch @ ersetzen.

Wenn Sie nicht wissen was Jabber ist dann laden Sie sich erstmal pidgin herunter und erstellen Sie Ihre eigene Jabber-ID

Unser Freund hier will tatsächlich 1.000 € für 1 Million Adressen haben 🙂 Bisschen happig der Preis. Aber gut, natürlich nur als Bitcoin, soweit ok, weil den kann man ja quasi in beliebig kleine Teile aufteilen, aber der Kontaktweg.. Autsch! Runterladen und installieren.. hmm.. naja.. vielleicht.. Aber eine eigene Jabber-ID erstellen, das wird todsicher für die meisten „Kunden“ ein unlösbares Problem werden 😀

Zu was nützlicherem als illegal erworbenen Emailadressen

Schauen wir uns doch diese Spambewertung an:

 Pkte Regelname              Beschreibung
 ---- ---------------------- --------------------------------------------------
  1.0 SPF_SOFTFAIL           Senderechner entspricht nicht SPF-Datensatz (softfail)
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail provider
                             (kxhllj[at]outlook.com)
  1.1 MIME_HTML_ONLY         BODY: MIME-Nachricht besteht nur aus HTML
  0.0 HTML_MESSAGE           BODY: Nachricht enthält HTML
  0.1 MISSING_MID            Missing Message-Id: header
  0.6 HTML_MIME_NO_HTML_TAG  Nachricht besteht nur aus HTML, hat aber kein
                             "html"-Element
  0.0 LOTS_OF_MONEY          Huge... sums of money

„LOTS OF MONEY“ Ich finde das Kriterium sollte mehr als nur 0.0 Punkte Scoren. Wie viele bekommen schon echte Emails, in denen es um Millionen geht 😉

„SPF_SOFTFAIL“ sollte auch mehr wiegen, weil die Absende Domain nicht zum Server paßt, von der die Email gesendet wurde. Ein typisches Zeichen für Spam, auch wenn Admins so einen SPF Eintrag gelegentlich auch verhunzen können.

Eine fehlende Message ID… soso… eigentlich auch ein sehr gutes Zeichen für SPAM. Echte EMails ohne Message ID würde man wohl auf die Whitelist setzen, weil man sich die selbst schickt.

Was komplett fehlt: Eine Spmassassin Regel für „Zig tausend Freemailadressen im CC:“ 😀 Das nächste mal dann bitte per BCC eintragen, weil per CC ist das ein Datenverbrechen nach EU DS GVO 😉

Ich denke, die Spamassassin-Regeln sollten mal überarbeitet werden, dann flexxen die auch wieder mehr Mails weg.

Wie üblich, in die digitale Tonne damit!

DS GVO: Email Transportverschlüsselung wird Pflicht sein

Willkommen im Chaos des Datenschutzes. Ich hatte ja schon lange den Verdacht, daß EMails auch nur noch mit TLS übertragen werden dürfen, wenn man zum Datenschutz verpflichtet ist. Dabei habe ich mich aber immer gewundert, wieso das nie in der Presse steht. Jetzt wird sich das hoffentlich hektisch ändern.

Die Meinungen zur TLS Verschlüsselung von Emails

Wie uns Rechtsanwalt Schwartmann auf seiner Webseite wissen läßt, ist ab Freitag aufgrund der Datenschutz Grundverordnung wahrscheinlich eine TLS Verschlüsselung für eingehende und ausgehende Emails Pflicht, sofern man ein Unternehmen betreibt oder aus anderen Gründen zum Datenschutz verpflichtet ist.

Nach Ansicht des Landesbeauftragten für Datenschutz und Informationsfreiheit Nordrhein-Westfalen ist eine Transportverschlüsselung auf jeden Fall erforderlich:
Bezüglich der sicheren Implementierung der Transportebene hat das Bundesamt für Sicherheit in der Informationstechnologie die Technische Richtlinie „BSI TR-03108-1: Secure E-Mail Transport“ herausgegeben.
Unter datenschutzrechtlichen Gesichtspunkten ist diese Richtlinie als Stand der Technik zu betrachten, so dass ihre Umsetzung eine notwendige Voraussetzung für die datenschutzkonforme E-Mail-Kommunikation ist.

Quelle: https://www.rechtsanwalt-schwartmann.de/verschluesselungspflicht/
„(Ende Zitat)

Die Bundesbeauftragte für den Datenschutz und die Informationsfreiheit hat uns heute morgen endlich wissen lassen, daß nur der Einsatz von TLS 1.2 in Frage kommt:

„Inwieweit ein Provider, der die Infrastruktur zur Verfügung stellt, eine Option anbieten muss, die ausschließlich den Empfang von TLS 1.2 transportverschlüsselten E-Mails zulässt, beurteilt sich nach dem gegenwärtigen Stand der Technik.

Der gegenwärtige Stand der Technik ist, daß TLS 1.2 seit 2008 das Maß der Dinge ist. Der Nachfolger TLS 1.3 wird aber bald kommen, da die Planung des Standards kürzlich beendet wurde. Das hält aber gerade den BUND, wo die Information her ist, nicht davon ab, auch heute noch mit TLS 1.0 zu senden 😀 (Böser Dienstleister vom Bundmailserver 😉 )

IMHO

Ich schließe mich dieser Meinung an, da auch ich die DS GVO so interpretiere, daß alle Kommunikationskanäle verschlüsselt sein müssen. Wie einfach das gehen kann, zeigt folgende Anleitung :

Zunächst mal wählen wir im Account unter „Mailserver“ die „EMail-Options“ aus:

Nun aktivieren wir die beiden obersten Punkte:

„Verbindung zum Server benötigt Verschlüsselung“ und „Empfangener Mailserver muß TLS benutzen“

Das war es dann auch schon, jetzt kommen nur noch TLS gesicherte EMails an den Mailserver ran. Damit entspricht das Mailserververhalten dem geltenden Datenschutzrecht.

Wer es ganz genau nehmen will, der müßte auch noch DANE implementieren, da dies in einer BSI Richtlinie zum Thema gefordert wird. Da DANE aber AFAIK noch nicht 100% ausgereift ist, könnte der Teil schwierig werden, was nicht heißt, das einige Provider dies nicht schon implementiert hätten.

Bei Exim ist grade eine passende Diskussion gestartet worden.

Quellenlinks:

https://www.ldi.nrw.de/mainmenu_Aktuelles/Inhalt/Technische-Anforderungen-an-technische-und-organisatorische-Massnahmen-beim-E-Mail-Versand/Technische-Anforderungen-an-technische-und-organisatorische-Massnahmen-beim-E-Mail-Versand.html

https://www.rechtsanwalt-schwartmann.de/verschluesselungspflicht/

https://www.bsi.bund.de/DE/Publikationen/TechnischeRichtlinien/tr03108/index_htm.html

Was passiert eigentlich, wenn …

… man ein Laptop mit einer verstärkenden WLAN Antenne in einem Cafe aufbaut, einen nicht geschützten Hotspot startet und dann einen Störsender einsetzt, um alle anderen Kanäle zu blockieren? Die Polizei kommt deswegen jedenfalls nicht, das ist schon mal klar 😀

Man muß die anderen Kanäle nicht mal „stören“, das brutal starke extra aufgemotzte eigene Signal sollte eigentlich schon reichen, wenn es so über die Kanäle streicht. Alle Handies in Reichweite sollten sich dann eigentlich sofort ins eigene Netz verbinden, weil es das stärkste ist und „das andere“ ( z.b. vom Hotspot des Cafes ) überlagert.

Wird bestimmt spannend, wenn das mal jemand durchzieht.

Dutzende von Spionagecellen in Washington gefunden

Das NBC Channel 4 Nachrichten Team hat da mal eine kleine Exkursion in Washington gemacht und dabei über 40 Sting-Rays gefunden. Das sind Geräte die Mobilfunkmasten simulieren. Das macht eine Regierung normalerweise und das Handy von Verdächtigen abzuhören, aber in Washington macht das wohl jeder. Scheint ne Art Volkssport zu sein, besonders um Botschaften herum 😀 Da trackt jeder jeden 😉

„Das News4 I-Team bat Turner, mit einer speziellen Software, die auf drei Handys mit drei verschiedenen Carriern geladen war, durch die Hauptstadtregion zu fahren, um die Geräte (Sting-Rays) an verschiedenen Orten zu erkennen.

„Wenn man also diese roten Balken sieht, sind das sehr verdächtige Ereignisse“, sagte Turner.

Wenn Sie in oder in der Nähe des Distrikts wohnen, wurde Ihr Telefon wahrscheinlich irgendwann verfolgt, sagte er.

Ein kürzlich veröffentlichter Bericht des Ministeriums für Heimatschutz nannte die Spionagegeräte ein echtes und wachsendes Risiko.“ (Übersetzt mit www.DeepL.com/Translator)

Das Nachrichten Team war sich sicher, daß es noch viel mehr finden würde, wenn Sie noch einige Stunden rumkurven würden. Ich glaube, daß mache hier in Berlin auch mal irgendwann 😀

Quelle: https://www.nbcwashington.com/investigations/Potential-Spy-Devices-Which-Track-Cellphones-Intercept-Calls-Found-All-Over-DC-Md-Va-482970231.html