Sammelsurium Dezember 2017 – Januar 2018

cc: Freepik

Wieder sind zwei Monate vergangen. Ein Rückblick auf die letzten Twitterfeeds ist auch immer wieder ein Blick auf Dinge, die man schon längst vergessen hat.

Tweets aus 2017-12

  • Aluhut günstig abzugeben. Kaum getragen. Nichtraucherhaushalt. #34c3  [Quelle]
  • Danke für die Arbeit. Danke für den wichtigen Satz. [Quelle]
  • Mythen der digitalen Bildung: – PDF statt Arbeitsblatt – Gerätebedienkompetenz – abgefilmter Frontalunterricht #34c3 #Lehrerstammtisch
  • Registrierung als Engel, check. SIM-Karte, check. Flora-Mate getrunken, check. Spaß in der Schlange zur Kasse gehabt, check. #34c3
  • Viele Muggel am Leipziger Hbf unterwegs. Ich glaube, die Kongressteilnehmer dennoch an den mit Konsolen gepflasterten Laptopbilschirmen in den Cafés zu erkennen. #34C3
  • Bahnfahrt nach Leipzig genutzt und für edukative sowie selbsterbauliche Zwecke eine Hashtabelle als Datenstruktur in #python programmiert. #34c3 #tuwat [Quelle]
  • Angeblich hält mein ICE gerade in Bielefeld. Immer diese Nerdwitze zum #34c3
  • ☑Im Engelsystem registriert #34c3
  • Kniffliger Adventskalender mit schönen Rätseln vom Adventuretreff-Forum. [Quelle]
  • Es gibt eine App für die Indoor-Navigation auf dem 34c3. [Quelle]
  • Meine Mini-Packliste für den #34c3 [Quelle]
  • Python vielleicht demnächst in Excel. [Quelle]
  • Früher stieg die Aufregung direkt vor Weihnachten, nun steigt sie direkt danach. #34C3 #tuwat
  • Wir sind endlich in der Zukunft angekommen. Vergesst die fliegenden Autos. Laptops in Klassenzimmern sind das eindeutige Zeichen. #ironie  [Quelle]
  • Ein schönes Tutorial für die Shaderprogrammierung auf Grafikkarten. #GPU [Quelle]
  • Enigmail ist derzeit kaputt.  [Quelle]
  • Wenn man mal SyntaxHighlighting in Libre-Office-Dokumenten benötigt:  [Quelle]
  • Eine gute Aluhut-Grundbildung für jeden IT’ler. [Quelle]
  • Werde dieses Jahr auch mein Tel. mitbringen und hoffe auf das Matometer.  [Quelle]
  • Eine Hasente.  [Quelle]
  • Glossar: Charset – Encoding – Font  [Quelle]
  • WTF = WhatsApp Twitter Facebook
  • Ein flammendes Plädoyer für Textmails ohne HTML-Schnickschnack. +1  [Quelle]
  • Wir hatten damals schon Escape Rooms.  [Quelle]
  • Schellmische Kritik eines Mathelehrers auf immer albernere Aufgaben aus der Analysis?!  [Quelle]
  • Es hat begonnen: KIs programmieren sich selbst besser als Menschen. [Quelle]
  • „Das ist fraktal falsch. Je näher du rangehst, desto mehr ist falsch daran.“ – fefe
  • Username und Passwort ist noch keine 2-Faktor-Auth.
  • Was passiert, wenn man etwas in den Browser eingibt? Hier steht es – sehr(!) detailliert. [Quelle]
  • So einfach kann ein Python-Skript als systemd service gestartet werden.  [Quelle]

Tweets aus 2018-01

  • „Vom Mythos der Digital Natives und der Net Generation“ (von 2012!) – „Die Mediennutzung gilt nur der Freizeit, ein Transfer auf Lernen findet nicht statt. Sie dient in erster Linie der Kommunikation mit den Peers[…].“  [Quelle]
  • Früher hießen Gewinnspiel und Umfrage noch schlicht Werbung.
  • Planen, Testen, Nachdenken helfen. Wird leider häufig vernachlässigt, weil es Kosten verursacht.  [Quelle]
  • Das Vorurteil, dass Lehrer zu wenig arbeiten, stimmt also nicht.  [Quelle]
  • RFC 1855 beschreibt die Netiquette-Regeln.  [Quelle]
  • Digitalpoeten von heute.  [Quelle]
  • Wenn Binärdarstellungen von Primzahlen wie Giraffen aussehen. [Quelle]
  • Wenn Twitter auf Videotext/Teletext trifft. [Quelle]
  • #MagpPi: Immer wieder einen Blick wert.  [Quelle]
  • Wenn Ende-zu-Ende kaputt ist, nennt man es halt Ende-zu-Mitte. Muss ich mir merken.  [Quelle]
  • Wieder ein Beleg dafür, dass Android keine vertrauenswürdiges OS ist.  [Quelle]
  • Buchtipp: Kryptographie mit Python umsetzen und brechen. [Quelle]
  • Schule in Arnsberg gründet Hackerspace.  [Quelle]
  • #poesie  [Quelle]
  • An der Uni in Oxford bekommen Frauen bei Mathe- und Informatik-Tests 15 Minuten mehr Zeit, weil … ähhh … warum eigentlich? [Quelle]
  • #PyCharm kann jetzt auch MicroPython.  [Quelle]
  • Viele Basisinformationen der Elektrotechnik in einem Artikel zusammengefasst und schön bebildert. [Quelle]
  • Chaos Darmstadt berichtet über das besondere elektronische Anwaltspostfach und zeigt, wie man ein Projekt auf vielen verschiedenen Ebenen gegen die Wand fahren kann. [Quelle]
  • Gelesen, Twitter geschlossen und drüber nachgedacht. [Quelle]
  • Immer, wenn wir „sozial schwach“ hören oder sagen, lasst uns überlegen, ob „ökonomisch schwach“ nicht die bessere Formulierung wäre.
  • Mädchen können Teamwork besser als Jungs. Und Deutschland ist diesmal deutlich über dem OECD-Schnitt. Da gibt es noch Potenzial, das wir nicht nutzen, gerade in Bereich IT/Informatik.  [Quelle]
  • Ist schon wichtig, so eine schnelle und verlässliche Informations-Infrastruktur in Krisensituationen. [Quelle]
  • traefik ist ein HTTP Reverse Proxy und Load Balancer für z.B. docker. [Quelle]
  • PicoCluster verkauft Cluster für #RaspberryPi s. [Quelle]
  • Für mehr Datenkonfusion.  [Quelle]
  • Wow, Geolocation geht auch mit einer Knopfzelle und einer Laufzeit von ca. 30 Jahren. Aus der Berechnung des Verhältnis von Helligkeitsdauer und Dunklheitsdauer über den Tag. [Quelle]
  • Wenn man mal eben einen reverse proxy unter seinen #docker containern benötigt.
  • Erstaunlich, was man mit einer Knopfzelle alles machen kann. [Quelle]
  • Auch heute noch kann man einen Laptop selbst bauen – z.B. aus einem #RaspberryPi. #34c3 [Quelle]
  • Easterhegg in Dortmund. Das wäre toll. [Quelle]
  • Fremden Quelltext lesen … oder den eigenen Quelltext aus einer fernen Vergangenheit. [Quelle]
  • Gute Unterhaltung mit „Nougatbytes“, „Hacker Jeopardy“ und dem „Zentrum für politische Schönheit“. #34c3 [Quelle]
  • Immer schön aufpassen mit den Abhängigkeiten. [Quelle]
  • @hanno erklärt, warum die empirische Wissenschaft kaputt ist. #34c3 [Quelle]
  • Dateien einfach aber sicher über Tor teilen. [Quelle]
  • Sehr ausführliche aber noch verständliche Erklärung von Spectre/Meltdown und warum der #RaspberryPi nicht betroffen ist. Inklusive kurzer Geschichte von CPU-Architekturen. [Quelle]
  • Mit PiServer kann man #RaspberryPi s über das Netzwerk mit einem OS versorgen – ohne SD-Karte. [Quelle]
  • Reisepass/Perso nicht auf ein Induktionskochfeld legen. Die gespeicherten biometrischen Daten würden sonst Schaden nehmen. IIRC bleibt der Ausweis dennoch gültig. #Servicetweet
  • Solange wir nur eine amtsführende Regierung haben, kann das Grundgesetz einmal durchatmen.
  • Das müsste mal soziologisch untersucht werden.  [Quelle]
  • „Smells Like Teen Spirit“ mit Auto-Tune. Ja, bei gruselig klingt das.  [Quelle]
  • Eine schöne Broschüre zum Thema digitale Selbstverteidigung mit einem leichten Fokus auf Schweizer Verhältnisse. Dennoch einen Blick wert.  [Quelle]
  • So lassen sich USB-Sticks und SD-Karten validieren. [Quelle]
  • PC-Wahl bietet 8-Bit-Voll“verschlüsselung“ und liefert den Schlüssel gleich mit aus, obwohl man ihn auch raten kann. #34c3 #encraption (S.22)  [Quelle]
  • Das Kerhoff’sche Prinzip: Die Sicherheit eines Verschlüsselungsverfahren muss basieren auf der Geheimhaltung des Schlüssels, nicht des Verfahrens. Bereits 1883 veröffentlicht. [Quelle]
  • Eine einfache Python-Implementierung einer Block-Chain – sogar mit einem einfachen Proof-Of-Work. [Quelle]
  • Gruselige Vorstellungen von Lehrerkollegen. SuS = Schülerinnen und Schüler  [Quelle]
  • Wow, ein Infrastrukturprojekt im Zeitplan.  [Quelle]
  • „Patterns und Anitpatterns“ – ein schöner und unterhaltsamer Vortrag von fefe. [Quelle]
  • Daten sind das Schlangenöl des 21. Jahrhunderts. #fnord
  • Universalkommunikator #34C3 #blinkenrocket  [Quelle]
  • Noch gibt es günstige Hotels.  [Quelle]
  • Eindrücke vom #34c3  [Quelle]
  • Termine zu #34c3 ähnlichen Veranstaltungen. [Quelle]
  • „Computer sind Spiel-, Werk- und Denkzeug.“ #34c3
  • Mailboxen, das Fidonetz und Netzwerke der 90er Jahre #34c3  [Quelle]
  • CTF – Kreuzworträtsel für Nerds #34c3  [Quelle]
  • Blinken-Rocket: ein schönes Bastelprojekt vom #34c3 [Quelle]
  • Firmware für einen ESP8266 basierten Router. Inklusive Meshing. [Quelle]
  • Alte Weisheiten  [Quelle]

 

Docker auf dem RaspberryPi

Mit HyprioOS gibt es seit einiger Zeit ein Image für den RaspberryPi, das docker container auf den Pi holt. Man muss beachten, dass die docker images für ARM-Architekturen gebaut sind. Davon gibt es aber immer mehr – hypriot selbst stellt bereits einige zur Verfügung. Man kann z.B. mit einem schlanken alpine-Basisimage starten und sich darauf aufbauend mit Hilfe eines Dockerfile den Container für den eigenen Bedarf stricken.

$ docker build -t containername .

Mehrere Container können schließlich zu einem Service zusammengebaut werden. Das macht docker-compose und ein docker-compose-yml-File.

$ docker-compose up

Mehrere Services lassen sich schließlich zu einem Swam zusammenfügen und auf mehrere Pis verteilen. HypriotOS bringt alle wichtigen Tools mit und läuft zuverlässig.

Laptop selbstgebaut

Eigentlich ist es gar nicht so einfach, einen Laptop selbst zusammen zu stellen, da die Einzelkomponenten hochgradig integriert sind. Auf dem 34C3 ist mir jedoch ein Koffer begegnet, der genau diesen Versuch mit einem Rasperry Pi unternommen hat. Neben dem Pi, sind unter dem Plexiglas zwei Powerbanks verbaut, die das Display und den Pi mit Strom versorgen – und das über 16 Stunden lang. Daneben ist noch Platz für ein Steckbrett und kleinere Bauteile. Als mobile Hacking-Stations ist das Gerät also durchaus interessant.

Inspiriert wurde das Projekt von SpyPi, welches den Kofferansatz weitertreibt, mit zusätzlichen Auf- und Anbauten ausstattet ist und Teil einer 2017 fertig gestellten Abschlussarbeit ist. Die Hardware wird unter spypi.ch beschrieben.

34C3: Gute Unterhaltung

CC BY-SA Jackytar

Neben rein technischen Vorträgen gab es beim letzten 34C3 auch solche mit größeren Unterhaltungswert. Nougatbytes ist ein Ratespiel mit Bildern. Sehr liebevoll und aufwändig gestaltet mit dem notwendigen Gefühl für die Fähigkeit um die Ecke denken zu können.

Das im letzten Jahr pausierende und in diesem Jahr wieder veranstaltete Hacker Jeopardy zeigt in verschiedenen Kategorien, wie wenig man bisweilen weiß. Besonders gut hat mir die Kategorie „\LaTeX“ gefallen, in der man LatTeX-Formeln ausrechnen musste.

Schließlich berichtete das Zentrum für politische Schönheit im Vortrag Tiger, Drucker und Mahnmale über die Aktivitäten im letzten Jahr. Hier bleibt so manches Lachen im Halse stecken und ich wünsche mir mehr von diesen Aktionen. Neben rein unterhaltsamen Elementen, habe ich dort etwa verfahren, dass selbst anspruchsberechtigte Flüchtlinge nicht mit dem Flugzeug einreisen dürfen, da dies gesetzlich mit Geldstrafen gegenüber Fluglinien sanktioniert wird.

Trotzdem: Gute Unterhaltung!

Die empirische Wissenschaft ist kaputt

Hanno Böck hat sich als Grundlage für seine Behauptung Science is broken eine Theorie erdacht (Steine auf dem Monitor helfen gegen Malware) und diese „emprisch“ nachgewiesen. Der statistische Wert  p-Value, der die Signifikanz einer statistischen Größe beschreibt, ist manchen Fällen nämlich einfach zufällig gut genug für eine Veröffentlichung.

A p-value is the probability that you get a false positive result in idealized conditions if there is no real effect.

In many fields of science p<0.05 is considered significant.

Leider werden wissenschaftliche Studien häufig nur dann publiziert, wenn sie ein positives Ergebnis hervorbringen, nicht jedoch bei negativen Resultaten. Und deshalb ist nicht erkennbar, wann ein Resultat nicht nur aus reiner Zufälligkeit relevant geworden ist. Mit dieser Meinung steht er nicht alleine da: Wissenschaftler, die Meta-Studien erstellen, pflichten selbstverständlich bei. Mich dagegen hat dieser Umstand erschreckt.

Hanno postuliert schließlich zwei Arten von Wissenschaft: „TED-talk science“ (positive und überraschende Resultate, große Effekte, viele Zitierungen, meist nicht korrekt) und „boring science“ (viele negative Ergebnisse, geringe Effekte, näher an der Wahrheit). Vielleicht sollten wir uns mehr den langweiligen Ergebnissen zuwenden?!

 

USB-Sticks und SD-Karten validieren

Nicht immer funktionieren USB-Sticks und SD-Karten so wie sie sollen. Bei meiner letzten Bestellung aus China hatte ich den Verdacht, dass einige SD-Karten defekt waren – sie funktionierten für einen kurzen Zeitraum und gaben dann den Geist auf. Aus der c’t kannte ich das Programm H2testw, mit dem Flashspeicher geprüft werden kann. Dazu wird das Speichermedium mit Testdaten vollständig beschrieben und die Daten anschließend wieder gelesen. Wenn alles korrekt läuft, stimmen die gelesenen Daten mit den ursprünglich geschriebenen Daten überein. Das kann je nach Größe des Speichermediums durchaus eine Weile dauern.

Für Linux gibt es hierfür das Paket f3, das mit den Programmen f3write und f3read das gleiche tut. Für einen korrekten USB-Stick läuft das Programm wie folgt ab:

$ f3write /media/STICK/
Free space: 196.84 MB
Creating file 1.h2w ... OK! 
Free space: 0.00 Byte
Average writing speed: 6.76 MB/s

Anschließend werden die geschriebenen Daten wieder gelesen.

$ f3read /media/STICK/
                  SECTORS     ok/corrupted/changed/overwritten
Validating file 1.h2w ... 403128/        0/      0/      0

  Data OK: 196.84 MB (403128 sectors)
Data LOST: 0.00 Byte (0 sectors)
          Corrupted: 0.00 Byte (0 sectors)
   Slightly changed: 0.00 Byte (0 sectors)
        Overwritten: 0.00 Byte (0 sectors)
Average reading speed: 7.75 MB/s

 

Patterns und Antipatterns

In dem Vortrag Antipatterns und Missverständnisse in der Softwareentwicklung – Eine Geschichte voller Missverständnisse spricht fefe über Patterns und insbesondere auch Anti-Patterns aus der Sicht von Softwareentwicklern und devOps. Unterhaltsam, kurzweilig, mit einem breiten Themenspektrum und vielen Anekdoten und konkreten Beispielen aus der Praxis gespickt. Sehenswert.

Eindrücke vom 34c3

Der 34C3 ist nun vorbei und die ersten Eindrücke der Veranstaltung sind gemischt aber überwiegend positiv. Nach dem Umzug von Hamburg im letzten nach Leipzig in diesem Jahr war zu erwarten, dass der neue Ort Risiken und Chancen bieten würde. Die Hallen waren sehr groß und ließen für meinen Geschmack zu wenig Raum für kleinere intime Treffen und Gespräche. Häufig war man auf der Suche nach einem Platz, an dem man ungestört hacken arbeiten konnte. Die riesige Halle 2 mit all ihren Hackingspaces, dem Künstlerbereich und der Hardware-Hacking-Area haben dennoch nie einen Hauch von Langeweile aufkommen lassen.

 

In diesem Jahr habe ich mich erstmals als Engel eingebracht. Das empfehle ich jedem Besucher, der dies bisher noch nicht gemacht hat oder sich bisher nicht traute. Es lohnt sich. Man bekommt eine tieferen Einblick in die Veranstaltung und lernt vor allem viele nette Leute kennen.

Nach meiner Wahrnehmung waren in diesem Jahr mehr Künstler, politische Gruppen, Frauen und Kinder auf dem Kongress. Insbesondere die Künstler- und politischen Gruppen verschieben etwas den Fokus – was ich nicht schlecht finde, sich aber in Zukunft als problematisch erweisen kann, sobald Interessen zu stark divergieren. Ich warte das aber zunächst ab, bevor ich mich sorge.

Jetzt beginnt die Nachbereitung, in der viele Ideen und Projekte umgesetzt und die Aufzeichnungen der Vorträge anschaut werden wollen.

Mailboxen, Fidonetz und Netzwerke der 90er Jahre

Auf dem 34C3 gab es den interessanten Vortrag BBSs and early Internet access in the 1990ies – Modems, FIDO, Z-Netz, Usenet, UUCP, SLIP and ISDN. Harald Welte erzählt aus persönlichen Erfahrungen über die frühe Zeit der Modems und Akkustikkoppler der Pre-Internet-Ära. Er erklärt die frühen „Mail“-Programme wie CrossPoint und sinniert über Features, die es nicht in die neue Zeit geschafft haben. Ich kann diese Gedanken sehr gut nachvollziehen. In einer Live-Demo zeigt er aktuelle Mailboxen, über die man heute noch per Telnet oder sogar Telefonleitung zugreifen kann und wundert sich, dass diese noch aktiv genutzt werden. Die Seite Telnet BBS Guide stellt eine ausführliche Sammlung von Mailboxen zusammen.

Besonders spannend fand ich den Gedanken, dass mit dem Einzug des Internet auch der Grad der Selbständigkeit in der Verwaltung der Netzinfrastuktur sank. Mailboxenetze wurden damals vonPrivatleuten organisiert, die ihre Telefonanschlüsse zur Verfügung gestellt und darüber Nachrichten mit anderen Mailboxen geteilt hatten. Mit dem Aufkommen von ISPs ging eine Entmündigung einher, die heutzutage, zumindest teilweise, durch das Freifunkprojekt adressiert wird – jedoch nicht mit der gleichen Wirkmacht, die ein Fidonetz in den 90er Jahren entfalten konnte.

CTF – Kreuzworträtsel für Nerds

CTF ist eine Abkürzung für „Capture the Flag“. Auf dem Chaos Communication Congress wird eine solche Veranstaltung traditionell immer am Ende des Jahres durchgeführt. In diesem Jahr habe ich mich erstmals auch bei der Junior-Version beteiligt und in einem kleinen Team versucht, verschiedene Aufgaben aus den folgenden Bereichen zu lösen: Reverse Engineering, Kryptographie, Passwörter-Knacken, Web und Verschiedenes. Trotz der Klassifikation als Einsteigerveranstaltung, waren die Aufgaben alles andere als leicht. Über mehrere Schritte musste man gehen, um am Ende ein flag zu erhalten – dies war ein String, der mit „34C3_“ beginnt und den man in eine Weboberfläche eingeben kann, um damit die Aufgabe lösen.

Unser Team laborratten hat am Ende den 147. Platz belegt – bei 435 teilnehmenden Teams ist das schon ein gutes Ergebnis, auf das sich aufbauen lässt. Neben dem Konkurrenzaspekt, war das Lösen der Aufgaben jedoch Ansporn genug, sodass es nicht unser letzter CTF gewesen sein wird.

So etwas möchte ich auch einmal selbst veranstalten – vielleicht sogar im Rahmen einer Schulveranstaltung oder bei einem GameJam. Die einsteiger-freundlichen CTFs picoCTF, EasyCTFOverTheWire: WargamesSchool CTF und Juniors CTF könnten als Vorbild und Aufgaben-Pool dienen.

Update
Das Buch Kali Linux CTF Blueprints zeigt, wie man selbst eine solche Challenge erstellen kann. Die Liste Awesome CTF bei github stellt Frameworks, Tutorials und Software rund um CTF zusammen. Der openflagserver von Jason Gillam ist z.B. ein einfacher in Python geschrieberen und leicht anpassbarer Server, um Flags, User und Punkte zu verwalten.
Auch die Formel zur Berechnung der Punktzahl in Abhängigkeit der Anzahl der Lösungen ist noch einen separaten Blick wert:
int(round(30 + 470 / (1 + (max(0, solves – 1) / 11.92201) ** 1.206069)))