Posts

OS-Internals #1: /dev/null in Linux UND Windows

Wie ein Müllcontainer fungiert /dev/null unter UNIX als schwarzes Loch für Daten.

Wie ein Müllcontainer fungiert /dev/null unter UNIX als schwarzes Loch für Daten.
(by-nc-sa 2.0)

Dies ist der erste Beitrag der OS-Internals Reihe. Ich versuche unter diesem Begriff sehr technische Aspekte von Linux zu beleuchten und verständlich zu erklären.

Die meisten, die Linux benutzen, sollten das Gerät /dev/null kennen, welches auch Null-Gerät genannt wird. Hierbei handelt es sich um ein spezielles Gerät, das alle Eingehenden Daten sofort löscht und gar nicht erst persistiert. Es wird daher auch oft scherzhaft als schwarzes Loch oder Nirvana bezeichnet.

Technisch ist /dev/null – genau wie alles andere bei Linux – eine Datei, jedoch eine spezielle, die output streams bereit stellt und input streams entgegen nehmen kann (doch zu Dateien in Linux in einem späteren Teil mehr). Wenn man schauen möchte was es ist, kann man auch einfach folgendes machen und sich die Ausgabe anschauen:

Eigenschaften
$ ls -alh /dev/null
crw-rw-rw- 1 root root 1, 3 Nov 10 19:06 /dev/null

Es ist also eine spezielle Datei (das c bedeutet char device), jeder hat Zugriff darauf, es gehört root und es werden weitere, für uns momentan nicht wichtige, Informationen angezeigt.

Nutzen von /dev/null

Man kann es einsetzen um z.B. einen gewissen output-Stream (z.B. stderr) aus der Ausgabe von einem Programm zu entfernen. Hierfür benutzt man einfach den Umleitungs-Operator (redirection operator, also das > Zeichen) kombiniert mit der file descriptor number für stderr (sprich 2):

Ausgaben weg schmeißen
$ find /etc/ -iname apt 2> /dev/null

Wir suchen hier nach allen Dateien und Ordnern unter /etc/ in deren Namen der string apt vorkommt. Alle Ausgaben auf den stream stderr werden ins Nirvana geschickt.

Gefahren von /dev/null

(mehr …)

Unvermeidbar: WhatsApp teilt Telefonnummer mit Facebook

Wer nicht explizit die neuen Richtlinien von WhatsApp ablehnt, der teilt unabsichtlich seine Telefonnummer und den Zeitpunkt wann man zuletzt online war mit Facebook. Unten beschreibe ich, wie man verhindern kann, dass Facebook die Telefonnummer kommerziell nutzt! Ganz kann man das Teilen jedoch nicht abschalten.

… werden wir einige deiner Account-Informationen, wie die Telefonnummer […] und die Zeit, wann du das letzte Mal unsere Dienste verwendet hast, mit Facebook und der Facebook-Unternehmensgruppe teilen.WhatsApp FAQ

Facebook wird nach dem teilen der Telefonnummer diese für Werbezwecke nutzen, indem die Nummer mit Firmen in Verbindung gebracht wird. Weiß Facebook also, dass man des öfteren bei einem Lieferdienst Pizza bestellt, kann es passieren, dass vermehrt Pizza-Werbung dieser speziellen Firma auftaucht.

WhatsApp hatte noch nie wirklich gute Datenschutzbestimmungen und das wird sich wohl auch sobald nicht ändern, doch ist die Entwicklung sehr interessant: WhatsApp released → Ziemlich cooler Messenger! WhatsApp wird von Facebook übernommen → hmm, nicht so geil. WhatsApp führt Ende-zu-Ende Verschlüsselung ein → Ziemlich nice. WhatsApp teilt Telefonnummer mit Facebook → Och nöö, son Dreck 🙁

Kann ich verhindern, dass WhatsApp meine Telefonnummer weitergibt?

(mehr …)

Docker: Hinweise in puncto Sicherheit

Ist Docker wirklich Sicher?

Docker erfreut sich immer höherer Beliebtheit und gilt als sicher, doch stimmt das wirklich?

Docker dient in erster Linie dazu Anwendungen (meist Server-Anwendungen) einzukapseln und vom Rest des Betriebssystems zu entkoppeln. Dabei wird auf den Linux Kernel vom Host-System zurückgegriffen und mittels cgroups und namespaces die Möglichkeiten des Docker-Containers eingeschränkt.

Container sind dabei kein Mittel um Anwendungen sicherer zu machen, sondern dienen in erster Linie dazu skalierbare Dienste bereit zu stellen. Sie haben jedoch den Vorteil, dass Anwendungen vom Rest des Systems entkoppelt sind, mehr dazu aber später.

Das Prinzip von Containern

Ein Container ist sehr grob gesagt eine leichtgewichtige VM (virtual machine). Er enthält ebenfalls ein virtuelles Betriebssystem besitzt jedoch eine andere Virtualisierungsebene als eine VM. (mehr …)

WhatsApp und Co.: Messenger vs. Sicherheit

Messenger Apps gibt es viele, doch welche kann man sicher nutzen?

Die Auswahl an Messenger Apps ist groß, doch auf Sicherheit wird leider wenig geachtet. Welche Apps kann man jetzt gefahrlos nutzen und welche nicht?

Wer benutzt heute keine Messenger Dienste? Richtig: Niemand. Von XMPP, IRC, ICQ und Skype hin zu mobilen Clients wie WhatsApp, Threema, Signal oder Telegram oder auch Facebooks Messenger sind alle Arten in den letzten Jahren vertreten gewesen. Heute werden jedoch nur noch wenige davon genutzt, wie etwa WhatsApp, Skype oder der Facebook Messenger.

Viele Messenger verschlüsseln nicht

Man sollte meinen, dass seit den Snowden-Enthüllungen jeder große Dienst im Internet begriffen hat, dass Sicherheit in all seinen Fassetten ein sehr wichtiger Bestandteil ist. Leider ist dieser Gedanke noch nicht bei allen angekommen. (mehr …)

WhatsApp: Endlich ganze Sachen mit Ende-zu-Ende Verschlüsslung

WhatsApp verschlüsselt nun alles

WhatsApp verschlüsselt nun alle Nachrichten, Telefonate und Anhänge per Ende-zu-Ende Verschlüsselung.

Wer bisher über WhatsApp Nachrichten verschickt hat, der konnte nie wirklich sicher sein, dass sie auch per Ende-zu-Ende Verschlüsselung gesichert waren. Zwar wird schon seit geraumer Zeit verschlüsselt, jedoch nur bei Android und auch nur bei bestimmten Versionen (zu alte Clients verschlüsselten nicht). Auch gab es bisher keine Anzeige, die eine vorhandene Ende-zu-Ende Verschlüsselung gekennzeichnet hätte.

Das hat sich nun geändert: WhatsApp verschlüsselt nach eigenen Aussagen alles mit einer Ende-zu-Ende Verschlüsselung, sodass FBI, NSA und auch WhatsApp selbst die Nachrichten nicht mehr lesen können. Unterstützt wird das aber erst ab Version 2.16.9, also alle schnell updaten.

WhatsApp benutzt Elliptische Kurven und AES256

Hauptsächlich zum Einsatz kommt die Elliptische Kurve Curve25519, der Verschlüsselungsalgorithmus AES256 und die Hash-Funktion SHA-256. Der AES-Algorithmus erledigt die Hauptarbeit beim verschlüsseln, denn Nachrichten und Anhänge werden darüber Abgewickelt. Dabei gibt es eine Vielzahl von Mechanismen zum absichern der Verschlüsselung.

Für jede Nachricht wird über die Curve25519 ein neuer Message Key generiert, der diese dann verschlüsselt. Der Message Key ändert sich zudem bei jeder Nachricht, sodass ein Angreifer mit einem gecrackten Key auch nur eine Nachricht entschlüsseln kann und nicht die gesamte Konversation.

Auch Gruppennachrichten, Anhänge (Bilder, Videos, Sprachnachrichten, etc.), sowie Telefonate werden ebenfalls Ende-zu-Ende verschlüsselt. Zudem wird der Nutzer durch ein Icon davon in Kenntnis gesetzt, dass die Verschlüsselung aktiv ist. Ist das Icon nicht da, so ist die Verbindung unverschlüsselt.

Teilweise Open Source

(mehr …)